ad-freiburg / qlever

Very fast SPARQL Engine, which can handle very large knowledge graphs like the complete Wikidata, offers context-sensitive autocompletion for SPARQL queries, and allows combination with text search. It's faster than engines like Blazegraph or Virtuoso, especially for queries involving large result sets.
Apache License 2.0
417 stars 52 forks source link

Regression in aggregate function evaluation? #1508

Closed LorenzBuehmann closed 1 month ago

LorenzBuehmann commented 1 month ago

Hi,

one of your registered example queries doesn't work anymore on your public endpoint:

link to query

PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX p: <http://www.wikidata.org/prop/>
PREFIX psn: <http://www.wikidata.org/prop/statement/value-normalized/>
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?mountain ?mountain_label
       (MAX(?elevation) AS ?max_elevation)
       (SAMPLE(?image) AS ?sample_image)
       (SAMPLE(?coordinates) AS ?sample_coordinates) WHERE {
  ?mountain wdt:P31 wd:Q8502 .
  ?mountain p:P2044/psn:P2044/wikibase:quantityAmount ?elevation .
  ?mountain wdt:P625 ?coordinates .
  ?mountain rdfs:label ?mountain_label .
  FILTER (LANG(?mountain_label) = "en")
  FILTER(?elevation >= 8000.0) .
  OPTIONAL { ?mountain wdt:P18 ?image }
}
GROUP BY ?mountain ?mountain_label
ORDER BY DESC(?max_elevation)

error message

Error processing query
isDistinct() maybe only called for aggregate expressions. If this is an aggregate expression, then the implementation of isDistinct() is missing for this expression. Please report this to the developers.. In file "/local/data-ssd/qlever/qlever-code/src/engine/sparqlExpressions/SparqlExpression.cpp " at line 52

I can see changes in code on that mentioned class, not sure if those are already deployed in your demonstrator and because of that it fails currently?

Thanks, Lorenz

hannahbast commented 1 month ago

@LorenzBuehmann Thanks, Lorenz, by accident there was an older version of the code running. I just restarted https://qlever.cs.uni-freiburg.de/wikidata with the current master and now the query works fine again.

LorenzBuehmann commented 1 month ago

Ok, thank's for the quick response and fix - then I can close this issue which technically never did exist.