You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We are using RDF4J Java API to interact with QLever SPARQL endpoint. It has an API to retrieve all statements from one or multiple named graphs. At the moment it generates a query that is a valid but, in my opinion, slightly meaningless SPARQL query. See eclipse-rdf4j/rdf4j#5245
So for java call con.getStatements(null, null, null, ctx), where ctx is http://www.researchspace.org/resource/vocab/status. It generates:
It can be reproduced with any data, that query plan that I've attached is for the dataset that doesn't have the graph that was specified in FROM clause. When I try to execute the same query on your wikidata endpoint - https://qlever.cs.uni-freiburg.de/wikidata/h6dQ4E
I get:
Tried to allocate 162.2 GB, but only 20 GB were available. Clear the cache or allow more memory for QLever during startup
Actually the same issue is when only FROM NAMED is specified like:
SELECT *
FROM NAMED <http://www.researchspace.org/resource/vocab/status>
WHERE { ?s ?p ?o . OPTIONAL { GRAPH ?ctx { ?s ?p ?o } } }
According to standard:
If there is no FROM clause, but there is one or more FROM NAMED clauses, then the dataset includes an empty graph for the default graph.
But qlever is scanning the whole index:
which result into:
Tried to allocate 162.2 GB, but only 20 GB were available. Clear the cache or allow more memory for QLever during startup
We are using RDF4J Java API to interact with QLever SPARQL endpoint. It has an API to retrieve all statements from one or multiple named graphs. At the moment it generates a query that is a valid but, in my opinion, slightly meaningless SPARQL query. See eclipse-rdf4j/rdf4j#5245
So for java call
con.getStatements(null, null, null, ctx)
, where ctx ishttp://www.researchspace.org/resource/vocab/status
. It generates:and then sets a
default-graph-uri
query parameter, which is equivalent to:For such query qlever is doing a full index scan:
My understanding is that when
FROM
is specified in a query, butFROM NAMED
is not specified, thenGRAPH
clause is essentially no-op.https://www.w3.org/TR/sparql11-query/#unnamedGraph
The text was updated successfully, but these errors were encountered: