[
https://issues.apache.org/jira/browse/DERBY-2526?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12487471
]
Bryan Pendleton commented on DERBY-2526:
----------------------------------------
joinClauseTransitiveClosure is examining the two predicates:
b3.c8 = bvw2.c5
and
bvw2.c1 = b4.c7
However, in the second predicate, the ColumnReference for bvw2.c1 has
columnNumber = 5, so joinClauseTransitiveClosure, which matches up
the predicates based on tableNumber and columnNumber, thinks that
this is the predicate
bvw2.c5 = b4.c7
And, therefore, it computes the transitive closure to include the predicate
b3.c8 = b4.c7
So next I need to figure out why the columnNumber is wrong in the
leftOperand ColumnReference in the BinaryRelationalOperatorNode for
bvw2.c1 = b4.c7
> Wrong query results due to column ordering in UNION view
> --------------------------------------------------------
>
> Key: DERBY-2526
> URL: https://issues.apache.org/jira/browse/DERBY-2526
> Project: Derby
> Issue Type: Bug
> Components: SQL
> Affects Versions: 10.0.2.1, 10.1.3.1, 10.2.2.0, 10.3.0.0
> Reporter: Bryan Pendleton
> Assigned To: Bryan Pendleton
> Attachments: badQuery.log, derby-2526.sql, goodQuery.log
>
>
> I think both select statements in the attached repro script should return 1
> row, but in fact the first statement returns 1 row and the second returns
> zero rows.
> The only difference between the two statements is that the columns in the
> UNION view are listed in a different order (bvw vs. bvw2).
> This seems like a bug to me; the order of the columns in the view definition
> shouldn't matter, should it?
> As Army noted on the derby-dev list, the fact that this reproduces with 10.0
> means that it is not caused by some of the 10.2 optimizer changes. Something
> else is going wrong.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.