I unsubtly removed the LHS ones and didn't run into any substantial problems - some test cleaning up. It seems that where the LHS is tested and nearly perfectly can be retargetted at the RHS.

    Andy

On 10/07/17 15:09, Andy Seaborne wrote:
Relatedly:

https://github.com/afs/jena-reports/blob/master/src/graphmem/GraphPlain.java

A (prototype of a) graph adapter that turns a value-based graph into a term based graph.

Something like Delta needs term equality because it tracks changes.

The alternative is having value-based graph store triples using a S-P-value only once.

     Andy

On 09/07/17 15:58, Chris Dollin wrote:
Hi Andy

My tattered recollection is that originally there was only
GraphTripleStore (and NodeToTriplesMap). Then we (for some
value of "we") realised that the code made assumptions that
were false for non-memory (so, at the time, RDB) triples, so
the existing code was renamed to have a Mem suffix and the
non-Mem code had the assumptions removed.

Alas, I cannot recall what the assumptions were ... maybe
to do with whether the value of a literal was always there
(in the Mem case) or not (in the non-Mem case).

I suspect then changes were made to non-Mem code that
could have been, but were not, shared with Mem code.

I don't think we can simply eliminate the left-hand classes
in favour of the right-hand ones in case there's code which
(explicitly or implicitly) expects the Mem classes.

I have another look tomorrow.

Chris



On 9 July 2017 at 14:08, Andy Seaborne <[email protected]> wrote:

Chris,

I'm engaged in some code-archaeology :-) (after looking at the message
about Delta which I'm kind of lost on). I'm hoping you can recall what the
situation is for some classes.

GraphMem uses GraphTripleStoreMem.

But there are some classes that look quite similar:

GraphTripleStore -- GraphTripleStoreMem
NodeToTriplesMap -- NodeToTriplesMapMem

(are there any others of this kind?)

Are the left-hand ones replaced by the right-hand ones?

The left-hand ones have some tests - the right-hand ones don't have direct tests although given that they are behind GraphMem, they get a lot of tests
anyway.

     Andy




Reply via email to