Is it possible to use isql with virtuoso open source edition to run multiple sparql commands in a transaction such that there is isolation from other clients? I'd like to drop a graph and load new data into it without other clients seeing an inconsistent state, but my attempts at doing this with isql haven't been successful. On irc, Ted Thibodeau suggested that what I wanted probably looked like this:
SET AUTOCOMMIT OFF; SPARQL CLEAR GRAPH <graphname>; SPARQL LOAD GRAPH <graphname>; COMMIT WORK; SET AUTOCOMMIT ON; However, the clearing of the graph seems to be immediately visible by other clients upon execution (before the commit occurs). Should this work, or is there another way to do this? I'm not sure why different operators would affect transactional isolation, but Ted suggested that the sparql operators might work differently here than traditional sql operators. If that is the case, should I expect the RDF loading functions (e.g. RDF_LOAD_RDFXML_MT and TTLP_MT) to work the same as the sparql commands (CLEAR/LOAD GRAPH) used in the example above? thanks, gregory williams
