Hi Stuart,

Thanks - I'll need to find time to create his here. Fro your description it might be more an issue about the inf model not properly supporting concurrent read access (and unrelated to the earlier issues, from the point-of-view of internal implementation) but it'll need investigation.

        Andy

On 02/09/13 16:15, Stuart Taylor wrote:
Hi Andy,

I've put together a more complete test case that hopefully you can
replicate. I'm running this on a clean copy of Fuseki extracted from
jena-fuseki-1.0.0-20130902.080009-8-distribution.tar.gz.

The test seems to depend only on the OWL part of schema and making a
query that triggers some rules in the inference graph. Also the
exception isn't thrown on the first time Fuseki is started after loading
the data, but is each time it is started after that. I've cut my dataset
down significantly so that there's a single owl:SymmetricProperty, which
also appears in the query, and then a bunch of direct sub properties.
I've attached the dataset, assembler file and the log from stdout.

1) Load the data and create the text index:

java -cp fuseki-server.jar tdb.tdbloader --tdb=hc-config-text.ttl
test-dataset.nt
java -cp fuseki-server.jar jena.textindexer --desc=hc-config-text.ttl

2) Start Fuseki:

./fuseki-server --config=hc-config-text.ttl --verbose

3) Run the queries:

./s-update --service http://localhost:3030/dataset/update 'prefix :
<http://example.org/fuseki-test.ttl#> insert data { <o1> :p <o2> }'
./s-query --service http://localhost:3030/dataset/query 'prefix :
<http://example.org/fuseki-test.ttl#> select * { <o1> :p ?o }'

(All okay up to this point).

4) Stop Fuseki -- (I'm sending SIGTERM to the JVM).

5) Start Fuseki:

./fuseki-server --config=hc-config-text.ttl --verbose

6) Run the queries a second time:

./s-update --service http://localhost:3030/dataset/update 'prefix :
<http://example.org/fuseki-test.ttl#> insert data { <o1> :p <o2> }'
./s-query --service http://localhost:3030/dataset/query 'prefix :
<http://example.org/fuseki-test.ttl#> select * { <o1> :p ?o }'

This time the SELECT query causes a concurrent modification exception.

Cheers,
Stuart.

Reply via email to