On Fri, Aug 24, 2012 at 11:42 AM, Bill Roberts <[email protected]> wrote:
> With Fuseki, if I send a SPARQL UPDATE to the 'update' endpoint that contains 
> more than one operation, eg
>
>
>
> DELETE {…pattern…} WHERE {…} ;
> INSERT DATA { …some triples…}
>
> what is the scope of the transaction?  Does it include both of the 
> operations? Or does each operation happen in a separate transaction?
>
> (Note that I am thinking of a case that can't easily be merged into a single 
> DELETE..INSERT..WHERE pattern so does require more than one operation}
>

The relevent part of SPARQL 1.1 Update [1] is:
    Each request SHOULD be treated atomically by a SPARQL 1.1
    Update service, i.e., the execution of all the operations in one
    request should be performed atomically. Any resulting concurrency
    issues will be a matter for each implementation to consider
    according to its own architecture.

Fuseki will perform multiple update operations in a single request
atomically.  It depends on the underlying store as to whether or not
this is a full ACID transaction.  TDB will use transactions.

-Stephen

[1] http://www.w3.org/TR/sparql11-update/#updateServices

Reply via email to