Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
TDB sets filter placement within BGPs to false (it does it itself).
placePropertyFunctionProcedure does not handle the "no change" case properly. This arises when
placeOrWrapBGP => wrapBGP which happens in the TDB case but not memory graphs.placeBGP happens to always rebuild, wrapBGP does not.
SELECT ?s WHERE { ?s ?p ?o . ?s <http://www.w3.org/2000/01/rdf-schema#member> ?m . FILTER (!bound(?test)) }
causes:
org.apache.jena.sparql.algebra.optimize.TransformFilterPlacement.placePropertyFunctionProcedure(TransformFilterPlacement.java:453) at org.apache.jena.sparql.algebra.optimize.TransformFilterPlacement.placePropertyFunction(TransformFilterPlacement.java:432) at org.apache.jena.sparql.algebra.optimize.TransformFilterPlacement.transform(TransformFilterPlacement.java:200) at org.apache.jena.sparql.algebra.optimize.TransformFilterPlacement.transform(TransformFilterPlacement.java:159) at org.apache.jena.sparql.algebra.TransformWrapper.transform(TransformWrapper.java:59) ...