Equality comparison of JoinPredicate returns true even when JoinPredicate criteria is
different
-----------------------------------------------------------------------------------------------
Key: TEIID-695
URL:
https://jira.jboss.org/jira/browse/TEIID-695
Project: Teiid
Issue Type: Bug
Components: Query Engine
Affects Versions: 6.0.0, 6.1.0, 6.2.0
Reporter: Larry O'Leary
Assignee: Steven Hawkins
Priority: Minor
Fix For: 6.2.0
When comparing the following command objects the commands evaluate as equal when
performing c1.equals(c2) even though the criteria is different in the two commands:
c1 = SELECT bqt1.smalla.intkey, bqt1.smallb.intkey, bqt1.smalla.intnum, bqt1.smallb.intnum
FROM bqt1.smalla LEFT OUTER JOIN bqt1.smallb ON bqt1.smalla.intkey = bqt1.smallb.intkey
AND bqt1.smallb.intnum = 1
c2 = SELECT bqt1.smalla.intkey, bqt1.smallb.intkey, bqt1.smalla.intnum, bqt1.smallb.intnum
FROM bqt1.smalla LEFT OUTER JOIN bqt1.smallb ON bqt1.smalla.intkey = bqt1.smallb.intkey
This is due to the method com.metamatrix.query.sql.lang.JoinPredicate.equals(Object obj)
referencing itself when getting the criteria from itself and the obj being passed in:
...
List thisCrit = this.getJoinCriteria();
...
List otherCrit = this.getJoinCriteria();
...
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira