This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 5339 - [UPD] Atomicity is untestable
Summary: [UPD] Atomicity is untestable
Status: RESOLVED INVALID
Alias: None
Product: XQuery Update Facility Test Suite
Classification: Unclassified
Component: XQuery Update Facility Test Suite (show other bugs)
Version: unspecified
Hardware: PC Windows XP
: P2 normal
Target Milestone: ---
Assignee: Jonathan Robie
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-01-02 18:56 UTC by Michael Kay
Modified: 2008-01-02 18:57 UTC (History)
0 users

See Also:


Attachments

Description Michael Kay 2008-01-02 18:56:39 UTC
Rule 7 of upd:applyUpdates() states "The upd:applyUpdates operation is atomic with respect to the data model. In other words, if upd:applyUpdates terminates normally, the resulting XDM instance reflects the result of all update primitives; but if upd:applyUpdates raises an error, the resulting XDM instance reflects no changes. "

I believe this is untestable and therefore doesn't belong in the spec. It's also very unclear what requirements it is placing on the implementation. Does it mean, for example, that streamed delivery of updated XDM instances is not allowed unless such streamed delivery is guaranteed to succeed? I can't see any reason for placing such an onerous requirement. But if it doesn't mean that, what does it mean? Does it mean that implementations are required to make the original un-updated XDM instance available to the application after an error? That would be a strange requirement to impose, given that we say nothing about how updated instances are made available to applications in the success case. Perhaps it means that persistent data should be unchanged in the event of a dynamic error? But handling of persistent data is explicitly out of scope!
Comment 1 Michael Kay 2008-01-02 18:57:54 UTC
Sorry, I intended to raise this against the spec