Details

      Description

      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.

        Gliffy Diagrams

          Attachments

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Activity

              People

              • Assignee:
                shawkins Steven Hawkins
                Reporter:
                shawkins Steven Hawkins
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: