After a longish conversation with Andy Seaborne, I've worked up a simple journaling DatasetGraph wrapping implementation. The idea is to use journaling to support proper aborting behavior (which I believe this code does) and to add to that a semantic for DatasetGraph::addGraph that copies tuples instead of leaving a reference to the added Graph (which I believe this code also does). Between these two behaviors, the idea is to be able to support transactionality (MRSW only) reasonably well.
The idea is (if this code looks like a reasonable direction) to move onwards to an implementation that uses persistent data structures for covering indexes in order to get at least to MR+SW and eventually to attack JENA-624: "Develop a new in-memory RDF Dataset implementation". Feedback / advice / criticism greedily desired and welcome! https://github.com/ajs6f/jena/tree/JournalingDatasetgraph https://github.com/apache/jena/compare/master...ajs6f:JournalingDatasetgraph --- A. Soroka The University of Virginia Library
