Lucas_Werkmeister_WMDE created this task.
Lucas_Werkmeister_WMDE added projects: Wikidata-Query-Service, Wikidata.
Herald added subscribers: PokestarFan, Aklapper.
Herald added a project: Discovery.

TASK DESCRIPTION

Minimal query:

SELECT * { BIND(EXISTS { MINUS { ?a p:1/p:2 ?c. } } AS ?t) }



Caused by: java.lang.UnsupportedOperationException: child:
PropertyPathNode(VarNode(a), com.bigdata.rdf.sparql.ast.PathNode(PathAlternative), VarNode(c)) [scope=DEFAULT_CONTEXTS]

	at com.bigdata.rdf.sparql.ast.eval.AST2BOpUtility.convertJoinGroup(AST2BOpUtility.java:3383)
	at com.bigdata.rdf.sparql.ast.eval.AST2BOpUtility.convertJoinGroupOrUnion(AST2BOpUtility.java:2586)
	at com.bigdata.rdf.sparql.ast.eval.AST2BOpUtility.addSubgroup(AST2BOpUtility.java:4352)
	at com.bigdata.rdf.sparql.ast.eval.AST2BOpUtility.convertJoinGroup(AST2BOpUtility.java:3342)
	at com.bigdata.rdf.sparql.ast.eval.AST2BOpUtility.convertJoinGroupOrUnion(AST2BOpUtility.java:2586)
	at com.bigdata.rdf.sparql.ast.eval.AST2BOpUtility.addExistsSubqueryFast(AST2BOpUtility.java:2426)
	at com.bigdata.rdf.sparql.ast.eval.AST2BOpUtility.addExistsSubquery(AST2BOpUtility.java:2253)
	at com.bigdata.rdf.sparql.ast.eval.AST2BOpUtility.convertJoinGroup(AST2BOpUtility.java:3296)
	at com.bigdata.rdf.sparql.ast.eval.AST2BOpUtility.convertJoinGroupOrUnion(AST2BOpUtility.java:2586)
	at com.bigdata.rdf.sparql.ast.eval.AST2BOpUtility.convertQueryBaseWithScopedVars(AST2BOpUtility.java:474)
	at com.bigdata.rdf.sparql.ast.eval.AST2BOpUtility.convert(AST2BOpUtility.java:287)
	at com.bigdata.rdf.sparql.ast.eval.ASTEvalHelper.optimizeQuery(ASTEvalHelper.java:426)
	at com.bigdata.rdf.sparql.ast.eval.ASTEvalHelper.evaluateTupleQuery(ASTEvalHelper.java:212)
	…

Looks like a bug to me (almost certainly upstream).

Here’s the unreduced query:

# % of unsourced religion statements by religion
SELECT ?religion ?religionLabel ?count ?anyReferencedCount ?realReferencedCount (100*?anyReferencedCount/?count AS ?anyPercent) (100*?realReferencedCount/?count AS ?realPercent) WITH {
  SELECT ?religion (COUNT(?statement) AS ?count) (SUM(?anyeferences) AS ?anyReferencedCount) (SUM(?realReferences) AS ?realReferencedCount) WHERE {
    ?item p:P140 ?statement.
    ?statement ps:P140 ?religion.
    BIND(IF(EXISTS { ?statement prov:wasDerivedFrom ?reference. }, 1, 0) AS ?anyReferences)
    BIND(IF(EXISTS { ?statement prov:wasDerivedFrom ?reference. MINUS { ?reference pr:P143/wdt:P31 wd:Q10876391. } }, 1, 0) AS ?realReferences)
  }
  GROUP BY ?religion
} AS %results WHERE {
  INCLUDE %results.
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
ORDER BY DESC(?count)

TASK DETAIL
https://phabricator.wikimedia.org/T173243

EMAIL PREFERENCES
https://phabricator.wikimedia.org/settings/panel/emailpreferences/

To: Lucas_Werkmeister_WMDE
Cc: Aklapper, Smalyshev, Lucas_Werkmeister_WMDE, PokestarFan, GoranSMilovanovic, QZanden, EBjune, merbst, Avner, debt, Gehel, Jonas, FloNight, Xmlizer, Izno, jkroll, Wikidata-bugs, Jdouglas, aude, Tobias1984, Manybubbles, Mbch331
_______________________________________________
Wikidata-bugs mailing list
Wikidata-bugs@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata-bugs

Reply via email to