|
From: Antoni M. <ant...@ba...> - 2013-02-07 09:42:02
|
Hi, Is inference done asynchronously in Bigdata? In my integration tests I see spurious failures: 1. I run code that does SPARQL UPDATE queries. It uses SPARQLRepository or direct, handcrafted invocations of the REST API. The production code uses HTTP Client connection pooling and it's difficult to say how many physical connections it uses and when they stop. 2. When that code finishes, I create a new SPARQLRepository and use it to see if content of the repository meets my expectations. 3. The test code sometimes succeeds, sometimes fails. The NanoSparqlServer wikipage states that "Mutation operations are ACID against a standalone database and shard-wise ACID against a bigdata federation." Is inference done within the write transaction, or does the ACID only refer to explicit triples? Obviously there may be 1001 other reasons for the test failures I'm seeing. If you clearly confirm that when Bigdata says it's done - it means it's done I can look further. Another idea for investigation would be to check how HTTPClient connection pooling influences Bigdata. Does it use Keep-Alive and does this mean that the write transaction isn't actually committed until HTTPClient chooses to evict a connection from the pool. BTW, we're using a .war from rev 6717 deployed in Tomcat. -- Antoni Myłka Software Engineer basis06 AG, Birkenweg 61, CH-3013 Bern - Fon +41 31 311 32 22 http://www.basis06.ch - source of smart business |