[teiid-issues] [JBoss JIRA] (TEIID-2902) More incremental join when a limit is present

Steven Hawkins (JIRA) issues at jboss.org
Sun Mar 23 08:07:12 EDT 2014


     [ https://issues.jboss.org/browse/TEIID-2902?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steven Hawkins updated TEIID-2902:
----------------------------------

        Summary: More incremental join when a limit is present  (was: LIMIT is not passing to subqueries)
    Description: 
For SQL like:

SELECT 
     t1.column1, 
     t2.column1
FROM 
     schema1.table1 t1, 
     schema2.table1 t2
WHERE 
     t1.column2=t2.column2
LIMIT 100

Teiid may get the whole schema1.table1 content and the whole schema2.table1 content, do the join in memory and then, limit the resultset to 100 records.

However, I think teiid can fetch smaller set of data then do a join.  If the join result set is less than number of rows asking,  keep fetching next set of data and do a join until hits the limit number.

  was:
it does not push down the limit to the underlying datasources. What I means is that if SQL looks:

SELECT 
     t1.column1, 
     t2.column1
FROM 
     schema1.table1 t1, 
     schema2.table1 t2
WHERE 
     t1.column2=t2.column2
LIMIT 100

But Teiid will ask for the whole schema1.table1 content and the whole schema2.table1 content, do the join in memory and then, limit the resultset to 100 records.

However, I think teiid can fetch smaller set of data then do a join.  If the join result set is less than number of rows asking,  keep fetching next set of data and do a join until hits the limit number.


    
> More incremental join when a limit is present
> ---------------------------------------------
>
>                 Key: TEIID-2902
>                 URL: https://issues.jboss.org/browse/TEIID-2902
>             Project: Teiid
>          Issue Type: Enhancement
>          Components: Query Engine
>    Affects Versions: 8.7
>            Reporter: Ivan Chan
>            Assignee: Steven Hawkins
>
> For SQL like:
> SELECT 
>      t1.column1, 
>      t2.column1
> FROM 
>      schema1.table1 t1, 
>      schema2.table1 t2
> WHERE 
>      t1.column2=t2.column2
> LIMIT 100
> Teiid may get the whole schema1.table1 content and the whole schema2.table1 content, do the join in memory and then, limit the resultset to 100 records.
> However, I think teiid can fetch smaller set of data then do a join.  If the join result set is less than number of rows asking,  keep fetching next set of data and do a join until hits the limit number.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the teiid-issues mailing list