[teiid-issues] [JBoss JIRA] (TEIID-3201) Pushing a predicate when it is used in an order by statement in a window function

Bram Gadeyne (JIRA) issues at jboss.org
Thu Nov 6 09:21:29 EST 2014


Bram Gadeyne created TEIID-3201:
-----------------------------------

             Summary: Pushing a predicate when it is used in an order by statement in a window function
                 Key: TEIID-3201
                 URL: https://issues.jboss.org/browse/TEIID-3201
             Project: Teiid
          Issue Type: Bug
    Affects Versions: 8.7
            Reporter: Bram Gadeyne
            Assignee: Steven Hawkins


The issue was described in the following community post: https://developer.jboss.org/thread/249972

I have a table that contains some temperature values. I'd like to make some time series selecting the previous value by joining all previous values and selecting the first previous value using the rank function.

e.g.

select v.*
from(
    select mv1.admissionid, mv1.time as temptime, mv1.value as degrees, mv2.time as previoustime, mv2.value as previousdegrees,
        rank() over(partition by mv1.admissionid, mv1.time order by mv2.time desc) as rang
    from cos2_monitorvalue mv1
    left join cos2_monitorvalue mv2 on
        mv2.admissionid = mv1.admissionid and
        mv2.time < mv1.time and
        mv2.variableid = mv1.variableid
    where mv1.variableid = 'TEMPCENTR'
) v
where v.rang = 1 and
v.admissionid = 11111

Is there a way to tell Teiid that v.admissionid should be used when selecting rows from mv1? 

Reply from Steven Hawkins on this question:

The current logic (8.4+) is checking if the predicate is compatible with the partition, but if there is an ordering on the window function then the predicate won't be pushed.  This is too strict for the case that you have where the predicate is just over the partition - if it were against any other columns it could alter the aggregate values.  Can you convert this to an issue? 



--
This message was sent by Atlassian JIRA
(v6.3.8#6338)


More information about the teiid-issues mailing list