[ https://issues.apache.org/jira/browse/CARBONDATA-4243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Indhumathi resolved CARBONDATA-4243. ------------------------------------ Fix Version/s: 2.3.0 Resolution: Fixed > Select filter query with to_date in filter fails for table with > column_meta_cache configured also having SI > ----------------------------------------------------------------------------------------------------------- > > Key: CARBONDATA-4243 > URL: https://issues.apache.org/jira/browse/CARBONDATA-4243 > Project: CarbonData > Issue Type: Bug > Components: sql > Affects Versions: 2.2.0 > Environment: Spark 3.1.1, Spark 2.4.5 > Reporter: Chetan Bhat > Priority: Minor > Fix For: 2.3.0 > > Time Spent: 9h 10m > Remaining Estimate: 0h > > Create table with column_meta_cache, create secondary indexes and load data > to table. > Execute the Select filter query with to_date in filter. > CREATE TABLE uniqdata (CUST_ID int,CUST_NAME String,ACTIVE_EMUI_VERSION > string, DOB timestamp, DOJ timestamp, BIGINT_COLUMN1 bigint,BIGINT_COLUMN2 > bigint,DECIMAL_COLUMN1 decimal(30,10), DECIMAL_COLUMN2 > decimal(36,36),Double_COLUMN1 double, Double_COLUMN2 double,INTEGER_COLUMN1 > int) stored as carbondata > TBLPROPERTIES('COLUMN_META_CACHE'='CUST_NAME,ACTIVE_EMUI_VERSION,DOB,DOJ'); > CREATE INDEX indextable2 ON TABLE uniqdata (DOB) AS 'carbondata'; > CREATE INDEX indextable3 ON TABLE uniqdata (DOJ) AS 'carbondata'; > LOAD DATA INPATH 'hdfs://hacluster/chetan/2000_UniqData.csv' into table > uniqdata OPTIONS('DELIMITER'=',' , > 'QUOTECHAR'='"','BAD_RECORDS_ACTION'='FORCE','FILEHEADER'='CUST_ID,CUST_NAME,ACTIVE_EMUI_VERSION,DOB,DOJ,BIGINT_COLUMN1,BIGINT_COLUMN2,DECIMAL_COLUMN1,DECIMAL_COLUMN2,Double_COLUMN1,Double_COLUMN2,INTEGER_COLUMN1'); > > *Issue: Select filter query with to_date in filter fails for table with > column_meta_cache configured also having SI* > 0: jdbc:hive2://10.21.19.14:23040/default> select > max(to_date(DOB)),min(to_date(DOB)),count(to_date(DOB)) from uniqdata where > to_date(DOB)='1975-06-11' or to_date(Dn select > max(to_date(DOB)),min(to_date(DOB)),count(to_date(DOB)) from uniqdata where > to_date(DOB)='1975-06-11' or to_date(DOB)='1975-06-23'; > Error: org.apache.hive.service.cli.HiveSQLException: Error running query: > org.apache.spark.sql.catalyst.errors.package$TreeNodeException: makeCopy, > tree: > !BroadCastSIFilterPushJoin [none#0|#0], [none#1|#1], Inner, BuildRight > :- *(6) ColumnarToRow > : +- Scan CarbonDatasourceHadoopRelation chetan.uniqdata[dob#847024|#847024] > Batched: true, DirectScan: false, PushedFilters: [((cast(input[0] as date) = > 1987) or (cast(in9))], ReadSchema: [dob] > +- *(8) HashAggregate(keys=[positionReference#847161|#847161], functions=[], > output=[positionReference#847161|#847161]) > +- ReusedExchange [positionReference#847161|#847161], Exchange > hashpartitioning(positionReference#847161, 200), ENSURE_REQUIREMENTS, > [id=#195473|#195473] > at > org.apache.spark.sql.hive.thriftserver.SparkExecuteStatementOperation.org$apache$spark$sql$hive$thriftserver$SparkExecuteStatementOperation$$execute(Sparation.scala:361) > at > org.apache.spark.sql.hive.thriftserver.SparkExecuteStatementOperation$$anon$2$$anon$3.$anonfun$run$2(SparkExecuteStatementOperation.scala:263) > at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23) > at > org.apache.spark.sql.hive.thriftserver.SparkOperation.withLocalProperties(SparkOperation.scala:78) > at > org.apache.spark.sql.hive.thriftserver.SparkOperation.withLocalProperties$(SparkOperation.scala:62) > at > org.apache.spark.sql.hive.thriftserver.SparkExecuteStatementOperation.withLocalProperties(SparkExecuteStatementOperation.scala:43) > at > org.apache.spark.sql.hive.thriftserver.SparkExecuteStatementOperation$$anon$2$$anon$3.run(SparkExecuteStatementOperation.scala:263) > at > org.apache.spark.sql.hive.thriftserver.SparkExecuteStatementOperation$$anon$2$$anon$3.run(SparkExecuteStatementOperation.scala:258) > at java.security.AccessController.doPrivileged(Native Method) > at javax.security.auth.Subject.doAs(Subject.java:422) > at > org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1746) > at > org.apache.spark.sql.hive.thriftserver.SparkExecuteStatementOperation$$anon$2.run(SparkExecuteStatementOperation.scala:272) > at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > at java.util.concurrent.FutureTask.run(FutureTask.java:266) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: org.apache.spark.sql.catalyst.errors.package$TreeNodeException: > makeCopy, tree: > !BroadCastSIFilterPushJoin [none#0|#0], [none#1|#1], Inner, BuildRight > :- *(6) ColumnarToRow > : +- Scan CarbonDatasourceHadoopRelation chetan.uniqdata[dob#847024|#847024] > Batched: true, DirectScan: false, PushedFilters: [((cast(input[0] as date) = > 1987) or (cast(in9))], ReadSchema: [dob] > +- *(8) HashAggregate(keys=[positionReference#847161|#847161], functions=[], > output=[positionReference#847161|#847161]) > +- ReusedExchange [positionReference#847161|#847161], Exchange > hashpartitioning(positionReference#847161, 200), ENSURE_REQUIREMENTS, > [id=#195473|#195473] > at org.apache.spark.sql.catalyst.errors.package$.attachTree(package.scala:56) > at org.apache.spark.sql.catalyst.trees.TreeNode.makeCopy(TreeNode.scala:468) > at org.apache.spark.sql.catalyst.trees.TreeNode.makeCopy(TreeNode.scala:457) > at org.apache.spark.sql.execution.SparkPlan.makeCopy(SparkPlan.scala:87) > at org.apache.spark.sql.execution.SparkPlan.makeCopy(SparkPlan.scala:58) > at > org.apache.spark.sql.catalyst.trees.TreeNode.withNewChildren(TreeNode.scala:294) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.doCanonicalize(QueryPlan.scala:405) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.canonicalized$lzycompute(QueryPlan.scala:373) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.canonicalized(QueryPlan.scala:372) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.$anonfun$doCanonicalize$1(QueryPlan.scala:387) > at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:238) > at scala.collection.immutable.List.foreach(List.scala:392) > at scala.collection.TraversableLike.map(TraversableLike.scala:238) > at scala.collection.TraversableLike.map$(TraversableLike.scala:231) > at scala.collection.immutable.List.map(List.scala:298) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.doCanonicalize(QueryPlan.scala:387) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.canonicalized$lzycompute(QueryPlan.scala:373) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.canonicalized(QueryPlan.scala:372) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.$anonfun$doCanonicalize$1(QueryPlan.scala:387) > at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:238) > at scala.collection.immutable.List.foreach(List.scala:392) > at scala.collection.TraversableLike.map(TraversableLike.scala:238) > at scala.collection.TraversableLike.map$(TraversableLike.scala:231) > at scala.collection.immutable.List.map(List.scala:298) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.doCanonicalize(QueryPlan.scala:387) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.canonicalized$lzycompute(QueryPlan.scala:373) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.canonicalized(QueryPlan.scala:372) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.$anonfun$doCanonicalize$1(QueryPlan.scala:387) > at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:238) > at scala.collection.immutable.List.foreach(List.scala:392) > at scala.collection.TraversableLike.map(TraversableLike.scala:238) > at scala.collection.TraversableLike.map$(TraversableLike.scala:231) > at scala.collection.immutable.List.map(List.scala:298) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.doCanonicalize(QueryPlan.scala:387) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.canonicalized$lzycompute(QueryPlan.scala:373) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.canonicalized(QueryPlan.scala:372) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.$anonfun$doCanonicalize$1(QueryPlan.scala:387) > at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:238) > at scala.collection.immutable.List.foreach(List.scala:392) > at scala.collection.TraversableLike.map(TraversableLike.scala:238) > at scala.collection.TraversableLike.map$(TraversableLike.scala:231) > at scala.collection.immutable.List.map(List.scala:298) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.doCanonicalize(QueryPlan.scala:387) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.canonicalized$lzycompute(QueryPlan.scala:373) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.canonicalized(QueryPlan.scala:372) > at > org.apache.spark.sql.catalyst.plans.QueryPlan.sameResult(QueryPlan.scala:420) > at > org.apache.spark.sql.execution.exchange.ReuseExchange$$anonfun$org$apache$spark$sql$execution$exchange$ReuseExchange$$reuse$1$1.$anonfun$applyOrElse$3(Ex > at > org.apache.spark.sql.execution.exchange.ReuseExchange$$anonfun$org$apache$spark$sql$execution$exchange$ReuseExchange$$reuse$1$1.$anonfun$applyOrElse$3$ad115) > at > scala.collection.IndexedSeqOptimized.$anonfun$find$1(IndexedSeqOptimized.scala:53) > at > scala.collection.IndexedSeqOptimized.$anonfun$find$1$adapted(IndexedSeqOptimized.scala:53) > at > scala.collection.IndexedSeqOptimized.segmentLength(IndexedSeqOptimized.scala:198) > at > scala.collection.IndexedSeqOptimized.segmentLength$(IndexedSeqOptimized.scala:195) > at scala.collection.mutable.ArrayBuffer.segmentLength(ArrayBuffer.scala:49) > at scala.collection.GenSeqLike.prefixLength(GenSeqLike.scala:98) > at scala.collection.GenSeqLike.prefixLength$(GenSeqLike.scala:98) > at scala.collection.AbstractSeq.prefixLength(Seq.scala:45) > at scala.collection.IndexedSeqOptimized.find(IndexedSeqOptimized.scala:53) > at scala.collection.IndexedSeqOptimized.find$(IndexedSeqOptimized.scala:52) > at scala.collection.mutable.ArrayBuffer.find(ArrayBuffer.scala:49) > at > org.apache.spark.sql.execution.exchange.ReuseExchange$$anonfun$org$apache$spark$sql$execution$exchange$ReuseExchange$$reuse$1$1.applyOrElse(Exchange.scal > at > org.apache.spark.sql.execution.exchange.ReuseExchange$$anonfun$org$apache$spark$sql$execution$exchange$ReuseExchange$$reuse$1$1.applyOrElse(Exchange.scal > at > scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:38) > at > org.apache.spark.sql.execution.exchange.ReuseExchange$$anonfun$apply$1.applyOrElse(Exchange.scala:129) > at > org.apache.spark.sql.execution.exchange.ReuseExchange$$anonfun$apply$1.applyOrElse(Exchange.scala:128) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformUp$4(TreeNode.scala:345) > at > org.apache.spark.sql.catalyst.trees.CurrentOrigin$.withOrigin(TreeNode.scala:73) > at > org.apache.spark.sql.catalyst.trees.TreeNode.transformUp(TreeNode.scala:345) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformUp$1(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$mapChildren$1(TreeNode.scala:407) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:243) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:405) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:358) > at > org.apache.spark.sql.catalyst.trees.TreeNode.transformUp(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformUp$1(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$mapChildren$1(TreeNode.scala:407) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:243) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:405) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:358) > at > org.apache.spark.sql.catalyst.trees.TreeNode.transformUp(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformUp$1(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$mapChildren$1(TreeNode.scala:407) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:243) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:405) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:358) > at > org.apache.spark.sql.catalyst.trees.TreeNode.transformUp(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformUp$1(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChild$2(TreeNode.scala:376) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$mapChildren$4(TreeNode.scala:437) > at scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:238) > at scala.collection.immutable.List.foreach(List.scala:392) > at scala.collection.TraversableLike.map(TraversableLike.scala:238) > at scala.collection.TraversableLike.map$(TraversableLike.scala:231) > at scala.collection.immutable.List.map(List.scala:298) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$mapChildren$1(TreeNode.scala:437) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:243) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:405) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:358) > at > org.apache.spark.sql.catalyst.trees.TreeNode.transformUp(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformUp$1(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$mapChildren$1(TreeNode.scala:407) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:243) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:405) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:358) > at > org.apache.spark.sql.catalyst.trees.TreeNode.transformUp(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformUp$1(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$mapChildren$1(TreeNode.scala:407) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:243) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:405) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:358) > at > org.apache.spark.sql.catalyst.trees.TreeNode.transformUp(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformUp$1(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$mapChildren$1(TreeNode.scala:407) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:243) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:405) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:358) > at > org.apache.spark.sql.catalyst.trees.TreeNode.transformUp(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformUp$1(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$mapChildren$1(TreeNode.scala:407) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:243) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:405) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:358) > at > org.apache.spark.sql.catalyst.trees.TreeNode.transformUp(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformUp$1(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$mapChildren$1(TreeNode.scala:407) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:243) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:405) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:358) > at > org.apache.spark.sql.catalyst.trees.TreeNode.transformUp(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformUp$1(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$mapChildren$1(TreeNode.scala:407) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:243) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:405) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:358) > at > org.apache.spark.sql.catalyst.trees.TreeNode.transformUp(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformUp$1(TreeNode.scala:338) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$mapChildren$1(TreeNode.scala:407) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapProductIterator(TreeNode.scala:243) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:405) > at > org.apache.spark.sql.catalyst.trees.TreeNode.mapChildren(TreeNode.scala:358) > at > org.apache.spark.sql.catalyst.trees.TreeNode.transformUp(TreeNode.scala:338) > at > org.apache.spark.sql.execution.exchange.ReuseExchange$.apply(Exchange.scala:128) > at > org.apache.spark.sql.execution.exchange.ReuseExchange$.apply(Exchange.scala:102) > at > org.apache.spark.sql.execution.QueryExecution$.$anonfun$prepareForExecution$1(QueryExecution.scala:372) > at scala.collection.LinearSeqOptimized.foldLeft(LinearSeqOptimized.scala:126) > at > scala.collection.LinearSeqOptimized.foldLeft$(LinearSeqOptimized.scala:122) > at scala.collection.immutable.List.foldLeft(List.scala:89) > at > org.apache.spark.sql.execution.QueryExecution$.prepareForExecution(QueryExecution.scala:371) > at > org.apache.spark.sql.execution.QueryExecution.$anonfun$executedPlan$1(QueryExecution.scala:117) > at > org.apache.spark.sql.catalyst.QueryPlanningTracker.measurePhase(QueryPlanningTracker.scala:111) > at > org.apache.spark.sql.execution.QueryExecution.$anonfun$executePhase$1(QueryExecution.scala:143) > at org.apache.spark.sql.SparkSession.withActive(SparkSession.scala:772) > at > org.apache.spark.sql.execution.QueryExecution.executePhase(QueryExecution.scala:143) > at > org.apache.spark.sql.execution.QueryExecution.executedPlan$lzycompute(QueryExecution.scala:117) > at > org.apache.spark.sql.execution.QueryExecution.executedPlan(QueryExecution.scala:110) > at > org.apache.spark.sql.execution.QueryExecution.$anonfun$writePlans$5(QueryExecution.scala:225) > at org.apache.spark.sql.catalyst.plans.QueryPlan$.append(QueryPlan.scala:487) > at > org.apache.spark.sql.execution.QueryExecution.writePlans(QueryExecution.scala:225) > at > org.apache.spark.sql.execution.QueryExecution.toString(QueryExecution.scala:240) > at > org.apache.spark.sql.execution.QueryExecution.toString(QueryExecution.scala:233) > at > org.apache.spark.sql.hive.thriftserver.SparkExecuteStatementOperation.org$apache$spark$sql$hive$thriftserver$SparkExecuteStatementOperation$$execute(Sparation.scala:328) > ... 16 more > Caused by: java.lang.reflect.InvocationTargetException > at sun.reflect.GeneratedConstructorAccessor757.newInstance(Unknown Source) > at > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) > at java.lang.reflect.Constructor.newInstance(Constructor.java:423) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$makeCopy$7(TreeNode.scala:501) > at > org.apache.spark.sql.catalyst.trees.CurrentOrigin$.withOrigin(TreeNode.scala:73) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$makeCopy$1(TreeNode.scala:500) > at org.apache.spark.sql.catalyst.errors.package$.attachTree(package.scala:52) > ... 175 more > Caused by: java.lang.NullPointerException > at > org.apache.spark.sql.CarbonDataSourceScanHelper.indexFilter$lzycompute(CarbonDataSourceScanHelper.scala:62) > at > org.apache.spark.sql.CarbonDataSourceScanHelper.indexFilter(CarbonDataSourceScanHelper.scala:61) > at > org.apache.spark.sql.CarbonDataSourceScanHelper.inputRDD$lzycompute(CarbonDataSourceScanHelper.scala:100) > at > org.apache.spark.sql.CarbonDataSourceScanHelper.inputRDD(CarbonDataSourceScanHelper.scala:96) > at > org.apache.spark.sql.execution.strategy.CarbonDataSourceScan.inputRDDs(CarbonDataSourceScan.scala:99) > at > org.apache.spark.sql.secondaryindex.joins.BroadCastSIFilterPushJoin$$anonfun$1.applyOrElse(BroadCastSIFilterPushJoin.scala:126) > at > org.apache.spark.sql.secondaryindex.joins.BroadCastSIFilterPushJoin$$anonfun$1.applyOrElse(BroadCastSIFilterPushJoin.scala:125) > at scala.PartialFunction$Lifted.apply(PartialFunction.scala:228) > at scala.PartialFunction$Lifted.apply(PartialFunction.scala:224) > at > org.apache.spark.sql.catalyst.trees.TreeNode.collectFirst(TreeNode.scala:231) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$collectFirst$3(TreeNode.scala:232) > at scala.Option.orElse(Option.scala:447) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$collectFirst$2(TreeNode.scala:232) > at scala.collection.LinearSeqOptimized.foldLeft(LinearSeqOptimized.scala:126) > at > scala.collection.LinearSeqOptimized.foldLeft$(LinearSeqOptimized.scala:122) > at scala.collection.immutable.List.foldLeft(List.scala:89) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$collectFirst$1(TreeNode.scala:232) > at scala.Option.orElse(Option.scala:447) > at > org.apache.spark.sql.catalyst.trees.TreeNode.collectFirst(TreeNode.scala:232) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$collectFirst$3(TreeNode.scala:232) > at scala.Option.orElse(Option.scala:447) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$collectFirst$2(TreeNode.scala:232) > at scala.collection.LinearSeqOptimized.foldLeft(LinearSeqOptimized.scala:126) > at > scala.collection.LinearSeqOptimized.foldLeft$(LinearSeqOptimized.scala:122) > at scala.collection.immutable.List.foldLeft(List.scala:89) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$collectFirst$1(TreeNode.scala:232) > at scala.Option.orElse(Option.scala:447) > at > org.apache.spark.sql.catalyst.trees.TreeNode.collectFirst(TreeNode.scala:232) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$collectFirst$3(TreeNode.scala:232) > at scala.Option.orElse(Option.scala:447) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$collectFirst$2(TreeNode.scala:232) > at scala.collection.LinearSeqOptimized.foldLeft(LinearSeqOptimized.scala:126) > at > scala.collection.LinearSeqOptimized.foldLeft$(LinearSeqOptimized.scala:122) > at scala.collection.immutable.List.foldLeft(List.scala:89) > at > org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$collectFirst$1(TreeNode.scala:232) > at scala.Option.orElse(Option.scala:447) > at > org.apache.spark.sql.catalyst.trees.TreeNode.collectFirst(TreeNode.scala:232) > at > org.apache.spark.sql.secondaryindex.joins.BroadCastSIFilterPushJoin.<init>(BroadCastSIFilterPushJoin.scala:125) > ... 182 more (state=,code=0) -- This message was sent by Atlassian Jira (v8.3.4#803005)