Jaehwa Jung created TAJO-787:
--------------------------------

             Summary: SubQuery field is unavailable for SelectionFilter
                 Key: TAJO-787
                 URL: https://issues.apache.org/jira/browse/TAJO-787
             Project: Tajo
          Issue Type: Bug
          Components: planner/optimizer
            Reporter: Jaehwa Jung
            Assignee: Jaehwa Jung


I found a bug for FilterPushDownRule as follows:
* Schema
{code:xml}
default> \d table1;

table name: default.table1
table path: hdfs://localhost:9010/tajo/warehouse/table1
store type: CSV
number of rows: 0
volume: 60 B
Options: 
        'csvfile.delimiter'='|'

schema: 
id      INT4
name    TEXT
score   FLOAT4
type    TEXT


default> \d table2;

table name: default.table2
table path: hdfs://localhost:9010/tajo/warehouse/table2
store type: CSV
number of rows: 0
volume: 61 B
Options: 
        'csvfile.delimiter'='|'

schema: 
id      INT4
name    TEXT
score   FLOAT4
type    TEXT
{code}

* SQL
{code:xml}
select t1.id, t1.name, t1.cnt
from (
  select a.id, a.name, count(*) as cnt
  from table1 a
  group by a.id, a.name
) t1
where t1.cnt > 0
{code}

* Error Message
{code:xml}
java.lang.NullPointerException
        at org.apache.tajo.catalog.Column.equals(Column.java:115)
        at java.util.ArrayList.indexOf(ArrayList.java:216)
        at java.util.ArrayList.contains(ArrayList.java:199)
        at java.util.AbstractCollection.containsAll(AbstractCollection.java:278)
        at org.apache.tajo.catalog.Schema.containsAll(Schema.java:269)
        at 
org.apache.tajo.engine.planner.LogicalPlanner.checkIfBeEvaluatedAtRelation(LogicalPlanner.java:1575)
        at 
org.apache.tajo.engine.planner.rewrite.FilterPushDownRule.visitScan(FilterPushDownRule.java:315)
        at 
org.apache.tajo.engine.planner.rewrite.FilterPushDownRule.visitScan(FilterPushDownRule.java:35)

{code}
If I remove where clause, it will run successfully.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to