[Bug 4168] Atomicity is a problem for a non-transacted implementation

http://www.w3.org/Bugs/Public/show_bug.cgi?id=4168

           Summary: Atomicity is a problem for a non-transacted
                    implementation
           Product: XPath / XQuery / XSLT
           Version: Working drafts
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Update Facility
        AssignedTo: andrew.eisenberg@us.ibm.com
        ReportedBy: john.snelson@oracle.com
         QAContact: public-qt-comments@w3.org


In the description of upd:applyUpdates() in section 3.2.2.6 of the XQuery
Update specification, it is specified that the updates are applied atomically -
that is either all of them are applied, or none of them.

I understand that it is important to specify this for systems like databases
which support ACID semantics. However, the implementation I have been working
on is a stand alone C++ implementation that is not associated with a database.
Modifications are written back to the file system, and all precautions are
taken to check error cases before the updates are applied. It would be
extremely complicated to write an atomicity framework for this implementation,
and it simply isn't possible to check all error situations ahead of making the
modifications.

Can I suggest that atomicity and other ACID semantics are specified as an
optional feature of XQuery Update? This allows implementations not backed by an
existing transactional store the flexibility to implement the specification
without needing to implement atomicity as well.

Received on Tuesday, 9 January 2007 15:54:35 UTC