]
Johnathon Lee updated TEIID-4417:
---------------------------------
Fix Version/s: 8.12.7.6_3
Issues with OData query generation logic
----------------------------------------
Key: TEIID-4417
URL:
https://issues.jboss.org/browse/TEIID-4417
Project: Teiid
Issue Type: Bug
Components: OData
Affects Versions: 8.12
Reporter: Steven Hawkins
Assignee: Steven Hawkins
Priority: Critical
Fix For: 9.1, 9.0.4, 8.12.7.6_3
When the ODataExpressionToSQLBuilder changes the ctxExpression, ctxQuery and other state
it needs to revert back, but currently does not.
For example reordering the predicate:
/odata4/vdb/PM1/G1?$filter=e1 eq $root/G1(1)/e1
to
/odata4/vdb/PM1/G1?$filter=$root/G1(1)/e1 eq e1
results in a source query:
SELECT g0.e1, g0.e2, g0.e3 FROM PM1.G1 AS g0 WHERE (SELECT g1.e1 FROM PM1.G1 AS g1 WHERE
g1.e2 = 1) = (SELECT g1.e1 FROM PM1.G1 AS g1 WHERE g1.e2 = 1) ORDER BY g0.e2
That has both sides of the predicate as subqueries.