Github user ravipesala commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2496#discussion_r202911646
--- Diff:
integration/spark-common-test/src/test/scala/org/apache/carbondata/integration/spark/testsuite/complexType/TestComplexDataType.scala
---
@@ -667,4 +667,15 @@ class TestComplexDataType extends QueryTest with
BeforeAndAfterAll {
checkAnswer(sql("select a.b from test where id=3 or
a.c=3"),Seq(Row(5),Row(2)))
}
+ test("test Filter as projection PushDown for more than one Struct column
Cases -1") {
+ sql("drop table if exists test")
+ sql("create table test (a struct<b:int, c:struct<d:int,e:int>>) stored
by 'carbondata'")
+ sql("insert into test select '1$2:3'")
+ checkAnswer(sql("select * from test"), Seq(Row(Row(1, Row(2, 3)))))
+ checkAnswer(sql("select a.b, a.c from test where a.c.e = 3"),
Seq(Row(1, Row(2, 3))))
+ checkAnswer(sql("select a.c.e from test where a.c.e = 3"), Seq(Row(3)))
+ checkAnswer(sql("select a.c.d from test where a.c.e = 3"), Seq(Row(2)))
--- End diff --
Verify the plan whether push down is happening or not
---