Uploaded image for project: 'Apache Jena'
  1. Apache Jena
  2. JENA-1148

TransformFilterEquality incorrectly eliminates some optionals

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • Jena 3.1.0
    • ARQ

    Description

      For a query of the form:

      SELECT * {
        ?s ?p ?o
        OPTIONAL {
          FILTER(?o=<urn:x1>)
          BIND(true AS ?b)
        }
      }
      

      ARQ optimization incorrectly eliminates the whole OPTIONAL when the variable filtered on does not appear elsewhere inside the OPTIONAL block . This is because of the special case check called on line 120 of TransformFilterEquality.java, which sees that ?o is not used inside the block of the filter and thus (in this case incorrectly) deduces that it could never be <urn:x1>.

      Attachments

        Activity

          People

            andy Andy Seaborne
            jiemakel Eetu Mäkelä
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: