Details

    • Type: Sub-task
    • Status: Closed
    • Priority: Minor
    • Resolution: Duplicate
    • Affects Version/s: 10.0.2.0
    • Fix Version/s: None
    • Component/s: SQL
    • Labels:
      None
    • Environment:
      generic
    • Urgency:
      Low

      Description

      I am separating this part of the bug from DERBY-808. This part of the fix can go into 10.2 release, while I would like to submit the first part of DERBY-808 to both 10.1 and trunk branches.

      Coding error in PredicateList.searchClauseTransitiveClosure. Also note, when the operands are switched, the type of the operation needs to change. For example, <ConstantNode> <LessThan> <ColumnReference> should change to <ColumnReference> <GreaterThan> <Constant>. Current code doesn's seem to do that either.

      if (left instanceof ColumnReference && right instanceof ConstantNode)

      { searchClauses.addElement(predicate); }

      else if (right instanceof ConstantNode && left instanceof ColumnReference)

      { // put the ColumnReference on the left to simplify things bcon.swapOperands(); searchClauses.addElement(predicate); }

      The second part of the check is incorrect. It should instead be like:

      else if (left instanceof ConstantNode && right instanceof ColumnReference)

      and while handling ParameterNodes. Also the swaping logic is not complete.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                bandaram Satheesh E. Bandaram
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: