Details
-
Type:
Bug
-
Status: Done
-
Priority:
Highest
-
Resolution: Done
-
Affects Version/s: None
-
Fix Version/s: BLAZEGRAPH_RELEASE_1_5_2
-
Component/s: Bigdata SAIL, RemoteRepository
-
Labels:None
Description
prepare*Query methods from BigdataSailRemoteRepositoryConnection return query objects that support only evaluate() method, other methods throw UnsupportedOperationException. There are TODOs about implementing that:
* TODO Implement buffering of adds and removes so that we can turn off * auto-commit. * TODO Fix all the Query objects (TupleQuery, GraphQuery, * BooleanQuery) to support the various possible operations on them, such as * setting a binding.
I found this when I tried to use evaluate(RDFHandler/TupleQueryResultHandler) and setBinding() methods.
Why I need them:
- setBinding() is just convenient to use
- e.g. you don't have to worry about escaping while manually constructing bindings in SPARQL. And our exising code uses this method a lot.
- evaluate() with callback can be more efficient because it can avoid using additional thread from executor to parse result and use calling thread to do that at the same time handling the results.
Also we will probably need setMaxQueryTime().
This is about READ_CACHE branch rev 7217.
Attachments
Issue Links
- relates to
-
BLZG-1099 BigdataSailUpdate.execute() commits the connection
- Open
-
BLZG-1225 Support begin(), prepare(), isActive() in BigdataSailConnection
-
- In Progress
-
-
BLZG-753 Result of BigdataSailRemoteRepositoryConnection.getStatements() and export() do not preserve statement context.
-
- Done
-
-
BLZG-1210 Optimize hasStatement()
-
- Open
-
-
BLZG-1266 Create stress test for REST API with coverage of all methods and abort code paths.
-
- In Progress
-
-
BLZG-1619 Support Sesame2 repository queries Timeout parameter
-
- Done
-