This past January, I reported a bug to this list which was recorded as 
JENA-378. I'm now experiencing what appears to be the same problem, where [ ] 
syntax in an Insert script doesn't work when using UpdateExecutionFactory:

  String updateString = "INSERT {} WHERE { ?x ?p [ ?a  ?b ] }";
  UpdateRequest update = UpdateFactory.create(updateString);

  UpdateProcessor up = UpdateExecutionFactory.createRemote(update,
      "http://localhost:3131/ds/update";);
  up.execute();

The error is: 400 Encountered " "?" "? "" 
caused by the client generating incorrect SPARQL with an extra ? (as viewed 
from the Fuseki log):  INSERT { } WHERE   { ?x ?p ??0 . ??0 ?a ?b   } 

This is with jena-core & jena-arg  2.10.2-SNAPSHOT, and with jena-fuseki 
0.2.8-SNAPSHOT (compiled today). 
--
Another problem I'm having which I can't track down is that the following code 
takes a VERY long time to execute (10 minutes):
DatasetAccessorFactory.createHTTP("http://localhost:3131/ds/update";).getModel(modelName);

With earlier versions of Fuseki, it would take seconds, with the same data. The 
problem seems to be related to my Fuseki server instance itself, which is 
0.2.8-SNAPSHOT (r1496513), and not to my client code, since even if I use the 
older stable jena-core and jena-arq 2.10.0 and jena-fuseki 0.2.6, I also have 
the problem (but not if I connect it to an earlier Fuseki release). Upon 
debugging, it appears that for some reason the HTTP request itself is taking a 
long time to complete. In fact, I'm not even getting anything in the Fuseki log 
for about a minute after the request is made, but once the request is made I 
immediately see a spike in CPU usage on the server. This doesn't appear to be a 
network latency issue since other access to the server isn't affected, it 
appears to be just this call. It would seem that Fuseki is spinning its wheels 
on something. 

I realize this may not be enough info for you to determine what is causing the 
problem, but I don't know how else to track down the issue. Using s-get I can 
get back the data quickly, which is strange since I though it would be doing 
the same thing as the getModel().

Thank you,
Elli

Reply via email to