From 582641ac67b456b0314e2f4c1a39b95cd868597b Mon Sep 17 00:00:00 2001 From: malinjawi Date: Tue, 16 Jun 2026 12:46:44 +0300 Subject: [PATCH 01/24] [VL][Delta] Support Delta CDF scan offload Delta change-data-feed reads enter Spark as a CDCReader.DeltaCDFRelation, which does not have the FileSourceScanExec + DeltaParquetFileFormat shape that Gluten's Delta scan offload recognizes. Add a Gluten Delta planner strategy (wired from VeloxDeltaComponent) that recognizes DeltaCDFRelation, expands it through Delta's own CDF batch planning, and rewrites the projection/filter attributes onto the expanded plan, so the existing Delta scan offload path can plan the underlying CDF file scans as DeltaScanTransformer. CDF over a deletion-vector-enabled table is kept on Spark: native CDF lacks the DV-aware row-level reconciliation, so an offloaded CDF scan would emit still-live rows as `delete` change rows. Re-planning Delta's analyzed CDF batch plan also drops that reconciliation on some Delta versions (Delta 2.4 / Spark 3.4), where the remove side would surface every row of a logically removed file as a `delete` change row. The planner strategy therefore declines to intercept CDF reads whose table has deletion vectors enabled and leaves them to Delta's own DeltaCDFRelation scan, which reconciles DVs correctly on every supported Delta version; DeltaScanTransformer additionally guards both CDF scan sides -- the add side (CdcAddFileIndex) and the remove side (TahoeRemoveFileIndex) -- as a backstop. Normal (non-CDF) DV scans are unaffected and continue to apply the DV natively. Addresses #12195. --- .../component/VeloxDeltaComponent.scala | 4 +- .../extension/DeltaCDFRelationHelper.scala | 44 +++++ .../extension/DeltaCDFRelationHelper.scala | 44 +++++ .../extension/DeltaCDFRelationHelper.scala | 44 +++++ .../extension/DeltaCDFRelationHelper.scala | 47 +++++ .../execution/DeltaScanTransformer.scala | 25 +++ .../extension/DeltaCDFScanStrategy.scala | 112 ++++++++++++ .../apache/gluten/execution/DeltaSuite.scala | 172 +++++++++++++++++- 8 files changed, 490 insertions(+), 2 deletions(-) create mode 100644 gluten-delta/src-delta23/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala create mode 100644 gluten-delta/src-delta24/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala create mode 100644 gluten-delta/src-delta33/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala create mode 100644 gluten-delta/src-delta40/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala create mode 100644 gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala diff --git a/backends-velox/src-delta/main/scala/org/apache/gluten/component/VeloxDeltaComponent.scala b/backends-velox/src-delta/main/scala/org/apache/gluten/component/VeloxDeltaComponent.scala index 164cf528860..b96f07cce05 100644 --- a/backends-velox/src-delta/main/scala/org/apache/gluten/component/VeloxDeltaComponent.scala +++ b/backends-velox/src-delta/main/scala/org/apache/gluten/component/VeloxDeltaComponent.scala @@ -18,7 +18,7 @@ package org.apache.gluten.component import org.apache.gluten.backendsapi.velox.VeloxBackend import org.apache.gluten.config.GlutenConfig -import org.apache.gluten.extension.{DeltaPostTransformRules, OffloadDeltaFilter, OffloadDeltaProject, OffloadDeltaScan} +import org.apache.gluten.extension.{DeltaCDFScanStrategy, DeltaPostTransformRules, OffloadDeltaFilter, OffloadDeltaProject, OffloadDeltaScan} import org.apache.gluten.extension.columnar.heuristic.HeuristicTransform import org.apache.gluten.extension.columnar.validator.Validators import org.apache.gluten.extension.injector.Injector @@ -35,6 +35,8 @@ class VeloxDeltaComponent extends Component { } override def injectRules(injector: Injector): Unit = { + injector.spark.injectPlannerStrategy(DeltaCDFScanStrategy(_)) + val legacy = injector.gluten.legacy // Deletion-vector scans need no Gluten-side logical preprocessing: Delta's own // PreprocessTableWithDVsStrategy injects the skip-row column and filter during physical diff --git a/gluten-delta/src-delta23/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala b/gluten-delta/src-delta23/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala new file mode 100644 index 00000000000..30bdb75e99a --- /dev/null +++ b/gluten-delta/src-delta23/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala @@ -0,0 +1,44 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.gluten.extension + +import org.apache.spark.sql.{DataFrame, SparkSession} +import org.apache.spark.sql.delta.BatchCDFSchemaEndVersion +import org.apache.spark.sql.delta.commands.cdc.CDCReader + +object DeltaCDFRelationHelper { + def changesToBatchDF( + relation: CDCReader.DeltaCDFRelation, + spark: SparkSession): DataFrame = { + val deltaLog = relation.snapshotWithSchemaMode.snapshot.deltaLog + val latestVersion = deltaLog.update().version + val endingVersionForBatchSchema = + relation.endingVersion.map(v => latestVersion.min(v)).getOrElse(latestVersion) + val snapshotForBatchSchema = relation.snapshotWithSchemaMode.schemaMode match { + case BatchCDFSchemaEndVersion => deltaLog.getSnapshotAt(endingVersionForBatchSchema) + case _ => relation.snapshotWithSchemaMode.snapshot + } + val endVersion = relation.endingVersion.getOrElse(latestVersion) + + CDCReader.changesToBatchDF( + deltaLog, + relation.startingVersion.get, + endVersion, + spark, + readSchemaSnapshot = Some(snapshotForBatchSchema)) + } +} diff --git a/gluten-delta/src-delta24/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala b/gluten-delta/src-delta24/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala new file mode 100644 index 00000000000..30bdb75e99a --- /dev/null +++ b/gluten-delta/src-delta24/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala @@ -0,0 +1,44 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.gluten.extension + +import org.apache.spark.sql.{DataFrame, SparkSession} +import org.apache.spark.sql.delta.BatchCDFSchemaEndVersion +import org.apache.spark.sql.delta.commands.cdc.CDCReader + +object DeltaCDFRelationHelper { + def changesToBatchDF( + relation: CDCReader.DeltaCDFRelation, + spark: SparkSession): DataFrame = { + val deltaLog = relation.snapshotWithSchemaMode.snapshot.deltaLog + val latestVersion = deltaLog.update().version + val endingVersionForBatchSchema = + relation.endingVersion.map(v => latestVersion.min(v)).getOrElse(latestVersion) + val snapshotForBatchSchema = relation.snapshotWithSchemaMode.schemaMode match { + case BatchCDFSchemaEndVersion => deltaLog.getSnapshotAt(endingVersionForBatchSchema) + case _ => relation.snapshotWithSchemaMode.snapshot + } + val endVersion = relation.endingVersion.getOrElse(latestVersion) + + CDCReader.changesToBatchDF( + deltaLog, + relation.startingVersion.get, + endVersion, + spark, + readSchemaSnapshot = Some(snapshotForBatchSchema)) + } +} diff --git a/gluten-delta/src-delta33/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala b/gluten-delta/src-delta33/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala new file mode 100644 index 00000000000..30bdb75e99a --- /dev/null +++ b/gluten-delta/src-delta33/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala @@ -0,0 +1,44 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.gluten.extension + +import org.apache.spark.sql.{DataFrame, SparkSession} +import org.apache.spark.sql.delta.BatchCDFSchemaEndVersion +import org.apache.spark.sql.delta.commands.cdc.CDCReader + +object DeltaCDFRelationHelper { + def changesToBatchDF( + relation: CDCReader.DeltaCDFRelation, + spark: SparkSession): DataFrame = { + val deltaLog = relation.snapshotWithSchemaMode.snapshot.deltaLog + val latestVersion = deltaLog.update().version + val endingVersionForBatchSchema = + relation.endingVersion.map(v => latestVersion.min(v)).getOrElse(latestVersion) + val snapshotForBatchSchema = relation.snapshotWithSchemaMode.schemaMode match { + case BatchCDFSchemaEndVersion => deltaLog.getSnapshotAt(endingVersionForBatchSchema) + case _ => relation.snapshotWithSchemaMode.snapshot + } + val endVersion = relation.endingVersion.getOrElse(latestVersion) + + CDCReader.changesToBatchDF( + deltaLog, + relation.startingVersion.get, + endVersion, + spark, + readSchemaSnapshot = Some(snapshotForBatchSchema)) + } +} diff --git a/gluten-delta/src-delta40/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala b/gluten-delta/src-delta40/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala new file mode 100644 index 00000000000..f1f84cd1537 --- /dev/null +++ b/gluten-delta/src-delta40/main/scala/org/apache/gluten/extension/DeltaCDFRelationHelper.scala @@ -0,0 +1,47 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.gluten.extension + +import org.apache.spark.sql.{DataFrame, SparkSession} +import org.apache.spark.sql.delta.BatchCDFSchemaEndVersion +import org.apache.spark.sql.delta.commands.cdc.CDCReader + +object DeltaCDFRelationHelper { + def changesToBatchDF( + relation: CDCReader.DeltaCDFRelation, + spark: SparkSession): DataFrame = { + val deltaLog = relation.snapshotWithSchemaMode.snapshot.deltaLog + val latestVersion = deltaLog.update(catalogTableOpt = relation.catalogTableOpt).version + val endingVersionForBatchSchema = + relation.endingVersion.map(v => latestVersion.min(v)).getOrElse(latestVersion) + val snapshotForBatchSchema = relation.snapshotWithSchemaMode.schemaMode match { + case BatchCDFSchemaEndVersion => + deltaLog.getSnapshotAt( + endingVersionForBatchSchema, + catalogTableOpt = relation.catalogTableOpt) + case _ => relation.snapshotWithSchemaMode.snapshot + } + val endVersion = relation.endingVersion.getOrElse(latestVersion) + + CDCReader.changesToBatchDF( + deltaLog, + relation.startingVersion.get, + endVersion, + spark, + readSchemaSnapshot = Some(snapshotForBatchSchema)) + } +} diff --git a/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala b/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala index 6ac644622dc..1ae44749c37 100644 --- a/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala +++ b/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala @@ -27,6 +27,7 @@ import org.apache.spark.sql.catalyst.expressions.{Attribute, AttributeReference, import org.apache.spark.sql.catalyst.plans.QueryPlan import org.apache.spark.sql.connector.read.streaming.SparkDataStream import org.apache.spark.sql.delta.{DeltaParquetFileFormat, NoMapping} +import org.apache.spark.sql.delta.files.{CdcAddFileIndex, TahoeRemoveFileIndex} import org.apache.spark.sql.execution.FileSourceScanExec import org.apache.spark.sql.execution.datasources.{FilePartition, HadoopFsRelation} import org.apache.spark.sql.types.StructType @@ -61,6 +62,27 @@ case class DeltaScanTransformer( override lazy val fileFormat: ReadFileFormat = ReadFileFormat.ParquetReadFormat + // Delta CDF over a deletion-vector-enabled table needs DV-aware, row-level reconciliation that + // the native scan path does not do yet: it would surface rows that are still live (not covered + // by the DV) as CDF `delete` change rows. Fall back to Spark for both CDF scan sides -- the add + // side (`CdcAddFileIndex`) and the remove side (`TahoeRemoveFileIndex`) -- whenever the touched + // files carry DVs. Normal (non-CDF) DV scans are unaffected: those apply the DV natively through + // the per-file split-info handoff and never reach this guard. + override protected def doValidateInternal(): ValidationResult = { + if (cdfFilesHaveDeletionVectors) { + return ValidationResult.failed(DeltaScanTransformer.DELETION_VECTOR_UNSUPPORTED) + } + super.doValidateInternal() + } + + private def cdfFilesHaveDeletionVectors: Boolean = relation.location match { + case index: TahoeRemoveFileIndex => + index.filesByVersion.exists(_.actions.exists(_.deletionVector != null)) + case index: CdcAddFileIndex => + index.addFiles.exists(_.deletionVector != null) + case _ => false + } + // For Delta column-mapping tables, `dataFilters` on the scan node are LOGICAL-named so Delta's // file index (`PreparedDeltaFileIndex.matchingFiles`, `Snapshot.filesForScan`) can do partition // pruning and stats-based file skipping -- both resolve filter attrs against logical schemas. @@ -138,6 +160,9 @@ case class DeltaScanTransformer( } object DeltaScanTransformer { + + val DELETION_VECTOR_UNSUPPORTED = "Deletion vector is not supported in native." + def apply(scanExec: FileSourceScanExec): DeltaScanTransformer = { new DeltaScanTransformer( scanExec.relation, diff --git a/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala b/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala new file mode 100644 index 00000000000..4d23a335ef2 --- /dev/null +++ b/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala @@ -0,0 +1,112 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.gluten.extension + +import org.apache.spark.sql.SparkSession +import org.apache.spark.sql.catalyst.expressions.{Alias, Attribute, AttributeReference, Expression, NamedExpression} +import org.apache.spark.sql.catalyst.planning.PhysicalOperation +import org.apache.spark.sql.catalyst.plans.logical.{Filter, LocalRelation, LogicalPlan, Project} +import org.apache.spark.sql.delta.commands.cdc.CDCReader +import org.apache.spark.sql.execution.{SparkPlan, SparkStrategy} +import org.apache.spark.sql.execution.datasources.LogicalRelation + +case class DeltaCDFScanStrategy(spark: SparkSession) extends SparkStrategy { + override def apply(plan: LogicalPlan): Seq[SparkPlan] = plan match { + case PhysicalOperation(projects, filters, relation: LogicalRelation) => + relation.relation match { + case cdfRelation: CDCReader.DeltaCDFRelation if !touchesDeletionVectors(cdfRelation) => + planCDFRelation(relation, cdfRelation, projects, filters).map(planLater).toSeq + case _ => Nil + } + case _ => Nil + } + + // Delta CDF over a deletion-vector table needs Delta's DV-aware, row-level reconciliation: a + // deleted row stays physically in its data file and is masked by a DV, so the CDF `delete` rows + // for a commit are only the rows the DV newly marks. Re-planning the analyzed CDF batch plan here + // loses that reconciliation on some Delta versions (e.g. Delta 2.4 / Spark 3.4), where the remove + // side would then surface every row of a logically-removed file as a `delete` change row instead + // of just the DV-marked ones. Decline to intercept such reads and let Spark serve them through + // Delta's own DeltaCDFRelation scan, which applies DVs correctly. Offloading loses nothing here: + // the native CDF scan path does not support DV reconciliation either (see the matching guard in + // DeltaScanTransformer). + private def touchesDeletionVectors(cdfRelation: CDCReader.DeltaCDFRelation): Boolean = + cdfRelation.snapshotWithSchemaMode.snapshot.metadata.configuration + .get("delta.enableDeletionVectors") + .exists(_.equalsIgnoreCase("true")) + + private def planCDFRelation( + relation: LogicalRelation, + cdfRelation: CDCReader.DeltaCDFRelation, + projects: Seq[NamedExpression], + filters: Seq[Expression]): Option[LogicalPlan] = { + if (cdfRelation.startingVersion.isEmpty) { + return Some(projectAndFilter(LocalRelation(relation.output), projects, filters)) + } + + val cdfPlan = + DeltaCDFRelationHelper.changesToBatchDF(cdfRelation, spark).queryExecution.analyzed + val cdfOutput = cdfPlan.output + val rewrittenFilters = filters.map(rewriteExpression(_, cdfOutput)) + val rewrittenProjects = projects.map(rewriteProject(_, cdfOutput)) + Some(projectAndFilter(cdfPlan, rewrittenProjects, rewrittenFilters)) + } + + private def projectAndFilter( + child: LogicalPlan, + projects: Seq[NamedExpression], + filters: Seq[Expression]): LogicalPlan = { + val filtered = filters.reduceOption(org.apache.spark.sql.catalyst.expressions.And) match { + case Some(condition) => Filter(condition, child) + case None => child + } + Project(projects, filtered) + } + + private def rewriteProject( + project: NamedExpression, + cdfOutput: Seq[Attribute]): NamedExpression = { + project match { + case attr: AttributeReference => + Alias( + resolveCDFAttribute(attr, cdfOutput), + attr.name)( + exprId = attr.exprId, + qualifier = attr.qualifier, + explicitMetadata = Some(attr.metadata)) + case other => + rewriteExpression(other, cdfOutput).asInstanceOf[NamedExpression] + } + } + + private def rewriteExpression(expr: Expression, cdfOutput: Seq[Attribute]): Expression = { + expr.transform { + case attr: AttributeReference => resolveCDFAttribute(attr, cdfOutput) + } + } + + private def resolveCDFAttribute( + attr: AttributeReference, + cdfOutput: Seq[Attribute]): Attribute = { + cdfOutput + .find(output => spark.sessionState.conf.resolver(output.name, attr.name)) + .getOrElse( + throw new IllegalArgumentException( + s"Unable to resolve CDF attribute ${attr.name} from " + + s"${cdfOutput.map(_.name).mkString("[", ", ", "]")}")) + } +} diff --git a/gluten-delta/src/test/scala/org/apache/gluten/execution/DeltaSuite.scala b/gluten-delta/src/test/scala/org/apache/gluten/execution/DeltaSuite.scala index c138bed1cdf..7919e926606 100644 --- a/gluten-delta/src/test/scala/org/apache/gluten/execution/DeltaSuite.scala +++ b/gluten-delta/src/test/scala/org/apache/gluten/execution/DeltaSuite.scala @@ -17,7 +17,7 @@ package org.apache.gluten.execution import org.apache.spark.SparkConf -import org.apache.spark.sql.Row +import org.apache.spark.sql.{DataFrame, Row} import org.apache.spark.sql.types._ import org.apache.spark.util.SparkVersionUtil @@ -361,6 +361,176 @@ abstract class DeltaSuite extends WholeStageTransformerSuite { } } + testWithMinSparkVersion("delta: change data feed read", "3.2") { + withTable("delta_cdf") { + spark.sql(s""" + |create table delta_cdf (id int, name string) using delta + |tblproperties ("delta.enableChangeDataFeed" = "true") + |""".stripMargin) + spark.sql(s""" + |insert into delta_cdf values (1, "v1"), (2, "v2") + |""".stripMargin) + spark.sql(s""" + |update delta_cdf set name = "v2_updated" where id = 2 + |""".stripMargin) + spark.sql(s""" + |delete from delta_cdf where id = 1 + |""".stripMargin) + + val tableChangesFromZeroDF = runAndCompare( + s""" + |select id, name, _change_type, _commit_version + |from table_changes('delta_cdf', 0) + |order by _commit_version, id, name, _change_type + |""".stripMargin) + checkCDFRead(tableChangesFromZeroDF) + + val tableChangesDF = runAndCompare( + s""" + |select id, name, _change_type, _commit_version + |from table_changes('delta_cdf', 1) + |order by _commit_version, id, name, _change_type + |""".stripMargin) + checkCDFRead(tableChangesDF) + + val filteredCDF = runAndCompare( + s""" + |select id, name, _change_type, _commit_version + |from table_changes('delta_cdf', 1) + |where _commit_version = 2 and id = 2 + |order by name, _change_type + |""".stripMargin) + checkCDFRead( + filteredCDF, + Seq( + Row(2, "v2", "update_preimage", 2L), + Row(2, "v2_updated", "update_postimage", 2L))) + + val boundedCDF = runAndCompare( + s""" + |select id, name, _change_type, _commit_version + |from table_changes('delta_cdf', 1, 2) + |order by _commit_version, id, name, _change_type + |""".stripMargin) + checkCDFRead( + boundedCDF, + Seq( + Row(1, "v1", "insert", 1L), + Row(2, "v2", "insert", 1L), + Row(2, "v2", "update_preimage", 2L), + Row(2, "v2_updated", "update_postimage", 2L))) + + val readChangeFeedDF = compareCDFDataFrame( + () => + spark.read + .format("delta") + .option("readChangeFeed", "true") + .option("startingVersion", "1") + .table("delta_cdf") + .selectExpr("id", "name", "_change_type", "_commit_version") + .orderBy("_commit_version", "id", "name", "_change_type")) + checkCDFRead(readChangeFeedDF) + } + } + + testWithMinSparkVersion("delta: change data feed read with column mapping", "3.2") { + withTable("delta_cdf_cm") { + spark.sql(s""" + |create table delta_cdf_cm (id int, name string) using delta + |tblproperties ( + | "delta.enableChangeDataFeed" = "true", + | "delta.columnMapping.mode" = "name") + |""".stripMargin) + spark.sql(s""" + |insert into delta_cdf_cm values (1, "v1"), (2, "v2") + |""".stripMargin) + spark.sql(s""" + |update delta_cdf_cm set name = "v2_updated" where id = 2 + |""".stripMargin) + spark.sql(s""" + |delete from delta_cdf_cm where id = 1 + |""".stripMargin) + + val df = runAndCompare( + s""" + |select id, name, _change_type, _commit_version + |from table_changes('delta_cdf_cm', 1) + |order by _commit_version, id, name, _change_type + |""".stripMargin) + checkCDFRead(df) + } + } + + testWithMinSparkVersion("delta: change data feed read with deletion vectors", "3.4") { + withTable("delta_cdf_dv") { + spark.sql(s""" + |create table delta_cdf_dv (id int, name string) using delta + |tblproperties ( + | "delta.enableChangeDataFeed" = "true", + | "delta.enableDeletionVectors" = "true") + |""".stripMargin) + spark.sql(s""" + |insert into delta_cdf_dv values (1, "v1"), (2, "v2"), (3, "v3") + |""".stripMargin) + spark.sql(s""" + |delete from delta_cdf_dv where id = 2 + |""".stripMargin) + + // CDF over a deletion-vector table needs Delta's DV-aware row-level reconciliation, which the + // native scan path does not do. Gluten keeps the whole CDF read on Spark (no + // DeltaScanTransformer offload) so that still-live, DV-masked rows are not surfaced as + // `delete` change rows. The result must still match vanilla Spark. + val df = runAndCompare( + s""" + |select id, name, _change_type + |from table_changes('delta_cdf_dv', 0) + |order by id, name, _change_type + |""".stripMargin) + assert( + collect(df.queryExecution.executedPlan) { case d: DeltaScanTransformer => d }.isEmpty, + df.queryExecution.executedPlan) + checkAnswer( + df, + Seq( + Row(1, "v1", "insert"), + Row(2, "v2", "delete"), + Row(2, "v2", "insert"), + Row(3, "v3", "insert"))) + } + } + + private def compareCDFDataFrame(dataframe: () => DataFrame): DataFrame = { + var expected: Seq[Row] = null + withSQLConf(vanillaSparkConfs(): _*) { + expected = dataframe().collect() + } + val df = dataframe() + checkAnswer(df, expected) + df + } + + private def checkCDFRead( + df: DataFrame, + expectedRows: Seq[Row] = allCDFRows): Unit = { + // Delta CDF expansion can keep a Spark-side branch for synthesized change rows; this PR + // verifies the Delta file scans in the expanded plan are transformed. + checkLengthAndPlan(df, expectedRows.length) + checkAnswer( + df, + expectedRows) + assert( + collect(df.queryExecution.executedPlan) { case _: DeltaScanTransformer => true }.nonEmpty, + df.queryExecution.executedPlan) + } + + private def allCDFRows: Seq[Row] = + Seq( + Row(1, "v1", "insert", 1L), + Row(2, "v2", "insert", 1L), + Row(2, "v2", "update_preimage", 2L), + Row(2, "v2_updated", "update_postimage", 2L), + Row(1, "v1", "delete", 3L)) + testWithMinSparkVersion("column mapping with complex type", "3.2") { withTable("t1") { val simpleNestedSchema = new StructType() From 3b462034a2eb3ccf7427ddbc839280f5744c2363 Mon Sep 17 00:00:00 2001 From: malinjawi Date: Sun, 19 Jul 2026 13:48:15 +0300 Subject: [PATCH 02/24] [VL][Delta] Check CDF actions for deletion vectors Inspect AddFile and RemoveFile actions in the requested CDF version range instead of relying on the table property, which only controls future DV writes.\n\nCover both DV-enabled ranges without DV actions and existing DV actions after the property is disabled. --- .../extension/DeltaCDFScanStrategy.scala | 49 +++++++++++++------ .../apache/gluten/execution/DeltaSuite.scala | 32 ++++++++++-- 2 files changed, 63 insertions(+), 18 deletions(-) diff --git a/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala b/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala index 4d23a335ef2..17be38aef21 100644 --- a/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala +++ b/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala @@ -20,6 +20,7 @@ import org.apache.spark.sql.SparkSession import org.apache.spark.sql.catalyst.expressions.{Alias, Attribute, AttributeReference, Expression, NamedExpression} import org.apache.spark.sql.catalyst.planning.PhysicalOperation import org.apache.spark.sql.catalyst.plans.logical.{Filter, LocalRelation, LogicalPlan, Project} +import org.apache.spark.sql.delta.actions.{AddFile, RemoveFile} import org.apache.spark.sql.delta.commands.cdc.CDCReader import org.apache.spark.sql.execution.{SparkPlan, SparkStrategy} import org.apache.spark.sql.execution.datasources.LogicalRelation @@ -28,26 +29,46 @@ case class DeltaCDFScanStrategy(spark: SparkSession) extends SparkStrategy { override def apply(plan: LogicalPlan): Seq[SparkPlan] = plan match { case PhysicalOperation(projects, filters, relation: LogicalRelation) => relation.relation match { - case cdfRelation: CDCReader.DeltaCDFRelation if !touchesDeletionVectors(cdfRelation) => + case cdfRelation: CDCReader.DeltaCDFRelation + if !changesContainDeletionVectors(cdfRelation) => planCDFRelation(relation, cdfRelation, projects, filters).map(planLater).toSeq case _ => Nil } case _ => Nil } - // Delta CDF over a deletion-vector table needs Delta's DV-aware, row-level reconciliation: a - // deleted row stays physically in its data file and is masked by a DV, so the CDF `delete` rows - // for a commit are only the rows the DV newly marks. Re-planning the analyzed CDF batch plan here - // loses that reconciliation on some Delta versions (e.g. Delta 2.4 / Spark 3.4), where the remove - // side would then surface every row of a logically-removed file as a `delete` change row instead - // of just the DV-marked ones. Decline to intercept such reads and let Spark serve them through - // Delta's own DeltaCDFRelation scan, which applies DVs correctly. Offloading loses nothing here: - // the native CDF scan path does not support DV reconciliation either (see the matching guard in - // DeltaScanTransformer). - private def touchesDeletionVectors(cdfRelation: CDCReader.DeltaCDFRelation): Boolean = - cdfRelation.snapshotWithSchemaMode.snapshot.metadata.configuration - .get("delta.enableDeletionVectors") - .exists(_.equalsIgnoreCase("true")) + // Delta CDF over a commit that uses deletion vectors needs Delta's DV-aware, row-level + // reconciliation: a deleted row stays physically in its data file and is masked by a DV, so the + // CDF `delete` rows for a commit are only the rows the DV newly marks. Re-planning the analyzed + // CDF batch plan here loses that reconciliation on some Delta versions (e.g. Delta 2.4 / Spark + // 3.4), where the remove side would then surface every row of a logically-removed file as a + // `delete` change row instead of just the DV-marked ones. + // + // The table property is not a reliable guard: it controls whether future writes may create DVs, + // while existing DVs can remain after the property is disabled. Inspect the AddFile/RemoveFile + // actions in the requested CDF interval instead. Decline to intercept only ranges that actually + // contain DVs and let Delta's DeltaCDFRelation apply them correctly. The matching physical-scan + // guard in DeltaScanTransformer remains as a backstop. + private def changesContainDeletionVectors( + cdfRelation: CDCReader.DeltaCDFRelation): Boolean = { + cdfRelation.startingVersion.exists { + startVersion => + val changes = + cdfRelation.snapshotWithSchemaMode.snapshot.deltaLog.getChanges(startVersion) + val changesInRange = cdfRelation.endingVersion match { + case Some(endVersion) => changes.takeWhile { case (version, _) => version <= endVersion } + case None => changes + } + changesInRange.exists { + case (_, actions) => + actions.exists { + case file: AddFile => file.deletionVector != null + case file: RemoveFile => file.deletionVector != null + case _ => false + } + } + } + } private def planCDFRelation( relation: LogicalRelation, diff --git a/gluten-delta/src/test/scala/org/apache/gluten/execution/DeltaSuite.scala b/gluten-delta/src/test/scala/org/apache/gluten/execution/DeltaSuite.scala index add22d78aef..9e024cb1fae 100644 --- a/gluten-delta/src/test/scala/org/apache/gluten/execution/DeltaSuite.scala +++ b/gluten-delta/src/test/scala/org/apache/gluten/execution/DeltaSuite.scala @@ -474,14 +474,38 @@ abstract class DeltaSuite extends WholeStageTransformerSuite { spark.sql(s""" |insert into delta_cdf_dv values (1, "v1"), (2, "v2"), (3, "v3") |""".stripMargin) + + // Enabling DV writes does not mean this CDF range contains a DV. The insert-only range must + // still be eligible for native scan offload. + val insertOnlyDF = runAndCompare( + s""" + |select id, name, _change_type + |from table_changes('delta_cdf_dv', 0, 1) + |order by id, name, _change_type + |""".stripMargin) + assert( + collect(insertOnlyDF.queryExecution.executedPlan) { + case _: DeltaScanTransformer => true + }.nonEmpty, + insertOnlyDF.queryExecution.executedPlan) + checkAnswer( + insertOnlyDF, + Seq( + Row(1, "v1", "insert"), + Row(2, "v2", "insert"), + Row(3, "v3", "insert"))) + spark.sql(s""" |delete from delta_cdf_dv where id = 2 |""".stripMargin) + spark.sql(s""" + |alter table delta_cdf_dv set tblproperties ( + | "delta.enableDeletionVectors" = "false") + |""".stripMargin) - // CDF over a deletion-vector table needs Delta's DV-aware row-level reconciliation, which the - // native scan path does not do. Gluten keeps the whole CDF read on Spark (no - // DeltaScanTransformer offload) so that still-live, DV-masked rows are not surfaced as - // `delete` change rows. The result must still match vanilla Spark. + // Disabling future DV writes does not remove existing DVs. This range contains the DV-backed + // delete, so Gluten keeps the whole CDF read on Spark and lets Delta perform row-level + // reconciliation. Still-live rows must not be surfaced as `delete` change rows. val df = runAndCompare( s""" |select id, name, _change_type From 049e608a34b981e658266db8ab62fa254b7f8b5a Mon Sep 17 00:00:00 2001 From: malinjawi Date: Sun, 19 Jul 2026 15:00:39 +0300 Subject: [PATCH 03/24] [VL][Delta] Check CDF indexes for deletion vectors --- .../org/apache/gluten/extension/OffloadDeltaScan.scala | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gluten-delta/src/main/scala/org/apache/gluten/extension/OffloadDeltaScan.scala b/gluten-delta/src/main/scala/org/apache/gluten/extension/OffloadDeltaScan.scala index ebafb0c08c3..4664da8769b 100644 --- a/gluten-delta/src/main/scala/org/apache/gluten/extension/OffloadDeltaScan.scala +++ b/gluten-delta/src/main/scala/org/apache/gluten/extension/OffloadDeltaScan.scala @@ -23,7 +23,7 @@ import org.apache.gluten.extension.columnar.offload.OffloadSingleNode import org.apache.spark.sql.delta.DeltaParquetFileFormat import org.apache.spark.sql.delta.SnapshotDescriptor import org.apache.spark.sql.delta.commands.DeletionVectorUtils.deletionVectorsReadable -import org.apache.spark.sql.delta.files.TahoeFileIndex +import org.apache.spark.sql.delta.files.{CdcAddFileIndex, TahoeFileIndex, TahoeRemoveFileIndex} import org.apache.spark.sql.delta.stats.PreparedDeltaFileIndex import org.apache.spark.sql.execution.{FileSourceScanExec, SparkPlan} import org.apache.spark.util.SparkVersionUtil @@ -97,6 +97,12 @@ case class OffloadDeltaScan() extends OffloadSingleNode { private def containsDeletionVector(scan: FileSourceScanExec): Boolean = { scan.relation.location match { + // CDF indexes expose the exact actions in the requested range. Use those instead of the + // table-level protocol capability so a DV-capable table can still offload DV-free ranges. + case index: TahoeRemoveFileIndex => + index.filesByVersion.exists(_.actions.exists(_.deletionVector != null)) + case index: CdcAddFileIndex => + index.addFiles.exists(_.deletionVector != null) case preparedIndex: PreparedDeltaFileIndex => preparedIndex.preparedScan.files.exists(_.deletionVector != null) case index: TahoeFileIndex => From e52b6807ab13b0713d0783776dea9cc128130ede Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Thu, 25 Jun 2026 20:20:58 +0000 Subject: [PATCH 04/24] [GLUTEN][CI] Add Delta Spark UT pipeline gated against a known-failures baseline Run delta-io/delta's `spark` ScalaTest suite against a Gluten Velox bundle in CI and gate the results against a committed baseline so the many expected Delta-on- Gluten failures stay manageable and can be fixed incrementally without letting currently-passing tests silently regress. What it adds (.github/workflows/util/delta-spark-ut/): - delta_spark_ut.yml: builds the native lib + Gluten bundle, then runs the Delta spark suite sharded by suite into 4 shards x 4 forked test JVMs (~16-way), and gates each shard against the baseline. - compare-test-results.py: the gate. Per shard, regressions (failed not in the baseline) fail the build; newly-passing baselined tests are flagged so the baseline can be tightened. Also supports seed/aggregate modes. - known-failures.txt: the committed baseline of expected failures. - setup-delta.sh: clones Delta, injects the Gluten bundle, patches DeltaSQLCommandTest, and force-fails the two DeletionVectorsSuite 2B-row tests whose native row-index materialization OOM-kills the runner and hangs the shard. - README.md: how the pipeline, gating and baseline-refresh work. The workflow also carries a hang watchdog that thread-dumps and kills a wedged fork, and tunes the per-fork heap (2G) and off-heap (2G) to fit the ~16G runner. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .github/workflows/delta_spark_ut.yml | 667 ++++++++++++ .../workflows/util/delta-spark-ut/README.md | 112 ++ .../delta-spark-ut/compare-test-results.py | 467 +++++++++ .../util/delta-spark-ut/known-failures.txt | 977 ++++++++++++++++++ .../util/delta-spark-ut/setup-delta.sh | 177 ++++ 5 files changed, 2400 insertions(+) create mode 100644 .github/workflows/delta_spark_ut.yml create mode 100644 .github/workflows/util/delta-spark-ut/README.md create mode 100644 .github/workflows/util/delta-spark-ut/compare-test-results.py create mode 100644 .github/workflows/util/delta-spark-ut/known-failures.txt create mode 100755 .github/workflows/util/delta-spark-ut/setup-delta.sh diff --git a/.github/workflows/delta_spark_ut.yml b/.github/workflows/delta_spark_ut.yml new file mode 100644 index 00000000000..8a7d91f2c06 --- /dev/null +++ b/.github/workflows/delta_spark_ut.yml @@ -0,0 +1,667 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Runs Delta Lake's `spark` sbt module unit tests against a Gluten Velox bundle +# that is built from the source in this repository. The pipeline: +# +# 1. Builds the Velox/Gluten native libraries (centos-7 + vcpkg, x86_64). +# 2. Builds the Gluten Java/Scala jars and assembles the +# `gluten-velox-bundle-spark_-linux_amd64-.jar` +# fat jar for Spark 4.1 + Scala 2.13 + Java 17 with the Delta profile. +# 3. Clones delta-io/delta at the requested release tag (default `v4.2.0`), +# drops the bundle jar into `spark-unified/lib/` only (NOT `spark/lib/` +# -- see setup-delta.sh for the unmanagedJars scoping rationale), +# patches Delta's `DeltaSQLCommandTest` to register the Gluten plugin, +# and runs `sbt spark/test` sharded across the matrix. +# +# Limited to Velox + x86 to keep the matrix simple, per the pipeline's purpose +# of validating Gluten changes against the latest Delta release. + +name: Delta Spark UT (Gluten) + +on: + workflow_dispatch: + inputs: + delta_ref: + description: 'delta-io/delta git ref (tag/branch/SHA) to test against' + required: true + default: 'v4.2.0' + spark_version: + description: 'Delta `-DsparkVersion` value (must match the Gluten -P profile below)' + required: true + default: '4.1' + test_parallelism: + description: 'Forked test JVMs per shard (TEST_PARALLELISM_COUNT)' + required: true + default: '4' + update_baseline: + description: 'Seed/refresh the known-failures baseline instead of enforcing it' + type: boolean + required: false + default: false + fail_on_fixed: + description: 'Fail when a baseline test now passes (keeps the baseline honest)' + type: boolean + required: false + default: true + pull_request: + paths: + - '.github/workflows/delta_spark_ut.yml' + - '.github/workflows/util/delta-spark-ut/**' + - 'gluten-delta/**' + - 'backends-velox/src-delta40/**/DeltaSQLCommandTest.scala' + +env: + ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true + MVN_CMD: 'build/mvn -ntp' + CCACHE_DIR: "${{ github.workspace }}/.ccache" + # Gluten profile / bundle naming for the build-gluten-bundle and + # delta-spark-test jobs. Spark 4.1 + Scala 2.13 + JDK 17 matches Delta v4.2.0's + # default Spark version (4.1.0) from project/CrossSparkVersions.scala. + GLUTEN_SPARK_PROFILE: 'spark-4.1' + GLUTEN_SCALA_PROFILE: 'scala-2.13' + GLUTEN_JAVA_PROFILE: 'java-17' + GLUTEN_BUNDLE_SPARK_VERSION: '4.1' + GLUTEN_BUNDLE_SCALA_VERSION: '2.13' + # Default values used when the workflow is triggered by pull_request + # (where `inputs.*` is empty). Keep these in sync with the workflow_dispatch + # defaults above. + DELTA_REF_DEFAULT: 'v4.2.0' + DELTA_SPARK_VERSION_DEFAULT: '4.1' + DELTA_TEST_PARALLELISM_DEFAULT: '4' + # Default mode for pull_request runs (where inputs.* is empty): enforce the + # committed baseline and fail when a baseline test starts passing. Override + # via the workflow_dispatch inputs above. + DELTA_UPDATE_BASELINE_DEFAULT: 'false' + DELTA_FAIL_ON_FIXED_DEFAULT: 'true' + DELTA_SCALA_VERSION: '2.13.16' + # Number of shards in the delta-spark-test matrix. Must equal the length of + # the `shard` matrix below. + # + # EXPERIMENT: 4 shards x TEST_PARALLELISM_COUNT=4 (vs production 16 shards x 1). + # Both give ~16-way parallelism, but this packs it into 4 runner jobs (4 forks + # each) instead of 16 single-fork jobs -- fewer concurrent runners for the same + # throughput. Sharding is by SUITE; total work (~1250 shard-minutes) is fixed. + # RISK: each forked test JVM uses ~4G (2G heap + 2G off-heap), so 4 forks atop + # the sbt launcher push the ~16G runner to its limit and may OOM on heavy suites + # -- which is why production uses TEST_PARALLELISM_COUNT=1. Measuring whether it + # fits now that the worst memory hog (DeletionVectorsSuite 2B-row) is force-failed. + DELTA_NUM_SHARDS: '4' + +concurrency: + group: ${{ github.repository }}-${{ github.head_ref || github.sha }}-${{ github.workflow }} + cancel-in-progress: true + +jobs: + build-native-lib-centos-7: + runs-on: ubuntu-22.04 + steps: + - uses: actions/checkout@v4 + - name: Get Ccache + uses: actions/cache/restore@v4 + with: + path: '${{ env.CCACHE_DIR }}' + key: ccache-delta-spark-ut-centos7-release-default-${{github.sha}} + restore-keys: | + ccache-delta-spark-ut-centos7-release-default + ccache-centos7-release-default + - name: Build Gluten native libraries + run: | + docker run -v $GITHUB_WORKSPACE:/work -w /work apache/gluten:vcpkg-centos-7-gcc13 bash -c " + set -e + yum install tzdata -y + df -a + cd /work + export CCACHE_DIR=/work/.ccache + export CCACHE_MAXSIZE=1G + mkdir -p /work/.ccache + ccache -sz + bash dev/ci-velox-buildstatic-centos-7.sh + ccache -s + mkdir -p /work/.m2/repository/org/apache/arrow/ + cp -r /root/.m2/repository/org/apache/arrow/* /work/.m2/repository/org/apache/arrow/ + " + - name: Save Ccache + if: always() + uses: actions/cache/save@v4 + with: + path: '${{ env.CCACHE_DIR }}' + key: ccache-delta-spark-ut-centos7-release-default-${{github.sha}} + - uses: actions/upload-artifact@v4 + with: + name: delta-spark-ut-native-lib-centos-7-${{github.sha}} + path: ./cpp/build/ + if-no-files-found: error + - uses: actions/upload-artifact@v4 + with: + name: delta-spark-ut-arrow-jars-centos-7-${{github.sha}} + path: .m2/repository/org/apache/arrow/ + if-no-files-found: error + + build-gluten-bundle: + needs: build-native-lib-centos-7 + runs-on: ubuntu-22.04 + container: apache/gluten:centos-9-jdk17 + steps: + - uses: actions/checkout@v4 + - name: Download native artifacts + uses: actions/download-artifact@v4 + with: + name: delta-spark-ut-native-lib-centos-7-${{github.sha}} + path: ./cpp/build/ + - name: Download Arrow jars + uses: actions/download-artifact@v4 + with: + name: delta-spark-ut-arrow-jars-centos-7-${{github.sha}} + path: /root/.m2/repository/org/apache/arrow/ + - name: Cache Maven repository + uses: actions/cache@v4 + with: + path: /root/.m2/repository + key: m2-delta-spark-ut-bundle-${{ env.GLUTEN_SPARK_PROFILE }}-${{ env.GLUTEN_SCALA_PROFILE }}-${{ hashFiles('pom.xml', '**/pom.xml') }} + restore-keys: | + m2-delta-spark-ut-bundle-${{ env.GLUTEN_SPARK_PROFILE }}-${{ env.GLUTEN_SCALA_PROFILE }}- + m2-delta-spark-ut-bundle- + - name: Build Gluten Velox + Delta bundle + run: | + set -euo pipefail + yum install -y java-17-openjdk-devel + export JAVA_HOME=/usr/lib/jvm/java-17-openjdk + export PATH=$JAVA_HOME/bin:$PATH + java -version + cd "$GITHUB_WORKSPACE" + # `install` (not `package`) so the gluten-delta artifact is in the local + # m2 repo before the `package/` shaded jar is built. `Dmaven.compiler.release=17` + # overrides any user settings.xml that may pin release=1.8 for Java 17 builds. + $MVN_CMD clean install \ + -P${{ env.GLUTEN_SPARK_PROFILE }} \ + -P${{ env.GLUTEN_SCALA_PROFILE }} \ + -P${{ env.GLUTEN_JAVA_PROFILE }} \ + -Pbackends-velox -Pdelta \ + -DskipTests -Dmaven.compiler.release=17 + - name: Stage bundle jar + run: | + set -euo pipefail + mkdir -p bundle-out + # Match the renamed fat jar produced by package/pom.xml's copy-fat-jar + # exec. The version part may bump (e.g. 1.7.0-SNAPSHOT -> 1.8.0-SNAPSHOT), + # so glob the version suffix. `2>/dev/null ... || true` keeps a no-match + # `ls` from aborting the step under `set -o pipefail`, so the explicit + # check below runs instead of dying with a generic "cannot access". + jar=$(ls package/target/gluten-velox-bundle-spark${{ env.GLUTEN_BUNDLE_SPARK_VERSION }}_${{ env.GLUTEN_BUNDLE_SCALA_VERSION }}-linux_amd64-*.jar 2>/dev/null | head -n 1 || true) + if [ -z "$jar" ] || [ ! -f "$jar" ]; then + echo "ERROR: Could not find Gluten bundle jar under package/target/" >&2 + ls -la package/target/ || true + exit 1 + fi + cp "$jar" bundle-out/ + ls -lh bundle-out/ + - uses: actions/upload-artifact@v4 + with: + name: delta-spark-ut-gluten-bundle-${{github.sha}} + path: bundle-out/gluten-velox-bundle-spark*_*-linux_amd64-*.jar + if-no-files-found: error + + delta-spark-test: + needs: build-gluten-bundle + runs-on: ubuntu-22.04 + container: apache/gluten:centos-9-jdk17 + # EXPERIMENT (4 shards x 4 forks): back to 350 -- per-shard suites now run + # 4-at-a-time, so each shard should finish well under the cap again. + timeout-minutes: 350 + strategy: + fail-fast: false + matrix: + # Length of this list MUST equal env.DELTA_NUM_SHARDS. + shard: [0, 1, 2, 3] + env: + # Mirror Delta's spark_test.yaml env vars used by run-tests.py / + # TestParallelization.scala. + SHARD_ID: ${{ matrix.shard }} + steps: + - uses: actions/checkout@v4 + + - name: Resolve workflow inputs + id: resolve + run: | + set -euo pipefail + delta_ref='${{ github.event.inputs.delta_ref }}' + spark_version='${{ github.event.inputs.spark_version }}' + test_parallelism='${{ github.event.inputs.test_parallelism }}' + update_baseline='${{ github.event.inputs.update_baseline }}' + fail_on_fixed='${{ github.event.inputs.fail_on_fixed }}' + : "${delta_ref:=${DELTA_REF_DEFAULT}}" + : "${spark_version:=${DELTA_SPARK_VERSION_DEFAULT}}" + : "${test_parallelism:=${DELTA_TEST_PARALLELISM_DEFAULT}}" + : "${update_baseline:=${DELTA_UPDATE_BASELINE_DEFAULT}}" + : "${fail_on_fixed:=${DELTA_FAIL_ON_FIXED_DEFAULT}}" + { + echo "delta_ref=${delta_ref}" + echo "spark_version=${spark_version}" + echo "test_parallelism=${test_parallelism}" + echo "update_baseline=${update_baseline}" + echo "fail_on_fixed=${fail_on_fixed}" + } | tee -a "$GITHUB_OUTPUT" + + - name: Download Gluten bundle jar + uses: actions/download-artifact@v4 + with: + name: delta-spark-ut-gluten-bundle-${{github.sha}} + path: gluten-bundle + + - name: Install minimal tools + run: | + set -euo pipefail + # apache/gluten:centos-9-jdk17 already has java-17, git, tar, a POSIX + # shell, and curl-minimal (which provides the `curl` command sbt's + # launcher needs). Install the rest of what Delta's build/sbt and the + # tests may need. We deliberately do NOT install the full `curl` + # package -- it conflicts with the pre-installed curl-minimal. + yum install -y java-17-openjdk-devel which findutils gzip python3 + export JAVA_HOME=/usr/lib/jvm/java-17-openjdk + export PATH=$JAVA_HOME/bin:$PATH + java -version + git --version + curl --version | head -n 1 + + - name: Cache sbt / Ivy / Coursier + uses: actions/cache@v4 + with: + path: | + /root/.sbt + /root/.ivy2 + /root/.cache/coursier + # Intentionally NOT keyed by ${{ matrix.shard }} -- all shards share + # the same dependency tree, so a single shared cache (with parallel + # save races resolved by GH on a first-write-wins basis) gives the + # best storage / hit-rate tradeoff. + key: delta-spark-ut-sbt-${{ steps.resolve.outputs.delta_ref }}-${{ steps.resolve.outputs.spark_version }}-${{ env.DELTA_SCALA_VERSION }} + restore-keys: | + delta-spark-ut-sbt-${{ steps.resolve.outputs.delta_ref }}-${{ steps.resolve.outputs.spark_version }}- + delta-spark-ut-sbt-${{ steps.resolve.outputs.delta_ref }}- + + - name: Clone and patch Delta + run: | + set -euo pipefail + # `2>/dev/null ... || true` keeps a no-match `ls` from aborting the step + # under `set -o pipefail`, so the explicit check below emits a clear + # error instead of a generic "cannot access". + GLUTEN_JAR=$(ls "$GITHUB_WORKSPACE"/gluten-bundle/gluten-velox-bundle-spark*_*-linux_amd64-*.jar 2>/dev/null | head -n 1 || true) + if [ -z "$GLUTEN_JAR" ] || [ ! -f "$GLUTEN_JAR" ]; then + echo "ERROR: No Gluten bundle jar found under $GITHUB_WORKSPACE/gluten-bundle/" >&2 + ls -la "$GITHUB_WORKSPACE/gluten-bundle/" || true + exit 1 + fi + echo "Using Gluten bundle: $GLUTEN_JAR" + bash "$GITHUB_WORKSPACE/.github/workflows/util/delta-spark-ut/setup-delta.sh" \ + "${{ steps.resolve.outputs.delta_ref }}" \ + "$GITHUB_WORKSPACE/delta" \ + "$GLUTEN_JAR" \ + "$GITHUB_WORKSPACE" + + - name: Run Delta spark module tests (shard ${{ matrix.shard }} / ${{ env.DELTA_NUM_SHARDS }}) + env: + NUM_SHARDS: ${{ env.DELTA_NUM_SHARDS }} + TEST_PARALLELISM_COUNT: ${{ steps.resolve.outputs.test_parallelism }} + # Required by Delta to enable testing-only code paths + # (see delta build.sbt: "Test / envVars += DELTA_TESTING -> 1"). + DELTA_TESTING: '1' + # JDK 17 + Gluten/Arrow/Netty requires extra --add-opens and the + # `io.netty.tryReflectionSetAccessible` system property; otherwise + # the forked test JVM fails with + # java.lang.UnsupportedOperationException: sun.misc.Unsafe or + # java.nio.DirectByteBuffer.(long, int) not available + # as soon as Gluten's bundled Arrow allocator initializes Netty + # direct buffers. Delta's own `Test / javaOptions` (see + # project/CrossSparkVersions.scala `java17TestSettings`) sets the + # base add-opens but NOT the Netty property -- Delta's own tests + # don't load Arrow/Netty buffers in a way that triggers it. + # + # Use JAVA_TOOL_OPTIONS so the flags propagate to BOTH the sbt + # launcher JVM and the forked test JVM (sbt forks tests and the + # child inherits the parent's env). The set below mirrors + # `extraJavaTestArgs` from Gluten's own root pom.xml (the + # canonical Gluten test JVM flag set). + # + # NOTE: we deliberately do NOT put `-Xmx` here. JAVA_TOOL_OPTIONS + # is processed BEFORE the JVM command line, so Delta's explicit + # `-Xmx1024m` (set in build.sbt `Test / javaOptions`) would still + # win (last `-Xmx` wins). The forked-test-JVM heap is bumped via + # an sbt `set spark / Test / javaOptions ++= ...` command below, + # which APPENDS to Delta's own seq -- so our `-Xmx` lands AFTER + # `-Xmx1024m` and wins. + JAVA_TOOL_OPTIONS: >- + -XX:+IgnoreUnrecognizedVMOptions + --add-opens=java.base/java.lang=ALL-UNNAMED + --add-opens=java.base/java.lang.invoke=ALL-UNNAMED + --add-opens=java.base/java.lang.reflect=ALL-UNNAMED + --add-opens=java.base/java.io=ALL-UNNAMED + --add-opens=java.base/java.net=ALL-UNNAMED + --add-opens=java.base/java.nio=ALL-UNNAMED + --add-opens=java.base/java.util=ALL-UNNAMED + --add-opens=java.base/java.util.concurrent=ALL-UNNAMED + --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED + --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED + --add-opens=java.base/sun.nio.ch=ALL-UNNAMED + --add-opens=java.base/sun.nio.cs=ALL-UNNAMED + --add-opens=java.base/sun.security.action=ALL-UNNAMED + --add-opens=java.base/sun.util.calendar=ALL-UNNAMED + -Djdk.reflect.useDirectMethodHandle=false + -Dio.netty.tryReflectionSetAccessible=true + -Dfile.encoding=UTF-8 + run: | + set -euo pipefail + export JAVA_HOME=/usr/lib/jvm/java-17-openjdk + export PATH=$JAVA_HOME/bin:$PATH + cd "$GITHUB_WORKSPACE/delta" + chmod +x build/sbt + # Only run the unified `spark` sbt project, NOT `sparkGroup/test` -- + # `sparkGroup` aggregates many other projects (sparkV2, contribs, + # sharing, connect*, ...) that are out of scope for this pipeline. + # + # JVM heap layout (16 GB ubuntu-22.04 runner, TEST_PARALLELISM=1): + # * sbt launcher JVM: -J-Xmx4G, BUT made to RETURN idle memory (see the + # G1 periodic-GC flags below). The per-minute MEM profiler in the + # watchdog (run #18) DISPROVED the old "launcher RSS is well under 4G" + # assumption: the launcher grew to a ROCK-STEADY 5.3G (RSS) during the + # test-compile and then HELD it for the entire run -- ~3.8G of pure + # idle waste during the (long) test phase, where it only relays the + # fork's test events. That fixed 5.3G + the fork's native spike in a + # heavy suite is what pushed the cgroup to the ~16G OOM-kill. G1 does + # NOT uncommit on its own here because the idle launcher never GCs. + # FIX (behaviour-neutral -- touches NO Gluten/Spark runtime config, so + # it cannot pollute the measured pass/fail signal): keep -Xmx4G for the + # compile headroom but force a periodic GC every 10s when idle + # (G1PeriodicGCInterval) with the system-load gate disabled + # (G1PeriodicGCSystemLoadThreshold=0, since the busy fork would + # otherwise suppress it) as a full STW collection + # (-G1PeriodicGCInvokesConcurrent) that uncommits down to a tight free + # ratio (Min/MaxHeapFreeRatio 5/15, JEP 346) above a low -Xms512m + # floor. The idle launcher then drops from ~5.3G back to ~1-2G during + # the test phase, cutting the cgroup peak by ~3.8G (~15.9G -> ~12G) -- + # real headroom under the OOM threshold -- with zero compile-OOM risk. + # * Forked test JVM: -Xmx2G via the `set ... Test / javaOptions` command + # below. Delta v4.2.0 caps its test fork at `-Xmx1024m` in build.sbt; + # Gluten OFFLOADS data to Velox off-heap (capped at 2g via + # spark.memory.offHeap.size in the patched DeltaSQLCommandTest), so the + # fork's JVM HEAP need is modest -- 2G is generous. + # HISTORY: briefly bumped to 8G then 4G to absorb a DV+CDC merge suite's + # giant RoaringBitmapArray heap allocation, but that was a Gluten bug + # (garbage native _metadata.row_index) FIXED UPSTREAM by #12269 -- so the + # large heap is no longer needed. Worse, on the ~16G runner the cgroup + # memory.peak hit 15.97G with a 4G fork heap and the kernel OOM-killed + # the fork mid-shard (sudden death, no hs_err / no heap dump), which + # wedged sbt's main process forever in ScalaTestRunner.done -> Thread + # .join (the chronic "shard 2 hang"). The JVM heaps -- not off-heap -- + # drive that peak, so 2G fork heap (+ the unchanged 4G sbt launcher, + # which needs its heap to COMPILE the tests) brings the peak to ~13G, + # leaving real headroom. The `++=` appends to Delta's own Test/javaOptions + # seq so our `-Xmx2G` comes AFTER `-Xmx1024m` and wins (last `-Xmx` + # wins). Keep heap-dump-on-OOM so a genuine >2G heap OOM is analyzable. + # `-u target/test-reports` enables ScalaTest's JUnit XML reporter so + # every suite writes per-test results. Delta itself only configures + # the console reporter (-oDF), so without this we'd have no machine- + # readable results to gate on. The path is relative to the forked + # test JVM's working dir (Test / baseDirectory = spark/), i.e. + # delta/spark/target/test-reports/TEST-*.xml. + # + # We deliberately do NOT let an sbt non-zero exit (which fires on the + # MANY expected Delta-on-Gluten failures) fail this step directly. + # Instead the known-failures gate below decides pass/fail: the build + # is green when the only failures are ones already recorded in the + # baseline, and red on a genuine regression. + set +e + # --- hang watchdog --------------------------------------------------- + # Shard 2 (and occasionally others) hangs indefinitely after a suite's + # last test with no further output. ScalaTest's failAfter only wraps + # individual test BODIES, so a wedge in suite teardown/afterAll -- or in + # a non-interruptible native Velox/JNI call that ignores + # Thread.interrupt() -- has no timeout and stalls until the 350-min job + # limit with zero diagnostics. This watchdog dumps the forked test JVM's + # threads (to the job log, and to a file for the artifact) once the test + # output has been silent for too long, so the deadlock is diagnosable. + SBT_LOG="/tmp/sbt-spark-test-shard-${{ matrix.shard }}.log" + : > "$SBT_LOG" + rm -f /tmp/sbt-done + ( + # CRITICAL: the step shell runs with `bash -eo pipefail`, which the + # subshell inherits. Without `set +e` here, ANY non-zero command -- + # e.g. fork detection finding no match, or `kill`/`jps` returning + # non-zero -- silently kills this watchdog. That errexit kill (plus a + # /proc detection miss) is why the watchdog captured ZERO dumps in + # runs #12 and #13. A diagnostic must never abort on a failed probe. + set +e +o pipefail + JSTACK="${JAVA_HOME}/bin/jstack" + JPS="${JAVA_HOME}/bin/jps" + silent_limit=900 # 15 min with no new test output => treat as hung + dumps=0 + fork_pids() { + # The sbt test fork's main class is sbt.ForkMain. Prefer jps (reads + # the main class from hsperfdata, robust to sbt's @argfile launch); + # fall back to scanning /proc cmdline + @argfile. + "$JPS" -l 2>/dev/null | awk '/sbt\.ForkMain/ {print $1}' + local p cl arg + for p in /proc/[0-9]*; do + [ "$(cat "$p/comm" 2>/dev/null)" = "java" ] || continue + cl="$(tr '\0' ' ' < "$p/cmdline" 2>/dev/null)" + case "$cl" in *sbt.ForkMain*) echo "${p##*/}"; continue ;; esac + arg="$(printf '%s' "$cl" | tr ' ' '\n' | sed -n 's/^@//p' | head -1)" + [ -n "$arg" ] && [ -f "$arg" ] && grep -qa 'sbt\.ForkMain' "$arg" 2>/dev/null \ + && echo "${p##*/}" + done + } + all_java_pids() { + "$JPS" -q 2>/dev/null + local p + for p in /proc/[0-9]*; do + [ "$(cat "$p/comm" 2>/dev/null)" = "java" ] && echo "${p##*/}" + done + } + echo "HANG WATCHDOG armed: dumps the test JVM after ${silent_limit}s of output silence" + hb=0 + while [ ! -f /tmp/sbt-done ]; do + sleep 60 + [ -f "$SBT_LOG" ] || continue + now=$(date +%s) + mtime=$(stat -c %Y "$SBT_LOG" 2>/dev/null || echo "$now") + silent=$(( now - mtime )) + # Per-minute memory profile: heap tuning proved the ~16G OOM peak is + # NATIVE-driven, so log which JVM (sbt launcher vs fork) actually grows + # toward it -- the last lines before a hang reveal the real hog to cut. + # Read /proc directly (no `ps` dependency in the minimal container). + memnow=$(awk '{printf "%.2fG",$1/1073741824}' /sys/fs/cgroup/memory.current 2>/dev/null) + jvmrss="" + for mp in $(all_java_pids 2>/dev/null | sort -un); do + r=$(awk '/^VmRSS:/{print $2}' "/proc/$mp/status" 2>/dev/null) + [ -n "$r" ] && jvmrss="$jvmrss $(( r / 1024 ))M(p$mp)" + done + echo "MEM cgroup=${memnow} JVMs=[${jvmrss# }]" + hb=$(( hb + 1 )) + # Heartbeat every ~5 min so we can SEE the watchdog is alive (and how + # long the test has been silent) without waiting for a hang. + [ $(( hb % 5 )) -eq 0 ] && echo "HANG WATCHDOG: alive; last test output ${silent}s ago" + if [ "$silent" -ge "$silent_limit" ] && [ "$dumps" -lt 3 ]; then + dumps=$(( dumps + 1 )) + pids="$(fork_pids | sort -un)" + # Safety net: if the fork JVM cannot be pinpointed, dump EVERY JVM. + [ -n "$pids" ] || pids="$(all_java_pids | sort -un)" + echo "::group::HANG WATCHDOG: test output silent ${silent}s -- thread dump #${dumps} (pids:$(printf ' %s' $pids))" + [ -n "$pids" ] || echo "HANG WATCHDOG: no java process found to dump" + for pid in $pids; do + # SIGQUIT makes the JVM print a full thread dump to its OWN stderr, + # which sbt relays into the test log via the SAME stream as test + # output -- so it lands in the job log even when a separately + # spawned jstack child's output would be buffered/lost. Also write + # jstack to a file for the per-shard artifact. + echo "----- SIGQUIT + jstack pid ${pid} -----" + kill -QUIT "$pid" 2>/dev/null || echo "HANG WATCHDOG: kill -QUIT failed for pid ${pid}" + timeout 120 "$JSTACK" -l "$pid" > "/tmp/threaddump-shard-${{ matrix.shard }}-${dumps}-${pid}.txt" 2>&1 \ + || echo "HANG WATCHDOG: jstack failed/timed out for pid ${pid}" + done + echo "::endgroup::" + # The dump is now captured (job log via SIGQUIT + artifact via + # jstack file). A hung JVM otherwise stalls the whole shard until + # the 350-min job timeout AND keeps the job log frozen so the dump + # never becomes reachable. So KILL the wedged JVM(s): the suite + # fails fast (acceptable -- errors are expected; only an + # unrecoverable hang blocks CI), the job proceeds/ends, and the log + # + artifacts flush. Give SIGQUIT a moment to print first. + sleep 20 + echo "HANG WATCHDOG: killing wedged JVM(s) to unblock the shard: $(printf '%s ' $pids)" + for pid in $pids; do kill -KILL "$pid" 2>/dev/null; done + fi + done + ) & + WATCHDOG_PID=$! + + ./build/sbt \ + -DsparkVersion=${{ steps.resolve.outputs.spark_version }} \ + -v \ + -J-XX:+UseG1GC -J-Xms512m -J-Xmx4G \ + -J-XX:G1PeriodicGCInterval=10000 \ + -J-XX:G1PeriodicGCSystemLoadThreshold=0 \ + -J-XX:-G1PeriodicGCInvokesConcurrent \ + -J-XX:MinHeapFreeRatio=5 -J-XX:MaxHeapFreeRatio=15 \ + "++ ${DELTA_SCALA_VERSION}" \ + 'set spark / Test / javaOptions ++= Seq("-Xmx2G", "-XX:+HeapDumpOnOutOfMemoryError", "-XX:HeapDumpPath=/tmp/")' \ + 'set spark / Test / testOptions += Tests.Argument(TestFrameworks.ScalaTest, "-u", "target/test-reports")' \ + "spark/test" 2>&1 | tee "$SBT_LOG" + SBT_EXIT=${PIPESTATUS[0]} + touch /tmp/sbt-done + kill "$WATCHDOG_PID" 2>/dev/null || true + set -e + echo "sbt spark/test exited with ${SBT_EXIT}" + + # Memory forensics: a sudden forked-JVM death with no hs_err and no heap + # dump is almost always a kernel/cgroup OOM-kill (Velox off-heap + JVM + # heap exceeding the ~16G runner). Surface the cgroup peak + oom_kill + # count so we can confirm/measure it (cgroup v2 paths; best-effort). + ( echo "=== cgroup memory forensics (exit ${SBT_EXIT}) ===" + for f in /sys/fs/cgroup/memory.peak /sys/fs/cgroup/memory.max \ + /sys/fs/cgroup/memory.current /sys/fs/cgroup/memory.events; do + [ -r "$f" ] && { echo "--- $f ---"; cat "$f"; } + done ) || true + + # A compile/launch failure leaves no reports at all. In that case the + # gate would see zero failures and pass spuriously, so fail loudly. + REPORT_COUNT=$(find . -path '*/target/test-reports/*.xml' 2>/dev/null | wc -l || true) + echo "Found ${REPORT_COUNT} JUnit XML report file(s)." + if [ "${REPORT_COUNT}" -eq 0 ]; then + echo "::error::sbt produced no test reports (exit ${SBT_EXIT}) -- likely a compile or launch failure, not test failures." + exit 1 + fi + + # update_baseline=true -> SEED mode (record failures, never fail) so the + # baseline can be (re)generated. Otherwise ENFORCE against the baseline. + GATE_MODE=enforce + if [ "${{ steps.resolve.outputs.update_baseline }}" = "true" ]; then + GATE_MODE=seed + fi + mkdir -p "$GITHUB_WORKSPACE/gate-out" + python3 "$GITHUB_WORKSPACE/.github/workflows/util/delta-spark-ut/compare-test-results.py" \ + --mode "${GATE_MODE}" \ + --reports-dir "$GITHUB_WORKSPACE/delta" \ + --known-failures "$GITHUB_WORKSPACE/.github/workflows/util/delta-spark-ut/known-failures.txt" \ + --failures-out "$GITHUB_WORKSPACE/gate-out/failures-shard-${{ matrix.shard }}.txt" \ + --ran-out "$GITHUB_WORKSPACE/gate-out/ran-shard-${{ matrix.shard }}.txt" \ + --fail-on-fixed "${{ steps.resolve.outputs.fail_on_fixed }}" + + - name: Compress heap dumps (if any) + if: ${{ failure() }} + run: | + set -euo pipefail + if compgen -G "/tmp/*.hprof" > /dev/null; then + echo "Found heap dump(s); compressing..." + ls -lh /tmp/*.hprof + # gzip is single-threaded and slow on multi-GB heaps but is + # always present in the centos image. Heap dumps compress ~10x. + gzip -1 /tmp/*.hprof + ls -lh /tmp/*.hprof.gz + else + echo "No heap dumps found in /tmp/." + fi + + - name: Upload per-shard gate lists + if: always() + uses: actions/upload-artifact@v4 + with: + name: delta-spark-ut-gate-lists-shard-${{ matrix.shard }} + path: gate-out/*.txt + if-no-files-found: warn + + - name: Upload test reports + if: always() + uses: actions/upload-artifact@v4 + with: + name: delta-spark-ut-reports-shard-${{ matrix.shard }} + path: | + delta/**/target/test-reports/**/*.xml + delta/**/target/surefire-reports/**/*.xml + if-no-files-found: warn + + - name: Upload hang watchdog thread dumps + if: always() + uses: actions/upload-artifact@v4 + with: + name: delta-spark-ut-threaddumps-shard-${{ matrix.shard }} + path: /tmp/threaddump-shard-${{ matrix.shard }}-*.txt + if-no-files-found: ignore + + - name: Upload JVM crash logs and other failure artifacts + if: ${{ failure() }} + uses: actions/upload-artifact@v4 + with: + name: delta-spark-ut-failure-logs-shard-${{ matrix.shard }} + path: | + delta/**/target/*.log + delta/**/hs_err_pid*.log + delta/**/core.* + /tmp/*.hprof + /tmp/*.hprof.gz + if-no-files-found: ignore + + # Merges every shard's failure/ran lists into a single, sorted, ready-to-commit + # known-failures.txt and reports global regressions / now-passing / stale + # entries. Runs even when some shards went red (if: always()) so the refreshed + # baseline artifact is always available -- this is what you download and commit + # to bootstrap or refresh the baseline (see util/delta-spark-ut/README.md). + delta-spark-aggregate: + needs: delta-spark-test + if: always() + runs-on: ubuntu-22.04 + steps: + - uses: actions/checkout@v4 + - name: Download per-shard gate lists + uses: actions/download-artifact@v4 + continue-on-error: true + with: + pattern: delta-spark-ut-gate-lists-shard-* + path: gate-lists + merge-multiple: true + - name: Aggregate known failures + run: | + set -euo pipefail + python3 .github/workflows/util/delta-spark-ut/compare-test-results.py \ + --mode aggregate \ + --inputs-dir gate-lists \ + --known-failures .github/workflows/util/delta-spark-ut/known-failures.txt \ + --baseline-out aggregated/known-failures.txt + - name: Upload refreshed baseline + if: always() + uses: actions/upload-artifact@v4 + with: + name: delta-spark-ut-known-failures + path: aggregated/known-failures.txt + if-no-files-found: warn diff --git a/.github/workflows/util/delta-spark-ut/README.md b/.github/workflows/util/delta-spark-ut/README.md new file mode 100644 index 00000000000..ea2cc6af190 --- /dev/null +++ b/.github/workflows/util/delta-spark-ut/README.md @@ -0,0 +1,112 @@ + + +# Delta Spark UT (Gluten) — managing expected failures + +Running delta-io/delta's `spark` ScalaTest suite against the Gluten Velox +bundle produces **many expected failures**: Gluten does not yet offload every +Delta code path, and falls back or behaves differently in places. If CI simply +went red on any failure, the signal would be useless and we could never tell a +*new* breakage from the hundreds of already-known ones. + +To make this manageable we keep a **baseline of known failures** and gate each +run against it. The build is green when the only failing tests are ones already +recorded in the baseline; it goes red the moment a **previously-passing test +starts failing** (a regression). + +## Files + +| File | Purpose | +|---|---| +| `known-failures.txt` | Committed baseline: the tests currently expected to fail. One `#` per line. | +| `compare-test-results.py` | Parses the JUnit XML from `sbt spark/test` and gates / seeds / aggregates against the baseline. Standard-library only. | +| `setup-delta.sh` | Clones Delta, drops in the Gluten bundle, and patches `DeltaSQLCommandTest`. | + +## How the gate works + +Each test shard: + +1. Runs `sbt spark/test` with ScalaTest's JUnit XML reporter enabled + (`-u target/test-reports`), so every suite writes per-test results. (Delta + itself only configures the console reporter, so the workflow injects this.) +2. Runs `compare-test-results.py --mode enforce`, which classifies every test: + - **regression** — failed, but not in the baseline → **fails the shard**. + - **expected** — failed and in the baseline → ignored. + - **now-passing** — in the baseline but passed this run → fails the shard + (so the baseline is kept honest), unless `fail_on_fixed=false`. + +A final `aggregate` job merges every shard's results into a single, sorted, +ready-to-commit `known-failures.txt` artifact and reports **stale** baseline +entries (tests no longer present in any shard, e.g. after a Delta version bump). + +Because Delta shards **by suite**, every suite (and therefore every test) runs +in exactly one shard, so per-shard enforcement sees complete suites and never +double-counts. + +## Bootstrapping the baseline (first time) + +While `known-failures.txt` has no entries the gate auto-runs in **seed mode** +(it never fails — it only records failures). To create the initial baseline: + +1. Trigger **Actions → Delta Spark UT (Gluten) → Run workflow** with + `update_baseline = true`. +2. When it finishes, download the **`delta-spark-ut-known-failures`** artifact. +3. Replace `known-failures.txt` with the file from that artifact and commit it. + +From the next run onward the gate enforces the baseline. + +## Day-to-day: fixing tests incrementally + +- **You fixed Gluten and some Delta tests now pass.** CI will flag them as + *now-passing*. Delete those lines from `known-failures.txt` in your PR. That + is the whole point — the baseline only ever shrinks as coverage improves. +- **You intentionally added a new expected failure** (e.g. a Delta path Gluten + can't offload yet). Add the exact `Suite#test` line(s) the gate prints under + *Regressions* to `known-failures.txt`, ideally with a comment explaining why. +- **A genuine regression.** Fix it; do **not** add it to the baseline. + +The error log prints copy-pasteable `Suite#test` lines for both regressions and +now-passing tests, and each run's job summary shows the full breakdown. + +## Regenerating / refreshing the whole baseline + +After a Delta version bump or a large Gluten change, regenerate from scratch the +same way as bootstrapping: run the workflow with `update_baseline=true`, download +the `delta-spark-ut-known-failures` artifact, and commit it. The aggregate job +also lists **stale** entries you can prune. + +## Caveats + +- **Flaky tests.** A flaky test that usually passes will be flagged as a + regression when it flakes; one that usually fails (and is in the baseline) + may be flagged as now-passing when it happens to pass. Re-run, or set + `fail_on_fixed=false` for that run, and keep genuinely flaky tests out of the + enforced set. +- **Known failures still execute** (and fail) — they are gated *after* the run, + not skipped — so they still consume CI time. This keeps us decoupled from + Delta's sources; skipping them at runtime would require patching Delta. + +## Running the comparison locally + +```bash +# after an sbt spark/test run that wrote delta/**/target/test-reports/*.xml +python3 .github/workflows/util/delta-spark-ut/compare-test-results.py \ + --mode enforce \ + --reports-dir delta \ + --known-failures .github/workflows/util/delta-spark-ut/known-failures.txt \ + --failures-out /tmp/failures.txt --ran-out /tmp/ran.txt +``` diff --git a/.github/workflows/util/delta-spark-ut/compare-test-results.py b/.github/workflows/util/delta-spark-ut/compare-test-results.py new file mode 100644 index 00000000000..bed6d18712e --- /dev/null +++ b/.github/workflows/util/delta-spark-ut/compare-test-results.py @@ -0,0 +1,467 @@ +#!/usr/bin/env python3 +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +"""Gate / seed / aggregate the Delta-on-Gluten unit test results. + +Running delta-io/delta's ScalaTest suite against the Gluten Velox bundle +produces many *expected* failures (Gluten does not yet support every Delta +code path). To keep the red/green signal meaningful while we fix those +failures incrementally, we maintain a committed baseline of known failing +tests (``known-failures.txt``) and compare each CI run against it. + +This script has three modes: + +``enforce`` (default, per shard) + Parse the JUnit XML produced by ``sbt spark/test`` (ScalaTest ``-u`` + reporter) and compare against the baseline: + + * regression -- a test that FAILED but is NOT in the baseline. These + fail the build: a previously-passing test just started failing. + * expected -- a test that failed and IS in the baseline. Ignored. + * fixed -- a baseline test that now PASSES. By default these also + fail the build (``--fail-on-fixed true``) so the baseline stays honest + and contributors remove entries as they fix them. + + If the baseline is empty (not yet bootstrapped) the mode automatically + degrades to ``seed`` so the first run is never spuriously red. + +``seed`` (bootstrap / ``update_baseline``) + Never fails. Just writes the current shard's failing tests so the baseline + can be (re)generated from a real run. + +``aggregate`` (final job) + Merge every shard's ``--failures-out`` / ``--ran-out`` file into a single, + sorted, ready-to-commit ``known-failures.txt`` and report stale baseline + entries (tests no longer present in any shard). + +Baseline file format (``known-failures.txt``):: + + # comment lines start with '#' + # + +The suite is always a JVM class name (dot-separated, never starts with '#'), +so a line whose first non-space character is '#' is unambiguously a comment, +and the FIRST '#' after the suite separates suite from the (possibly +'#'-containing) test name. + +Only the Python standard library is used so the script runs in the bare +centos image used by the Delta UT pipeline with no ``pip install``. +""" + +import argparse +import glob +import os +import sys +import xml.etree.ElementTree as ET + +# Synthetic "test name" recorded when a whole suite aborts (e.g. beforeAll +# throws) so that the JUnit XML reports a suite-level error with no per-test +# . Without this, a suite that used to pass but now aborts entirely +# would record zero failing testcases and the regression would be missed. +SUITE_ABORTED = "" + +SEP = "#" + + +def eprint(*args, **kwargs): + print(*args, file=sys.stderr, **kwargs) + + +# --------------------------------------------------------------------------- # +# Baseline (known-failures.txt) parsing / formatting +# --------------------------------------------------------------------------- # +def format_entry(suite, test): + return "{}{}{}".format(suite, SEP, test) + + +def parse_entry(line): + """Parse a 'suite#test' line into (suite, test) or return None for blanks/comments.""" + stripped = line.strip() + if not stripped or stripped.startswith("#"): + return None + idx = stripped.find(SEP) + if idx < 0: + # No separator: treat the whole line as a suite-level entry. + return (stripped, SUITE_ABORTED) + return (stripped[:idx], stripped[idx + len(SEP) :]) + + +def load_entries(path): + """Load a set of (suite, test) tuples from a baseline/shard-list file.""" + entries = set() + if not path or not os.path.exists(path): + return entries + with open(path, "r", encoding="utf-8") as fh: + for line in fh: + parsed = parse_entry(line) + if parsed is not None: + entries.add(parsed) + return entries + + +def write_entries(path, entries, header=None): + """Write a sorted set of (suite, test) tuples to a file.""" + os.makedirs(os.path.dirname(os.path.abspath(path)) or ".", exist_ok=True) + with open(path, "w", encoding="utf-8") as fh: + if header: + for hl in header.splitlines(): + fh.write(hl.rstrip() + "\n") + for suite, test in sorted(entries): + # Defensive: collapse any stray newlines so each entry stays on one line. + safe_test = test.replace("\r", " ").replace("\n", " ") + fh.write(format_entry(suite, safe_test) + "\n") + + +# --------------------------------------------------------------------------- # +# JUnit XML parsing +# --------------------------------------------------------------------------- # +def _iter_testsuites(root): + """Yield every element regardless of whether the file root is + (wrapper) or a single .""" + tag = root.tag.split("}")[-1] # strip any namespace + if tag == "testsuites": + for child in root: + if child.tag.split("}")[-1] == "testsuite": + yield child + elif tag == "testsuite": + yield root + + +def _child_local_tags(elem): + return {c.tag.split("}")[-1] for c in elem} + + +def parse_reports(reports_dir): + """Walk reports_dir for JUnit XML and classify every test. + + Returns (passed, failed, skipped) sets of (suite, test) tuples. A test is + 'failed' if its has a or child, 'skipped' if + it has a child, otherwise 'passed'. Suite-level aborts (a + reporting errors/failures with no failing ) are + recorded as a synthetic (suite, SUITE_ABORTED) failure. + """ + passed, failed, skipped = set(), set(), set() + + xml_files = [] + # ScalaTest's -u reporter and Maven surefire both write `TEST-.xml` + # under a `target/.../*-reports/` dir. Restrict the secondary glob to + # `target/` so we never parse Delta's own XML *test resources* (which live + # under src/test/resources and are not reports). The -root guard + # below is a final safety net. + for pattern in ("**/TEST-*.xml", "**/target/**/*.xml"): + xml_files.extend(glob.glob(os.path.join(reports_dir, pattern), recursive=True)) + xml_files = sorted(set(xml_files)) + + parsed_any = False + for xml_file in xml_files: + try: + tree = ET.parse(xml_file) + except ET.ParseError as exc: + eprint("WARNING: could not parse {}: {}".format(xml_file, exc)) + continue + root = tree.getroot() + root_tag = root.tag.split("}")[-1] + if root_tag not in ("testsuites", "testsuite"): + continue # not a JUnit report + + for ts in _iter_testsuites(root): + parsed_any = True + suite_name = ts.get("name") or "" + suite_has_failing_tc = False + for tc in ts: + if tc.tag.split("}")[-1] != "testcase": + continue + suite = tc.get("classname") or suite_name + name = tc.get("name") or "" + key = (suite, name) + tags = _child_local_tags(tc) + if "failure" in tags or "error" in tags: + failed.add(key) + suite_has_failing_tc = True + elif "skipped" in tags: + skipped.add(key) + else: + passed.add(key) + + # Suite-level abort: counters say something failed but no testcase + # carried the failure (the suite blew up in beforeAll/constructor). + # Record a + # synthetic entry so the regression is visible. + try: + errors = int(ts.get("errors", "0") or "0") + failures = int(ts.get("failures", "0") or "0") + except ValueError: + errors = failures = 0 + if (errors + failures) > 0 and not suite_has_failing_tc: + failed.add((suite_name, SUITE_ABORTED)) + + if not parsed_any: + eprint( + "WARNING: no JUnit elements found under {}".format(reports_dir) + ) + + # A test can't be both passed and failed; failure wins. Skipped only counts + # if the test was not otherwise seen (e.g. retried). + passed -= failed + skipped -= failed + skipped -= passed + return passed, failed, skipped + + +# --------------------------------------------------------------------------- # +# Reporting helpers +# --------------------------------------------------------------------------- # +def _summary_sink(): + """Return a writer that mirrors to GITHUB_STEP_SUMMARY when available.""" + path = os.environ.get("GITHUB_STEP_SUMMARY") + handle = open(path, "a", encoding="utf-8") if path else None + + def write(line=""): + print(line) + if handle: + handle.write(line + "\n") + + return write, handle + + +def _print_block(write, title, entries, limit=50): + write("") + write("### {} ({})".format(title, len(entries))) + if not entries: + return + write("") + write("```") + for i, (suite, test) in enumerate(sorted(entries)): + if i >= limit: + write("... and {} more".format(len(entries) - limit)) + break + write(format_entry(suite, test)) + write("```") + + +# --------------------------------------------------------------------------- # +# Modes +# --------------------------------------------------------------------------- # +def run_enforce(args): + baseline = load_entries(args.known_failures) + passed, failed, skipped = parse_reports(args.reports_dir) + + # Always emit this shard's artifacts for the aggregation job. + if args.failures_out: + write_entries(args.failures_out, failed) + if args.ran_out: + write_entries(args.ran_out, passed | failed) + + write, handle = _summary_sink() + try: + seeding = args.mode == "seed" or not baseline + if seeding and args.mode != "seed": + write( + "> NOTE: baseline `{}` is empty -- running in SEED mode " + "(no failures will be enforced). Bootstrap the baseline from " + "the aggregated artifact, commit it, then enforcement begins.".format( + args.known_failures + ) + ) + + write( + "## Delta-on-Gluten test gate -- shard {}".format( + os.environ.get("SHARD_ID", "?") + ) + ) + write("") + write("| Category | Count |") + write("|---|---:|") + write("| Ran (pass+fail) | {} |".format(len(passed) + len(failed))) + write("| Passed | {} |".format(len(passed))) + write("| Failed | {} |".format(len(failed))) + write("| Skipped | {} |".format(len(skipped))) + write("| Baseline (known failures) | {} |".format(len(baseline))) + + if seeding: + write("") + write( + "Seed mode: recorded {} failing test(s) for this shard. " + "Nothing enforced.".format(len(failed)) + ) + return 0 + + regressions = failed - baseline + fixed = baseline & passed + expected = failed & baseline + + write("") + write("| Gate result | Count |") + write("|---|---:|") + write("| Expected failures (in baseline) | {} |".format(len(expected))) + write("| **Regressions (new failures)** | {} |".format(len(regressions))) + write("| Now-passing (remove from baseline) | {} |".format(len(fixed))) + + _print_block( + write, "Regressions -- new failures NOT in the baseline", regressions + ) + if regressions: + write("") + write( + "These tests were not previously known to fail. Either fix " + "the regression, or (if it is a genuinely new expected " + "failure) add the lines above to `known-failures.txt`." + ) + + if args.fail_on_fixed: + _print_block( + write, "Now-passing -- delete these lines from the baseline", fixed + ) + + exit_code = 0 + if regressions: + for suite, test in sorted(regressions): + eprint("::error::REGRESSION {}".format(format_entry(suite, test))) + exit_code = 1 + if args.fail_on_fixed and fixed: + for suite, test in sorted(fixed): + eprint( + "::error::NOW-PASSING (remove from baseline) {}".format( + format_entry(suite, test) + ) + ) + exit_code = 1 + + if exit_code == 0: + write("") + write("All failures are expected (in the baseline). Gate passed.") + return exit_code + finally: + if handle: + handle.close() + + +def run_aggregate(args): + failure_files = sorted( + glob.glob(os.path.join(args.inputs_dir, "**", "failures-*.txt"), recursive=True) + ) + ran_files = sorted( + glob.glob(os.path.join(args.inputs_dir, "**", "ran-*.txt"), recursive=True) + ) + + union_failed = set() + for f in failure_files: + union_failed |= load_entries(f) + union_ran = set() + for f in ran_files: + union_ran |= load_entries(f) + + header = ( + "# Known Delta-on-Gluten unit test failures.\n" + "#\n" + "# Auto-generated by compare-test-results.py --mode aggregate.\n" + "# Format: #\n" + "# Lines starting with '#' are comments.\n" + "#\n" + "# Regenerate by running the 'Delta Spark UT (Gluten)' workflow with\n" + "# update_baseline=true and committing the produced artifact.\n" + ) + if args.baseline_out: + write_entries(args.baseline_out, union_failed, header=header) + + write, handle = _summary_sink() + try: + write("## Delta-on-Gluten aggregated results") + write("") + write("| Metric | Count |") + write("|---|---:|") + write("| Shards with failure lists | {} |".format(len(failure_files))) + write("| Distinct failing tests | {} |".format(len(union_failed))) + write("| Distinct tests run | {} |".format(len(union_ran))) + + exit_code = 0 + if args.known_failures and os.path.exists(args.known_failures): + baseline = load_entries(args.known_failures) + if baseline: + regressions = union_failed - baseline + fixed = baseline & (union_ran - union_failed) + stale = baseline - union_ran + write("| Baseline entries | {} |".format(len(baseline))) + write("| Regressions (global) | {} |".format(len(regressions))) + write("| Now-passing (global) | {} |".format(len(fixed))) + write("| Stale (not seen this run) | {} |".format(len(stale))) + _print_block(write, "Regressions (global)", regressions) + _print_block(write, "Now-passing (global)", fixed) + _print_block(write, "Stale baseline entries (suite/test gone)", stale) + if args.fail_on_regression and regressions: + exit_code = 1 + return exit_code + finally: + if handle: + handle.close() + + +# --------------------------------------------------------------------------- # +# CLI +# --------------------------------------------------------------------------- # +def str2bool(value): + return str(value).strip().lower() in ("1", "true", "yes", "y", "on") + + +def main(argv=None): + parser = argparse.ArgumentParser( + description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter + ) + parser.add_argument( + "--mode", choices=("enforce", "seed", "aggregate"), default="enforce" + ) + parser.add_argument( + "--known-failures", help="Path to the committed known-failures.txt baseline." + ) + parser.add_argument( + "--reports-dir", help="Root dir to search for JUnit XML (enforce/seed)." + ) + parser.add_argument( + "--failures-out", help="Write this shard's failing tests here (enforce/seed)." + ) + parser.add_argument( + "--ran-out", help="Write this shard's run tests (pass+fail) here." + ) + parser.add_argument( + "--fail-on-fixed", + type=str2bool, + default=True, + help="Fail when a baseline test now passes (default true).", + ) + parser.add_argument( + "--inputs-dir", help="Dir with per-shard failures-*/ran-* files (aggregate)." + ) + parser.add_argument( + "--baseline-out", help="Write the merged baseline here (aggregate)." + ) + parser.add_argument( + "--fail-on-regression", + type=str2bool, + default=False, + help="In aggregate mode, fail if global regressions exist.", + ) + args = parser.parse_args(argv) + + if args.mode in ("enforce", "seed"): + if not args.reports_dir: + parser.error("--reports-dir is required for --mode {}".format(args.mode)) + return run_enforce(args) + return run_aggregate(args) + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/.github/workflows/util/delta-spark-ut/known-failures.txt b/.github/workflows/util/delta-spark-ut/known-failures.txt new file mode 100644 index 00000000000..ae7b300084b --- /dev/null +++ b/.github/workflows/util/delta-spark-ut/known-failures.txt @@ -0,0 +1,977 @@ +# Known Delta-on-Gluten unit test failures. +# +# Baseline of delta-io/delta `spark` ScalaTest tests EXPECTED to fail under the +# Gluten Velox bundle. The Delta Spark UT (Gluten) workflow enforces this list: +# a failing test NOT listed here is a regression (fails CI); a listed test that +# now passes should be removed. Format: #. +# Lines starting with '#' are comments. See README.md in this directory. +# +# --------------------------------------------------------------------------- +# Full 16-shard baseline. Originally seeded from 15 of 16 shards (run +# 27490052632). Shard 2 used to hang/OOM-crash on DeletionVectorsSuite's 2B-row +# DV tests; those two tests are now force-failed in setup-delta.sh, so shard 2 +# runs to completion and contributes 69 failures. 963 known failures total. +# --------------------------------------------------------------------------- +io.delta.sql.DeltaExtensionAndCatalogSuite#activate Delta SQL parser using SQL conf +io.delta.sql.DeltaExtensionAndCatalogSuite#activate Delta SQL parser using withExtensions +io.delta.sql.JavaDeltaSparkSessionExtensionSuite#testSQLConf +io.delta.tables.DeltaTableHadoopOptionsSuite#delete - with filesystem options +io.delta.tables.DeltaTableHadoopOptionsSuite#details - with filesystem options. +io.delta.tables.DeltaTableHadoopOptionsSuite#forPath - with filesystem options +io.delta.tables.DeltaTableHadoopOptionsSuite#forPath error out without filesystem options passed in. +io.delta.tables.DeltaTableHadoopOptionsSuite#forPath with unsupported options +io.delta.tables.DeltaTableHadoopOptionsSuite#forPath: as/alias/toDF with filesystem options. +io.delta.tables.DeltaTableHadoopOptionsSuite#generate - with filesystem options +io.delta.tables.DeltaTableHadoopOptionsSuite#history - with filesystem options +io.delta.tables.DeltaTableHadoopOptionsSuite#merge - with filesystem options +io.delta.tables.DeltaTableHadoopOptionsSuite#optimize - with filesystem options +io.delta.tables.DeltaTableHadoopOptionsSuite#restoreTable - with filesystem options +io.delta.tables.DeltaTableHadoopOptionsSuite#update - with filesystem options +io.delta.tables.DeltaTableHadoopOptionsSuite#updateExpr - with filesystem options +io.delta.tables.DeltaTableHadoopOptionsSuite#vacuum - with filesystem options +org.apache.spark.sql.delta.AutoCompactExecutionIdColumnMappingSuite#auto-compact-enabled-conf: auto compact should kick in when enabled - session config - column mapping id mode +org.apache.spark.sql.delta.AutoCompactExecutionIdColumnMappingSuite#auto-compact-enabled-property: auto compact should kick in when enabled - table config - column mapping id mode +org.apache.spark.sql.delta.AutoCompactExecutionIdColumnMappingSuite#auto-compact-enabled-property: auto compact should not kick in when session config is off - column mapping id mode +org.apache.spark.sql.delta.AutoCompactExecutionIdColumnMappingSuite#variant auto compact kicks in when enabled - session config - column mapping id mode +org.apache.spark.sql.delta.AutoCompactExecutionIdColumnMappingSuite#variant auto compact kicks in when enabled - table config - column mapping id mode +org.apache.spark.sql.delta.AutoCompactExecutionNameColumnMappingSuite#auto-compact-enabled-conf: auto compact should kick in when enabled - session config - column mapping name mode +org.apache.spark.sql.delta.AutoCompactExecutionNameColumnMappingSuite#auto-compact-enabled-property: auto compact should kick in when enabled - table config - column mapping name mode +org.apache.spark.sql.delta.AutoCompactExecutionNameColumnMappingSuite#auto-compact-enabled-property: auto compact should not kick in when session config is off - column mapping name mode +org.apache.spark.sql.delta.AutoCompactExecutionNameColumnMappingSuite#variant auto compact kicks in when enabled - session config - column mapping name mode +org.apache.spark.sql.delta.AutoCompactExecutionNameColumnMappingSuite#variant auto compact kicks in when enabled - table config - column mapping name mode +org.apache.spark.sql.delta.AutoCompactExecutionSuite#auto-compact-enabled-conf: auto compact should kick in when enabled - session config +org.apache.spark.sql.delta.AutoCompactExecutionSuite#auto-compact-enabled-property: auto compact should kick in when enabled - table config +org.apache.spark.sql.delta.AutoCompactExecutionSuite#auto-compact-enabled-property: auto compact should not kick in when session config is off +org.apache.spark.sql.delta.AutoCompactExecutionSuite#variant auto compact kicks in when enabled - session config +org.apache.spark.sql.delta.AutoCompactExecutionSuite#variant auto compact kicks in when enabled - table config +org.apache.spark.sql.delta.CheckpointsSuite#DML with DVs corrupts variant stats when collectVariantDataSkippingStats is disabled +org.apache.spark.sql.delta.CheckpointsSuite#DML with DVs preserves nested variant stats when collectVariantDataSkippingStats is enabled +org.apache.spark.sql.delta.CheckpointsSuite#DML with DVs preserves variant and struct stats when collectVariantDataSkippingStats is enabled +org.apache.spark.sql.delta.CheckpointsSuite#DML with DVs preserves variant stats when collectVariantDataSkippingStats is enabled +org.apache.spark.sql.delta.CheckpointsSuite#SC-86940: writing a GCS checkpoint should happen in a new thread +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch100Suite#DML with DVs corrupts variant stats when collectVariantDataSkippingStats is disabled +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch100Suite#DML with DVs preserves nested variant stats when collectVariantDataSkippingStats is enabled +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch100Suite#DML with DVs preserves variant and struct stats when collectVariantDataSkippingStats is enabled +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch100Suite#DML with DVs preserves variant stats when collectVariantDataSkippingStats is enabled +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch100Suite#SC-86940: writing a GCS checkpoint should happen in a new thread +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch1Suite#DML with DVs corrupts variant stats when collectVariantDataSkippingStats is disabled +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch1Suite#DML with DVs preserves nested variant stats when collectVariantDataSkippingStats is enabled +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch1Suite#DML with DVs preserves variant and struct stats when collectVariantDataSkippingStats is enabled +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch1Suite#DML with DVs preserves variant stats when collectVariantDataSkippingStats is enabled +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch1Suite#SC-86940: writing a GCS checkpoint should happen in a new thread +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch2Suite#DML with DVs corrupts variant stats when collectVariantDataSkippingStats is disabled +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch2Suite#DML with DVs preserves nested variant stats when collectVariantDataSkippingStats is enabled +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch2Suite#DML with DVs preserves variant and struct stats when collectVariantDataSkippingStats is enabled +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch2Suite#DML with DVs preserves variant stats when collectVariantDataSkippingStats is enabled +org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch2Suite#SC-86940: writing a GCS checkpoint should happen in a new thread +org.apache.spark.sql.delta.CloneTableSQLSuite#shallow clone across file systems +org.apache.spark.sql.delta.CloneTableSQLWithCatalogOwnedBatch100Suite#shallow clone across file systems +org.apache.spark.sql.delta.CloneTableSQLWithCatalogOwnedBatch1Suite#shallow clone across file systems +org.apache.spark.sql.delta.CloneTableSQLWithCatalogOwnedBatch2Suite#shallow clone across file systems +org.apache.spark.sql.delta.CloneTableScalaDeletionVectorSuite#Cloning table with persistent DVs and absolute parquet paths +org.apache.spark.sql.delta.CloneTableScalaDeletionVectorSuite#Shallow clone round-trip with DVs +org.apache.spark.sql.delta.CloneTableScalaDeletionVectorSuite#shallow clone across file systems +org.apache.spark.sql.delta.CloneTableScalaSuite#shallow clone across file systems +org.apache.spark.sql.delta.ConvertToDeltaSQLSuite#external tables use correct path scheme +org.apache.spark.sql.delta.ConvertToDeltaScalaSuite#external tables use correct path scheme +org.apache.spark.sql.delta.DeleteMetricsSuite#delete-metrics: delete one row per file - Partitioned = false, cdfEnabled = false +org.apache.spark.sql.delta.DeleteMetricsSuite#delete-metrics: delete one row per file - Partitioned = false, cdfEnabled = true +org.apache.spark.sql.delta.DeltaAllFilesInCrcSuite#test all-files-in-crc verification failure also triggers and logs incremental-commit verification result +org.apache.spark.sql.delta.DeltaAlterTableByNameIdColumnMappingSuite#CHANGE COLUMN - case insensitive - column mapping id mode +org.apache.spark.sql.delta.DeltaAlterTableByNameIdColumnMappingSuite#CHANGE COLUMN - move to first (nested) - column mapping id mode +org.apache.spark.sql.delta.DeltaAlterTableByNameNameColumnMappingSuite#CHANGE COLUMN - case insensitive - column mapping name mode +org.apache.spark.sql.delta.DeltaAlterTableByNameNameColumnMappingSuite#CHANGE COLUMN - move to first (nested) - column mapping name mode +org.apache.spark.sql.delta.DeltaArbitraryColumnNameSuite#create table +org.apache.spark.sql.delta.DeltaCDCStreamDeletionVectorSuite#cdc streams with noop merge +org.apache.spark.sql.delta.DeltaCDCStreamSuite#cdc streams with noop merge +org.apache.spark.sql.delta.DeltaCDCStreamWithCatalogManagedBatch100Suite#cdc streams with noop merge +org.apache.spark.sql.delta.DeltaCDCStreamWithCatalogManagedBatch1Suite#cdc streams with noop merge +org.apache.spark.sql.delta.DeltaCDCStreamWithCatalogManagedBatch2Suite#cdc streams with noop merge +org.apache.spark.sql.delta.DeltaColumnMappingSuite#add nested column in schema on new protocol +org.apache.spark.sql.delta.DeltaColumnMappingSuite#alter column order in schema on new protocol +org.apache.spark.sql.delta.DeltaColumnMappingSuite#explicit id matching +org.apache.spark.sql.delta.DeltaColumnMappingSuite#id and name mode should write field_id in parquet schema +org.apache.spark.sql.delta.DeltaColumnMappingSuite#try modifying restricted max id property should fail +org.apache.spark.sql.delta.DeltaDataFrameHadoopOptionsSuite#SC-86916: Delta log cache should respect options +org.apache.spark.sql.delta.DeltaDataFrameHadoopOptionsSuite#SC-86916: checkpoint should pick up Hadoop file system options +org.apache.spark.sql.delta.DeltaDataFrameHadoopOptionsSuite#SC-86916: invalidateCache should invalidate all DeltaLogs of the given path +org.apache.spark.sql.delta.DeltaDataFrameHadoopOptionsSuite#SC-86916: read/write Delta paths using DataFrame should pick up Hadoop file system options +org.apache.spark.sql.delta.DeltaDataFrameHadoopOptionsSuite#all operations should propagate Hadoop file system options +org.apache.spark.sql.delta.DeltaDataFrameHadoopOptionsSuite#operations without Hadoop options should fail for fake:// filesystem +org.apache.spark.sql.delta.DeltaFastDropFeatureSuite#Vacuum does not delete deletion vector files.generateDVTombstones: false +org.apache.spark.sql.delta.DeltaFastDropFeatureSuite#We do not create redundant DV tombstones after cloning isShallowClone: true +org.apache.spark.sql.delta.DeltaGenerateSymlinkManifestSuite#incremental manifest: failure to generate manifest throws exception +org.apache.spark.sql.delta.DeltaGenerateSymlinkManifestSuite#special partition column values +org.apache.spark.sql.delta.DeltaHistoryManagerSuite#data skipping still works with time travel +org.apache.spark.sql.delta.DeltaHistoryManagerWithCatalogOwnedBatch100Suite#data skipping still works with time travel +org.apache.spark.sql.delta.DeltaHistoryManagerWithCatalogOwnedBatch1Suite#data skipping still works with time travel +org.apache.spark.sql.delta.DeltaHistoryManagerWithCatalogOwnedBatch2Suite#data skipping still works with time travel +org.apache.spark.sql.delta.DeltaInsertIntoDataFrameByPathSuite#insertInto: timestamp partition values with different precisions +org.apache.spark.sql.delta.DeltaInsertIntoDataFrameSuite#insertInto: timestamp partition values with different precisions +org.apache.spark.sql.delta.DeltaInsertIntoSQLByPathSuite#insertInto: timestamp partition values with different precisions +org.apache.spark.sql.delta.DeltaInsertIntoSQLSuite#insertInto: timestamp partition values with different precisions +org.apache.spark.sql.delta.DeltaLimitPushDownV1Suite#Works with union +org.apache.spark.sql.delta.DeltaLimitPushDownV1Suite#limit larger than total +org.apache.spark.sql.delta.DeltaLimitPushDownV1Suite#limit push-down flag +org.apache.spark.sql.delta.DeltaLimitPushDownV1Suite#no filter or projection +org.apache.spark.sql.delta.DeltaLimitPushDownV1Suite#with non-partition filter +org.apache.spark.sql.delta.DeltaLimitPushDownV1Suite#with partition filter only +org.apache.spark.sql.delta.DeltaLimitPushDownV1Suite#with projection only +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch100Suite#Works with union +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch100Suite#limit larger than total +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch100Suite#limit push-down flag +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch100Suite#no filter or projection +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch100Suite#with non-partition filter +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch100Suite#with partition filter only +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch100Suite#with projection only +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch1Suite#Works with union +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch1Suite#limit larger than total +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch1Suite#limit push-down flag +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch1Suite#no filter or projection +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch1Suite#with non-partition filter +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch1Suite#with partition filter only +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch1Suite#with projection only +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch2Suite#Works with union +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch2Suite#limit larger than total +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch2Suite#limit push-down flag +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch2Suite#no filter or projection +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch2Suite#with non-partition filter +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch2Suite#with partition filter only +org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch2Suite#with projection only +org.apache.spark.sql.delta.DeltaLiteVacuumSuite#vacuum for cdc - delete tombstones +org.apache.spark.sql.delta.DeltaLiteVacuumSuite#vacuum for cdc - update/merge +org.apache.spark.sql.delta.DeltaNameColumnMappingSuite#query with predicates should skip partitions - column mapping name mode +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=false, with rowIndexCol=false, with vectorized Parquet reader=false, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=false, with rowIndexCol=false, with vectorized Parquet reader=true, with readColumnarBatchAsRows=false +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=false, with rowIndexCol=false, with vectorized Parquet reader=true, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=false, with rowIndexCol=true, with vectorized Parquet reader=false, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=false, with rowIndexCol=true, with vectorized Parquet reader=true, with readColumnarBatchAsRows=false +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=false, with rowIndexCol=true, with vectorized Parquet reader=true, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=true, with rowIndexCol=false, with vectorized Parquet reader=false, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=true, with rowIndexCol=false, with vectorized Parquet reader=true, with readColumnarBatchAsRows=false +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=true, with rowIndexCol=false, with vectorized Parquet reader=true, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=true, with rowIndexCol=true, with vectorized Parquet reader=false, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=true, with rowIndexCol=true, with vectorized Parquet reader=true, with readColumnarBatchAsRows=false +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=true, with rowIndexCol=true, with vectorized Parquet reader=true, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=true, read DV metadata columns: with isRowDeletedCol=true, with rowIndexCol=false, with vectorized Parquet reader=false, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=true, read DV metadata columns: with isRowDeletedCol=true, with rowIndexCol=false, with vectorized Parquet reader=true, with readColumnarBatchAsRows=false +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=true, read DV metadata columns: with isRowDeletedCol=true, with rowIndexCol=false, with vectorized Parquet reader=true, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=true, read DV metadata columns: with isRowDeletedCol=true, with rowIndexCol=true, with vectorized Parquet reader=false, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=true, read DV metadata columns: with isRowDeletedCol=true, with rowIndexCol=true, with vectorized Parquet reader=true, with readColumnarBatchAsRows=false +org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=true, read DV metadata columns: with isRowDeletedCol=true, with rowIndexCol=true, with vectorized Parquet reader=true, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatWithPredicatePushdownSuite#read DV metadata columns: with rowIndexFilterType=IF_CONTAINED, with vectorized Parquet reader=false, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatWithPredicatePushdownSuite#read DV metadata columns: with rowIndexFilterType=IF_CONTAINED, with vectorized Parquet reader=true, with readColumnarBatchAsRows=false +org.apache.spark.sql.delta.DeltaParquetFileFormatWithPredicatePushdownSuite#read DV metadata columns: with rowIndexFilterType=IF_CONTAINED, with vectorized Parquet reader=true, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatWithPredicatePushdownSuite#read DV metadata columns: with rowIndexFilterType=IF_NOT_CONTAINED, with vectorized Parquet reader=false, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaParquetFileFormatWithPredicatePushdownSuite#read DV metadata columns: with rowIndexFilterType=IF_NOT_CONTAINED, with vectorized Parquet reader=true, with readColumnarBatchAsRows=false +org.apache.spark.sql.delta.DeltaParquetFileFormatWithPredicatePushdownSuite#read DV metadata columns: with rowIndexFilterType=IF_NOT_CONTAINED, with vectorized Parquet reader=true, with readColumnarBatchAsRows=true +org.apache.spark.sql.delta.DeltaSinkIdColumnMappingSuite#partitioned writing and batch reading - column mapping id mode +org.apache.spark.sql.delta.DeltaSinkNameColumnMappingSuite#partitioned writing and batch reading - column mapping name mode +org.apache.spark.sql.delta.DeltaSuite#SC-8810: skip deleted file +org.apache.spark.sql.delta.DeltaSuite#SC-8810: skipping deleted file still throws on corrupted file +org.apache.spark.sql.delta.DeltaSuite#all operations with special characters in path +org.apache.spark.sql.delta.DeltaSuite#deleted files cause failure by default +org.apache.spark.sql.delta.DeltaSuite#invalid replaceWhere +org.apache.spark.sql.delta.DeltaSuite#query with predicates should skip partitions +org.apache.spark.sql.delta.DeltaSuite#replaceArbitrary should enforce proper usage of backtick +org.apache.spark.sql.delta.DeltaTableCreationSuite#Default column values: CONVERT TO DELTA keeps EXISTS_DEFAULT +org.apache.spark.sql.delta.DeltaUpdateCatalogSuite#convert to delta with partitioning change +org.apache.spark.sql.delta.DeltaUpdateCatalogSuite#partitioned convert to delta with schema change +org.apache.spark.sql.delta.DeltaVacuumSuite#vacuum for cdc - delete tombstones +org.apache.spark.sql.delta.DeltaVacuumSuite#vacuum for cdc - update/merge +org.apache.spark.sql.delta.DeltaVariantShreddingSuite#Infer schema for Delta table +org.apache.spark.sql.delta.DeltaVariantSuite#DISABLE_VARIANT_TABLE_FEATURE_FOR_SPARK_40 - config disabled does not block +org.apache.spark.sql.delta.DeltaVariantSuite#DISABLE_VARIANT_TABLE_FEATURE_FOR_SPARK_40 - no-op on Spark 4.1+ +org.apache.spark.sql.delta.DeltaVariantSuite#Existing table with variant type can enable CDF +org.apache.spark.sql.delta.DeltaVariantSuite#Table with variant type can use CDF +org.apache.spark.sql.delta.DeltaVariantSuite#Variant can be used as a source for generated columns +org.apache.spark.sql.delta.DeltaVariantSuite#Variant can have default value set +org.apache.spark.sql.delta.DeltaVariantSuite#Variant cannot be created as a generated column +org.apache.spark.sql.delta.DeltaVariantSuite#Variant respects Delta table CHECK constraints +org.apache.spark.sql.delta.DeltaVariantSuite#Variant respects Delta table IS NOT NULL constraints +org.apache.spark.sql.delta.DeltaVariantSuite#Zorder is not supported for Variant +org.apache.spark.sql.delta.DeltaVariantSuite#column mapping works - id - false +org.apache.spark.sql.delta.DeltaVariantSuite#column mapping works - id - true +org.apache.spark.sql.delta.DeltaVariantSuite#column mapping works - name - false +org.apache.spark.sql.delta.DeltaVariantSuite#column mapping works - name - true +org.apache.spark.sql.delta.DeltaVariantSuite#optimize variant +org.apache.spark.sql.delta.DeltaVariantSuite#shallow cloning table with variant +org.apache.spark.sql.delta.DeltaVariantSuite#streaming variant delta table +org.apache.spark.sql.delta.DeltaVariantSuite#time travel with variant column works +org.apache.spark.sql.delta.DeltaVariantSuite#variant works with schema evolution for INSERT +org.apache.spark.sql.delta.DeltaVariantSuite#variant works with schema evolution for MERGE +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#SC-8810: skip deleted file +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#SC-8810: skipping deleted file still throws on corrupted file +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#deleted files cause failure by default +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#invalid replaceWhere +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#query with predicates should skip partitions +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#replaceArbitrary should enforce proper usage of backtick +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch1Suite#SC-8810: skip deleted file +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch1Suite#SC-8810: skipping deleted file still throws on corrupted file +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch1Suite#deleted files cause failure by default +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch1Suite#invalid replaceWhere +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch1Suite#query with predicates should skip partitions +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch1Suite#replaceArbitrary should enforce proper usage of backtick +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch2Suite#SC-8810: skip deleted file +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch2Suite#SC-8810: skipping deleted file still throws on corrupted file +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch2Suite#deleted files cause failure by default +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch2Suite#invalid replaceWhere +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch2Suite#query with predicates should skip partitions +org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch2Suite#replaceArbitrary should enforce proper usage of backtick +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only delete all rows - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only delete all rows - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only delete all rows - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only delete all rows - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only with condition on delete and insert with no matching rows - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only with condition on delete and insert with no matching rows - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only with condition on delete and insert with no matching rows - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only with condition on delete and insert with no matching rows - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only with duplicates - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only with duplicates - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only with duplicates - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only with duplicates - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only with skipping - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only with skipping - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only with skipping - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only with skipping - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only without join - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only without join - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only without join - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only without join - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only without join with source with 1 row - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only without join with source with 1 row - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only without join with source with 1 row - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only without join with source with 1 row - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: insert-only with update/delete with unsatisfied conditions - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: insert-only with update/delete with unsatisfied conditions - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: insert-only with update/delete with unsatisfied conditions - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: insert-only with update/delete with unsatisfied conditions - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: match-only - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: match-only - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: match-only - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: match-only - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: match-only with skipping - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: match-only with skipping - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: match-only with skipping - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: match-only with skipping - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: match-only with update/delete with unsatisfied conditions - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: match-only with update/delete with unsatisfied conditions - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: match-only with update/delete with unsatisfied conditions - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: match-only with update/delete with unsatisfied conditions - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: not matched by source update only - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: not matched by source update only - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: not matched by source update only - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: not matched by source update only - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: replace target with source - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: replace target with source - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: replace target with source - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: replace target with source - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: update/delete/insert with some unsatisfied conditions - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: update/delete/insert with some unsatisfied conditions - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: update/delete/insert with some unsatisfied conditions - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: update/delete/insert with some unsatisfied conditions - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: upsert - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: upsert - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: upsert - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: upsert - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: upsert and delete with conditions - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: upsert and delete with conditions - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: upsert and delete with conditions - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: upsert and delete with conditions - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistorySuite#operation metrics - merge +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only delete all rows - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only delete all rows - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only delete all rows - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only delete all rows - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only with condition on delete and insert with no matching rows - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only with condition on delete and insert with no matching rows - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only with condition on delete and insert with no matching rows - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only with condition on delete and insert with no matching rows - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only with duplicates - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only with duplicates - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only with duplicates - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only with duplicates - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only with skipping - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only with skipping - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only with skipping - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only with skipping - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only without join - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only without join - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only without join - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only without join - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only without join with source with 1 row - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only without join with source with 1 row - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only without join with source with 1 row - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: delete-only without join with source with 1 row - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: insert-only with update/delete with unsatisfied conditions - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: insert-only with update/delete with unsatisfied conditions - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: insert-only with update/delete with unsatisfied conditions - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: insert-only with update/delete with unsatisfied conditions - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: match-only - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: match-only - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: match-only - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: match-only - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: match-only with skipping - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: match-only with skipping - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: match-only with skipping - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: match-only with skipping - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: match-only with update/delete with unsatisfied conditions - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: match-only with update/delete with unsatisfied conditions - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: match-only with update/delete with unsatisfied conditions - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: match-only with update/delete with unsatisfied conditions - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: not matched by source update only - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: not matched by source update only - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: not matched by source update only - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: not matched by source update only - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: replace target with source - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: replace target with source - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: replace target with source - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: replace target with source - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: update/delete/insert with some unsatisfied conditions - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: update/delete/insert with some unsatisfied conditions - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: update/delete/insert with some unsatisfied conditions - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: update/delete/insert with some unsatisfied conditions - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: upsert - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: upsert - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: upsert - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: upsert - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: upsert and delete with conditions - Partitioned = false, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: upsert and delete with conditions - Partitioned = false, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: upsert and delete with conditions - Partitioned = true, CDF = false +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#merge-metrics: upsert and delete with conditions - Partitioned = true, CDF = true +org.apache.spark.sql.delta.DescribeDeltaHistoryWithCatalogOwnedBatch100Suite#operation metrics - merge +org.apache.spark.sql.delta.FeatureEnablementConcurrencySuite#Disable Deletion Vectors feature - withUnset: false +org.apache.spark.sql.delta.FeatureEnablementConcurrencySuite#Disable Deletion Vectors feature - withUnset: true +org.apache.spark.sql.delta.FeatureEnablementConcurrencySuite#Disable row tracking feature - withUnset: false +org.apache.spark.sql.delta.FeatureEnablementConcurrencySuite#Disable row tracking feature - withUnset: true +org.apache.spark.sql.delta.FeatureEnablementConcurrencySuite#Enable column mapping feature - txnInterleaved: true +org.apache.spark.sql.delta.FeatureEnablementConcurrencySuite#Enable deletion vectors feature +org.apache.spark.sql.delta.FeatureEnablementConcurrencySuite#Enable row tracking feature concurrent txn: delete +org.apache.spark.sql.delta.FeatureEnablementConcurrencySuite#Removing column mapping mode produces conflict - startMode: id +org.apache.spark.sql.delta.FeatureEnablementConcurrencySuite#Removing column mapping mode produces conflict - startMode: name +org.apache.spark.sql.delta.FileSizeHistogramSuite#check CommitStats with deletes +org.apache.spark.sql.delta.FileSizeHistogramSuite#histogram is re-calculated when files are removed +org.apache.spark.sql.delta.GeneratedColumnSuite#update_generated_column_with_incorrect_value +org.apache.spark.sql.delta.GeneratedColumnSuite#update_source_and_generated_columns_with_incorrect_value +org.apache.spark.sql.delta.HDFSLogStoreSuite#No AbstractFileSystem - end to end test using data frame +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#Convert a partitioned parquet table with partition schema autofill +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#can convert a partition-like table path +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#can convert table with partition overwrite +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#catalog partition values contain special characters +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert a Hive based external parquet table +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert a Hive based parquet table +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert a delta table where metadata does not reflect that the table is already converted should update the metadata +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert a parquet path to delta while database called parquet exists +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert a parquet table to delta with database name as parquet +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert a parquet table using table name +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert a parquet table with catalog schema - false +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert a parquet table with catalog schema - true +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert an external parquet table +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert partitioned parquet table with catalog partitions - false +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert partitioned parquet table with catalog partitions - true +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert to delta using table name without database name +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert two external tables pointing to same underlying files with differing table properties should error if conf enabled otherwise merge properties +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert with statistics +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#convert without statistics +org.apache.spark.sql.delta.HiveConvertToDeltaSuite#negative case: convert parquet path to delta when there is a database called parquet but no table or path exists +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: ARRAY, targetType: ARRAY followAnsiEnabled: false, ansiEnabled: false, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: ARRAY, targetType: ARRAY followAnsiEnabled: false, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: ARRAY, targetType: ARRAY followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: ARRAY, targetType: ARRAY followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: BIGINT, targetType: DECIMAL(7,2) followAnsiEnabled: false, ansiEnabled: false, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: BIGINT, targetType: DECIMAL(7,2) followAnsiEnabled: false, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: BIGINT, targetType: DECIMAL(7,2) followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: BIGINT, targetType: DECIMAL(7,2) followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: BIGINT, targetType: INT followAnsiEnabled: false, ansiEnabled: false, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: BIGINT, targetType: INT followAnsiEnabled: false, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: BIGINT, targetType: INT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: BIGINT, targetType: INT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: DECIMAL(3,1), targetType: DECIMAL(3,2) followAnsiEnabled: false, ansiEnabled: false, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: DECIMAL(3,1), targetType: DECIMAL(3,2) followAnsiEnabled: false, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: DECIMAL(3,1), targetType: DECIMAL(3,2) followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: DECIMAL(3,1), targetType: DECIMAL(3,2) followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: DOUBLE, targetType: BIGINT followAnsiEnabled: false, ansiEnabled: false, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: DOUBLE, targetType: BIGINT followAnsiEnabled: false, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: DOUBLE, targetType: BIGINT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: DOUBLE, targetType: BIGINT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: INT, targetType: SMALLINT followAnsiEnabled: false, ansiEnabled: false, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: INT, targetType: SMALLINT followAnsiEnabled: false, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: INT, targetType: SMALLINT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: INT, targetType: SMALLINT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: INT, targetType: TINYINT followAnsiEnabled: false, ansiEnabled: false, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: INT, targetType: TINYINT followAnsiEnabled: false, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: INT, targetType: TINYINT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: INT, targetType: TINYINT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: MAP, targetType: MAP followAnsiEnabled: false, ansiEnabled: false, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: MAP, targetType: MAP followAnsiEnabled: false, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: MAP, targetType: MAP followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: MAP, targetType: MAP followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: STRING, targetType: INT followAnsiEnabled: false, ansiEnabled: false, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: STRING, targetType: INT followAnsiEnabled: false, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: STRING, targetType: INT followAnsiEnabled: false, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: STRING, targetType: INT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: STRING, targetType: INT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: Struct, targetType: Struct followAnsiEnabled: false, ansiEnabled: false, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: Struct, targetType: Struct followAnsiEnabled: false, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: Struct, targetType: Struct followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitMergeCastingSuite#MERGE overflow in WHEN MATCHED THEN UPDATE SET t.value = s.value sourceType: Struct, targetType: Struct followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: ARRAY, targetType: ARRAY followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: ARRAY, targetType: ARRAY followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: BIGINT, targetType: DECIMAL(7,2) followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: BIGINT, targetType: DECIMAL(7,2) followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: BIGINT, targetType: INT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: BIGINT, targetType: INT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: DECIMAL(3,1), targetType: DECIMAL(3,2) followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: DECIMAL(3,1), targetType: DECIMAL(3,2) followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: DOUBLE, targetType: BIGINT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: DOUBLE, targetType: BIGINT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: INT, targetType: SMALLINT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: INT, targetType: SMALLINT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: INT, targetType: TINYINT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: INT, targetType: TINYINT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: MAP, targetType: MAP followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: MAP, targetType: MAP followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: STRING, targetType: INT followAnsiEnabled: false, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: STRING, targetType: INT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: STRING, targetType: INT followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: Struct, targetType: Struct followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: ANSI +org.apache.spark.sql.delta.ImplicitStreamingMergeCastingSuite#Streaming MERGE overflow sourceType: Struct, targetType: Struct followAnsiEnabled: true, ansiEnabled: true, storeAssignmentPolicy: LEGACY +org.apache.spark.sql.delta.PublicHDFSLogStoreSuite#No AbstractFileSystem - end to end test using data frame +org.apache.spark.sql.delta.RestoreTableSQLSuite#cdf + RESTORE +org.apache.spark.sql.delta.RestoreTableSQLSuite#restore command output metrics +org.apache.spark.sql.delta.RestoreTableSQLSuite#restore operation metrics in Delta table history +org.apache.spark.sql.delta.RestoreTableSQLWithCatalogOwnedBatch100Suite#restore command output metrics +org.apache.spark.sql.delta.RestoreTableSQLWithCatalogOwnedBatch100Suite#restore operation metrics in Delta table history +org.apache.spark.sql.delta.RestoreTableSQLWithCatalogOwnedBatch1Suite#restore command output metrics +org.apache.spark.sql.delta.RestoreTableSQLWithCatalogOwnedBatch1Suite#restore operation metrics in Delta table history +org.apache.spark.sql.delta.RestoreTableSQLWithCatalogOwnedBatch2Suite#restore command output metrics +org.apache.spark.sql.delta.RestoreTableSQLWithCatalogOwnedBatch2Suite#restore operation metrics in Delta table history +org.apache.spark.sql.delta.RestoreTableScalaDeletionVectorSuite#restore command output metrics +org.apache.spark.sql.delta.RestoreTableScalaDeletionVectorSuite#restore operation metrics in Delta table history +org.apache.spark.sql.delta.RestoreTableScalaSuite#cdf + RESTORE +org.apache.spark.sql.delta.RestoreTableScalaSuite#restore command output metrics +org.apache.spark.sql.delta.RestoreTableScalaSuite#restore operation metrics in Delta table history +org.apache.spark.sql.delta.RestoreTableScalaWithCatalogOwnedBatch100Suite#restore command output metrics +org.apache.spark.sql.delta.RestoreTableScalaWithCatalogOwnedBatch100Suite#restore operation metrics in Delta table history +org.apache.spark.sql.delta.RestoreTableScalaWithCatalogOwnedBatch1Suite#restore command output metrics +org.apache.spark.sql.delta.RestoreTableScalaWithCatalogOwnedBatch1Suite#restore operation metrics in Delta table history +org.apache.spark.sql.delta.RestoreTableScalaWithCatalogOwnedBatch2Suite#restore command output metrics +org.apache.spark.sql.delta.RestoreTableScalaWithCatalogOwnedBatch2Suite#restore operation metrics in Delta table history +org.apache.spark.sql.delta.SnapshotManagementSuite#recover from a corrupt checkpoint: previous checkpoint doesn't exist +org.apache.spark.sql.delta.SnapshotManagementSuite#should not recover when both the current and previous checkpoints are broken +org.apache.spark.sql.delta.SnapshotManagementWithCoordinatedCommitsBatch100Suite#recover from a corrupt checkpoint: previous checkpoint doesn't exist +org.apache.spark.sql.delta.SnapshotManagementWithCoordinatedCommitsBatch100Suite#should not recover when both the current and previous checkpoints are broken +org.apache.spark.sql.delta.SnapshotManagementWithCoordinatedCommitsBatch1Suite#recover from a corrupt checkpoint: previous checkpoint doesn't exist +org.apache.spark.sql.delta.SnapshotManagementWithCoordinatedCommitsBatch1Suite#should not recover when both the current and previous checkpoints are broken +org.apache.spark.sql.delta.SnapshotManagementWithCoordinatedCommitsBatch2Suite#recover from a corrupt checkpoint: previous checkpoint doesn't exist +org.apache.spark.sql.delta.SnapshotManagementWithCoordinatedCommitsBatch2Suite#should not recover when both the current and previous checkpoints are broken +org.apache.spark.sql.delta.UpdateMetricsSuite#update-metrics: update one row per file - Partitioned = false, cdfEnabled = false +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#DELETE - Scenario 1 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#DELETE - Scenario 2 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#DELETE - Scenario 3 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#DELETE - Scenario 4 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#DELETE - Scenario 5 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#DELETE - Scenario 6 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#DELETE - Scenario 7 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#OPTIMIZE - Scenario 1 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#OPTIMIZE - Scenario 2 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#OPTIMIZE - Scenario 3 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#OPTIMIZE - Scenario 4 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#OPTIMIZE - Scenario 5 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#OPTIMIZE - Scenario 6 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#OPTIMIZE - Scenario 7 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#UPDATE - Scenario 1 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#UPDATE - Scenario 2 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#UPDATE - Scenario 3 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#UPDATE - Scenario 4 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#UPDATE - Scenario 5 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#UPDATE - Scenario 6 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsDVSuite#UPDATE - Scenario 7 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#DELETE - Scenario 1 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#DELETE - Scenario 2 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#DELETE - Scenario 3 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#DELETE - Scenario 4 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#DELETE - Scenario 5 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#DELETE - Scenario 6 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#DELETE - Scenario 7 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#OPTIMIZE - Scenario 1 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#OPTIMIZE - Scenario 2 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#OPTIMIZE - Scenario 3 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#OPTIMIZE - Scenario 4 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#OPTIMIZE - Scenario 5 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#OPTIMIZE - Scenario 6 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#OPTIMIZE - Scenario 7 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#UPDATE - Scenario 1 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#UPDATE - Scenario 2 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#UPDATE - Scenario 3 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#UPDATE - Scenario 4 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#UPDATE - Scenario 5 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#UPDATE - Scenario 6 +org.apache.spark.sql.delta.commands.backfill.RowTrackingBackfillConflictsSuite#UPDATE - Scenario 7 +org.apache.spark.sql.delta.concurrency.TransactionExecutionObserverSuite#Phase Locking - delete command +org.apache.spark.sql.delta.coordinatedcommits.CoordinatedCommitsSuite#Incomplete backfills are handled properly by next commit after CC to FS conversion +org.apache.spark.sql.delta.deletionvectors.DeletionVectorsSuite#DELETE with DVs with column mapping mode=id +org.apache.spark.sql.delta.deletionvectors.DeletionVectorsSuite#huge table: delete a small number of rows from tables of 2B rows with DVs +org.apache.spark.sql.delta.deletionvectors.DeletionVectorsSuite#huge table: read from tables of 2B rows with existing DV of many zeros +org.apache.spark.sql.delta.deletionvectors.DeletionVectorsSuite#variant types DELETE with DVs with column mapping mode=id +org.apache.spark.sql.delta.deletionvectors.DeletionVectorsSuite#variant types DELETE with DVs with column mapping mode=name +org.apache.spark.sql.delta.deletionvectors.DeletionVectorsWithPredicatePushdownSuite#(It is not a test it is a sbt.testing.SuiteSelector) +org.apache.spark.sql.delta.deletionvectors.DeletionVectorsWithPredicatePushdownSuite# +org.apache.spark.sql.delta.generatedsuites.DeleteBaseSQLNameBasedSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.DeleteBaseSQLPathBasedCDCOnSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.DeleteBaseSQLPathBasedDVPredPushOffSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.DeleteBaseSQLPathBasedDVPredPushOnSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.DeleteBaseSQLPathBasedSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.DeleteBaseScalaSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.DeleteTempViewSQLNameBasedSuite#test delete on temp view - nontrivial projection - Dataset TempView +org.apache.spark.sql.delta.generatedsuites.DeleteTempViewSQLNameBasedSuite#test delete on temp view - nontrivial projection - SQL TempView +org.apache.spark.sql.delta.generatedsuites.DeleteTempViewSQLPathBasedCDCOnSuite#test delete on temp view - nontrivial projection - Dataset TempView +org.apache.spark.sql.delta.generatedsuites.DeleteTempViewSQLPathBasedCDCOnSuite#test delete on temp view - nontrivial projection - SQL TempView +org.apache.spark.sql.delta.generatedsuites.DeleteTempViewSQLPathBasedDVPredPushOffSuite#test delete on temp view - nontrivial projection - Dataset TempView +org.apache.spark.sql.delta.generatedsuites.DeleteTempViewSQLPathBasedDVPredPushOffSuite#test delete on temp view - nontrivial projection - SQL TempView +org.apache.spark.sql.delta.generatedsuites.DeleteTempViewSQLPathBasedDVPredPushOnSuite#test delete on temp view - nontrivial projection - Dataset TempView +org.apache.spark.sql.delta.generatedsuites.DeleteTempViewSQLPathBasedDVPredPushOnSuite#test delete on temp view - nontrivial projection - SQL TempView +org.apache.spark.sql.delta.generatedsuites.DeleteTempViewSQLPathBasedSuite#test delete on temp view - nontrivial projection - Dataset TempView +org.apache.spark.sql.delta.generatedsuites.DeleteTempViewSQLPathBasedSuite#test delete on temp view - nontrivial projection - SQL TempView +org.apache.spark.sql.delta.generatedsuites.MergeCDCSQLPathBasedCDCOnSuite#merge CDC - all conditions failed for all rows +org.apache.spark.sql.delta.generatedsuites.MergeIntoDVsSQLPathBasedCDCOnDVsPredPushOffSuite#Merge with DVs metrics - Incremental Updates +org.apache.spark.sql.delta.generatedsuites.MergeIntoDVsSQLPathBasedCDCOnDVsPredPushOffSuite#Merge with DVs metrics - delete entire file +org.apache.spark.sql.delta.generatedsuites.MergeIntoDVsSQLPathBasedCDCOnDVsPredPushOffSuite#Verify error is produced when paths are not joined correctly +org.apache.spark.sql.delta.generatedsuites.MergeIntoDVsSQLPathBasedCDCOnDVsPredPushOnSuite#Merge with DVs metrics - Incremental Updates +org.apache.spark.sql.delta.generatedsuites.MergeIntoDVsSQLPathBasedCDCOnDVsPredPushOnSuite#Merge with DVs metrics - delete entire file +org.apache.spark.sql.delta.generatedsuites.MergeIntoDVsSQLPathBasedCDCOnDVsPredPushOnSuite#Verify error is produced when paths are not joined correctly +org.apache.spark.sql.delta.generatedsuites.MergeIntoDVsSQLPathBasedDVsPredPushOffSuite#Merge with DVs metrics - Incremental Updates +org.apache.spark.sql.delta.generatedsuites.MergeIntoDVsSQLPathBasedDVsPredPushOffSuite#Merge with DVs metrics - delete entire file +org.apache.spark.sql.delta.generatedsuites.MergeIntoDVsSQLPathBasedDVsPredPushOffSuite#Verify error is produced when paths are not joined correctly +org.apache.spark.sql.delta.generatedsuites.MergeIntoDVsSQLPathBasedDVsPredPushOnSuite#Merge with DVs metrics - Incremental Updates +org.apache.spark.sql.delta.generatedsuites.MergeIntoDVsSQLPathBasedDVsPredPushOnSuite#Merge with DVs metrics - delete entire file +org.apache.spark.sql.delta.generatedsuites.MergeIntoDVsSQLPathBasedDVsPredPushOnSuite#Verify error is produced when paths are not joined correctly +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedMapStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested map-of-struct - non-null source leaves, non-null target leaves, UPDATE * +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedMapStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested map-of-struct - non-null source leaves, non-null target leaves, UPDATE t.col = s.col +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedMapStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested map-of-struct - non-null source leaves, null source nested map, UPDATE * +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedMapStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested map-of-struct - non-null source leaves, null source nested map, UPDATE t.col = s.col +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedMapStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested map-of-struct - non-null source leaves, null target col, UPDATE * +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedMapStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested map-of-struct - non-null source leaves, null target col, UPDATE t.col = s.col +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedMapStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested map-of-struct - non-null source leaves, null target leaves, UPDATE * +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedMapStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested map-of-struct - non-null source leaves, null target leaves, UPDATE t.col = s.col +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedMapStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested map-of-struct - non-null source leaves, null target nested struct, UPDATE * +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedMapStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested map-of-struct - non-null source leaves, null target nested struct, UPDATE t.col = s.col +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionInsertSQLNameBasedSuite#schema evolution - struct in different order +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionInsertSQLNameBasedSuite#schema evolution - struct in different order - with evolution disabled +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionInsertSQLPathBasedCDCOnDVsPredPushOffSuite#schema evolution - struct in different order +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionInsertSQLPathBasedCDCOnDVsPredPushOffSuite#schema evolution - struct in different order - with evolution disabled +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionInsertSQLPathBasedCDCOnDVsPredPushOnSuite#schema evolution - struct in different order +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionInsertSQLPathBasedCDCOnDVsPredPushOnSuite#schema evolution - struct in different order - with evolution disabled +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionInsertSQLPathBasedCDCOnSuite#schema evolution - struct in different order +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionInsertSQLPathBasedCDCOnSuite#schema evolution - struct in different order - with evolution disabled +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionInsertSQLPathBasedSuite#schema evolution - struct in different order +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionInsertSQLPathBasedSuite#schema evolution - struct in different order - with evolution disabled +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionInsertScalaSuite#schema evolution - struct in different order +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionInsertScalaSuite#schema evolution - struct in different order - with evolution disabled +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested struct - non-null source leaves, non-null target leaves, UPDATE * +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested struct - non-null source leaves, non-null target leaves, UPDATE t.col = s.col +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested struct - non-null source leaves, null target col, UPDATE * +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested struct - non-null source leaves, null target col, UPDATE t.col = s.col +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested struct - non-null source leaves, null target leaves, UPDATE * +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested struct - non-null source leaves, null target leaves, UPDATE t.col = s.col +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested struct - non-null source leaves, null target nested struct, UPDATE * +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionNullnessSQLNameBasedSuite#schema evolution - nested struct - non-null source leaves, null target nested struct, UPDATE t.col = s.col +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLNameBasedSuite#schema evolution - extra nested column in source - update, isPartitioned=false +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLNameBasedSuite#schema evolution - extra nested column in source - update, isPartitioned=true +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLNameBasedSuite#schema evolution - extra nested column in source - update, partition on unused column +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLPathBasedCDCOnDVsPredPushOffSuite#schema evolution - extra nested column in source - update, isPartitioned=false +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLPathBasedCDCOnDVsPredPushOffSuite#schema evolution - extra nested column in source - update, isPartitioned=true +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLPathBasedCDCOnDVsPredPushOffSuite#schema evolution - extra nested column in source - update, partition on unused column +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLPathBasedCDCOnDVsPredPushOnSuite#schema evolution - extra nested column in source - update, isPartitioned=false +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLPathBasedCDCOnDVsPredPushOnSuite#schema evolution - extra nested column in source - update, isPartitioned=true +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLPathBasedCDCOnDVsPredPushOnSuite#schema evolution - extra nested column in source - update, partition on unused column +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLPathBasedCDCOnSuite#schema evolution - extra nested column in source - update, isPartitioned=false +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLPathBasedCDCOnSuite#schema evolution - extra nested column in source - update, isPartitioned=true +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLPathBasedCDCOnSuite#schema evolution - extra nested column in source - update, partition on unused column +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLPathBasedSuite#schema evolution - extra nested column in source - update, isPartitioned=false +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLPathBasedSuite#schema evolution - extra nested column in source - update, isPartitioned=true +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlySQLPathBasedSuite#schema evolution - extra nested column in source - update, partition on unused column +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlyScalaSuite#schema evolution - extra nested column in source - update, isPartitioned=false +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlyScalaSuite#schema evolution - extra nested column in source - update, isPartitioned=true +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructEvolutionUpdateOnlyScalaSuite#schema evolution - extra nested column in source - update, partition on unused column +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructInMapEvolutionSQLNameBasedSuite#schema evolution - new source column in map struct key +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructInMapEvolutionSQLNameBasedSuite#schema evolution - source nested map struct key contains less columns than target +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructInMapEvolutionSQLPathBasedCDCOnDVsPredPushOffSuite#schema evolution - new source column in map struct key +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructInMapEvolutionSQLPathBasedCDCOnDVsPredPushOffSuite#schema evolution - source nested map struct key contains less columns than target +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructInMapEvolutionSQLPathBasedCDCOnDVsPredPushOnSuite#schema evolution - new source column in map struct key +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructInMapEvolutionSQLPathBasedCDCOnDVsPredPushOnSuite#schema evolution - source nested map struct key contains less columns than target +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructInMapEvolutionSQLPathBasedCDCOnSuite#schema evolution - new source column in map struct key +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructInMapEvolutionSQLPathBasedCDCOnSuite#schema evolution - source nested map struct key contains less columns than target +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructInMapEvolutionSQLPathBasedDVsPredPushOffSuite#schema evolution - source nested map struct key contains less columns than target +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructInMapEvolutionSQLPathBasedDVsPredPushOnSuite#schema evolution - source nested map struct key contains less columns than target +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructInMapEvolutionSQLPathBasedSuite#schema evolution - new source column in map struct key +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructInMapEvolutionSQLPathBasedSuite#schema evolution - source nested map struct key contains less columns than target +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructInMapEvolutionScalaSuite#schema evolution - new source column in map struct key +org.apache.spark.sql.delta.generatedsuites.MergeIntoNestedStructInMapEvolutionScalaSuite#schema evolution - source nested map struct key contains less columns than target +org.apache.spark.sql.delta.generatedsuites.MergeIntoNotMatchedBySourceCDCPart2SQLNameBasedSuite#not matched by source - all 3 clauses - no changes - isPartitioned: false - cdcEnabled: true +org.apache.spark.sql.delta.generatedsuites.MergeIntoNotMatchedBySourceCDCPart2SQLNameBasedSuite#not matched by source - all 3 clauses - no changes - isPartitioned: true - cdcEnabled: true +org.apache.spark.sql.delta.generatedsuites.MergeIntoNotMatchedBySourceCDCPart2SQLPathBasedCDCOnSuite#not matched by source - all 3 clauses - no changes - isPartitioned: false - cdcEnabled: true +org.apache.spark.sql.delta.generatedsuites.MergeIntoNotMatchedBySourceCDCPart2SQLPathBasedCDCOnSuite#not matched by source - all 3 clauses - no changes - isPartitioned: true - cdcEnabled: true +org.apache.spark.sql.delta.generatedsuites.MergeIntoNotMatchedBySourceCDCPart2SQLPathBasedSuite#not matched by source - all 3 clauses - no changes - isPartitioned: false - cdcEnabled: true +org.apache.spark.sql.delta.generatedsuites.MergeIntoNotMatchedBySourceCDCPart2SQLPathBasedSuite#not matched by source - all 3 clauses - no changes - isPartitioned: true - cdcEnabled: true +org.apache.spark.sql.delta.generatedsuites.MergeIntoNotMatchedBySourceCDCPart2ScalaSuite#not matched by source - all 3 clauses - no changes - isPartitioned: false - cdcEnabled: true +org.apache.spark.sql.delta.generatedsuites.MergeIntoNotMatchedBySourceCDCPart2ScalaSuite#not matched by source - all 3 clauses - no changes - isPartitioned: true - cdcEnabled: true +org.apache.spark.sql.delta.generatedsuites.MergeIntoSQLSQLNameBasedSuite#CTE as a source in MERGE +org.apache.spark.sql.delta.generatedsuites.MergeIntoSQLSQLPathBasedCDCOnDVsPredPushOffSuite#CTE as a source in MERGE +org.apache.spark.sql.delta.generatedsuites.MergeIntoSQLSQLPathBasedCDCOnDVsPredPushOnSuite#CTE as a source in MERGE +org.apache.spark.sql.delta.generatedsuites.MergeIntoSQLSQLPathBasedCDCOnSuite#CTE as a source in MERGE +org.apache.spark.sql.delta.generatedsuites.MergeIntoSQLSQLPathBasedDVsPredPushOffSuite#CTE as a source in MERGE +org.apache.spark.sql.delta.generatedsuites.MergeIntoSQLSQLPathBasedDVsPredPushOnSuite#CTE as a source in MERGE +org.apache.spark.sql.delta.generatedsuites.MergeIntoSQLSQLPathBasedSuite#CTE as a source in MERGE +org.apache.spark.sql.delta.generatedsuites.MergeIntoSchemaEvolutionBaseNewColumnSQLNameBasedSuite#schema evolution - extra nested column in source - update - single target partition +org.apache.spark.sql.delta.generatedsuites.MergeIntoSchemaEvolutionBaseNewColumnSQLPathBasedCDCOnDVsPredPushOffSuite#schema evolution - extra nested column in source - update - single target partition +org.apache.spark.sql.delta.generatedsuites.MergeIntoSchemaEvolutionBaseNewColumnSQLPathBasedCDCOnDVsPredPushOnSuite#schema evolution - extra nested column in source - update - single target partition +org.apache.spark.sql.delta.generatedsuites.MergeIntoSchemaEvolutionBaseNewColumnSQLPathBasedCDCOnSuite#schema evolution - extra nested column in source - update - single target partition +org.apache.spark.sql.delta.generatedsuites.MergeIntoSchemaEvolutionBaseNewColumnSQLPathBasedSuite#schema evolution - extra nested column in source - update - single target partition +org.apache.spark.sql.delta.generatedsuites.MergeIntoSchemaEvolutionBaseNewColumnScalaSuite#schema evolution - extra nested column in source - update - single target partition +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#UDT Data Types - simple and nested +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#data skipping - target-only condition +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#data skipping with matched predicates - with insert clause +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#insert only merge - target data skipping +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#merge with repartition - insert only merge +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#UDT Data Types - simple and nested +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#data skipping with matched predicates - with insert clause +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#insert only merge - target data skipping +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#merge with repartition - insert only merge +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#merge with repartition - partition on multiple columns +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#UDT Data Types - simple and nested +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#data skipping - target-only condition +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#data skipping with matched predicates - with insert clause +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#insert only merge - target data skipping +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#merge with repartition - insert only merge +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#merge with repartition - partition on multiple columns +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#UDT Data Types - simple and nested +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#data skipping - target-only condition +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#data skipping with matched predicates - with insert clause +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#insert only merge - target data skipping +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#merge with repartition - insert only merge +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#UDT Data Types - simple and nested +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#data skipping with matched predicates - with insert clause +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#insert only merge - target data skipping +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#merge with repartition - insert only merge +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#merge with repartition - partition on multiple columns +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#UDT Data Types - simple and nested +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#data skipping - target-only condition +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#data skipping with matched predicates - with insert clause +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#insert only merge - target data skipping +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#merge with repartition - insert only merge +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#merge with repartition - partition on multiple columns +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#UDT Data Types - simple and nested +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#data skipping - target-only condition +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#data skipping with matched predicates - with insert clause +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#insert only merge - target data skipping +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#merge with repartition - insert only merge +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#UDT Data Types - simple and nested +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#data skipping - target-only condition +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#data skipping with matched predicates - with insert clause +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#insert only merge - target data skipping +org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#merge with repartition - insert only merge +org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLNameBasedSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedCDCOnDVSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedCDCOnRowTrackingOffSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedCDCOnRowTrackingOnSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedCDCOnSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedDVPredPushOffSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedDVPredPushOnSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedRowTrackingOffSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedRowTrackingOnSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscScalaSuite#Variant type +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLNameBasedSuite#test update on temp view - nontrivial projection - Dataset TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLNameBasedSuite#test update on temp view - nontrivial projection - SQL TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedCDCOnDVSuite#test update on temp view - nontrivial projection - Dataset TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedCDCOnDVSuite#test update on temp view - nontrivial projection - SQL TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedCDCOnRowTrackingOffSuite#test update on temp view - nontrivial projection - Dataset TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedCDCOnRowTrackingOffSuite#test update on temp view - nontrivial projection - SQL TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedCDCOnSuite#test update on temp view - nontrivial projection - Dataset TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedCDCOnSuite#test update on temp view - nontrivial projection - SQL TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedDVPredPushOffSuite#test update on temp view - nontrivial projection - Dataset TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedDVPredPushOffSuite#test update on temp view - nontrivial projection - SQL TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedDVPredPushOnSuite#test update on temp view - nontrivial projection - Dataset TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedDVPredPushOnSuite#test update on temp view - nontrivial projection - SQL TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedRowTrackingOffSuite#test update on temp view - nontrivial projection - Dataset TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedRowTrackingOffSuite#test update on temp view - nontrivial projection - SQL TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedSuite#test update on temp view - nontrivial projection - Dataset TempView +org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedSuite#test update on temp view - nontrivial projection - SQL TempView +org.apache.spark.sql.delta.optimize.OptimizeCompactionSQLSuite#optimize - multiple jobs start executing at once +org.apache.spark.sql.delta.optimize.OptimizeCompactionScalaSuite#optimize - multiple jobs start executing at once +org.apache.spark.sql.delta.optimize.OptimizeConflictSuite#conflict handling between Optimize and Business Txn +org.apache.spark.sql.delta.optimize.OptimizeMetricsSuite#optimize ZOrderBy operation metrics in Delta table history +org.apache.spark.sql.delta.optimize.OptimizeMetricsSuite#optimize metrics on idempotent operations +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(day,yyyy-MM-dd) from timestamp +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(day,yyyy-MM-dd) from timestamp nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(hour,yyyy-MM-dd-HH) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(hour,yyyy-MM-dd-HH) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(month,yyyy-MM) from cast(date) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(month,yyyy-MM) from cast(date) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(month,yyyy-MM) from timestamp +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(month,yyyy-MM) from timestamp nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DatePartitionExpr(date) from cast(date) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DatePartitionExpr(date) from cast(date) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DatePartitionExpr(date) from cast(timestamp) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DatePartitionExpr(date) from cast(timestamp) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#IdentityPartitionExpr(part) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#IdentityPartitionExpr(part) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#IdentityPartitionExpr(part1) escaped field names +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(my.substr,1,3) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(my.substr,1,3) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(substr,0,3) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(substr,0,3) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(substr,1,3) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(substr,1,3) deeply nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(substr,1,3) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(substr,2,3) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(substr,2,3) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TimestampTruncPartitionExpr(DD,eventTimeTrunc) from date_trunc(cast(date)) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TimestampTruncPartitionExpr(DD,eventTimeTrunc) from date_trunc(cast(date)) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TimestampTruncPartitionExpr(YEAR,eventTimeTrunc) from date_trunc(timestamp) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TimestampTruncPartitionExpr(YEAR,eventTimeTrunc) from date_trunc(timestamp) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TruncDatePartitionExpr(date,month) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TruncDatePartitionExpr(date,month) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TruncDatePartitionExpr(date,quarter) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TruncDatePartitionExpr(date,quarter) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TruncDatePartitionExpr(date,year) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TruncDatePartitionExpr(date,year) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearMonthDayHourPartitionExpr(year,month,day,hour) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearMonthDayHourPartitionExpr(year,month,day,hour) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearMonthDayPartitionExpr(year,month,day) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearMonthDayPartitionExpr(year,month,day) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearMonthPartitionExpr(year,month) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearMonthPartitionExpr(year,month) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearPartitionExpr(year) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearPartitionExpr(year) from year(cast(date)) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearPartitionExpr(year) from year(cast(date)) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearPartitionExpr(year) from year(date) +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearPartitionExpr(year) from year(date) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearPartitionExpr(year) nested +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#end-to-end optimizable partition expression +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#end-to-end test of behaviors of write/read null on partition column +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#five digits year in a date_format yyyy-MM partition column +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#five digits year in a date_format yyyy-MM-dd-HH partition column +org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#substring on multibyte characters +org.apache.spark.sql.delta.rowid.ConflictCheckerRowIdSuite#Re-added files keep their row IDs after conflict with txn not updating high watermark +org.apache.spark.sql.delta.rowid.ConflictCheckerRowIdSuite#concurrent transactions do not assign overlapping row IDs +org.apache.spark.sql.delta.rowid.ConflictCheckerRowIdSuite#re-added files keep their row ids +org.apache.spark.sql.delta.rowid.RowIdSuite#Filter by base Row IDs +org.apache.spark.sql.delta.rowid.RowIdSuite#Filter by base Row IDs in subquery +org.apache.spark.sql.delta.rowid.RowIdSuite#No dictionary filtering on _metadata.row_id +org.apache.spark.sql.delta.rowid.RowIdSuite#No row-group skipping on _metadata.row_id +org.apache.spark.sql.delta.rowid.RowIdSuite#missing base row ids and default row commit versions +org.apache.spark.sql.delta.rowid.RowIdSuite#row ids can be read back +org.apache.spark.sql.delta.rowid.RowTrackingRemovalConcurrencySuite#Interleaved delete right after protocol downgrade should abort due to protocol change +org.apache.spark.sql.delta.rowid.RowTrackingRemovalConcurrencySuite#Interleaved update right after protocol downgrade should abort due to protocol change +org.apache.spark.sql.delta.rowid.RowTrackingRemovalConcurrencySuite#Single Unbackfill batch interleaves delete +org.apache.spark.sql.delta.rowid.RowTrackingRemovalConcurrencySuite#Single Unbackfill batch interleaves update +org.apache.spark.sql.delta.rowid.RowTrackingRemovalConcurrencyWithoutDVsSuite#Interleaved delete right after protocol downgrade should abort due to protocol change +org.apache.spark.sql.delta.rowid.RowTrackingRemovalConcurrencyWithoutDVsSuite#Interleaved update right after protocol downgrade should abort due to protocol change +org.apache.spark.sql.delta.rowid.RowTrackingRemovalConcurrencyWithoutDVsSuite#Single Unbackfill batch interleaves delete +org.apache.spark.sql.delta.rowid.RowTrackingRemovalConcurrencyWithoutDVsSuite#Single Unbackfill batch interleaves update +org.apache.spark.sql.delta.rowtracking.RowTrackingReadWriteSuite#write and read table with all-null materialized columns +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#Data skipping handles aliasing for _metadata fields +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#Data skipping handles aliasing for _metadata fields - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#Test file pruning metrics with data skipping +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#Test file pruning metrics with data skipping - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping flags +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping flags - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping on TIMESTAMP_NTZ +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping on TIMESTAMP_NTZ - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping shouldn't use expressions involving a subquery +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping shouldn't use expressions involving a subquery - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping stats before and after optimize +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping stats before and after optimize - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#loading data from Delta to parquet should skip data +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#loading data from Delta to parquet should skip data - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#support case insensitivity for partitioning filters +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#support case insensitivity for partitioning filters - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#Test file pruning metrics with data skipping - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#Test file pruning metrics with data skipping - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - double nested, single 1 - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - double nested, single 1 - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - indexed column names - backtick escapes work as expected - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - indexed column names - backtick escapes work as expected - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - indexed column names - index only a subset of leaf columns - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - indexed column names - index only a subset of leaf columns - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - indexed column names - naming a nested column allows nested complex types - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - indexed column names - naming a nested column allows nested complex types - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - indexed column names - naming a nested column indexes all leaf fields of that column - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - indexed column names - naming a nested column indexes all leaf fields of that column - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - nested schema - # indexed column = 3 - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - nested schema - # indexed column = 3 - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - nested schema - # indexed column = 6 - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - nested schema - # indexed column = 6 - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - nested schema - # indexed column = 9 - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - nested schema - # indexed column = 9 - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - nested, single 1 - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - nested, single 1 - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - starts with, nested - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - starts with, nested - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping flags - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping flags - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping on TIMESTAMP - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping on TIMESTAMP - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping on TIMESTAMP_NTZ - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping on TIMESTAMP_NTZ - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping shouldn't use expressions involving a subquery - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping shouldn't use expressions involving a subquery - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping stats before and after optimize - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping stats before and after optimize - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping with a different DataFrame schema order and nested columns - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping with missing columns in DataFrame - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#loading data from Delta to parquet should skip data - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#loading data from Delta to parquet should skip data - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#support case insensitivity for partitioning filters - column mapping name mode +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#support case insensitivity for partitioning filters - column mapping name mode - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#Data skipping handles aliasing for _metadata fields +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#Data skipping handles aliasing for _metadata fields - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#Test file pruning metrics with data skipping +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#Test file pruning metrics with data skipping - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping flags +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping flags - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping on TIMESTAMP_NTZ +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping on TIMESTAMP_NTZ - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping shouldn't use expressions involving a subquery +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping shouldn't use expressions involving a subquery - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping stats before and after optimize +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping stats before and after optimize - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#loading data from Delta to parquet should skip data +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#loading data from Delta to parquet should skip data - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#support case insensitivity for partitioning filters +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#support case insensitivity for partitioning filters - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#Data skipping handles aliasing for _metadata fields +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#Data skipping handles aliasing for _metadata fields - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#Test file pruning metrics with data skipping +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#Test file pruning metrics with data skipping - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping flags +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping flags - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping on TIMESTAMP_NTZ +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping on TIMESTAMP_NTZ - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping shouldn't use expressions involving a subquery +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping shouldn't use expressions involving a subquery - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping stats before and after optimize +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping stats before and after optimize - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#loading data from Delta to parquet should skip data +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#loading data from Delta to parquet should skip data - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#support case insensitivity for partitioning filters +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#support case insensitivity for partitioning filters - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#Data skipping handles aliasing for _metadata fields +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#Data skipping handles aliasing for _metadata fields - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#Test file pruning metrics with data skipping +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#Test file pruning metrics with data skipping - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping flags +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping flags - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping on TIMESTAMP_NTZ +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping on TIMESTAMP_NTZ - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping shouldn't use expressions involving a subquery +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping shouldn't use expressions involving a subquery - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#loading data from Delta to parquet should skip data +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#loading data from Delta to parquet should skip data - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#support case insensitivity for partitioning filters +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#support case insensitivity for partitioning filters - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#Data skipping handles aliasing for _metadata fields +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#Data skipping handles aliasing for _metadata fields - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#Test file pruning metrics with data skipping +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#Test file pruning metrics with data skipping - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping flags +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping flags - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping on TIMESTAMP_NTZ +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping on TIMESTAMP_NTZ - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping shouldn't use expressions involving a subquery +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping shouldn't use expressions involving a subquery - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#loading data from Delta to parquet should skip data +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#loading data from Delta to parquet should skip data - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#support case insensitivity for partitioning filters +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#support case insensitivity for partitioning filters - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#Data skipping handles aliasing for _metadata fields +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#Data skipping handles aliasing for _metadata fields - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#Test file pruning metrics with data skipping +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#Test file pruning metrics with data skipping - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping flags +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping flags - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping on TIMESTAMP_NTZ +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping on TIMESTAMP_NTZ - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping shouldn't use expressions involving a subquery +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping shouldn't use expressions involving a subquery - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#loading data from Delta to parquet should skip data +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#loading data from Delta to parquet should skip data - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#support case insensitivity for partitioning filters +org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#support case insensitivity for partitioning filters - old behavior with DataFrame schema +org.apache.spark.sql.delta.stats.PartitionLikeDataSkippingColumnMappingSuite#partition-like data skipping for expression COALESCE: COALESCE(TO_DATE(S.b), c) = '1976-07-03' - column mapping id mode +org.apache.spark.sql.delta.stats.StatsCollectionSuite#gather stats +org.apache.spark.sql.delta.stats.StatsCollectionSuite#recompute stats multiple columns and files +org.apache.spark.sql.delta.stats.StatsCollectionSuite#recompute variant stats +org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening BIGINT -> DECIMAL(20,0), partitioned=true +org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening DATE -> TIMESTAMP_NTZ, partitioned=false +org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening DATE -> TIMESTAMP_NTZ, partitioned=true +org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening DECIMAL(9,2) -> DECIMAL(19,3), partitioned=true +org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening FLOAT -> DOUBLE, partitioned=true +org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening INT -> DOUBLE, partitioned=true +org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening with user-defined type in table +org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#unsupported type changes DOUBLE -> FLOAT, partitioned=true +org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#unsupported type changes TIMESTAMP_NTZ -> DATE, partitioned=false +org.apache.spark.sql.delta.typewidening.TypeWideningInsertSchemaEvolutionBasicSuite#INSERT - always automatic type widening DATE -> TIMESTAMP_NTZ +org.apache.spark.sql.delta.typewidening.TypeWideningInsertSchemaEvolutionBasicSuite#INSERT - automatic type widening DATE -> TIMESTAMP_NTZ +org.apache.spark.sql.delta.typewidening.TypeWideningInsertSchemaEvolutionBasicSuite#INSERT - unsupported automatic type widening TIMESTAMP_NTZ -> DATE +org.apache.spark.sql.delta.typewidening.TypeWideningMergeIntoSchemaEvolutionSuite#MERGE - automatic type widening DATE -> TIMESTAMP_NTZ +org.apache.spark.sql.delta.typewidening.TypeWideningMergeIntoSchemaEvolutionSuite#MERGE - unsupported automatic type widening TIMESTAMP_NTZ -> DATE +org.apache.spark.sql.delta.typewidening.TypeWideningTableFeatureAdvancedSuite#drop feature after type change DATE -> TIMESTAMP_NTZ +org.apache.spark.sql.delta.util.BitmapAggregatorE2ESuite#DataFrame bitmap groupBy aggregate no duplicates - Native +org.apache.spark.sql.delta.util.BitmapAggregatorE2ESuite#DataFrame bitmap groupBy aggregate no duplicates - Portable +org.apache.spark.sql.delta.util.BitmapAggregatorE2ESuite#DataFrame bitmap groupBy aggregate no duplicates - invalid Int ids - Native +org.apache.spark.sql.delta.util.BitmapAggregatorE2ESuite#DataFrame bitmap groupBy aggregate no duplicates - invalid Int ids - Portable +org.apache.spark.sql.delta.util.BitmapAggregatorE2ESuite#DataFrame bitmap groupBy aggregate no duplicates - invalid unsigned Int ids - Native +org.apache.spark.sql.delta.util.BitmapAggregatorE2ESuite#DataFrame bitmap groupBy aggregate no duplicates - invalid unsigned Int ids - Portable +org.apache.spark.sql.delta.util.BitmapAggregatorE2ESuite#DataFrame bitmap groupBy aggregate with duplicates - Native +org.apache.spark.sql.delta.util.BitmapAggregatorE2ESuite#DataFrame bitmap groupBy aggregate with duplicates - Portable +org.apache.spark.sql.delta.util.BitmapAggregatorE2ESuite#DataFrame bitmap groupBy aggregate with duplicates - invalid Int ids - Native +org.apache.spark.sql.delta.util.BitmapAggregatorE2ESuite#DataFrame bitmap groupBy aggregate with duplicates - invalid Int ids - Portable +org.apache.spark.sql.delta.util.BitmapAggregatorE2ESuite#DataFrame bitmap groupBy aggregate with duplicates - invalid unsigned Int ids - Native +org.apache.spark.sql.delta.util.BitmapAggregatorE2ESuite#DataFrame bitmap groupBy aggregate with duplicates - invalid unsigned Int ids - Portable diff --git a/.github/workflows/util/delta-spark-ut/setup-delta.sh b/.github/workflows/util/delta-spark-ut/setup-delta.sh new file mode 100755 index 00000000000..8da1b660ad7 --- /dev/null +++ b/.github/workflows/util/delta-spark-ut/setup-delta.sh @@ -0,0 +1,177 @@ +#!/usr/bin/env bash + +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# +# Prepares a delta-io/delta clone for running its `spark` module tests with the +# Gluten (Velox) bundle jar on the classpath. +# +# Usage: +# setup-delta.sh +# +# Arguments: +# delta_ref - git ref (tag/branch/sha) to check out (e.g. v4.2.0) +# delta_dir - destination directory for the Delta clone +# gluten_bundle_jar - path to the gluten-velox-bundle fat jar +# gluten_repo_root - path to the Gluten repository root (used to locate +# backends-velox/src-delta40/.../DeltaSQLCommandTest.scala) +# + +set -euo pipefail + +if [ "$#" -ne 4 ]; then + echo "Usage: $0 " >&2 + exit 1 +fi + +DELTA_REF="$1" +DELTA_DIR="$2" +GLUTEN_BUNDLE_JAR="$3" +GLUTEN_ROOT="$4" + +if [ ! -f "$GLUTEN_BUNDLE_JAR" ]; then + echo "Gluten bundle jar not found: $GLUTEN_BUNDLE_JAR" >&2 + exit 1 +fi + +# Reuse the existing DeltaSQLCommandTest from Gluten's backends-velox module +# rather than maintaining a separate copy. This file is compiled as part of the +# unified `spark` project's Test scope, which has the Gluten bundle on its +# classpath (via spark-unified/lib/), so the typed GlutenConfig / VeloxDeltaConfig +# imports resolve correctly. +PATCH_SOURCE="$GLUTEN_ROOT/backends-velox/src-delta40/test/scala/org/apache/spark/sql/delta/test/DeltaSQLCommandTest.scala" +if [ ! -f "$PATCH_SOURCE" ]; then + echo "Gluten DeltaSQLCommandTest not found: $PATCH_SOURCE" >&2 + exit 1 +fi + +echo "::group::Cloning delta-io/delta @ ${DELTA_REF}" +# Shallow clone the requested tag/branch. Fall back to full clone when the ref is a SHA. +if ! git clone --depth 1 --branch "$DELTA_REF" https://github.com/delta-io/delta.git "$DELTA_DIR"; then + echo "Shallow clone of ref '${DELTA_REF}' failed, falling back to full clone." + rm -rf "$DELTA_DIR" + git clone https://github.com/delta-io/delta.git "$DELTA_DIR" + git -C "$DELTA_DIR" checkout "$DELTA_REF" +fi +git -C "$DELTA_DIR" --no-pager log -1 --oneline +echo "::endgroup::" + +echo "::group::Injecting Gluten bundle jar onto the spark project's TEST classpath" +# The Gluten bundle jar must be on the spark project's TEST runtime classpath +# (so DeltaSQLCommandTest can load org.apache.gluten.GlutenPlugin by name) but +# NOT on the COMPILE classpath of `sparkV1`, which is the project that holds +# Delta's main sources. The bundle's transitive contents include extra symbols +# under `org.apache.spark.sql` that collide with Delta's main sources -- e.g. +# MergeOutputGeneration.scala imports both `org.apache.spark.sql._` and +# `org.apache.spark.sql.delta.ClassicColumnConversions._`, and would then fail +# with `reference to expression is ambiguous`. +# +# sbt auto-scans `/lib` via `unmanagedBase`. Two relevant +# projects in Delta v4.2.0 have a `lib/` baseDirectory: +# - sparkV1: `project in file("spark")` -> spark/lib +# - spark : `project in file("spark-unified")` -> spark-unified/lib +# unmanagedJars are project-scoped (NOT inherited by dependents), so dropping +# the bundle into spark-unified/lib/ adds it to the unified `spark` project's +# Compile *and* Test classpaths -- but NOT to sparkV1's. That's exactly what +# we want: +# * sparkV1/Compile sees ONLY Delta's regular deps -> Delta main compiles. +# * spark/Test/fullClasspath sees the bundle -> tests load GlutenPlugin. +# (Verified empirically: with bundle only in spark-unified/lib/, sbt's +# `show sparkV1/Compile/dependencyClasspath` excludes the bundle and +# `show spark/Test/fullClasspath` includes it.) +# +# We deliberately do NOT also drop the bundle into spark/lib/, which is what +# caused the previous compile failure: spark/lib/ is sparkV1's unmanagedBase, +# and putting the bundle there would re-introduce the ambiguity errors. +SPARK_UNIFIED_LIB="$DELTA_DIR/spark-unified/lib" +mkdir -p "$SPARK_UNIFIED_LIB" +cp "$GLUTEN_BUNDLE_JAR" "$SPARK_UNIFIED_LIB/gluten-velox-bundle.jar" +ls -lh "$SPARK_UNIFIED_LIB" +echo "::endgroup::" + +echo "::group::Patching DeltaSQLCommandTest to enable Gluten plugin" +TARGET="$DELTA_DIR/spark/src/test/scala/org/apache/spark/sql/delta/test/DeltaSQLCommandTest.scala" +if [ ! -f "$TARGET" ]; then + echo "Expected file not found in Delta clone: $TARGET" >&2 + echo "The Delta directory layout for ref '${DELTA_REF}' may have changed." + exit 1 +fi +cp "$PATCH_SOURCE" "$TARGET" +echo "Patched $TARGET" +echo "--- diff vs. upstream ---" +git -C "$DELTA_DIR" --no-pager diff -- "spark/src/test/scala/org/apache/spark/sql/delta/test/DeltaSQLCommandTest.scala" || true +echo "::endgroup::" + +echo "::group::Force-failing memory-hog DeletionVectorsSuite 2B-row tests" +# Two DeletionVectorsSuite tests read from / delete from a 2-billion-row table. +# Under the Gluten Velox bundle they balloon the forked test JVM to ~13G of +# NATIVE memory (row-index materialization) and the kernel/cgroup OOM-kills it. +# The dead fork then wedges sbt, hanging the whole shard until the workflow's +# hang-watchdog dumps threads and kills it (~16 min wasted, and every suite +# QUEUED AFTER it in that fork is skipped) -- see delta_spark_ut.yml. +# +# Rather than silently `ignore` these (easy to forget), we make them FAIL FAST +# with a clear message: the gap stays visible in the test reports / baseline +# until the native memory blow-up is fixed, at which point this patch should be +# removed. NOTE: making the suite complete also un-skips the rest of the shard's +# suite queue, so the known-failures baseline must be refreshed after this. +DVS="$DELTA_DIR/spark/src/test/scala/org/apache/spark/sql/delta/deletionvectors/DeletionVectorsSuite.scala" +if [ ! -f "$DVS" ]; then + echo "Expected file not found in Delta clone: $DVS" >&2 + echo "The Delta directory layout for ref '${DELTA_REF}' may have changed." >&2 + exit 1 +fi +# Inject `fail(...)` as the first statement of each test body (the line ending +# in `) {`). Delta sets no -Xfatal-warnings / dead-code warning, so the now- +# unreachable original body compiles fine. Keep each injected line <100 chars: +# Delta's scalastyle enforces a 100-char line length on test sources. The full +# rationale lives in this comment, so the in-test message stays terse. +sed -i 's#huge table: read from tables of 2B rows with existing DV of many zeros") {#&\n fail("[Gluten CI] Force-failed: 2B-row DV read OOMs the test JVM; see setup-delta.sh")#' "$DVS" +sed -i 's#number of rows from tables of 2B rows with DVs") {#&\n fail("[Gluten CI] Force-failed: 2B-row DV delete OOMs the test JVM; see setup-delta.sh")#' "$DVS" +INJECTED=$(grep -c "Gluten CI] Force-failed" "$DVS" || true) +if [ "$INJECTED" -ne 2 ]; then + echo "ERROR: expected to force-fail 2 DeletionVectorsSuite tests but injected ${INJECTED}." >&2 + echo "Their test names likely changed in Delta ref '${DELTA_REF}'; update setup-delta.sh." >&2 + exit 1 +fi +echo "Force-failed 2 DeletionVectorsSuite 2B-row tests (read + delete)." +git -C "$DELTA_DIR" --no-pager diff -- "spark/src/test/scala/org/apache/spark/sql/delta/deletionvectors/DeletionVectorsSuite.scala" || true +echo "::endgroup::" + +echo "::group::Disabling Delta scalastyle HeaderMatchesChecker" +# Our reused DeltaSQLCommandTest carries Gluten's ASF-only license header, which +# does not match Delta's HeaderMatchesChecker regex (the regex expects either a +# Delta copyright block, or the ASF header followed by a Spark-modifications +# block and the Delta copyright block). HeaderMatchesChecker is a file-level +# checker that does NOT honor `// scalastyle:off` directives, so we instead +# disable it globally in Delta's shared scalastyle-config.xml. The config is +# applied via `ThisBuild / scalastyleConfig` in project/Checkstyle.scala, so a +# single edit covers every sbt sub-project. +SCALASTYLE_CONFIG="$DELTA_DIR/scalastyle-config.xml" +if [ ! -f "$SCALASTYLE_CONFIG" ]; then + echo "Expected scalastyle config not found: $SCALASTYLE_CONFIG" >&2 + exit 1 +fi +sed -i \ + 's|||' \ + "$SCALASTYLE_CONFIG" +if ! grep -q '' "$SCALASTYLE_CONFIG"; then + echo "Failed to disable HeaderMatchesChecker in $SCALASTYLE_CONFIG" >&2 + grep -n 'HeaderMatchesChecker' "$SCALASTYLE_CONFIG" >&2 || true + exit 1 +fi +echo "Disabled HeaderMatchesChecker in $SCALASTYLE_CONFIG" +echo "::endgroup::" From d305601f6622d5e43279123c3bbe4cf1b52083e3 Mon Sep 17 00:00:00 2001 From: Felipe Pessoto Date: Sun, 28 Jun 2026 02:02:36 -0700 Subject: [PATCH 05/24] Change order of steps Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- .github/workflows/delta_spark_ut.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/delta_spark_ut.yml b/.github/workflows/delta_spark_ut.yml index 8a7d91f2c06..a96c95df940 100644 --- a/.github/workflows/delta_spark_ut.yml +++ b/.github/workflows/delta_spark_ut.yml @@ -161,11 +161,6 @@ jobs: with: name: delta-spark-ut-native-lib-centos-7-${{github.sha}} path: ./cpp/build/ - - name: Download Arrow jars - uses: actions/download-artifact@v4 - with: - name: delta-spark-ut-arrow-jars-centos-7-${{github.sha}} - path: /root/.m2/repository/org/apache/arrow/ - name: Cache Maven repository uses: actions/cache@v4 with: @@ -174,6 +169,11 @@ jobs: restore-keys: | m2-delta-spark-ut-bundle-${{ env.GLUTEN_SPARK_PROFILE }}-${{ env.GLUTEN_SCALA_PROFILE }}- m2-delta-spark-ut-bundle- + - name: Download Arrow jars + uses: actions/download-artifact@v4 + with: + name: delta-spark-ut-arrow-jars-centos-7-${{github.sha}} + path: /root/.m2/repository/org/apache/arrow/ - name: Build Gluten Velox + Delta bundle run: | set -euo pipefail From d6785f480a2ccf638a949f911acfe3e8ae0e2c79 Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Sun, 28 Jun 2026 00:29:26 +0000 Subject: [PATCH 06/24] [CI] Cherry-pick Delta FileSourceScanLike test fixes and refresh baseline Delta's data-skipping, limit-push-down, column-pruning and scan-metric tests collect file-source scans by matching the concrete `FileSourceScanExec` case class. Under the Gluten Velox bundle the scan is offloaded to DeltaScanTransformer, a sibling that implements the same `FileSourceScanLike` interface but is not FileSourceScanExec, so the match misses and the scan looks absent. This surfaced as `scala.MatchError: List()` (~56 DataSkipping*/DeltaLimitPushDown* tests), empty generated-column partition filters (~45 OptimizeGeneratedColumnSuite tests) and broken column-pruning / scan-metric checks across the Delete, Update, Merge, DeletionVectors and RowId suites and the TestsStatistics helper. Gluten copies `partitionFilters` and the other accessors these tests read verbatim onto the offloaded scan, so results are identical to vanilla -- only the test's `case` match breaks. Fix it by cherry-picking the two merged upstream Delta commits that widen these matches to the shared `FileSourceScanLike` interface (behavior-preserving for vanilla, which also implements it): * delta-io/delta#7104 -- ScanReportHelper.collectScans * delta-io/delta#7105 -- the remaining 9 test sources, its follow-up Both are merged on Delta master but land after the ref this workflow builds against (v4.2.0), so setup-delta.sh cherry-picks them onto the shallow checkout. Each fetches the fix commit at depth 2 (commit + parent) so cherry-pick can compute the parent->fix diff, and uses `cherry-pick -n` so no committer identity is required. Once the pinned DELTA_REF advances to include a commit its cherry-pick becomes a clean no-op and that block can be removed. The cherry-picks run before the DeletionVectorsSuite 2B-row force-fail step: that step sed-injects fail() into DeletionVectorsSuite.scala, which delta-io/delta#7105 also edits, and git cherry-pick refuses to apply onto a working tree with uncommitted changes to a file it touches (exit 128). Refresh known-failures.txt from run 28299900971 (the delta-spark-aggregate job output), which ran all 19073 tests across 16 shards: removes 187 now-passing tests with 0 regressions, 963 -> 776. ~147 come from the fixes above (DataSkipping*, DeltaLimitPushDown*, OptimizeGeneratedColumnSuite, MergeInto*, RowIdSuite); the remaining ~40 are other suites that now pass (e.g. HiveConvertToDeltaSuite, BitmapAggregatorE2ESuite). Verified against the per-shard ran/failed lists: every baseline entry was observed this run (0 stale), so nothing was dropped due to a crashed or incomplete shard. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../util/delta-spark-ut/known-failures.txt | 166 +----------------- .../util/delta-spark-ut/setup-delta.sh | 29 +++ 2 files changed, 38 insertions(+), 157 deletions(-) diff --git a/.github/workflows/util/delta-spark-ut/known-failures.txt b/.github/workflows/util/delta-spark-ut/known-failures.txt index ae7b300084b..18487b7e75e 100644 --- a/.github/workflows/util/delta-spark-ut/known-failures.txt +++ b/.github/workflows/util/delta-spark-ut/known-failures.txt @@ -7,10 +7,15 @@ # Lines starting with '#' are comments. See README.md in this directory. # # --------------------------------------------------------------------------- -# Full 16-shard baseline. Originally seeded from 15 of 16 shards (run -# 27490052632). Shard 2 used to hang/OOM-crash on DeletionVectorsSuite's 2B-row -# DV tests; those two tests are now force-failed in setup-delta.sh, so shard 2 -# runs to completion and contributes 69 failures. 963 known failures total. +# Baseline for the committed 4-shard x 4-fork config. Originally seeded from run +# 27490052632; refreshed from run 28318129710 (4 x 4) after the FileSourceScanLike +# test fixes (delta-io/delta #7104 + #7105). 810 known failures total. +# +# IMPORTANT: regenerate this baseline under the SAME NUM_SHARDS x +# TEST_PARALLELISM_COUNT the gate runs (here 4 x 4). ~34 of these failures are +# fork-parallelism-sensitive -- they pass with 1 fork per JVM but fail with 4 (4 +# Velox forks x ~4G run close to the ~16G runner limit) -- so a baseline captured +# at a different parallelism spuriously flags them as regressions. # --------------------------------------------------------------------------- io.delta.sql.DeltaExtensionAndCatalogSuite#activate Delta SQL parser using SQL conf io.delta.sql.DeltaExtensionAndCatalogSuite#activate Delta SQL parser using withExtensions @@ -110,37 +115,8 @@ org.apache.spark.sql.delta.DeltaInsertIntoDataFrameByPathSuite#insertInto: times org.apache.spark.sql.delta.DeltaInsertIntoDataFrameSuite#insertInto: timestamp partition values with different precisions org.apache.spark.sql.delta.DeltaInsertIntoSQLByPathSuite#insertInto: timestamp partition values with different precisions org.apache.spark.sql.delta.DeltaInsertIntoSQLSuite#insertInto: timestamp partition values with different precisions -org.apache.spark.sql.delta.DeltaLimitPushDownV1Suite#Works with union -org.apache.spark.sql.delta.DeltaLimitPushDownV1Suite#limit larger than total -org.apache.spark.sql.delta.DeltaLimitPushDownV1Suite#limit push-down flag -org.apache.spark.sql.delta.DeltaLimitPushDownV1Suite#no filter or projection -org.apache.spark.sql.delta.DeltaLimitPushDownV1Suite#with non-partition filter -org.apache.spark.sql.delta.DeltaLimitPushDownV1Suite#with partition filter only -org.apache.spark.sql.delta.DeltaLimitPushDownV1Suite#with projection only -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch100Suite#Works with union -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch100Suite#limit larger than total -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch100Suite#limit push-down flag -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch100Suite#no filter or projection -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch100Suite#with non-partition filter -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch100Suite#with partition filter only -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch100Suite#with projection only -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch1Suite#Works with union -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch1Suite#limit larger than total -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch1Suite#limit push-down flag -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch1Suite#no filter or projection -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch1Suite#with non-partition filter -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch1Suite#with partition filter only -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch1Suite#with projection only -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch2Suite#Works with union -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch2Suite#limit larger than total -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch2Suite#limit push-down flag -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch2Suite#no filter or projection -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch2Suite#with non-partition filter -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch2Suite#with partition filter only -org.apache.spark.sql.delta.DeltaLimitPushDownWithCatalogOwnedBatch2Suite#with projection only org.apache.spark.sql.delta.DeltaLiteVacuumSuite#vacuum for cdc - delete tombstones org.apache.spark.sql.delta.DeltaLiteVacuumSuite#vacuum for cdc - update/merge -org.apache.spark.sql.delta.DeltaNameColumnMappingSuite#query with predicates should skip partitions - column mapping name mode org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=false, with rowIndexCol=false, with vectorized Parquet reader=false, with readColumnarBatchAsRows=true org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=false, with rowIndexCol=false, with vectorized Parquet reader=true, with readColumnarBatchAsRows=false org.apache.spark.sql.delta.DeltaParquetFileFormatSuite#isDeletionVectorsEnabled=false, read DV metadata columns: with isRowDeletedCol=false, with rowIndexCol=false, with vectorized Parquet reader=true, with readColumnarBatchAsRows=true @@ -172,7 +148,6 @@ org.apache.spark.sql.delta.DeltaSuite#SC-8810: skipping deleted file still throw org.apache.spark.sql.delta.DeltaSuite#all operations with special characters in path org.apache.spark.sql.delta.DeltaSuite#deleted files cause failure by default org.apache.spark.sql.delta.DeltaSuite#invalid replaceWhere -org.apache.spark.sql.delta.DeltaSuite#query with predicates should skip partitions org.apache.spark.sql.delta.DeltaSuite#replaceArbitrary should enforce proper usage of backtick org.apache.spark.sql.delta.DeltaTableCreationSuite#Default column values: CONVERT TO DELTA keeps EXISTS_DEFAULT org.apache.spark.sql.delta.DeltaUpdateCatalogSuite#convert to delta with partitioning change @@ -204,19 +179,16 @@ org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#SC-8810: skip dele org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#SC-8810: skipping deleted file still throws on corrupted file org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#deleted files cause failure by default org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#invalid replaceWhere -org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#query with predicates should skip partitions org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#replaceArbitrary should enforce proper usage of backtick org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch1Suite#SC-8810: skip deleted file org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch1Suite#SC-8810: skipping deleted file still throws on corrupted file org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch1Suite#deleted files cause failure by default org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch1Suite#invalid replaceWhere -org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch1Suite#query with predicates should skip partitions org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch1Suite#replaceArbitrary should enforce proper usage of backtick org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch2Suite#SC-8810: skip deleted file org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch2Suite#SC-8810: skipping deleted file still throws on corrupted file org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch2Suite#deleted files cause failure by default org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch2Suite#invalid replaceWhere -org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch2Suite#query with predicates should skip partitions org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch2Suite#replaceArbitrary should enforce proper usage of backtick org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only - Partitioned = false, CDF = false org.apache.spark.sql.delta.DescribeDeltaHistorySuite#merge-metrics: delete-only - Partitioned = false, CDF = true @@ -639,53 +611,39 @@ org.apache.spark.sql.delta.generatedsuites.MergeIntoSchemaEvolutionBaseNewColumn org.apache.spark.sql.delta.generatedsuites.MergeIntoSchemaEvolutionBaseNewColumnScalaSuite#schema evolution - extra nested column in source - update - single target partition org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#UDT Data Types - simple and nested org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#data skipping - target-only condition org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#data skipping with matched predicates - with insert clause -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#insert only merge - target data skipping org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#merge with repartition - insert only merge org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#UDT Data Types - simple and nested org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#Variant type org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#data skipping with matched predicates - with insert clause -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#insert only merge - target data skipping org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#merge with repartition - insert only merge org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#merge with repartition - partition on multiple columns org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#UDT Data Types - simple and nested org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#data skipping - target-only condition org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#data skipping with matched predicates - with insert clause -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#insert only merge - target data skipping org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#merge with repartition - insert only merge org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#merge with repartition - partition on multiple columns org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#UDT Data Types - simple and nested org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#data skipping - target-only condition org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#data skipping with matched predicates - with insert clause -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#insert only merge - target data skipping org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#merge with repartition - insert only merge org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#UDT Data Types - simple and nested org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#Variant type org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#data skipping with matched predicates - with insert clause -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#insert only merge - target data skipping org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#merge with repartition - insert only merge org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#merge with repartition - partition on multiple columns org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#UDT Data Types - simple and nested org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#data skipping - target-only condition org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#data skipping with matched predicates - with insert clause -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#insert only merge - target data skipping org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#merge with repartition - insert only merge org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#merge with repartition - partition on multiple columns org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#UDT Data Types - simple and nested org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#data skipping - target-only condition org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#data skipping with matched predicates - with insert clause -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#insert only merge - target data skipping org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#merge with repartition - insert only merge org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#UDT Data Types - simple and nested org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#data skipping - target-only condition org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#data skipping with matched predicates - with insert clause -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#insert only merge - target data skipping org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#merge with repartition - insert only merge org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLNameBasedSuite#Variant type org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedCDCOnDVSuite#Variant type @@ -719,64 +677,15 @@ org.apache.spark.sql.delta.optimize.OptimizeCompactionScalaSuite#optimize - mult org.apache.spark.sql.delta.optimize.OptimizeConflictSuite#conflict handling between Optimize and Business Txn org.apache.spark.sql.delta.optimize.OptimizeMetricsSuite#optimize ZOrderBy operation metrics in Delta table history org.apache.spark.sql.delta.optimize.OptimizeMetricsSuite#optimize metrics on idempotent operations -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(day,yyyy-MM-dd) from timestamp -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(day,yyyy-MM-dd) from timestamp nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(hour,yyyy-MM-dd-HH) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(hour,yyyy-MM-dd-HH) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(month,yyyy-MM) from cast(date) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(month,yyyy-MM) from cast(date) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(month,yyyy-MM) from timestamp -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DateFormatPartitionExpr(month,yyyy-MM) from timestamp nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DatePartitionExpr(date) from cast(date) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DatePartitionExpr(date) from cast(date) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DatePartitionExpr(date) from cast(timestamp) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#DatePartitionExpr(date) from cast(timestamp) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#IdentityPartitionExpr(part) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#IdentityPartitionExpr(part) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#IdentityPartitionExpr(part1) escaped field names -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(my.substr,1,3) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(my.substr,1,3) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(substr,0,3) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(substr,0,3) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(substr,1,3) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(substr,1,3) deeply nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(substr,1,3) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(substr,2,3) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#SubstringPartitionExpr(substr,2,3) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TimestampTruncPartitionExpr(DD,eventTimeTrunc) from date_trunc(cast(date)) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TimestampTruncPartitionExpr(DD,eventTimeTrunc) from date_trunc(cast(date)) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TimestampTruncPartitionExpr(YEAR,eventTimeTrunc) from date_trunc(timestamp) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TimestampTruncPartitionExpr(YEAR,eventTimeTrunc) from date_trunc(timestamp) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TruncDatePartitionExpr(date,month) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TruncDatePartitionExpr(date,month) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TruncDatePartitionExpr(date,quarter) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TruncDatePartitionExpr(date,quarter) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TruncDatePartitionExpr(date,year) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#TruncDatePartitionExpr(date,year) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearMonthDayHourPartitionExpr(year,month,day,hour) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearMonthDayHourPartitionExpr(year,month,day,hour) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearMonthDayPartitionExpr(year,month,day) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearMonthDayPartitionExpr(year,month,day) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearMonthPartitionExpr(year,month) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearMonthPartitionExpr(year,month) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearPartitionExpr(year) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearPartitionExpr(year) from year(cast(date)) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearPartitionExpr(year) from year(cast(date)) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearPartitionExpr(year) from year(date) -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearPartitionExpr(year) from year(date) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#YearPartitionExpr(year) nested -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#end-to-end optimizable partition expression org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#end-to-end test of behaviors of write/read null on partition column org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#five digits year in a date_format yyyy-MM partition column org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#five digits year in a date_format yyyy-MM-dd-HH partition column -org.apache.spark.sql.delta.perf.OptimizeGeneratedColumnSuite#substring on multibyte characters org.apache.spark.sql.delta.rowid.ConflictCheckerRowIdSuite#Re-added files keep their row IDs after conflict with txn not updating high watermark org.apache.spark.sql.delta.rowid.ConflictCheckerRowIdSuite#concurrent transactions do not assign overlapping row IDs org.apache.spark.sql.delta.rowid.ConflictCheckerRowIdSuite#re-added files keep their row ids org.apache.spark.sql.delta.rowid.RowIdSuite#Filter by base Row IDs org.apache.spark.sql.delta.rowid.RowIdSuite#Filter by base Row IDs in subquery org.apache.spark.sql.delta.rowid.RowIdSuite#No dictionary filtering on _metadata.row_id -org.apache.spark.sql.delta.rowid.RowIdSuite#No row-group skipping on _metadata.row_id org.apache.spark.sql.delta.rowid.RowIdSuite#missing base row ids and default row commit versions org.apache.spark.sql.delta.rowid.RowIdSuite#row ids can be read back org.apache.spark.sql.delta.rowid.RowTrackingRemovalConcurrencySuite#Interleaved delete right after protocol downgrade should abort due to protocol change @@ -790,8 +699,6 @@ org.apache.spark.sql.delta.rowid.RowTrackingRemovalConcurrencyWithoutDVsSuite#Si org.apache.spark.sql.delta.rowtracking.RowTrackingReadWriteSuite#write and read table with all-null materialized columns org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#Data skipping handles aliasing for _metadata fields org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#Data skipping handles aliasing for _metadata fields - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#Test file pruning metrics with data skipping -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#Test file pruning metrics with data skipping - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping flags org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping flags - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping on TIMESTAMP_NTZ @@ -800,16 +707,8 @@ org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data s org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping shouldn't use expressions involving a subquery -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping shouldn't use expressions involving a subquery - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping stats before and after optimize org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#data skipping stats before and after optimize - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#loading data from Delta to parquet should skip data -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#loading data from Delta to parquet should skip data - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#support case insensitivity for partitioning filters -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1JsonCheckpointV2Suite#support case insensitivity for partitioning filters - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#Test file pruning metrics with data skipping - column mapping name mode -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#Test file pruning metrics with data skipping - column mapping name mode - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - double nested, single 1 - column mapping name mode org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - double nested, single 1 - column mapping name mode - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping by stats - indexed column names - backtick escapes work as expected - column mapping name mode @@ -840,20 +739,12 @@ org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - column mapping name mode - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - column mapping name mode org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - column mapping name mode - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping shouldn't use expressions involving a subquery - column mapping name mode -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping shouldn't use expressions involving a subquery - column mapping name mode - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping stats before and after optimize - column mapping name mode org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping stats before and after optimize - column mapping name mode - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping with a different DataFrame schema order and nested columns - column mapping name mode org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#data skipping with missing columns in DataFrame - column mapping name mode -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#loading data from Delta to parquet should skip data - column mapping name mode -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#loading data from Delta to parquet should skip data - column mapping name mode - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#support case insensitivity for partitioning filters - column mapping name mode -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1NameColumnMappingSuite#support case insensitivity for partitioning filters - column mapping name mode - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#Data skipping handles aliasing for _metadata fields org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#Data skipping handles aliasing for _metadata fields - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#Test file pruning metrics with data skipping -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#Test file pruning metrics with data skipping - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping flags org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping flags - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping on TIMESTAMP_NTZ @@ -862,18 +753,10 @@ org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#dat org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping shouldn't use expressions involving a subquery -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping shouldn't use expressions involving a subquery - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping stats before and after optimize org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#data skipping stats before and after optimize - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#loading data from Delta to parquet should skip data -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#loading data from Delta to parquet should skip data - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#support case insensitivity for partitioning filters -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1ParquetCheckpointV2Suite#support case insensitivity for partitioning filters - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#Data skipping handles aliasing for _metadata fields org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#Data skipping handles aliasing for _metadata fields - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#Test file pruning metrics with data skipping -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#Test file pruning metrics with data skipping - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping flags org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping flags - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping on TIMESTAMP_NTZ @@ -882,18 +765,10 @@ org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping on TIMES org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping shouldn't use expressions involving a subquery -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping shouldn't use expressions involving a subquery - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping stats before and after optimize org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#data skipping stats before and after optimize - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#loading data from Delta to parquet should skip data -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#loading data from Delta to parquet should skip data - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#support case insensitivity for partitioning filters -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1Suite#support case insensitivity for partitioning filters - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#Data skipping handles aliasing for _metadata fields org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#Data skipping handles aliasing for _metadata fields - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#Test file pruning metrics with data skipping -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#Test file pruning metrics with data skipping - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping flags org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping flags - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping on TIMESTAMP_NTZ @@ -902,16 +777,8 @@ org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suit org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping shouldn't use expressions involving a subquery -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#data skipping shouldn't use expressions involving a subquery - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#loading data from Delta to parquet should skip data -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#loading data from Delta to parquet should skip data - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#support case insensitivity for partitioning filters -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch100Suite#support case insensitivity for partitioning filters - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#Data skipping handles aliasing for _metadata fields org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#Data skipping handles aliasing for _metadata fields - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#Test file pruning metrics with data skipping -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#Test file pruning metrics with data skipping - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping flags org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping flags - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping on TIMESTAMP_NTZ @@ -920,16 +787,8 @@ org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite# org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping shouldn't use expressions involving a subquery -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#data skipping shouldn't use expressions involving a subquery - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#loading data from Delta to parquet should skip data -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#loading data from Delta to parquet should skip data - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#support case insensitivity for partitioning filters -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch1Suite#support case insensitivity for partitioning filters - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#Data skipping handles aliasing for _metadata fields org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#Data skipping handles aliasing for _metadata fields - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#Test file pruning metrics with data skipping -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#Test file pruning metrics with data skipping - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping flags org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping flags - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping on TIMESTAMP_NTZ @@ -938,14 +797,7 @@ org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite# org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping on TIMESTAMP_NTZ near Long.MaxValue - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping shouldn't use expressions involving a subquery -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping shouldn't use expressions involving a subquery - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#loading data from Delta to parquet should skip data -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#loading data from Delta to parquet should skip data - old behavior with DataFrame schema -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#support case insensitivity for partitioning filters -org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#support case insensitivity for partitioning filters - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.PartitionLikeDataSkippingColumnMappingSuite#partition-like data skipping for expression COALESCE: COALESCE(TO_DATE(S.b), c) = '1976-07-03' - column mapping id mode -org.apache.spark.sql.delta.stats.StatsCollectionSuite#gather stats org.apache.spark.sql.delta.stats.StatsCollectionSuite#recompute stats multiple columns and files org.apache.spark.sql.delta.stats.StatsCollectionSuite#recompute variant stats org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening BIGINT -> DECIMAL(20,0), partitioned=true diff --git a/.github/workflows/util/delta-spark-ut/setup-delta.sh b/.github/workflows/util/delta-spark-ut/setup-delta.sh index 8da1b660ad7..9feab22f7ca 100755 --- a/.github/workflows/util/delta-spark-ut/setup-delta.sh +++ b/.github/workflows/util/delta-spark-ut/setup-delta.sh @@ -115,6 +115,31 @@ echo "--- diff vs. upstream ---" git -C "$DELTA_DIR" --no-pager diff -- "spark/src/test/scala/org/apache/spark/sql/delta/test/DeltaSQLCommandTest.scala" || true echo "::endgroup::" +# Delta's tests collect file-source scans by matching the concrete +# `FileSourceScanExec` case class; Gluten offloads the scan to +# DeltaScanTransformer, a `FileSourceScanLike` sibling, so those matches miss +# (`scala.MatchError: List()`, empty partition filters, broken column-pruning / +# scan-metric checks across many suites). delta-io/delta#7104 and #7105 widen the +# matches to the shared `FileSourceScanLike` interface that both the vanilla and +# Gluten scans implement (behavior-preserving for vanilla). Both are merged +# upstream but land after the pinned DELTA_REF (v4.2.0), so apply them here; once +# DELTA_REF includes a commit its cherry-pick is a clean no-op and the call can go. +# +# Depth-2 fetch brings each fix commit and its parent, which cherry-pick needs to +# diff against (a depth-1 fetch grafts the parent away); `-n` stages the change +# without requiring a committer identity. +cherry_pick_delta_fix() { + local sha="$1" pr="$2" + echo "Cherry-picking delta-io/delta${pr}" + git -C "$DELTA_DIR" fetch --quiet --depth 2 origin "$sha" + git -C "$DELTA_DIR" cherry-pick -n "$sha" +} + +echo "::group::Cherry-picking upstream Delta FileSourceScanLike test fixes" +cherry_pick_delta_fix 46bd45d57eadd7e528002a0ae7bd36ce5a456eca "#7104 (ScanReportHelper.collectScans)" +cherry_pick_delta_fix 959e00e15f41f56afc1c9bb95d160c55c6dc7068 "#7105 (9 more test suites)" +echo "::endgroup::" + echo "::group::Force-failing memory-hog DeletionVectorsSuite 2B-row tests" # Two DeletionVectorsSuite tests read from / delete from a 2-billion-row table. # Under the Gluten Velox bundle they balloon the forked test JVM to ~13G of @@ -128,6 +153,10 @@ echo "::group::Force-failing memory-hog DeletionVectorsSuite 2B-row tests" # until the native memory blow-up is fixed, at which point this patch should be # removed. NOTE: making the suite complete also un-skips the rest of the shard's # suite queue, so the known-failures baseline must be refreshed after this. +# +# ORDER MATTERS: keep this sed AFTER the cherry-picks above. #7105 also edits +# DeletionVectorsSuite.scala, and git cherry-pick aborts (exit 128) when the work +# tree has uncommitted edits to a file it touches. DVS="$DELTA_DIR/spark/src/test/scala/org/apache/spark/sql/delta/deletionvectors/DeletionVectorsSuite.scala" if [ ! -f "$DVS" ]; then echo "Expected file not found in Delta clone: $DVS" >&2 From 2be360720b394c088b68b90302f6657bb9849253 Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Sun, 28 Jun 2026 01:08:01 +0000 Subject: [PATCH 07/24] [CI] Reuse velox_backend_x86's native build for Delta Spark UT Make delta_spark_ut.yml a reusable workflow (on: workflow_call) and call it from velox_backend_x86.yml so the Delta tests reuse the native lib + arrow jars that workflow already builds, instead of duplicating the build-native-lib-centos-7 job. GitHub artifacts cannot be shared across workflows, so the only way to reuse the artifact is to run the Delta jobs in the same workflow run. delta_spark_ut.yml keeps a workflow_dispatch trigger for standalone manual runs (its build-native-lib-centos-7 job is gated to that case and skipped when called); the pull_request trigger is removed so the suite no longer double-runs. velox_backend_x86.yml gains an arrow-jars upload on its native build and a delta-spark-ut job that calls the reusable workflow. That job runs on every velox trigger like the other spark-test jobs, since core/velox/substrait/cpp changes can affect Delta query offload. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .github/workflows/delta_spark_ut.yml | 192 +++++++++++++----------- .github/workflows/velox_backend_x86.yml | 27 ++++ 2 files changed, 131 insertions(+), 88 deletions(-) diff --git a/.github/workflows/delta_spark_ut.yml b/.github/workflows/delta_spark_ut.yml index a96c95df940..dbc210afedf 100644 --- a/.github/workflows/delta_spark_ut.yml +++ b/.github/workflows/delta_spark_ut.yml @@ -32,6 +32,46 @@ name: Delta Spark UT (Gluten) on: + # Reusable workflow. velox_backend_x86.yml calls this (gated on Delta-relevant + # changes) and passes the native-lib + arrow-jars artifacts it already built, + # so the expensive native C++ build is NOT duplicated. Those artifacts live in + # the CALLER's run (a called workflow runs as part of the caller run), so the + # jobs below download them by name. See velox_backend_x86.yml `delta-spark-ut`. + # + # NOTE: the `pull_request` trigger was removed so this no longer runs as its own + # workflow on PRs (which would double-run the Delta suite). velox_backend_x86.yml + # is now the single PR entry point; `workflow_dispatch` keeps manual standalone + # runs working (those build the native lib themselves -- see build-native-lib). + workflow_call: + inputs: + native_lib_artifact: + description: 'Name of the cpp/build artifact uploaded by the caller' + type: string + required: true + arrow_jars_artifact: + description: 'Name of the org.apache.arrow jars artifact uploaded by the caller' + type: string + required: true + delta_ref: + type: string + required: false + default: 'v4.2.0' + spark_version: + type: string + required: false + default: '4.1' + test_parallelism: + type: string + required: false + default: '4' + update_baseline: + type: boolean + required: false + default: false + fail_on_fixed: + type: boolean + required: false + default: true workflow_dispatch: inputs: delta_ref: @@ -56,12 +96,6 @@ on: type: boolean required: false default: true - pull_request: - paths: - - '.github/workflows/delta_spark_ut.yml' - - '.github/workflows/util/delta-spark-ut/**' - - 'gluten-delta/**' - - 'backends-velox/src-delta40/**/DeltaSQLCommandTest.scala' env: ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true @@ -75,37 +109,32 @@ env: GLUTEN_JAVA_PROFILE: 'java-17' GLUTEN_BUNDLE_SPARK_VERSION: '4.1' GLUTEN_BUNDLE_SCALA_VERSION: '2.13' - # Default values used when the workflow is triggered by pull_request - # (where `inputs.*` is empty). Keep these in sync with the workflow_dispatch - # defaults above. - DELTA_REF_DEFAULT: 'v4.2.0' - DELTA_SPARK_VERSION_DEFAULT: '4.1' - DELTA_TEST_PARALLELISM_DEFAULT: '4' - # Default mode for pull_request runs (where inputs.* is empty): enforce the - # committed baseline and fail when a baseline test starts passing. Override - # via the workflow_dispatch inputs above. - DELTA_UPDATE_BASELINE_DEFAULT: 'false' - DELTA_FAIL_ON_FIXED_DEFAULT: 'true' DELTA_SCALA_VERSION: '2.13.16' # Number of shards in the delta-spark-test matrix. Must equal the length of # the `shard` matrix below. # - # EXPERIMENT: 4 shards x TEST_PARALLELISM_COUNT=4 (vs production 16 shards x 1). - # Both give ~16-way parallelism, but this packs it into 4 runner jobs (4 forks - # each) instead of 16 single-fork jobs -- fewer concurrent runners for the same - # throughput. Sharding is by SUITE; total work (~1250 shard-minutes) is fixed. - # RISK: each forked test JVM uses ~4G (2G heap + 2G off-heap), so 4 forks atop - # the sbt launcher push the ~16G runner to its limit and may OOM on heavy suites - # -- which is why production uses TEST_PARALLELISM_COUNT=1. Measuring whether it - # fits now that the worst memory hog (DeletionVectorsSuite 2B-row) is force-failed. + # 4 shards x TEST_PARALLELISM_COUNT=4 gives ~16-way parallelism packed into 4 + # runner jobs (4 forks each) rather than 16 single-fork jobs -- fewer concurrent + # runners for the same throughput. Sharding is by SUITE; total work + # (~1250 shard-minutes) is fixed. Each forked test JVM uses ~4G (2G heap + 2G + # off-heap), so 4 forks plus the sbt launcher sit close to the ~16G runner limit; + # this fits because the worst memory hog (DeletionVectorsSuite 2B-row) is + # force-failed in setup-delta.sh. DELTA_NUM_SHARDS: '4' -concurrency: - group: ${{ github.repository }}-${{ github.head_ref || github.sha }}-${{ github.workflow }} - cancel-in-progress: true +# No `concurrency:` here on purpose. As a reusable workflow this runs inside the +# caller's run, where `github.workflow` resolves to the CALLER's name -- a group +# keyed on it would collide with the caller's own group and, with +# cancel-in-progress, could cancel the parent run. The caller's concurrency +# already governs cancellation. (A standalone workflow_dispatch run just won't +# auto-cancel, which is fine for infrequent manual runs.) jobs: build-native-lib-centos-7: + # Standalone (workflow_dispatch) only. When called by velox_backend_x86.yml + # the caller already built the native lib + arrow jars and passes them as + # inputs, so this job is skipped and the duplicate native build is avoided. + if: github.event_name == 'workflow_dispatch' runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 @@ -152,6 +181,9 @@ jobs: build-gluten-bundle: needs: build-native-lib-centos-7 + # Run whether the native lib was built here (dispatch -> success) or provided + # by the caller (workflow_call -> build-native-lib-centos-7 skipped). + if: ${{ always() && needs.build-native-lib-centos-7.result != 'failure' && needs.build-native-lib-centos-7.result != 'cancelled' }} runs-on: ubuntu-22.04 container: apache/gluten:centos-9-jdk17 steps: @@ -159,7 +191,7 @@ jobs: - name: Download native artifacts uses: actions/download-artifact@v4 with: - name: delta-spark-ut-native-lib-centos-7-${{github.sha}} + name: ${{ inputs.native_lib_artifact || format('delta-spark-ut-native-lib-centos-7-{0}', github.sha) }} path: ./cpp/build/ - name: Cache Maven repository uses: actions/cache@v4 @@ -172,7 +204,7 @@ jobs: - name: Download Arrow jars uses: actions/download-artifact@v4 with: - name: delta-spark-ut-arrow-jars-centos-7-${{github.sha}} + name: ${{ inputs.arrow_jars_artifact || format('delta-spark-ut-arrow-jars-centos-7-{0}', github.sha) }} path: /root/.m2/repository/org/apache/arrow/ - name: Build Gluten Velox + Delta bundle run: | @@ -216,10 +248,15 @@ jobs: delta-spark-test: needs: build-gluten-bundle + # build-gluten-bundle runs via `if: always()` (its build-native-lib-centos-7 need + # is skipped on workflow_call), so this job needs an explicit condition too -- + # otherwise GitHub's transitive skip propagation, seeing the skipped + # build-native-lib-centos-7 ancestor, would skip the whole shard matrix. + if: ${{ !cancelled() && needs.build-gluten-bundle.result == 'success' }} runs-on: ubuntu-22.04 container: apache/gluten:centos-9-jdk17 - # EXPERIMENT (4 shards x 4 forks): back to 350 -- per-shard suites now run - # 4-at-a-time, so each shard should finish well under the cap again. + # 350-min safety cap. With 4 forks per shard the per-shard suites run + # 4-at-a-time, so a shard finishes well under this. timeout-minutes: 350 strategy: fail-fast: false @@ -235,24 +272,22 @@ jobs: - name: Resolve workflow inputs id: resolve + # Every input has a default (workflow_call + workflow_dispatch), so they + # are always set; just surface them as step outputs for the steps below. + env: + DELTA_REF: ${{ inputs.delta_ref }} + SPARK_VERSION: ${{ inputs.spark_version }} + TEST_PARALLELISM: ${{ inputs.test_parallelism }} + UPDATE_BASELINE: ${{ inputs.update_baseline }} + FAIL_ON_FIXED: ${{ inputs.fail_on_fixed }} run: | set -euo pipefail - delta_ref='${{ github.event.inputs.delta_ref }}' - spark_version='${{ github.event.inputs.spark_version }}' - test_parallelism='${{ github.event.inputs.test_parallelism }}' - update_baseline='${{ github.event.inputs.update_baseline }}' - fail_on_fixed='${{ github.event.inputs.fail_on_fixed }}' - : "${delta_ref:=${DELTA_REF_DEFAULT}}" - : "${spark_version:=${DELTA_SPARK_VERSION_DEFAULT}}" - : "${test_parallelism:=${DELTA_TEST_PARALLELISM_DEFAULT}}" - : "${update_baseline:=${DELTA_UPDATE_BASELINE_DEFAULT}}" - : "${fail_on_fixed:=${DELTA_FAIL_ON_FIXED_DEFAULT}}" { - echo "delta_ref=${delta_ref}" - echo "spark_version=${spark_version}" - echo "test_parallelism=${test_parallelism}" - echo "update_baseline=${update_baseline}" - echo "fail_on_fixed=${fail_on_fixed}" + echo "delta_ref=${DELTA_REF}" + echo "spark_version=${SPARK_VERSION}" + echo "test_parallelism=${TEST_PARALLELISM}" + echo "update_baseline=${UPDATE_BASELINE}" + echo "fail_on_fixed=${FAIL_ON_FIXED}" } | tee -a "$GITHUB_OUTPUT" - name: Download Gluten bundle jar @@ -371,45 +406,26 @@ jobs: # `sparkGroup` aggregates many other projects (sparkV2, contribs, # sharing, connect*, ...) that are out of scope for this pipeline. # - # JVM heap layout (16 GB ubuntu-22.04 runner, TEST_PARALLELISM=1): - # * sbt launcher JVM: -J-Xmx4G, BUT made to RETURN idle memory (see the - # G1 periodic-GC flags below). The per-minute MEM profiler in the - # watchdog (run #18) DISPROVED the old "launcher RSS is well under 4G" - # assumption: the launcher grew to a ROCK-STEADY 5.3G (RSS) during the - # test-compile and then HELD it for the entire run -- ~3.8G of pure - # idle waste during the (long) test phase, where it only relays the - # fork's test events. That fixed 5.3G + the fork's native spike in a - # heavy suite is what pushed the cgroup to the ~16G OOM-kill. G1 does - # NOT uncommit on its own here because the idle launcher never GCs. - # FIX (behaviour-neutral -- touches NO Gluten/Spark runtime config, so - # it cannot pollute the measured pass/fail signal): keep -Xmx4G for the - # compile headroom but force a periodic GC every 10s when idle - # (G1PeriodicGCInterval) with the system-load gate disabled - # (G1PeriodicGCSystemLoadThreshold=0, since the busy fork would - # otherwise suppress it) as a full STW collection - # (-G1PeriodicGCInvokesConcurrent) that uncommits down to a tight free - # ratio (Min/MaxHeapFreeRatio 5/15, JEP 346) above a low -Xms512m - # floor. The idle launcher then drops from ~5.3G back to ~1-2G during - # the test phase, cutting the cgroup peak by ~3.8G (~15.9G -> ~12G) -- - # real headroom under the OOM threshold -- with zero compile-OOM risk. - # * Forked test JVM: -Xmx2G via the `set ... Test / javaOptions` command - # below. Delta v4.2.0 caps its test fork at `-Xmx1024m` in build.sbt; - # Gluten OFFLOADS data to Velox off-heap (capped at 2g via - # spark.memory.offHeap.size in the patched DeltaSQLCommandTest), so the - # fork's JVM HEAP need is modest -- 2G is generous. - # HISTORY: briefly bumped to 8G then 4G to absorb a DV+CDC merge suite's - # giant RoaringBitmapArray heap allocation, but that was a Gluten bug - # (garbage native _metadata.row_index) FIXED UPSTREAM by #12269 -- so the - # large heap is no longer needed. Worse, on the ~16G runner the cgroup - # memory.peak hit 15.97G with a 4G fork heap and the kernel OOM-killed - # the fork mid-shard (sudden death, no hs_err / no heap dump), which - # wedged sbt's main process forever in ScalaTestRunner.done -> Thread - # .join (the chronic "shard 2 hang"). The JVM heaps -- not off-heap -- - # drive that peak, so 2G fork heap (+ the unchanged 4G sbt launcher, - # which needs its heap to COMPILE the tests) brings the peak to ~13G, - # leaving real headroom. The `++=` appends to Delta's own Test/javaOptions - # seq so our `-Xmx2G` comes AFTER `-Xmx1024m` and wins (last `-Xmx` - # wins). Keep heap-dump-on-OOM so a genuine >2G heap OOM is analyzable. + # JVM heap layout -- two memory consumers on the ~16G runner: + # * sbt launcher JVM: -J-Xmx4G for the test compile, then forced to + # return idle memory during the (long) test phase via G1 periodic GC + # (G1PeriodicGCInterval=10s; G1PeriodicGCSystemLoadThreshold=0 so the + # busy fork doesn't suppress it; -XX:-G1PeriodicGCInvokesConcurrent + # forces each periodic GC to a full STW collection) that uncommits to a + # tight free ratio (Min/MaxHeapFreeRatio 5/15, JEP 346) above a low + # -Xms512m floor. + # Without this the idle launcher holds ~5.3G for the whole run; with + # it, it drops back to ~1-2G. These flags touch no Gluten/Spark runtime + # config, so they cannot affect the measured pass/fail signal. + # * Forked test JVM: -Xmx2G via the `set ... Test / javaOptions` command + # below. Delta caps its fork at -Xmx1024m in build.sbt; `++=` appends + # so our -Xmx2G comes last and wins. Gluten offloads data to Velox + # off-heap (capped at 2g via spark.memory.offHeap.size in the patched + # DeltaSQLCommandTest), so the fork's heap need is modest. A larger + # fork heap pushed the cgroup peak past the ~16G OOM threshold and the + # kernel OOM-killed the fork mid-shard (no hs_err), wedging sbt -- 2G + # keeps headroom. Keep heap-dump-on-OOM so a real >2G heap OOM is + # analyzable. # `-u target/test-reports` enables ScalaTest's JUnit XML reporter so # every suite writes per-test results. Delta itself only configures # the console reporter (-oDF), so without this we'd have no machine- @@ -440,8 +456,8 @@ jobs: # subshell inherits. Without `set +e` here, ANY non-zero command -- # e.g. fork detection finding no match, or `kill`/`jps` returning # non-zero -- silently kills this watchdog. That errexit kill (plus a - # /proc detection miss) is why the watchdog captured ZERO dumps in - # runs #12 and #13. A diagnostic must never abort on a failed probe. + # /proc detection miss) once made the watchdog capture ZERO dumps. A + # diagnostic must never abort on a failed probe. set +e +o pipefail JSTACK="${JAVA_HOME}/bin/jstack" JPS="${JAVA_HOME}/bin/jps" diff --git a/.github/workflows/velox_backend_x86.yml b/.github/workflows/velox_backend_x86.yml index 0822223ffc6..27653f47307 100644 --- a/.github/workflows/velox_backend_x86.yml +++ b/.github/workflows/velox_backend_x86.yml @@ -19,6 +19,11 @@ on: pull_request: paths: - '.github/workflows/velox_backend_x86.yml' + # Delta Spark UT runs here too (reusable delta_spark_ut.yml). These extra + # paths make Delta-CI-only changes trigger this workflow; Delta also runs on + # the velox paths below since core/velox changes can affect Delta offload. + - '.github/workflows/delta_spark_ut.yml' + - '.github/workflows/util/delta-spark-ut/**' - '.github/workflows/util/install-spark-deps.sh' #TODO remove after image update - '.github/workflows/util/install-spark-resources.sh' #TODO remove after image update - 'pom.xml' @@ -79,6 +84,10 @@ jobs: ccache -sz bash dev/ci-velox-buildstatic-centos-7.sh ccache -s + # Stage the custom-built org.apache.arrow jars so the reusable Delta + # workflow's bundle build can consume them (see delta-spark-ut job). + mkdir -p /work/.m2/repository/org/apache/arrow/ + cp -r /root/.m2/repository/org/apache/arrow/* /work/.m2/repository/org/apache/arrow/ " - name: "Save ccache" @@ -93,6 +102,24 @@ jobs: name: velox-native-lib-centos-7-${{github.sha}} path: ./cpp/build/ if-no-files-found: error + # Consumed by the reusable Delta workflow (delta-spark-ut job). + - uses: actions/upload-artifact@v4 + with: + name: velox-arrow-jars-centos-7-${{github.sha}} + path: .m2/repository/org/apache/arrow/ + if-no-files-found: error + + # Delta Spark UT, run via the reusable workflow so it reuses the native lib + + # arrow jars built above instead of duplicating the native build. Not gated on + # Delta-only paths: core/velox/substrait/cpp/shims changes can affect Delta + # query offload, so this runs on every trigger like the other spark-test jobs. + delta-spark-ut: + needs: build-native-lib-centos-7 + uses: ./.github/workflows/delta_spark_ut.yml + with: + native_lib_artifact: velox-native-lib-centos-7-${{ github.sha }} + arrow_jars_artifact: velox-arrow-jars-centos-7-${{ github.sha }} + secrets: inherit tpc-test-ubuntu: needs: build-native-lib-centos-7 From 8f27b2f8c059f7ea9d3ef1743d9cb29b65538294 Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Tue, 30 Jun 2026 05:42:35 +0000 Subject: [PATCH 08/24] [CI] Harden Delta UT setup clone and enforce-mode baseline check Address PR review feedback: - setup-delta.sh: replace the shallow-clone + full-clone fallback (which ran a destructive `rm -rf "$DELTA_DIR"`) with a single `git init` + shallow `fetch --depth 1 origin "$DELTA_REF"` + `checkout FETCH_HEAD`. This resolves a tag, branch, or commit SHA uniformly (`git clone --branch` rejects SHAs), drops the dead fallback branch, and removes the unguarded recursive delete. - compare-test-results.py: in enforce mode, a missing/typoed --known-failures path made load_entries() return an empty set, silently degrading to seed mode and passing the gate without enforcing regressions. Treat a missing baseline file as a configuration error (exit 2); an existing-but-empty file is still allowed and legitimately seeds. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../delta-spark-ut/compare-test-results.py | 21 +++++++++++++++++-- .../util/delta-spark-ut/setup-delta.sh | 14 ++++++------- 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/.github/workflows/util/delta-spark-ut/compare-test-results.py b/.github/workflows/util/delta-spark-ut/compare-test-results.py index bed6d18712e..7a0868ef64a 100644 --- a/.github/workflows/util/delta-spark-ut/compare-test-results.py +++ b/.github/workflows/util/delta-spark-ut/compare-test-results.py @@ -36,8 +36,10 @@ fail the build (``--fail-on-fixed true``) so the baseline stays honest and contributors remove entries as they fix them. - If the baseline is empty (not yet bootstrapped) the mode automatically - degrades to ``seed`` so the first run is never spuriously red. + If the baseline file exists but is empty (not yet bootstrapped) the mode + automatically degrades to ``seed`` so the first run is never spuriously red. + A *missing* ``--known-failures`` file is treated as a configuration error + (the gate fails) so a mis-referenced path can't silently pass. ``seed`` (bootstrap / ``update_baseline``) Never fails. Just writes the current shard's failing tests so the baseline @@ -257,6 +259,21 @@ def _print_block(write, title, entries, limit=50): # Modes # --------------------------------------------------------------------------- # def run_enforce(args): + # In enforce mode a missing baseline file would make load_entries() return an + # empty set, silently degrading to seed mode and passing the gate without + # enforcing anything. Treat a missing path as a configuration error; an + # existing-but-empty file is still allowed (it legitimately seeds). + if args.mode == "enforce" and ( + not args.known_failures or not os.path.exists(args.known_failures) + ): + eprint( + "ERROR: --known-failures '{}' does not exist. In enforce mode the " + "baseline file must exist (an existing-but-empty file is allowed and " + "triggers seed mode). Refusing to silently pass.".format( + args.known_failures + ) + ) + return 2 baseline = load_entries(args.known_failures) passed, failed, skipped = parse_reports(args.reports_dir) diff --git a/.github/workflows/util/delta-spark-ut/setup-delta.sh b/.github/workflows/util/delta-spark-ut/setup-delta.sh index 9feab22f7ca..684df319d70 100755 --- a/.github/workflows/util/delta-spark-ut/setup-delta.sh +++ b/.github/workflows/util/delta-spark-ut/setup-delta.sh @@ -59,13 +59,13 @@ if [ ! -f "$PATCH_SOURCE" ]; then fi echo "::group::Cloning delta-io/delta @ ${DELTA_REF}" -# Shallow clone the requested tag/branch. Fall back to full clone when the ref is a SHA. -if ! git clone --depth 1 --branch "$DELTA_REF" https://github.com/delta-io/delta.git "$DELTA_DIR"; then - echo "Shallow clone of ref '${DELTA_REF}' failed, falling back to full clone." - rm -rf "$DELTA_DIR" - git clone https://github.com/delta-io/delta.git "$DELTA_DIR" - git -C "$DELTA_DIR" checkout "$DELTA_REF" -fi +# init + shallow fetch resolves a tag, branch OR commit SHA in a single path +# (`git clone --branch` rejects SHAs). Avoids a full-clone fallback and the +# destructive `rm -rf "$DELTA_DIR"` it required. +git init -q "$DELTA_DIR" +git -C "$DELTA_DIR" remote add origin https://github.com/delta-io/delta.git +git -C "$DELTA_DIR" fetch -q --depth 1 origin "$DELTA_REF" +git -C "$DELTA_DIR" checkout -q FETCH_HEAD git -C "$DELTA_DIR" --no-pager log -1 --oneline echo "::endgroup::" From 44ac258967e30de8c310c5144418c86ccb0c5487 Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Tue, 30 Jun 2026 23:55:22 +0000 Subject: [PATCH 09/24] [CI] Harden Delta UT gate and setup against silent failures Address PR review feedback with four robustness fixes: - compare-test-results.py (enforce/seed): raise NoReportsError and exit 2 when no JUnit elements are parsed, instead of warning and returning empty sets. Otherwise a misconfiguration (wrong reports dir, broken reporter, suites crashing before writing XML) yields zero failures -> zero regressions -> a silent green gate. - compare-test-results.py (aggregate): exit 2 before writing baseline-out when no per-shard failures-*.txt / ran-*.txt inputs are found. The gate-list download is continue-on-error and aggregate runs with if: always(), so missing artifacts would otherwise produce an empty baseline that could be committed, wiping known-failures.txt. - setup-delta.sh: pass the Delta ref after `--` in git fetch so a ref starting with `-` can't be misread as a git option (the script is workflow_dispatch- runnable with a user-supplied ref). - velox_backend_x86.yml: drop secrets: inherit from the reusable Delta UT call. delta_spark_ut.yml references no secrets, so inheriting them needlessly forwards all caller secrets to a workflow that clones and runs external code. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../delta-spark-ut/compare-test-results.py | 31 +++++++++++++++++-- .../util/delta-spark-ut/setup-delta.sh | 6 ++-- .github/workflows/velox_backend_x86.yml | 1 - 3 files changed, 32 insertions(+), 6 deletions(-) diff --git a/.github/workflows/util/delta-spark-ut/compare-test-results.py b/.github/workflows/util/delta-spark-ut/compare-test-results.py index 7a0868ef64a..8b5ad35a7ad 100644 --- a/.github/workflows/util/delta-spark-ut/compare-test-results.py +++ b/.github/workflows/util/delta-spark-ut/compare-test-results.py @@ -76,6 +76,11 @@ # would record zero failing testcases and the regression would be missed. SUITE_ABORTED = "" + +class NoReportsError(RuntimeError): + """Raised when no JUnit elements are found under reports_dir.""" + + SEP = "#" @@ -212,8 +217,12 @@ def parse_reports(reports_dir): failed.add((suite_name, SUITE_ABORTED)) if not parsed_any: - eprint( - "WARNING: no JUnit elements found under {}".format(reports_dir) + raise NoReportsError( + "No JUnit elements found under {}. The test reports are " + "missing or in an unexpected format -- refusing to evaluate the gate " + "on an empty result set (this would otherwise pass silently).".format( + reports_dir + ) ) # A test can't be both passed and failed; failure wins. Skipped only counts @@ -275,7 +284,11 @@ def run_enforce(args): ) return 2 baseline = load_entries(args.known_failures) - passed, failed, skipped = parse_reports(args.reports_dir) + try: + passed, failed, skipped = parse_reports(args.reports_dir) + except NoReportsError as exc: + eprint("ERROR: {}".format(exc)) + return 2 # Always emit this shard's artifacts for the aggregation job. if args.failures_out: @@ -375,6 +388,18 @@ def run_aggregate(args): glob.glob(os.path.join(args.inputs_dir, "**", "ran-*.txt"), recursive=True) ) + # No per-shard gate lists means the artifacts were never produced or the + # download failed (the workflow's download step is continue-on-error). Bail + # out before writing an empty baseline-out, which could otherwise be committed + # and wipe the entire known-failures.txt. + if not failure_files and not ran_files: + eprint( + "ERROR: no per-shard failures-*.txt / ran-*.txt files found under " + "{}. Refusing to aggregate an empty baseline (gate-list artifacts are " + "missing or were not downloaded).".format(args.inputs_dir) + ) + return 2 + union_failed = set() for f in failure_files: union_failed |= load_entries(f) diff --git a/.github/workflows/util/delta-spark-ut/setup-delta.sh b/.github/workflows/util/delta-spark-ut/setup-delta.sh index 684df319d70..1d9dcf7f954 100755 --- a/.github/workflows/util/delta-spark-ut/setup-delta.sh +++ b/.github/workflows/util/delta-spark-ut/setup-delta.sh @@ -61,10 +61,12 @@ fi echo "::group::Cloning delta-io/delta @ ${DELTA_REF}" # init + shallow fetch resolves a tag, branch OR commit SHA in a single path # (`git clone --branch` rejects SHAs). Avoids a full-clone fallback and the -# destructive `rm -rf "$DELTA_DIR"` it required. +# destructive `rm -rf "$DELTA_DIR"` it required. `--` terminates options so a +# DELTA_REF starting with `-` can't be misread as a git flag (this script is +# workflow_dispatch-runnable with a user-supplied ref). git init -q "$DELTA_DIR" git -C "$DELTA_DIR" remote add origin https://github.com/delta-io/delta.git -git -C "$DELTA_DIR" fetch -q --depth 1 origin "$DELTA_REF" +git -C "$DELTA_DIR" fetch -q --depth 1 origin -- "$DELTA_REF" git -C "$DELTA_DIR" checkout -q FETCH_HEAD git -C "$DELTA_DIR" --no-pager log -1 --oneline echo "::endgroup::" diff --git a/.github/workflows/velox_backend_x86.yml b/.github/workflows/velox_backend_x86.yml index 27653f47307..85f0f8087b5 100644 --- a/.github/workflows/velox_backend_x86.yml +++ b/.github/workflows/velox_backend_x86.yml @@ -119,7 +119,6 @@ jobs: with: native_lib_artifact: velox-native-lib-centos-7-${{ github.sha }} arrow_jars_artifact: velox-arrow-jars-centos-7-${{ github.sha }} - secrets: inherit tpc-test-ubuntu: needs: build-native-lib-centos-7 From 7f288068e1c969f382d6898137704466416cf53d Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Fri, 3 Jul 2026 20:52:13 +0000 Subject: [PATCH 10/24] [CI] Quarantine flaky Delta DV-merge tests in the UT gate Some Delta-on-Gluten MERGE tests that write deletion vectors fail non-deterministically: the same bundle passes them on one CI run and fails them on the next (native RoaringBitmapArray addSafe aborting on an invalid Long.MAX_VALUE row index). Such tests cannot live in known-failures.txt -- baselining them reds the gate on every run where they pass, and leaving them out reds it on every run where they fail. Add a flaky-tests.txt quarantine list read by the gate. A quarantined test is neutral: it never counts as a regression when it fails nor as now-passing when it passes, and is excluded from the regenerated baseline (aggregate mode). The suite portion of each entry is an fnmatch glob so one line covers a root-cause family across generated suite variants (e.g. *DVs*Suite); the test name is matched exactly. Seed the list with the DV-merge family behind the native row-index bug. This is an interim measure -- entries should be removed once that bug is fixed in the native backend so the tests are enforced again. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .github/workflows/delta_spark_ut.yml | 2 + .../workflows/util/delta-spark-ut/README.md | 37 +++++++- .../delta-spark-ut/compare-test-results.py | 94 ++++++++++++++++++- .../util/delta-spark-ut/flaky-tests.txt | 32 +++++++ 4 files changed, 155 insertions(+), 10 deletions(-) create mode 100644 .github/workflows/util/delta-spark-ut/flaky-tests.txt diff --git a/.github/workflows/delta_spark_ut.yml b/.github/workflows/delta_spark_ut.yml index dbc210afedf..ce6a2513991 100644 --- a/.github/workflows/delta_spark_ut.yml +++ b/.github/workflows/delta_spark_ut.yml @@ -590,6 +590,7 @@ jobs: --mode "${GATE_MODE}" \ --reports-dir "$GITHUB_WORKSPACE/delta" \ --known-failures "$GITHUB_WORKSPACE/.github/workflows/util/delta-spark-ut/known-failures.txt" \ + --flaky-tests "$GITHUB_WORKSPACE/.github/workflows/util/delta-spark-ut/flaky-tests.txt" \ --failures-out "$GITHUB_WORKSPACE/gate-out/failures-shard-${{ matrix.shard }}.txt" \ --ran-out "$GITHUB_WORKSPACE/gate-out/ran-shard-${{ matrix.shard }}.txt" \ --fail-on-fixed "${{ steps.resolve.outputs.fail_on_fixed }}" @@ -673,6 +674,7 @@ jobs: --mode aggregate \ --inputs-dir gate-lists \ --known-failures .github/workflows/util/delta-spark-ut/known-failures.txt \ + --flaky-tests .github/workflows/util/delta-spark-ut/flaky-tests.txt \ --baseline-out aggregated/known-failures.txt - name: Upload refreshed baseline if: always() diff --git a/.github/workflows/util/delta-spark-ut/README.md b/.github/workflows/util/delta-spark-ut/README.md index ea2cc6af190..148ab5ecd20 100644 --- a/.github/workflows/util/delta-spark-ut/README.md +++ b/.github/workflows/util/delta-spark-ut/README.md @@ -33,6 +33,7 @@ starts failing** (a regression). | File | Purpose | |---|---| | `known-failures.txt` | Committed baseline: the tests currently expected to fail. One `#` per line. | +| `flaky-tests.txt` | Quarantine list: tests whose pass/fail is non-deterministic. Ignored by the gate whether they pass or fail. `#` per line. | | `compare-test-results.py` | Parses the JUnit XML from `sbt spark/test` and gates / seeds / aggregates against the baseline. Standard-library only. | | `setup-delta.sh` | Clones Delta, drops in the Gluten bundle, and patches `DeltaSQLCommandTest`. | @@ -48,6 +49,8 @@ Each test shard: - **expected** — failed and in the baseline → ignored. - **now-passing** — in the baseline but passed this run → fails the shard (so the baseline is kept honest), unless `fail_on_fixed=false`. + - **quarantined** — matches an entry in `flaky-tests.txt` → always ignored, + whether it passed or failed (see [Flaky tests](#flaky-tests) below). A final `aggregate` job merges every shard's results into a single, sorted, ready-to-commit `known-failures.txt` artifact and reports **stale** baseline @@ -89,13 +92,36 @@ same way as bootstrapping: run the workflow with `update_baseline=true`, downloa the `delta-spark-ut-known-failures` artifact, and commit it. The aggregate job also lists **stale** entries you can prune. +## Flaky tests + +Some tests are genuinely non-deterministic (e.g. the Delta MERGE-with-deletion-vector +suites that intermittently hit a native row-index bug). Such a test would otherwise +red the gate as a **regression** when it flakes to a failure, or as **now-passing** +when it flakes to a pass — noise either way. + +List these in **`flaky-tests.txt`** to **quarantine** them: the gate ignores a +quarantined test whether it passes or fails, and never writes it into the +regenerated baseline. Format is one `#` per line, `#`-comments +and blank lines allowed: + +``` +# suite portion is an fnmatch glob; test portion is matched exactly. +*DVs*Suite#matched only merge - enabled - with update and delete - isPartitioned: true +``` + +- The **suite** portion is an `fnmatch` glob, so `*DVs*Suite` covers every + generated deletion-vector merge variant in one line. Use the narrowest glob + that still covers the root-cause family. +- The **test** portion is matched **exactly** (test names are freeform and may + contain glob metacharacters), so a same-named test in a non-matching suite is + still gated normally. + +Quarantining is an **interim** measure — it hides a real bug from CI. Each entry +should reference the tracking issue, and be removed once the underlying bug is +fixed so the test is enforced again. + ## Caveats -- **Flaky tests.** A flaky test that usually passes will be flagged as a - regression when it flakes; one that usually fails (and is in the baseline) - may be flagged as now-passing when it happens to pass. Re-run, or set - `fail_on_fixed=false` for that run, and keep genuinely flaky tests out of the - enforced set. - **Known failures still execute** (and fail) — they are gated *after* the run, not skipped — so they still consume CI time. This keeps us decoupled from Delta's sources; skipping them at runtime would require patching Delta. @@ -108,5 +134,6 @@ python3 .github/workflows/util/delta-spark-ut/compare-test-results.py \ --mode enforce \ --reports-dir delta \ --known-failures .github/workflows/util/delta-spark-ut/known-failures.txt \ + --flaky-tests .github/workflows/util/delta-spark-ut/flaky-tests.txt \ --failures-out /tmp/failures.txt --ran-out /tmp/ran.txt ``` diff --git a/.github/workflows/util/delta-spark-ut/compare-test-results.py b/.github/workflows/util/delta-spark-ut/compare-test-results.py index 8b5ad35a7ad..d30018a50bb 100644 --- a/.github/workflows/util/delta-spark-ut/compare-test-results.py +++ b/.github/workflows/util/delta-spark-ut/compare-test-results.py @@ -50,6 +50,17 @@ sorted, ready-to-commit ``known-failures.txt`` and report stale baseline entries (tests no longer present in any shard). +Flaky quarantine (``--flaky-tests``) + Some Delta-on-Gluten failures are non-deterministic (e.g. a native bug that + only triggers on certain runtime plans), so they are neither a stable pass + nor a stable failure and cannot live in the baseline: baselining them turns + the gate red on every run where they pass, and leaving them out turns it red + on every run where they fail. ``flaky-tests.txt`` quarantines them -- a + quarantined test never counts as a regression (when it fails) nor as + now-passing (when it passes), and is excluded from the regenerated baseline. + Its SUITE is an fnmatch glob (so one line covers a root-cause family across + generated suite variants); its TEST name is matched exactly. + Baseline file format (``known-failures.txt``):: # comment lines start with '#' @@ -65,6 +76,7 @@ """ import argparse +import fnmatch import glob import os import sys @@ -120,6 +132,36 @@ def load_entries(path): return entries +def make_is_flaky(flaky_entries): + """Build a predicate that matches a (suite, test) tuple against flaky entries. + + A flaky entry quarantines a test whose failure is known to be non-deterministic + (see flaky-tests.txt). The entry's SUITE is treated as an fnmatch glob so a + single line can cover a root-cause family across generated suite variants + (e.g. ``*DVs*Suite`` matches every deletion-vector merge suite, ``*`` matches + any suite); the TEST name is matched exactly (test names are freeform and may + contain glob metacharacters, so they are never globbed). + """ + exact = set() + globbed = [] + for suite, test in flaky_entries: + if any(ch in suite for ch in "*?["): + globbed.append((suite, test)) + else: + exact.add((suite, test)) + + def is_flaky(entry): + if entry in exact: + return True + suite, test = entry + for glob_suite, glob_test in globbed: + if test == glob_test and fnmatch.fnmatchcase(suite, glob_suite): + return True + return False + + return is_flaky + + def write_entries(path, entries, header=None): """Write a sorted set of (suite, test) tuples to a file.""" os.makedirs(os.path.dirname(os.path.abspath(path)) or ".", exist_ok=True) @@ -284,6 +326,7 @@ def run_enforce(args): ) return 2 baseline = load_entries(args.known_failures) + flaky_is = make_is_flaky(load_entries(args.flaky_tests)) try: passed, failed, skipped = parse_reports(args.reports_dir) except NoReportsError as exc: @@ -330,8 +373,13 @@ def run_enforce(args): ) return 0 - regressions = failed - baseline - fixed = baseline & passed + regressions = {e for e in (failed - baseline) if not flaky_is(e)} + quarantined = {e for e in (failed - baseline) if flaky_is(e)} + # `- flaky` on fixed is defensive: flaky tests are excluded from the + # regenerated baseline (aggregate mode), so a flaky test should never be in + # `baseline` in the first place -- but if one slips in, don't let its + # non-deterministic pass trip the now-passing gate. + fixed = {e for e in (baseline & passed) if not flaky_is(e)} expected = failed & baseline write("") @@ -340,6 +388,7 @@ def run_enforce(args): write("| Expected failures (in baseline) | {} |".format(len(expected))) write("| **Regressions (new failures)** | {} |".format(len(regressions))) write("| Now-passing (remove from baseline) | {} |".format(len(fixed))) + write("| Quarantined flaky failures (ignored) | {} |".format(len(quarantined))) _print_block( write, "Regressions -- new failures NOT in the baseline", regressions @@ -352,6 +401,12 @@ def run_enforce(args): "failure) add the lines above to `known-failures.txt`." ) + _print_block( + write, + "Quarantined flaky failures -- ignored (see flaky-tests.txt)", + quarantined, + ) + if args.fail_on_fixed: _print_block( write, "Now-passing -- delete these lines from the baseline", fixed @@ -407,6 +462,13 @@ def run_aggregate(args): for f in ran_files: union_ran |= load_entries(f) + flaky_is = make_is_flaky(load_entries(args.flaky_tests)) + # Exclude quarantined flaky tests from the regenerated baseline: a flaky test + # that happened to fail this run must never be baked into known-failures.txt + # (otherwise it would trip the now-passing gate on the next run where it + # passes). Flaky failures are tracked in flaky-tests.txt, not the baseline. + baseline_body = {e for e in union_failed if not flaky_is(e)} + header = ( "# Known Delta-on-Gluten unit test failures.\n" "#\n" @@ -418,7 +480,7 @@ def run_aggregate(args): "# update_baseline=true and committing the produced artifact.\n" ) if args.baseline_out: - write_entries(args.baseline_out, union_failed, header=header) + write_entries(args.baseline_out, baseline_body, header=header) write, handle = _summary_sink() try: @@ -434,15 +496,30 @@ def run_aggregate(args): if args.known_failures and os.path.exists(args.known_failures): baseline = load_entries(args.known_failures) if baseline: - regressions = union_failed - baseline - fixed = baseline & (union_ran - union_failed) + regressions = {e for e in (union_failed - baseline) if not flaky_is(e)} + quarantined = {e for e in (union_failed - baseline) if flaky_is(e)} + fixed = { + e + for e in (baseline & (union_ran - union_failed)) + if not flaky_is(e) + } stale = baseline - union_ran write("| Baseline entries | {} |".format(len(baseline))) write("| Regressions (global) | {} |".format(len(regressions))) write("| Now-passing (global) | {} |".format(len(fixed))) + write( + "| Quarantined flaky failures (ignored) | {} |".format( + len(quarantined) + ) + ) write("| Stale (not seen this run) | {} |".format(len(stale))) _print_block(write, "Regressions (global)", regressions) _print_block(write, "Now-passing (global)", fixed) + _print_block( + write, + "Quarantined flaky failures -- ignored (see flaky-tests.txt)", + quarantined, + ) _print_block(write, "Stale baseline entries (suite/test gone)", stale) if args.fail_on_regression and regressions: exit_code = 1 @@ -469,6 +546,13 @@ def main(argv=None): parser.add_argument( "--known-failures", help="Path to the committed known-failures.txt baseline." ) + parser.add_argument( + "--flaky-tests", + help="Path to flaky-tests.txt: tests quarantined as non-deterministic. A " + "flaky test is neither counted as a regression when it fails nor as " + "now-passing when it passes, and is excluded from the regenerated baseline " + "(aggregate mode). Optional; omitting it disables quarantining.", + ) parser.add_argument( "--reports-dir", help="Root dir to search for JUnit XML (enforce/seed)." ) diff --git a/.github/workflows/util/delta-spark-ut/flaky-tests.txt b/.github/workflows/util/delta-spark-ut/flaky-tests.txt new file mode 100644 index 00000000000..b56bea43947 --- /dev/null +++ b/.github/workflows/util/delta-spark-ut/flaky-tests.txt @@ -0,0 +1,32 @@ +# Quarantined flaky Delta-on-Gluten tests. +# +# These tests fail NON-DETERMINISTICALLY under the Gluten Velox bundle: the same +# byte-for-byte bundle passes them on one CI run and fails them on the next. They +# therefore cannot live in known-failures.txt -- baselining them turns the gate +# red on every run where they PASS (fail-on-fixed), while leaving them out turns +# it red on every run where they FAIL. The Delta Spark UT (Gluten) gate treats a +# quarantined test as NEUTRAL: it never counts as a regression when it fails, nor +# as now-passing when it passes, and it is excluded from the regenerated baseline. +# +# Format: #. The SUITE part is an fnmatch glob so a +# single line covers a root-cause family across generated suite variants (e.g. +# `*DVs*Suite` = every deletion-vector merge suite); the TEST name is matched +# exactly. Lines starting with '#' are comments. +# +# Prefer fixing the underlying bug and REMOVING the entry over growing this list. +# Every entry should reference a tracking issue for the root cause. +# +# --------------------------------------------------------------------------- +# Root cause: native Delta DV bitmap aggregator aborts on an invalid Long.MAX_VALUE +# (9223372036854775807 > kMaxRepresentableValue) row index during MERGE that writes +# deletion vectors -- RoaringBitmapArray.cpp addSafe, INVALID_STATE VeloxRuntimeError. +# Intermittent (depends on runtime plan/scan/scheduling), so it hits a different +# `*DVs*Suite` MERGE test on each run. Tracked upstream (DV bitmap Long.MAX_VALUE). +# Remove these once the row-index materialization is fixed in the native backend. +# --------------------------------------------------------------------------- +*DVs*Suite#basic case - merge to Delta table by path, isPartitioned: true +*DVs*Suite#extended syntax - conditional update + conditional delete + conditional insert - isPartitioned: true +*DVs*Suite#extended syntax - update + conditional insert - isPartitioned: true +*DVs*Suite#matched only merge - disabled - with update and delete - isPartitioned: true +*DVs*Suite#matched only merge - enabled - with update and delete - isPartitioned: true +*DVs*Suite#single file, isPartitioned: true From f9879409f81d4a8da8cedc2513e7473cd1e402f2 Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Mon, 6 Jul 2026 18:53:03 +0000 Subject: [PATCH 11/24] [CI] Address Delta UT review: single-source spark_version, corrupt-report fail-fast, baseline count Fixes three open review comments on the Delta Spark UT pipeline: 1. spark_version was redundant with the hard-coded GLUTEN_BUNDLE_SPARK_VERSION / GLUTEN_SPARK_PROFILE, and a workflow_dispatch run could set them out of sync so the Delta tests ran against a mismatched Gluten bundle. Make spark_version the single source of truth: the Gluten bundle profile (-Pspark-), the bundle jar name and Delta's -DsparkVersion are all derived from it, so a mismatch is now impossible (no guard needed). Scala 2.13 / JDK 17 stay pinned. 2. Corrupt/truncated JUnit reports (compare-test-results.py). parse_reports previously warned and skipped any XML that failed to parse, so a report truncated by a killed/OOM'd fork could silently drop a suite's failures and let the gate go green on partial data. A TEST-*.xml that fails to parse now raises CorruptReportError (exit 2); other XML matched by the broad target/** glob is still skipped. 3. Hard-coded failure count in the baseline header (known-failures.txt). The header stated a fixed total that drifts every time the baseline is refreshed. Drop the number and point at the entry count / delta-spark-aggregate summary as the authoritative source instead. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .github/workflows/delta_spark_ut.yml | 16 +++++++++++----- .../delta-spark-ut/compare-test-results.py | 19 +++++++++++++++++++ .../util/delta-spark-ut/known-failures.txt | 4 +++- 3 files changed, 33 insertions(+), 6 deletions(-) diff --git a/.github/workflows/delta_spark_ut.yml b/.github/workflows/delta_spark_ut.yml index ce6a2513991..689312d2b69 100644 --- a/.github/workflows/delta_spark_ut.yml +++ b/.github/workflows/delta_spark_ut.yml @@ -57,6 +57,7 @@ on: required: false default: 'v4.2.0' spark_version: + description: 'Spark version driving both the Gluten bundle profile (-Pspark-) and Delta -DsparkVersion.' type: string required: false default: '4.1' @@ -79,7 +80,7 @@ on: required: true default: 'v4.2.0' spark_version: - description: 'Delta `-DsparkVersion` value (must match the Gluten -P profile below)' + description: 'Spark version: drives the Gluten bundle profile (-Pspark-) and Delta -DsparkVersion together. Scala 2.13 + JDK 17 are assumed, so pair a non-4.1 value with a compatible delta_ref.' required: true default: '4.1' test_parallelism: @@ -102,12 +103,17 @@ env: MVN_CMD: 'build/mvn -ntp' CCACHE_DIR: "${{ github.workspace }}/.ccache" # Gluten profile / bundle naming for the build-gluten-bundle and - # delta-spark-test jobs. Spark 4.1 + Scala 2.13 + JDK 17 matches Delta v4.2.0's - # default Spark version (4.1.0) from project/CrossSparkVersions.scala. - GLUTEN_SPARK_PROFILE: 'spark-4.1' + # delta-spark-test jobs. `spark_version` is the single source of truth for the + # Spark version: it drives the Gluten bundle profile (-Pspark-), the bundle + # jar name, and Delta's -DsparkVersion, so the tests always run against a bundle + # built for the same Spark version (no separate value to keep in sync). Scala + # 2.13 + JDK 17 are pinned -- they match Delta v4.2.0's default Spark 4.1.0 from + # project/CrossSparkVersions.scala -- so pair a non-default spark_version with a + # compatible delta_ref. + GLUTEN_SPARK_PROFILE: spark-${{ inputs.spark_version }} GLUTEN_SCALA_PROFILE: 'scala-2.13' GLUTEN_JAVA_PROFILE: 'java-17' - GLUTEN_BUNDLE_SPARK_VERSION: '4.1' + GLUTEN_BUNDLE_SPARK_VERSION: ${{ inputs.spark_version }} GLUTEN_BUNDLE_SCALA_VERSION: '2.13' DELTA_SCALA_VERSION: '2.13.16' # Number of shards in the delta-spark-test matrix. Must equal the length of diff --git a/.github/workflows/util/delta-spark-ut/compare-test-results.py b/.github/workflows/util/delta-spark-ut/compare-test-results.py index d30018a50bb..0247aaabf62 100644 --- a/.github/workflows/util/delta-spark-ut/compare-test-results.py +++ b/.github/workflows/util/delta-spark-ut/compare-test-results.py @@ -93,6 +93,15 @@ class NoReportsError(RuntimeError): """Raised when no JUnit elements are found under reports_dir.""" +class CorruptReportError(NoReportsError): + """Raised when an expected JUnit report file (TEST-*.xml) fails to parse. + + Subclasses NoReportsError so the enforce/seed handler treats a truncated + report as a hard data error (exit 2) instead of silently dropping the + suite's results and letting the gate pass on partial data. + """ + + SEP = "#" @@ -220,6 +229,16 @@ def parse_reports(reports_dir): try: tree = ET.parse(xml_file) except ET.ParseError as exc: + # A TEST-*.xml that fails to parse is almost always a report truncated + # when a forked test JVM was killed mid-write (e.g. OOM). Silently + # skipping it drops that suite's results and could let the gate go + # green on partial data, so fail hard for report files. Other XML that + # merely matched the broad `target/**` glob is still skipped. + if os.path.basename(xml_file).startswith("TEST-"): + raise CorruptReportError( + "corrupt or truncated JUnit report {}: {}. Refusing to " + "evaluate the gate on partial data.".format(xml_file, exc) + ) eprint("WARNING: could not parse {}: {}".format(xml_file, exc)) continue root = tree.getroot() diff --git a/.github/workflows/util/delta-spark-ut/known-failures.txt b/.github/workflows/util/delta-spark-ut/known-failures.txt index 18487b7e75e..624e0c5cf46 100644 --- a/.github/workflows/util/delta-spark-ut/known-failures.txt +++ b/.github/workflows/util/delta-spark-ut/known-failures.txt @@ -9,7 +9,9 @@ # --------------------------------------------------------------------------- # Baseline for the committed 4-shard x 4-fork config. Originally seeded from run # 27490052632; refreshed from run 28318129710 (4 x 4) after the FileSourceScanLike -# test fixes (delta-io/delta #7104 + #7105). 810 known failures total. +# test fixes (delta-io/delta #7104 + #7105). The authoritative failure count is +# the number of entries below (and the delta-spark-aggregate job summary); it is +# deliberately not restated here so it can't drift as the baseline is refreshed. # # IMPORTANT: regenerate this baseline under the SAME NUM_SHARDS x # TEST_PARALLELISM_COUNT the gate runs (here 4 x 4). ~34 of these failures are From 8d4dece0d20ae7e8d5f8405ae936f1fb9109080e Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Tue, 7 Jul 2026 01:48:17 +0000 Subject: [PATCH 12/24] [CI] Fail Delta UT aggregate when a shard's gate lists are missing The aggregate job downloads per-shard gate lists with continue-on-error and the aggregator only hard-failed when *no* inputs were found. If a shard died before writing its gate lists (OOM / watchdog) or its artifact failed to download, the job still regenerated a baseline that silently omitted that shard's failures, shrinking known-failures.txt and reddening the next run. Add --expected-shards to compare-test-results.py: in aggregate mode it counts shards that produced a complete failures-*/ran-* pair and refuses to aggregate (exit 2, before writing --baseline-out) when fewer than expected are present. A shard counts only when BOTH files exist, so a partial download is caught too. The workflow passes --expected-shards ${{ env.DELTA_NUM_SHARDS }}; omitting the flag (default 0) disables the check, preserving prior behavior. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .github/workflows/delta_spark_ut.yml | 1 + .../workflows/util/delta-spark-ut/README.md | 6 ++ .../delta-spark-ut/compare-test-results.py | 56 ++++++++++++++++++- 3 files changed, 62 insertions(+), 1 deletion(-) diff --git a/.github/workflows/delta_spark_ut.yml b/.github/workflows/delta_spark_ut.yml index 689312d2b69..0ffcdca9ed9 100644 --- a/.github/workflows/delta_spark_ut.yml +++ b/.github/workflows/delta_spark_ut.yml @@ -679,6 +679,7 @@ jobs: python3 .github/workflows/util/delta-spark-ut/compare-test-results.py \ --mode aggregate \ --inputs-dir gate-lists \ + --expected-shards "${{ env.DELTA_NUM_SHARDS }}" \ --known-failures .github/workflows/util/delta-spark-ut/known-failures.txt \ --flaky-tests .github/workflows/util/delta-spark-ut/flaky-tests.txt \ --baseline-out aggregated/known-failures.txt diff --git a/.github/workflows/util/delta-spark-ut/README.md b/.github/workflows/util/delta-spark-ut/README.md index 148ab5ecd20..5b4d65e9c63 100644 --- a/.github/workflows/util/delta-spark-ut/README.md +++ b/.github/workflows/util/delta-spark-ut/README.md @@ -92,6 +92,12 @@ same way as bootstrapping: run the workflow with `update_baseline=true`, downloa the `delta-spark-ut-known-failures` artifact, and commit it. The aggregate job also lists **stale** entries you can prune. +The aggregate job passes `--expected-shards` (the shard count), so if a shard +dies before writing its gate lists (or its artifact fails to download) the +aggregate **fails** instead of emitting a baseline that silently omits that +shard's failures — which would otherwise shrink `known-failures.txt` and red the +next run. Re-run the workflow if this happens. + ## Flaky tests Some tests are genuinely non-deterministic (e.g. the Delta MERGE-with-deletion-vector diff --git a/.github/workflows/util/delta-spark-ut/compare-test-results.py b/.github/workflows/util/delta-spark-ut/compare-test-results.py index 0247aaabf62..d1086dca7d9 100644 --- a/.github/workflows/util/delta-spark-ut/compare-test-results.py +++ b/.github/workflows/util/delta-spark-ut/compare-test-results.py @@ -48,7 +48,9 @@ ``aggregate`` (final job) Merge every shard's ``--failures-out`` / ``--ran-out`` file into a single, sorted, ready-to-commit ``known-failures.txt`` and report stale baseline - entries (tests no longer present in any shard). + entries (tests no longer present in any shard). Pass ``--expected-shards N`` + to fail when fewer than ``N`` shards contributed gate lists (a shard that + died before writing them), so an incomplete baseline is never produced. Flaky quarantine (``--flaky-tests``) Some Delta-on-Gluten failures are non-deterministic (e.g. a native bug that @@ -79,6 +81,7 @@ import fnmatch import glob import os +import re import sys import xml.etree.ElementTree as ET @@ -454,6 +457,23 @@ def run_enforce(args): handle.close() +def _shard_ids(files, prefix): + """Return the set of shard ids from gate-list filenames. + + Gate lists are named ``.txt`` (e.g. ``failures-shard-0.txt``, + ``ran-shard-0.txt``); this extracts the ```` token so aggregate mode + can count how many shards contributed. Matching is on the basename, so nested + download dirs are fine. + """ + ids = set() + pat = re.compile(r"^" + re.escape(prefix) + r"(.+)\.txt$") + for f in files: + m = pat.match(os.path.basename(f)) + if m: + ids.add(m.group(1)) + return ids + + def run_aggregate(args): failure_files = sorted( glob.glob(os.path.join(args.inputs_dir, "**", "failures-*.txt"), recursive=True) @@ -474,6 +494,31 @@ def run_aggregate(args): ) return 2 + # Completeness guard: each shard writes its failures-.txt and ran-.txt + # together (see run_enforce), so a shard that died before the gate step -- or + # whose artifact failed to download -- contributes neither. The empty-inputs + # check above only catches losing *all* shards; without this a partial set + # would silently regenerate a baseline missing that shard's failures, wrongly + # shrinking known-failures.txt and reddening the next run. A shard counts as + # complete only when BOTH its files are present (robust to partial downloads). + if args.expected_shards: + complete = _shard_ids(failure_files, "failures-") & _shard_ids( + ran_files, "ran-" + ) + if len(complete) != args.expected_shards: + eprint( + "ERROR: expected {} shard gate-list set(s) but found {} complete " + "(shards: {}). A shard's failures-*/ran-* artifact is missing -- it " + "likely died before writing its gate lists or its artifact failed " + "to download -- so the regenerated baseline would be incomplete and " + "could wrongly shrink known-failures.txt. Refusing to aggregate.".format( + args.expected_shards, + len(complete), + ", ".join(sorted(complete)) or "none", + ) + ) + return 2 + union_failed = set() for f in failure_files: union_failed |= load_entries(f) @@ -590,6 +635,15 @@ def main(argv=None): parser.add_argument( "--inputs-dir", help="Dir with per-shard failures-*/ran-* files (aggregate)." ) + parser.add_argument( + "--expected-shards", + type=int, + default=0, + help="In aggregate mode, the number of shards expected to contribute gate " + "lists. When >0, fail if fewer complete shard gate-list pairs " + "(failures-*/ran-*) are found -- e.g. a shard died before writing them -- so " + "an incomplete baseline is never produced. 0 (default) disables the check.", + ) parser.add_argument( "--baseline-out", help="Write the merged baseline here (aggregate)." ) From 318bea509d19c023f1bbaa58cbc298235cc553fb Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Thu, 9 Jul 2026 07:13:42 +0000 Subject: [PATCH 13/24] [CI] Slim Delta UT pipeline: drop redundant Arrow jars, extract shard body Two readability/cleanup changes to the Delta Spark UT pipeline: 1. Drop redundant Arrow jar handling. Since apache/gluten#12244 (2026-06-09) Gluten depends on vanilla Apache Arrow instead of the custom 15.0.0-gluten rename, so the Arrow jars resolve from Maven Central. Remove the arrow-jar staging in both native builds, the velox-arrow-jars / delta-spark-ut-arrow-jars uploads, the caller's arrow_jars_artifact input, and the bundle job's "Download Arrow jars" step. The bundle build's Maven cache still holds Arrow across runs and resolves it from Central on a miss. 2. Extract the shard test body into run-delta-tests.sh. The "Run Delta spark module tests" step embedded ~190 lines of shell (hang watchdog, sbt invocation with JVM/heap tuning, cgroup memory forensics, report check, known-failures gate). Move that whole body into util/delta-spark-ut/run-delta-tests.sh so the workflow step is just an `env:` block plus a one-line script call, shrinking delta_spark_ut.yml by ~180 lines. The move is faithful: the script body is the previous inline block with only the GitHub `${{ }}` expressions replaced by env vars (matrix.shard -> SHARD_ID which is already job-level env; spark_version/update_baseline/fail_on_fixed added to the step env). Verified by a textual diff against the old body and by end-to-end runs with a stubbed sbt (baseline-only -> green, regression -> red, seed -> green). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .github/workflows/delta_spark_ut.yml | 230 +---------------- .../workflows/util/delta-spark-ut/README.md | 1 + .../util/delta-spark-ut/run-delta-tests.sh | 234 ++++++++++++++++++ .github/workflows/velox_backend_x86.yml | 19 +- 4 files changed, 251 insertions(+), 233 deletions(-) create mode 100755 .github/workflows/util/delta-spark-ut/run-delta-tests.sh diff --git a/.github/workflows/delta_spark_ut.yml b/.github/workflows/delta_spark_ut.yml index 0ffcdca9ed9..32919cb785c 100644 --- a/.github/workflows/delta_spark_ut.yml +++ b/.github/workflows/delta_spark_ut.yml @@ -33,10 +33,10 @@ name: Delta Spark UT (Gluten) on: # Reusable workflow. velox_backend_x86.yml calls this (gated on Delta-relevant - # changes) and passes the native-lib + arrow-jars artifacts it already built, - # so the expensive native C++ build is NOT duplicated. Those artifacts live in - # the CALLER's run (a called workflow runs as part of the caller run), so the - # jobs below download them by name. See velox_backend_x86.yml `delta-spark-ut`. + # changes) and passes the native-lib artifact it already built, so the expensive + # native C++ build is NOT duplicated. That artifact lives in the CALLER's run (a + # called workflow runs as part of the caller run), so the jobs below download it + # by name. See velox_backend_x86.yml `delta-spark-ut`. # # NOTE: the `pull_request` trigger was removed so this no longer runs as its own # workflow on PRs (which would double-run the Delta suite). velox_backend_x86.yml @@ -48,10 +48,6 @@ on: description: 'Name of the cpp/build artifact uploaded by the caller' type: string required: true - arrow_jars_artifact: - description: 'Name of the org.apache.arrow jars artifact uploaded by the caller' - type: string - required: true delta_ref: type: string required: false @@ -138,8 +134,8 @@ env: jobs: build-native-lib-centos-7: # Standalone (workflow_dispatch) only. When called by velox_backend_x86.yml - # the caller already built the native lib + arrow jars and passes them as - # inputs, so this job is skipped and the duplicate native build is avoided. + # the caller already built the native lib and passes it as an input, so this + # job is skipped and the duplicate native build is avoided. if: github.event_name == 'workflow_dispatch' runs-on: ubuntu-22.04 steps: @@ -165,8 +161,6 @@ jobs: ccache -sz bash dev/ci-velox-buildstatic-centos-7.sh ccache -s - mkdir -p /work/.m2/repository/org/apache/arrow/ - cp -r /root/.m2/repository/org/apache/arrow/* /work/.m2/repository/org/apache/arrow/ " - name: Save Ccache if: always() @@ -179,11 +173,6 @@ jobs: name: delta-spark-ut-native-lib-centos-7-${{github.sha}} path: ./cpp/build/ if-no-files-found: error - - uses: actions/upload-artifact@v4 - with: - name: delta-spark-ut-arrow-jars-centos-7-${{github.sha}} - path: .m2/repository/org/apache/arrow/ - if-no-files-found: error build-gluten-bundle: needs: build-native-lib-centos-7 @@ -207,11 +196,6 @@ jobs: restore-keys: | m2-delta-spark-ut-bundle-${{ env.GLUTEN_SPARK_PROFILE }}-${{ env.GLUTEN_SCALA_PROFILE }}- m2-delta-spark-ut-bundle- - - name: Download Arrow jars - uses: actions/download-artifact@v4 - with: - name: ${{ inputs.arrow_jars_artifact || format('delta-spark-ut-arrow-jars-centos-7-{0}', github.sha) }} - path: /root/.m2/repository/org/apache/arrow/ - name: Build Gluten Velox + Delta bundle run: | set -euo pipefail @@ -356,6 +340,9 @@ jobs: env: NUM_SHARDS: ${{ env.DELTA_NUM_SHARDS }} TEST_PARALLELISM_COUNT: ${{ steps.resolve.outputs.test_parallelism }} + SPARK_VERSION: ${{ steps.resolve.outputs.spark_version }} + UPDATE_BASELINE: ${{ steps.resolve.outputs.update_baseline }} + FAIL_ON_FIXED: ${{ steps.resolve.outputs.fail_on_fixed }} # Required by Delta to enable testing-only code paths # (see delta build.sbt: "Test / envVars += DELTA_TESTING -> 1"). DELTA_TESTING: '1' @@ -404,202 +391,9 @@ jobs: -Dfile.encoding=UTF-8 run: | set -euo pipefail - export JAVA_HOME=/usr/lib/jvm/java-17-openjdk - export PATH=$JAVA_HOME/bin:$PATH - cd "$GITHUB_WORKSPACE/delta" - chmod +x build/sbt - # Only run the unified `spark` sbt project, NOT `sparkGroup/test` -- - # `sparkGroup` aggregates many other projects (sparkV2, contribs, - # sharing, connect*, ...) that are out of scope for this pipeline. - # - # JVM heap layout -- two memory consumers on the ~16G runner: - # * sbt launcher JVM: -J-Xmx4G for the test compile, then forced to - # return idle memory during the (long) test phase via G1 periodic GC - # (G1PeriodicGCInterval=10s; G1PeriodicGCSystemLoadThreshold=0 so the - # busy fork doesn't suppress it; -XX:-G1PeriodicGCInvokesConcurrent - # forces each periodic GC to a full STW collection) that uncommits to a - # tight free ratio (Min/MaxHeapFreeRatio 5/15, JEP 346) above a low - # -Xms512m floor. - # Without this the idle launcher holds ~5.3G for the whole run; with - # it, it drops back to ~1-2G. These flags touch no Gluten/Spark runtime - # config, so they cannot affect the measured pass/fail signal. - # * Forked test JVM: -Xmx2G via the `set ... Test / javaOptions` command - # below. Delta caps its fork at -Xmx1024m in build.sbt; `++=` appends - # so our -Xmx2G comes last and wins. Gluten offloads data to Velox - # off-heap (capped at 2g via spark.memory.offHeap.size in the patched - # DeltaSQLCommandTest), so the fork's heap need is modest. A larger - # fork heap pushed the cgroup peak past the ~16G OOM threshold and the - # kernel OOM-killed the fork mid-shard (no hs_err), wedging sbt -- 2G - # keeps headroom. Keep heap-dump-on-OOM so a real >2G heap OOM is - # analyzable. - # `-u target/test-reports` enables ScalaTest's JUnit XML reporter so - # every suite writes per-test results. Delta itself only configures - # the console reporter (-oDF), so without this we'd have no machine- - # readable results to gate on. The path is relative to the forked - # test JVM's working dir (Test / baseDirectory = spark/), i.e. - # delta/spark/target/test-reports/TEST-*.xml. - # - # We deliberately do NOT let an sbt non-zero exit (which fires on the - # MANY expected Delta-on-Gluten failures) fail this step directly. - # Instead the known-failures gate below decides pass/fail: the build - # is green when the only failures are ones already recorded in the - # baseline, and red on a genuine regression. - set +e - # --- hang watchdog --------------------------------------------------- - # Shard 2 (and occasionally others) hangs indefinitely after a suite's - # last test with no further output. ScalaTest's failAfter only wraps - # individual test BODIES, so a wedge in suite teardown/afterAll -- or in - # a non-interruptible native Velox/JNI call that ignores - # Thread.interrupt() -- has no timeout and stalls until the 350-min job - # limit with zero diagnostics. This watchdog dumps the forked test JVM's - # threads (to the job log, and to a file for the artifact) once the test - # output has been silent for too long, so the deadlock is diagnosable. - SBT_LOG="/tmp/sbt-spark-test-shard-${{ matrix.shard }}.log" - : > "$SBT_LOG" - rm -f /tmp/sbt-done - ( - # CRITICAL: the step shell runs with `bash -eo pipefail`, which the - # subshell inherits. Without `set +e` here, ANY non-zero command -- - # e.g. fork detection finding no match, or `kill`/`jps` returning - # non-zero -- silently kills this watchdog. That errexit kill (plus a - # /proc detection miss) once made the watchdog capture ZERO dumps. A - # diagnostic must never abort on a failed probe. - set +e +o pipefail - JSTACK="${JAVA_HOME}/bin/jstack" - JPS="${JAVA_HOME}/bin/jps" - silent_limit=900 # 15 min with no new test output => treat as hung - dumps=0 - fork_pids() { - # The sbt test fork's main class is sbt.ForkMain. Prefer jps (reads - # the main class from hsperfdata, robust to sbt's @argfile launch); - # fall back to scanning /proc cmdline + @argfile. - "$JPS" -l 2>/dev/null | awk '/sbt\.ForkMain/ {print $1}' - local p cl arg - for p in /proc/[0-9]*; do - [ "$(cat "$p/comm" 2>/dev/null)" = "java" ] || continue - cl="$(tr '\0' ' ' < "$p/cmdline" 2>/dev/null)" - case "$cl" in *sbt.ForkMain*) echo "${p##*/}"; continue ;; esac - arg="$(printf '%s' "$cl" | tr ' ' '\n' | sed -n 's/^@//p' | head -1)" - [ -n "$arg" ] && [ -f "$arg" ] && grep -qa 'sbt\.ForkMain' "$arg" 2>/dev/null \ - && echo "${p##*/}" - done - } - all_java_pids() { - "$JPS" -q 2>/dev/null - local p - for p in /proc/[0-9]*; do - [ "$(cat "$p/comm" 2>/dev/null)" = "java" ] && echo "${p##*/}" - done - } - echo "HANG WATCHDOG armed: dumps the test JVM after ${silent_limit}s of output silence" - hb=0 - while [ ! -f /tmp/sbt-done ]; do - sleep 60 - [ -f "$SBT_LOG" ] || continue - now=$(date +%s) - mtime=$(stat -c %Y "$SBT_LOG" 2>/dev/null || echo "$now") - silent=$(( now - mtime )) - # Per-minute memory profile: heap tuning proved the ~16G OOM peak is - # NATIVE-driven, so log which JVM (sbt launcher vs fork) actually grows - # toward it -- the last lines before a hang reveal the real hog to cut. - # Read /proc directly (no `ps` dependency in the minimal container). - memnow=$(awk '{printf "%.2fG",$1/1073741824}' /sys/fs/cgroup/memory.current 2>/dev/null) - jvmrss="" - for mp in $(all_java_pids 2>/dev/null | sort -un); do - r=$(awk '/^VmRSS:/{print $2}' "/proc/$mp/status" 2>/dev/null) - [ -n "$r" ] && jvmrss="$jvmrss $(( r / 1024 ))M(p$mp)" - done - echo "MEM cgroup=${memnow} JVMs=[${jvmrss# }]" - hb=$(( hb + 1 )) - # Heartbeat every ~5 min so we can SEE the watchdog is alive (and how - # long the test has been silent) without waiting for a hang. - [ $(( hb % 5 )) -eq 0 ] && echo "HANG WATCHDOG: alive; last test output ${silent}s ago" - if [ "$silent" -ge "$silent_limit" ] && [ "$dumps" -lt 3 ]; then - dumps=$(( dumps + 1 )) - pids="$(fork_pids | sort -un)" - # Safety net: if the fork JVM cannot be pinpointed, dump EVERY JVM. - [ -n "$pids" ] || pids="$(all_java_pids | sort -un)" - echo "::group::HANG WATCHDOG: test output silent ${silent}s -- thread dump #${dumps} (pids:$(printf ' %s' $pids))" - [ -n "$pids" ] || echo "HANG WATCHDOG: no java process found to dump" - for pid in $pids; do - # SIGQUIT makes the JVM print a full thread dump to its OWN stderr, - # which sbt relays into the test log via the SAME stream as test - # output -- so it lands in the job log even when a separately - # spawned jstack child's output would be buffered/lost. Also write - # jstack to a file for the per-shard artifact. - echo "----- SIGQUIT + jstack pid ${pid} -----" - kill -QUIT "$pid" 2>/dev/null || echo "HANG WATCHDOG: kill -QUIT failed for pid ${pid}" - timeout 120 "$JSTACK" -l "$pid" > "/tmp/threaddump-shard-${{ matrix.shard }}-${dumps}-${pid}.txt" 2>&1 \ - || echo "HANG WATCHDOG: jstack failed/timed out for pid ${pid}" - done - echo "::endgroup::" - # The dump is now captured (job log via SIGQUIT + artifact via - # jstack file). A hung JVM otherwise stalls the whole shard until - # the 350-min job timeout AND keeps the job log frozen so the dump - # never becomes reachable. So KILL the wedged JVM(s): the suite - # fails fast (acceptable -- errors are expected; only an - # unrecoverable hang blocks CI), the job proceeds/ends, and the log - # + artifacts flush. Give SIGQUIT a moment to print first. - sleep 20 - echo "HANG WATCHDOG: killing wedged JVM(s) to unblock the shard: $(printf '%s ' $pids)" - for pid in $pids; do kill -KILL "$pid" 2>/dev/null; done - fi - done - ) & - WATCHDOG_PID=$! - - ./build/sbt \ - -DsparkVersion=${{ steps.resolve.outputs.spark_version }} \ - -v \ - -J-XX:+UseG1GC -J-Xms512m -J-Xmx4G \ - -J-XX:G1PeriodicGCInterval=10000 \ - -J-XX:G1PeriodicGCSystemLoadThreshold=0 \ - -J-XX:-G1PeriodicGCInvokesConcurrent \ - -J-XX:MinHeapFreeRatio=5 -J-XX:MaxHeapFreeRatio=15 \ - "++ ${DELTA_SCALA_VERSION}" \ - 'set spark / Test / javaOptions ++= Seq("-Xmx2G", "-XX:+HeapDumpOnOutOfMemoryError", "-XX:HeapDumpPath=/tmp/")' \ - 'set spark / Test / testOptions += Tests.Argument(TestFrameworks.ScalaTest, "-u", "target/test-reports")' \ - "spark/test" 2>&1 | tee "$SBT_LOG" - SBT_EXIT=${PIPESTATUS[0]} - touch /tmp/sbt-done - kill "$WATCHDOG_PID" 2>/dev/null || true - set -e - echo "sbt spark/test exited with ${SBT_EXIT}" - - # Memory forensics: a sudden forked-JVM death with no hs_err and no heap - # dump is almost always a kernel/cgroup OOM-kill (Velox off-heap + JVM - # heap exceeding the ~16G runner). Surface the cgroup peak + oom_kill - # count so we can confirm/measure it (cgroup v2 paths; best-effort). - ( echo "=== cgroup memory forensics (exit ${SBT_EXIT}) ===" - for f in /sys/fs/cgroup/memory.peak /sys/fs/cgroup/memory.max \ - /sys/fs/cgroup/memory.current /sys/fs/cgroup/memory.events; do - [ -r "$f" ] && { echo "--- $f ---"; cat "$f"; } - done ) || true - - # A compile/launch failure leaves no reports at all. In that case the - # gate would see zero failures and pass spuriously, so fail loudly. - REPORT_COUNT=$(find . -path '*/target/test-reports/*.xml' 2>/dev/null | wc -l || true) - echo "Found ${REPORT_COUNT} JUnit XML report file(s)." - if [ "${REPORT_COUNT}" -eq 0 ]; then - echo "::error::sbt produced no test reports (exit ${SBT_EXIT}) -- likely a compile or launch failure, not test failures." - exit 1 - fi - - # update_baseline=true -> SEED mode (record failures, never fail) so the - # baseline can be (re)generated. Otherwise ENFORCE against the baseline. - GATE_MODE=enforce - if [ "${{ steps.resolve.outputs.update_baseline }}" = "true" ]; then - GATE_MODE=seed - fi - mkdir -p "$GITHUB_WORKSPACE/gate-out" - python3 "$GITHUB_WORKSPACE/.github/workflows/util/delta-spark-ut/compare-test-results.py" \ - --mode "${GATE_MODE}" \ - --reports-dir "$GITHUB_WORKSPACE/delta" \ - --known-failures "$GITHUB_WORKSPACE/.github/workflows/util/delta-spark-ut/known-failures.txt" \ - --flaky-tests "$GITHUB_WORKSPACE/.github/workflows/util/delta-spark-ut/flaky-tests.txt" \ - --failures-out "$GITHUB_WORKSPACE/gate-out/failures-shard-${{ matrix.shard }}.txt" \ - --ran-out "$GITHUB_WORKSPACE/gate-out/ran-shard-${{ matrix.shard }}.txt" \ - --fail-on-fixed "${{ steps.resolve.outputs.fail_on_fixed }}" + # Run the shard's Delta tests + hang watchdog + memory forensics, then + # gate against the baseline. See util/delta-spark-ut/run-delta-tests.sh. + bash "$GITHUB_WORKSPACE/.github/workflows/util/delta-spark-ut/run-delta-tests.sh" - name: Compress heap dumps (if any) if: ${{ failure() }} diff --git a/.github/workflows/util/delta-spark-ut/README.md b/.github/workflows/util/delta-spark-ut/README.md index 5b4d65e9c63..7a40c610486 100644 --- a/.github/workflows/util/delta-spark-ut/README.md +++ b/.github/workflows/util/delta-spark-ut/README.md @@ -35,6 +35,7 @@ starts failing** (a regression). | `known-failures.txt` | Committed baseline: the tests currently expected to fail. One `#` per line. | | `flaky-tests.txt` | Quarantine list: tests whose pass/fail is non-deterministic. Ignored by the gate whether they pass or fail. `#` per line. | | `compare-test-results.py` | Parses the JUnit XML from `sbt spark/test` and gates / seeds / aggregates against the baseline. Standard-library only. | +| `run-delta-tests.sh` | The shard step's body: runs `sbt spark/test` (tuned JVM/heap flags) under a hang watchdog, prints memory forensics, then gates the results against the baseline via `compare-test-results.py`. | | `setup-delta.sh` | Clones Delta, drops in the Gluten bundle, and patches `DeltaSQLCommandTest`. | ## How the gate works diff --git a/.github/workflows/util/delta-spark-ut/run-delta-tests.sh b/.github/workflows/util/delta-spark-ut/run-delta-tests.sh new file mode 100755 index 00000000000..9d3e8981032 --- /dev/null +++ b/.github/workflows/util/delta-spark-ut/run-delta-tests.sh @@ -0,0 +1,234 @@ +#!/usr/bin/env bash + +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# +# Runs the Delta `spark` module tests for one shard under the Gluten bundle: +# arms a hang watchdog (thread-dumps + kills a wedged fork), invokes sbt +# spark/test with the tuned JVM/heap flags, prints cgroup memory forensics, and +# then gates the results against the baseline (compare-test-results.py). Extracted +# from delta_spark_ut.yml so the workflow step stays readable. +# +# Driven by environment (set by the workflow step / job): +# SHARD_ID - this shard's id (matrix.shard) +# SPARK_VERSION - Delta -DsparkVersion value +# UPDATE_BASELINE - 'true' -> gate seed mode; else enforce +# FAIL_ON_FIXED - passed through to the gate +# DELTA_SCALA_VERSION, NUM_SHARDS, TEST_PARALLELISM_COUNT, DELTA_TESTING, +# JAVA_TOOL_OPTIONS - test env (see the workflow step's `env:` block) +# GITHUB_WORKSPACE - repo root (holds the Delta clone + util scripts) +# + +set -euo pipefail +export JAVA_HOME=/usr/lib/jvm/java-17-openjdk +export PATH=$JAVA_HOME/bin:$PATH +cd "$GITHUB_WORKSPACE/delta" +chmod +x build/sbt +# Only run the unified `spark` sbt project, NOT `sparkGroup/test` -- +# `sparkGroup` aggregates many other projects (sparkV2, contribs, +# sharing, connect*, ...) that are out of scope for this pipeline. +# +# JVM heap layout -- two memory consumers on the ~16G runner: +# * sbt launcher JVM: -J-Xmx4G for the test compile, then forced to +# return idle memory during the (long) test phase via G1 periodic GC +# (G1PeriodicGCInterval=10s; G1PeriodicGCSystemLoadThreshold=0 so the +# busy fork doesn't suppress it; -XX:-G1PeriodicGCInvokesConcurrent +# forces each periodic GC to a full STW collection) that uncommits to a +# tight free ratio (Min/MaxHeapFreeRatio 5/15, JEP 346) above a low +# -Xms512m floor. +# Without this the idle launcher holds ~5.3G for the whole run; with +# it, it drops back to ~1-2G. These flags touch no Gluten/Spark runtime +# config, so they cannot affect the measured pass/fail signal. +# * Forked test JVM: -Xmx2G via the `set ... Test / javaOptions` command +# below. Delta caps its fork at -Xmx1024m in build.sbt; `++=` appends +# so our -Xmx2G comes last and wins. Gluten offloads data to Velox +# off-heap (capped at 2g via spark.memory.offHeap.size in the patched +# DeltaSQLCommandTest), so the fork's heap need is modest. A larger +# fork heap pushed the cgroup peak past the ~16G OOM threshold and the +# kernel OOM-killed the fork mid-shard (no hs_err), wedging sbt -- 2G +# keeps headroom. Keep heap-dump-on-OOM so a real >2G heap OOM is +# analyzable. +# `-u target/test-reports` enables ScalaTest's JUnit XML reporter so +# every suite writes per-test results. Delta itself only configures +# the console reporter (-oDF), so without this we'd have no machine- +# readable results to gate on. The path is relative to the forked +# test JVM's working dir (Test / baseDirectory = spark/), i.e. +# delta/spark/target/test-reports/TEST-*.xml. +# +# We deliberately do NOT let an sbt non-zero exit (which fires on the +# MANY expected Delta-on-Gluten failures) fail this step directly. +# Instead the known-failures gate below decides pass/fail: the build +# is green when the only failures are ones already recorded in the +# baseline, and red on a genuine regression. +set +e +# --- hang watchdog --------------------------------------------------- +# Shard 2 (and occasionally others) hangs indefinitely after a suite's +# last test with no further output. ScalaTest's failAfter only wraps +# individual test BODIES, so a wedge in suite teardown/afterAll -- or in +# a non-interruptible native Velox/JNI call that ignores +# Thread.interrupt() -- has no timeout and stalls until the 350-min job +# limit with zero diagnostics. This watchdog dumps the forked test JVM's +# threads (to the job log, and to a file for the artifact) once the test +# output has been silent for too long, so the deadlock is diagnosable. +SBT_LOG="/tmp/sbt-spark-test-shard-${SHARD_ID}.log" +: > "$SBT_LOG" +rm -f /tmp/sbt-done +( + # CRITICAL: the step shell runs with `bash -eo pipefail`, which the + # subshell inherits. Without `set +e` here, ANY non-zero command -- + # e.g. fork detection finding no match, or `kill`/`jps` returning + # non-zero -- silently kills this watchdog. That errexit kill (plus a + # /proc detection miss) once made the watchdog capture ZERO dumps. A + # diagnostic must never abort on a failed probe. + set +e +o pipefail + JSTACK="${JAVA_HOME}/bin/jstack" + JPS="${JAVA_HOME}/bin/jps" + silent_limit=900 # 15 min with no new test output => treat as hung + dumps=0 + fork_pids() { + # The sbt test fork's main class is sbt.ForkMain. Prefer jps (reads + # the main class from hsperfdata, robust to sbt's @argfile launch); + # fall back to scanning /proc cmdline + @argfile. + "$JPS" -l 2>/dev/null | awk '/sbt\.ForkMain/ {print $1}' + local p cl arg + for p in /proc/[0-9]*; do + [ "$(cat "$p/comm" 2>/dev/null)" = "java" ] || continue + cl="$(tr '\0' ' ' < "$p/cmdline" 2>/dev/null)" + case "$cl" in *sbt.ForkMain*) echo "${p##*/}"; continue ;; esac + arg="$(printf '%s' "$cl" | tr ' ' '\n' | sed -n 's/^@//p' | head -1)" + [ -n "$arg" ] && [ -f "$arg" ] && grep -qa 'sbt\.ForkMain' "$arg" 2>/dev/null \ + && echo "${p##*/}" + done + } + all_java_pids() { + "$JPS" -q 2>/dev/null + local p + for p in /proc/[0-9]*; do + [ "$(cat "$p/comm" 2>/dev/null)" = "java" ] && echo "${p##*/}" + done + } + echo "HANG WATCHDOG armed: dumps the test JVM after ${silent_limit}s of output silence" + hb=0 + while [ ! -f /tmp/sbt-done ]; do + sleep 60 + [ -f "$SBT_LOG" ] || continue + now=$(date +%s) + mtime=$(stat -c %Y "$SBT_LOG" 2>/dev/null || echo "$now") + silent=$(( now - mtime )) + # Per-minute memory profile: heap tuning proved the ~16G OOM peak is + # NATIVE-driven, so log which JVM (sbt launcher vs fork) actually grows + # toward it -- the last lines before a hang reveal the real hog to cut. + # Read /proc directly (no `ps` dependency in the minimal container). + memnow=$(awk '{printf "%.2fG",$1/1073741824}' /sys/fs/cgroup/memory.current 2>/dev/null) + jvmrss="" + for mp in $(all_java_pids 2>/dev/null | sort -un); do + r=$(awk '/^VmRSS:/{print $2}' "/proc/$mp/status" 2>/dev/null) + [ -n "$r" ] && jvmrss="$jvmrss $(( r / 1024 ))M(p$mp)" + done + echo "MEM cgroup=${memnow} JVMs=[${jvmrss# }]" + hb=$(( hb + 1 )) + # Heartbeat every ~5 min so we can SEE the watchdog is alive (and how + # long the test has been silent) without waiting for a hang. + [ $(( hb % 5 )) -eq 0 ] && echo "HANG WATCHDOG: alive; last test output ${silent}s ago" + if [ "$silent" -ge "$silent_limit" ] && [ "$dumps" -lt 3 ]; then + dumps=$(( dumps + 1 )) + pids="$(fork_pids | sort -un)" + # Safety net: if the fork JVM cannot be pinpointed, dump EVERY JVM. + [ -n "$pids" ] || pids="$(all_java_pids | sort -un)" + echo "::group::HANG WATCHDOG: test output silent ${silent}s -- thread dump #${dumps} (pids:$(printf ' %s' $pids))" + [ -n "$pids" ] || echo "HANG WATCHDOG: no java process found to dump" + for pid in $pids; do + # SIGQUIT makes the JVM print a full thread dump to its OWN stderr, + # which sbt relays into the test log via the SAME stream as test + # output -- so it lands in the job log even when a separately + # spawned jstack child's output would be buffered/lost. Also write + # jstack to a file for the per-shard artifact. + echo "----- SIGQUIT + jstack pid ${pid} -----" + kill -QUIT "$pid" 2>/dev/null || echo "HANG WATCHDOG: kill -QUIT failed for pid ${pid}" + timeout 120 "$JSTACK" -l "$pid" > "/tmp/threaddump-shard-${SHARD_ID}-${dumps}-${pid}.txt" 2>&1 \ + || echo "HANG WATCHDOG: jstack failed/timed out for pid ${pid}" + done + echo "::endgroup::" + # The dump is now captured (job log via SIGQUIT + artifact via + # jstack file). A hung JVM otherwise stalls the whole shard until + # the 350-min job timeout AND keeps the job log frozen so the dump + # never becomes reachable. So KILL the wedged JVM(s): the suite + # fails fast (acceptable -- errors are expected; only an + # unrecoverable hang blocks CI), the job proceeds/ends, and the log + # + artifacts flush. Give SIGQUIT a moment to print first. + sleep 20 + echo "HANG WATCHDOG: killing wedged JVM(s) to unblock the shard: $(printf '%s ' $pids)" + for pid in $pids; do kill -KILL "$pid" 2>/dev/null; done + fi + done +) & +WATCHDOG_PID=$! + +./build/sbt \ + -DsparkVersion=${SPARK_VERSION} \ + -v \ + -J-XX:+UseG1GC -J-Xms512m -J-Xmx4G \ + -J-XX:G1PeriodicGCInterval=10000 \ + -J-XX:G1PeriodicGCSystemLoadThreshold=0 \ + -J-XX:-G1PeriodicGCInvokesConcurrent \ + -J-XX:MinHeapFreeRatio=5 -J-XX:MaxHeapFreeRatio=15 \ + "++ ${DELTA_SCALA_VERSION}" \ + 'set spark / Test / javaOptions ++= Seq("-Xmx2G", "-XX:+HeapDumpOnOutOfMemoryError", "-XX:HeapDumpPath=/tmp/")' \ + 'set spark / Test / testOptions += Tests.Argument(TestFrameworks.ScalaTest, "-u", "target/test-reports")' \ + "spark/test" 2>&1 | tee "$SBT_LOG" +SBT_EXIT=${PIPESTATUS[0]} +touch /tmp/sbt-done +kill "$WATCHDOG_PID" 2>/dev/null || true +set -e +echo "sbt spark/test exited with ${SBT_EXIT}" + +# Memory forensics: a sudden forked-JVM death with no hs_err and no heap +# dump is almost always a kernel/cgroup OOM-kill (Velox off-heap + JVM +# heap exceeding the ~16G runner). Surface the cgroup peak + oom_kill +# count so we can confirm/measure it (cgroup v2 paths; best-effort). +( echo "=== cgroup memory forensics (exit ${SBT_EXIT}) ===" + for f in /sys/fs/cgroup/memory.peak /sys/fs/cgroup/memory.max \ + /sys/fs/cgroup/memory.current /sys/fs/cgroup/memory.events; do + [ -r "$f" ] && { echo "--- $f ---"; cat "$f"; } + done ) || true + +# A compile/launch failure leaves no reports at all. In that case the +# gate would see zero failures and pass spuriously, so fail loudly. +REPORT_COUNT=$(find . -path '*/target/test-reports/*.xml' 2>/dev/null | wc -l || true) +echo "Found ${REPORT_COUNT} JUnit XML report file(s)." +if [ "${REPORT_COUNT}" -eq 0 ]; then + echo "::error::sbt produced no test reports (exit ${SBT_EXIT}) -- likely a compile or launch failure, not test failures." + exit 1 +fi + +# Classify this shard's results against the baseline: seed mode when +# UPDATE_BASELINE=true (record failures, never fail) so the baseline can be +# (re)generated; otherwise enforce against it. Writes this shard's gate-out/*.txt +# for the aggregate job. +UTIL_DIR="$GITHUB_WORKSPACE/.github/workflows/util/delta-spark-ut" +GATE_MODE=enforce +if [ "${UPDATE_BASELINE}" = "true" ]; then + GATE_MODE=seed +fi +mkdir -p "$GITHUB_WORKSPACE/gate-out" +python3 "$UTIL_DIR/compare-test-results.py" \ + --mode "$GATE_MODE" \ + --reports-dir "$GITHUB_WORKSPACE/delta" \ + --known-failures "$UTIL_DIR/known-failures.txt" \ + --flaky-tests "$UTIL_DIR/flaky-tests.txt" \ + --failures-out "$GITHUB_WORKSPACE/gate-out/failures-shard-${SHARD_ID}.txt" \ + --ran-out "$GITHUB_WORKSPACE/gate-out/ran-shard-${SHARD_ID}.txt" \ + --fail-on-fixed "${FAIL_ON_FIXED}" diff --git a/.github/workflows/velox_backend_x86.yml b/.github/workflows/velox_backend_x86.yml index 85f0f8087b5..8e57e3d603f 100644 --- a/.github/workflows/velox_backend_x86.yml +++ b/.github/workflows/velox_backend_x86.yml @@ -84,10 +84,6 @@ jobs: ccache -sz bash dev/ci-velox-buildstatic-centos-7.sh ccache -s - # Stage the custom-built org.apache.arrow jars so the reusable Delta - # workflow's bundle build can consume them (see delta-spark-ut job). - mkdir -p /work/.m2/repository/org/apache/arrow/ - cp -r /root/.m2/repository/org/apache/arrow/* /work/.m2/repository/org/apache/arrow/ " - name: "Save ccache" @@ -102,23 +98,16 @@ jobs: name: velox-native-lib-centos-7-${{github.sha}} path: ./cpp/build/ if-no-files-found: error - # Consumed by the reusable Delta workflow (delta-spark-ut job). - - uses: actions/upload-artifact@v4 - with: - name: velox-arrow-jars-centos-7-${{github.sha}} - path: .m2/repository/org/apache/arrow/ - if-no-files-found: error - # Delta Spark UT, run via the reusable workflow so it reuses the native lib + - # arrow jars built above instead of duplicating the native build. Not gated on - # Delta-only paths: core/velox/substrait/cpp/shims changes can affect Delta - # query offload, so this runs on every trigger like the other spark-test jobs. + # Delta Spark UT, run via the reusable workflow so it reuses the native lib + # built above instead of duplicating the native build. Not gated on Delta-only + # paths: core/velox/substrait/cpp/shims changes can affect Delta query offload, + # so this runs on every trigger like the other spark-test jobs. delta-spark-ut: needs: build-native-lib-centos-7 uses: ./.github/workflows/delta_spark_ut.yml with: native_lib_artifact: velox-native-lib-centos-7-${{ github.sha }} - arrow_jars_artifact: velox-arrow-jars-centos-7-${{ github.sha }} tpc-test-ubuntu: needs: build-native-lib-centos-7 From b5f3b0075a696ee231caa564edc049d059c9245d Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Thu, 9 Jul 2026 07:33:43 +0000 Subject: [PATCH 14/24] [CI] Share Delta test JVM flags via java-test-args.sh for local runs The Gluten/JDK17 test JVM flags (--add-opens + the Netty reflection property, mirroring root pom.xml's extraJavaTestArgs) lived only in the workflow step's env: block, so a developer running the Delta suite locally had no shared source for them. Move them into util/delta-spark-ut/java-test-args.sh, which exports JAVA_TOOL_OPTIONS. run-delta-tests.sh sources it (via a BASH_SOURCE- relative path so it also works for local runs), and the workflow env block no longer sets JAVA_TOOL_OPTIONS. A developer can source the same file before `sbt spark/test` to get identical flags; README documents it. Faithful: the sourced value is byte-identical to the previous env-block value (verified), and an end-to-end run with a stubbed sbt confirms the forked test JVM still receives all 18 flags with JAVA_TOOL_OPTIONS unset in the environment. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .github/workflows/delta_spark_ut.yml | 46 +------------- .../workflows/util/delta-spark-ut/README.md | 17 ++++++ .../util/delta-spark-ut/java-test-args.sh | 60 +++++++++++++++++++ .../util/delta-spark-ut/run-delta-tests.sh | 9 ++- 4 files changed, 87 insertions(+), 45 deletions(-) create mode 100755 .github/workflows/util/delta-spark-ut/java-test-args.sh diff --git a/.github/workflows/delta_spark_ut.yml b/.github/workflows/delta_spark_ut.yml index 32919cb785c..ad5e74d860f 100644 --- a/.github/workflows/delta_spark_ut.yml +++ b/.github/workflows/delta_spark_ut.yml @@ -346,49 +346,9 @@ jobs: # Required by Delta to enable testing-only code paths # (see delta build.sbt: "Test / envVars += DELTA_TESTING -> 1"). DELTA_TESTING: '1' - # JDK 17 + Gluten/Arrow/Netty requires extra --add-opens and the - # `io.netty.tryReflectionSetAccessible` system property; otherwise - # the forked test JVM fails with - # java.lang.UnsupportedOperationException: sun.misc.Unsafe or - # java.nio.DirectByteBuffer.(long, int) not available - # as soon as Gluten's bundled Arrow allocator initializes Netty - # direct buffers. Delta's own `Test / javaOptions` (see - # project/CrossSparkVersions.scala `java17TestSettings`) sets the - # base add-opens but NOT the Netty property -- Delta's own tests - # don't load Arrow/Netty buffers in a way that triggers it. - # - # Use JAVA_TOOL_OPTIONS so the flags propagate to BOTH the sbt - # launcher JVM and the forked test JVM (sbt forks tests and the - # child inherits the parent's env). The set below mirrors - # `extraJavaTestArgs` from Gluten's own root pom.xml (the - # canonical Gluten test JVM flag set). - # - # NOTE: we deliberately do NOT put `-Xmx` here. JAVA_TOOL_OPTIONS - # is processed BEFORE the JVM command line, so Delta's explicit - # `-Xmx1024m` (set in build.sbt `Test / javaOptions`) would still - # win (last `-Xmx` wins). The forked-test-JVM heap is bumped via - # an sbt `set spark / Test / javaOptions ++= ...` command below, - # which APPENDS to Delta's own seq -- so our `-Xmx` lands AFTER - # `-Xmx1024m` and wins. - JAVA_TOOL_OPTIONS: >- - -XX:+IgnoreUnrecognizedVMOptions - --add-opens=java.base/java.lang=ALL-UNNAMED - --add-opens=java.base/java.lang.invoke=ALL-UNNAMED - --add-opens=java.base/java.lang.reflect=ALL-UNNAMED - --add-opens=java.base/java.io=ALL-UNNAMED - --add-opens=java.base/java.net=ALL-UNNAMED - --add-opens=java.base/java.nio=ALL-UNNAMED - --add-opens=java.base/java.util=ALL-UNNAMED - --add-opens=java.base/java.util.concurrent=ALL-UNNAMED - --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED - --add-opens=java.base/jdk.internal.ref=ALL-UNNAMED - --add-opens=java.base/sun.nio.ch=ALL-UNNAMED - --add-opens=java.base/sun.nio.cs=ALL-UNNAMED - --add-opens=java.base/sun.security.action=ALL-UNNAMED - --add-opens=java.base/sun.util.calendar=ALL-UNNAMED - -Djdk.reflect.useDirectMethodHandle=false - -Dio.netty.tryReflectionSetAccessible=true - -Dfile.encoding=UTF-8 + # NOTE: the Gluten/JDK17 test JVM flags (JAVA_TOOL_OPTIONS) live in + # util/delta-spark-ut/java-test-args.sh, which run-delta-tests.sh sources, + # so CI and local dev runs share one definition. run: | set -euo pipefail # Run the shard's Delta tests + hang watchdog + memory forensics, then diff --git a/.github/workflows/util/delta-spark-ut/README.md b/.github/workflows/util/delta-spark-ut/README.md index 7a40c610486..dc962c75ba4 100644 --- a/.github/workflows/util/delta-spark-ut/README.md +++ b/.github/workflows/util/delta-spark-ut/README.md @@ -36,6 +36,7 @@ starts failing** (a regression). | `flaky-tests.txt` | Quarantine list: tests whose pass/fail is non-deterministic. Ignored by the gate whether they pass or fail. `#` per line. | | `compare-test-results.py` | Parses the JUnit XML from `sbt spark/test` and gates / seeds / aggregates against the baseline. Standard-library only. | | `run-delta-tests.sh` | The shard step's body: runs `sbt spark/test` (tuned JVM/heap flags) under a hang watchdog, prints memory forensics, then gates the results against the baseline via `compare-test-results.py`. | +| `java-test-args.sh` | Shared JVM flags (`--add-opens` + Netty property) needed to run the suite on JDK 17 with the Gluten bundle. Sourced by `run-delta-tests.sh` and by local runs. | | `setup-delta.sh` | Clones Delta, drops in the Gluten bundle, and patches `DeltaSQLCommandTest`. | ## How the gate works @@ -144,3 +145,19 @@ python3 .github/workflows/util/delta-spark-ut/compare-test-results.py \ --flaky-tests .github/workflows/util/delta-spark-ut/flaky-tests.txt \ --failures-out /tmp/failures.txt --ran-out /tmp/ran.txt ``` + +## Running the suite locally + +`sbt spark/test` needs extra JDK-17 JVM flags to run the Delta suite against the +Gluten bundle (`--add-opens` + the Netty reflection property). CI and local runs +share one definition in `java-test-args.sh` — `source` it before invoking sbt so +the flags reach the sbt launcher and the forked test JVM: + +```bash +# from the Delta clone prepared by setup-delta.sh (which has the Gluten bundle): +source /.github/workflows/util/delta-spark-ut/java-test-args.sh +./build/sbt "++ 2.13.16" spark/test # or a single suite via testOnly +``` + +`run-delta-tests.sh` sources the same file, so CI and local runs use identical +flags. diff --git a/.github/workflows/util/delta-spark-ut/java-test-args.sh b/.github/workflows/util/delta-spark-ut/java-test-args.sh new file mode 100755 index 00000000000..94b3246a9fa --- /dev/null +++ b/.github/workflows/util/delta-spark-ut/java-test-args.sh @@ -0,0 +1,60 @@ +#!/usr/bin/env bash + +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# +# Shared JVM options for running delta-io/delta's `spark` ScalaTest suite against +# the Gluten Velox bundle. SOURCE this file (don't execute it) before invoking +# `sbt spark/test`, in CI (run-delta-tests.sh) and locally: +# +# source .github/workflows/util/delta-spark-ut/java-test-args.sh +# ./build/sbt ... spark/test # in the Delta clone +# +# Why these are needed: JDK 17 + Gluten/Arrow/Netty requires extra --add-opens and +# the `io.netty.tryReflectionSetAccessible` property; otherwise the forked test JVM +# fails with "sun.misc.Unsafe or java.nio.DirectByteBuffer.(long, int) not +# available" as soon as Gluten's bundled Arrow allocator initializes Netty direct +# buffers. Delta's own `Test / javaOptions` (project/CrossSparkVersions.scala +# `java17TestSettings`) sets the base add-opens but NOT the Netty property. This set +# mirrors `extraJavaTestArgs` in Gluten's root pom.xml. +# +# Exported via JAVA_TOOL_OPTIONS (not sbt's .jvmopts/.sbtopts, which only configure +# the sbt LAUNCHER JVM) so the flags reach BOTH the launcher and the forked test JVM +# -- the forked child inherits the parent env. +# +# NOTE: no -Xmx here on purpose. JAVA_TOOL_OPTIONS is processed BEFORE the JVM +# command line, so Delta's own -Xmx (build.sbt) would win; run-delta-tests.sh bumps +# the forked-test-JVM heap via `set spark / Test / javaOptions ++= ...` instead. + +export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS:+${JAVA_TOOL_OPTIONS} }\ +-XX:+IgnoreUnrecognizedVMOptions \ +--add-opens=java.base/java.lang=ALL-UNNAMED \ +--add-opens=java.base/java.lang.invoke=ALL-UNNAMED \ +--add-opens=java.base/java.lang.reflect=ALL-UNNAMED \ +--add-opens=java.base/java.io=ALL-UNNAMED \ +--add-opens=java.base/java.net=ALL-UNNAMED \ +--add-opens=java.base/java.nio=ALL-UNNAMED \ +--add-opens=java.base/java.util=ALL-UNNAMED \ +--add-opens=java.base/java.util.concurrent=ALL-UNNAMED \ +--add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED \ +--add-opens=java.base/jdk.internal.ref=ALL-UNNAMED \ +--add-opens=java.base/sun.nio.ch=ALL-UNNAMED \ +--add-opens=java.base/sun.nio.cs=ALL-UNNAMED \ +--add-opens=java.base/sun.security.action=ALL-UNNAMED \ +--add-opens=java.base/sun.util.calendar=ALL-UNNAMED \ +-Djdk.reflect.useDirectMethodHandle=false \ +-Dio.netty.tryReflectionSetAccessible=true \ +-Dfile.encoding=UTF-8" diff --git a/.github/workflows/util/delta-spark-ut/run-delta-tests.sh b/.github/workflows/util/delta-spark-ut/run-delta-tests.sh index 9d3e8981032..72f39ec01cc 100755 --- a/.github/workflows/util/delta-spark-ut/run-delta-tests.sh +++ b/.github/workflows/util/delta-spark-ut/run-delta-tests.sh @@ -27,14 +27,19 @@ # SPARK_VERSION - Delta -DsparkVersion value # UPDATE_BASELINE - 'true' -> gate seed mode; else enforce # FAIL_ON_FIXED - passed through to the gate -# DELTA_SCALA_VERSION, NUM_SHARDS, TEST_PARALLELISM_COUNT, DELTA_TESTING, -# JAVA_TOOL_OPTIONS - test env (see the workflow step's `env:` block) +# DELTA_SCALA_VERSION, NUM_SHARDS, TEST_PARALLELISM_COUNT, DELTA_TESTING +# - test env (see the workflow step's `env:` block) # GITHUB_WORKSPACE - repo root (holds the Delta clone + util scripts) # +# JAVA_TOOL_OPTIONS is set by sourcing java-test-args.sh (below), not the caller. set -euo pipefail export JAVA_HOME=/usr/lib/jvm/java-17-openjdk export PATH=$JAVA_HOME/bin:$PATH +# Gluten/JDK17 test JVM flags (--add-opens + Netty property), shared with local +# dev runs. Sets JAVA_TOOL_OPTIONS so it reaches the sbt launcher + forked JVMs. +# shellcheck source=./java-test-args.sh +source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/java-test-args.sh" cd "$GITHUB_WORKSPACE/delta" chmod +x build/sbt # Only run the unified `spark` sbt project, NOT `sparkGroup/test` -- From e457d133596937b14c2e0879d607b5509d9588e8 Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Thu, 9 Jul 2026 18:38:10 +0000 Subject: [PATCH 15/24] [CI] Quarantine flaky Delta failures by error signature, not test name The native Delta DV bitmap row-index bug (RoaringBitmapArray aborting on a Long.MAX_VALUE row index during a MERGE that writes deletion vectors) is intermittent and lands on a DIFFERENT *DVs*Suite MERGE test each run, so listing every test in flaky-tests.txt was whack-a-mole (6 entries and counting). Add error-signature quarantine: the gate now records each failed test's JUnit / text, and flaky-error-patterns.txt holds regexes matched against it. A failure matching a pattern is treated as flaky regardless of which test it hit -- neither counted as a regression nor written to the shard's failures list (so it can't leak into the regenerated baseline). Seeded with the RoaringBitmapArray signature. This is more precise than a name glob: a different real failure in the same DV suite is still caught, because only failures carrying the signature are ignored. The six *DVs*Suite name entries are removed from flaky-tests.txt (superseded); the name mechanism stays for flakes without a distinctive error signature. Verified against a real failing shard report: the DV failure is a regression without the patterns file and quarantined (gate green) with it. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../workflows/util/delta-spark-ut/README.md | 28 ++++- .../delta-spark-ut/compare-test-results.py | 105 ++++++++++++++++-- .../delta-spark-ut/flaky-error-patterns.txt | 28 +++++ .../util/delta-spark-ut/flaky-tests.txt | 20 +--- .../util/delta-spark-ut/run-delta-tests.sh | 1 + 5 files changed, 152 insertions(+), 30 deletions(-) create mode 100644 .github/workflows/util/delta-spark-ut/flaky-error-patterns.txt diff --git a/.github/workflows/util/delta-spark-ut/README.md b/.github/workflows/util/delta-spark-ut/README.md index dc962c75ba4..54581dbdf64 100644 --- a/.github/workflows/util/delta-spark-ut/README.md +++ b/.github/workflows/util/delta-spark-ut/README.md @@ -33,7 +33,8 @@ starts failing** (a regression). | File | Purpose | |---|---| | `known-failures.txt` | Committed baseline: the tests currently expected to fail. One `#` per line. | -| `flaky-tests.txt` | Quarantine list: tests whose pass/fail is non-deterministic. Ignored by the gate whether they pass or fail. `#` per line. | +| `flaky-tests.txt` | Quarantine list by test name: tests whose pass/fail is non-deterministic. Ignored by the gate whether they pass or fail. `#` per line. | +| `flaky-error-patterns.txt` | Quarantine list by error signature: regex patterns matched against a failure's text, for bugs that surface on a different test each run (e.g. the native DV bitmap row-index error). | | `compare-test-results.py` | Parses the JUnit XML from `sbt spark/test` and gates / seeds / aggregates against the baseline. Standard-library only. | | `run-delta-tests.sh` | The shard step's body: runs `sbt spark/test` (tuned JVM/heap flags) under a hang watchdog, prints memory forensics, then gates the results against the baseline via `compare-test-results.py`. | | `java-test-args.sh` | Shared JVM flags (`--add-opens` + Netty property) needed to run the suite on JDK 17 with the Gluten bundle. Sourced by `run-delta-tests.sh` and by local runs. | @@ -124,9 +125,28 @@ and blank lines allowed: contain glob metacharacters), so a same-named test in a non-matching suite is still gated normally. -Quarantining is an **interim** measure — it hides a real bug from CI. Each entry -should reference the tracking issue, and be removed once the underlying bug is -fixed so the test is enforced again. +### Quarantine by error signature + +Some bugs surface on a **different test each run** — for example the native Delta +DV bitmap row-index error (`RoaringBitmapArray ... exceeds max representable +value`, a `Long.MAX_VALUE` written during a MERGE that writes deletion vectors) +lands on a different `*DVs*Suite` MERGE test every time. Chasing those by name is +whack-a-mole, so quarantine them by **root cause** in **`flaky-error-patterns.txt`** +instead: each line is a regex matched against a failed test's ``/`` +text. Any failure that matches is treated as flaky regardless of which test it hit +(and is dropped from the shard's failures list so it can't leak into the baseline): + +``` +# regex matched against the failure message + stack (enforce mode). +Delta RoaringBitmapArray row index \d+ exceeds max representable value +``` + +This is more precise than a name glob: a *different* real failure in the same +suite is still caught, because only failures carrying the signature are ignored. + +Quarantining (either kind) is an **interim** measure — it hides a real bug from +CI. Each entry should reference the tracking issue, and be removed once the +underlying bug is fixed so the test is enforced again. ## Caveats diff --git a/.github/workflows/util/delta-spark-ut/compare-test-results.py b/.github/workflows/util/delta-spark-ut/compare-test-results.py index d1086dca7d9..959226a90c0 100644 --- a/.github/workflows/util/delta-spark-ut/compare-test-results.py +++ b/.github/workflows/util/delta-spark-ut/compare-test-results.py @@ -63,6 +63,14 @@ Its SUITE is an fnmatch glob (so one line covers a root-cause family across generated suite variants); its TEST name is matched exactly. +Flaky quarantine by error signature (``--flaky-error-patterns``) + When a failure is caused by a known nondeterministic bug that surfaces on a + *different test each run* (e.g. the native Delta DV bitmap row-index error), + matching by test name is whack-a-mole. ``flaky-error-patterns.txt`` instead + quarantines by root cause: each line is a regex matched against a failed + test's / text, and any failure that matches is treated as + flaky regardless of which test it landed on. + Baseline file format (``known-failures.txt``):: # comment lines start with '#' @@ -174,6 +182,38 @@ def is_flaky(entry): return is_flaky +def load_patterns(path): + """Load flaky-error regex patterns from a file (one per line). + + Blank lines and ``#`` comments are ignored. Each remaining line is compiled + as a case-sensitive regex. These match the FAILURE TEXT of a failed test + (its JUnit / message + stack), so a test that fails with a + known-nondeterministic native error (e.g. the Delta DV bitmap row-index bug) + can be quarantined by root cause instead of by exact test name. + """ + patterns = [] + if not path or not os.path.exists(path): + return patterns + with open(path, encoding="utf-8") as fh: + for line in fh: + line = line.rstrip("\n") + if not line.strip() or line.lstrip().startswith("#"): + continue + patterns.append(re.compile(line)) + return patterns + + +def make_signature_matcher(patterns): + """Return a predicate matching a failure text against any flaky-error pattern.""" + + def matches(text): + if not text: + return False + return any(p.search(text) for p in patterns) + + return matches + + def write_entries(path, entries, header=None): """Write a sorted set of (suite, test) tuples to a file.""" os.makedirs(os.path.dirname(os.path.abspath(path)) or ".", exist_ok=True) @@ -206,16 +246,33 @@ def _child_local_tags(elem): return {c.tag.split("}")[-1] for c in elem} +def _failure_text(tc): + """Concatenate the message attribute + body text of a testcase's + / children, for error-signature matching.""" + parts = [] + for c in tc: + if c.tag.split("}")[-1] in ("failure", "error"): + msg = c.get("message") + if msg: + parts.append(msg) + if c.text: + parts.append(c.text) + return "\n".join(parts) + + def parse_reports(reports_dir): """Walk reports_dir for JUnit XML and classify every test. - Returns (passed, failed, skipped) sets of (suite, test) tuples. A test is - 'failed' if its has a or child, 'skipped' if - it has a child, otherwise 'passed'. Suite-level aborts (a - reporting errors/failures with no failing ) are - recorded as a synthetic (suite, SUITE_ABORTED) failure. + Returns (passed, failed, skipped, fail_texts). The first three are sets of + (suite, test) tuples; fail_texts maps each failed (suite, test) to its + combined / message + stack text (used for error-signature + quarantine). A test is 'failed' if its has a or + child, 'skipped' if it has a child, otherwise 'passed'. Suite-level + aborts (a reporting errors/failures with no failing ) + are recorded as a synthetic (suite, SUITE_ABORTED) failure. """ passed, failed, skipped = set(), set(), set() + fail_texts = {} xml_files = [] # ScalaTest's -u reporter and Maven surefire both write `TEST-.xml` @@ -263,6 +320,7 @@ def parse_reports(reports_dir): if "failure" in tags or "error" in tags: failed.add(key) suite_has_failing_tc = True + fail_texts[key] = _failure_text(tc) elif "skipped" in tags: skipped.add(key) else: @@ -294,7 +352,7 @@ def parse_reports(reports_dir): passed -= failed skipped -= failed skipped -= passed - return passed, failed, skipped + return passed, failed, skipped, fail_texts # --------------------------------------------------------------------------- # @@ -348,16 +406,30 @@ def run_enforce(args): ) return 2 baseline = load_entries(args.known_failures) - flaky_is = make_is_flaky(load_entries(args.flaky_tests)) + name_flaky = make_is_flaky(load_entries(args.flaky_tests)) + sig_matches = make_signature_matcher(load_patterns(args.flaky_error_patterns)) try: - passed, failed, skipped = parse_reports(args.reports_dir) + passed, failed, skipped, fail_texts = parse_reports(args.reports_dir) except NoReportsError as exc: eprint("ERROR: {}".format(exc)) return 2 - # Always emit this shard's artifacts for the aggregation job. + # A test is quarantined if its NAME is in flaky-tests.txt, or its failure + # TEXT matches a flaky-error signature (e.g. the native DV bitmap row-index + # bug that hits a different DV-merge test each run). + def sig_flaky(e): + return e in fail_texts and sig_matches(fail_texts[e]) + + def flaky_is(e): + return name_flaky(e) or sig_flaky(e) + + # Always emit this shard's artifacts for the aggregation job. Signature-flaky + # failures are dropped from failures-out: the aggregate job works off these + # text-less lists and cannot re-derive the signature match, so excluding them + # here keeps the regenerated baseline from absorbing a flaky failure. Name- + # flaky entries stay (the aggregate re-filters them via flaky-tests.txt). if args.failures_out: - write_entries(args.failures_out, failed) + write_entries(args.failures_out, {e for e in failed if not sig_flaky(e)}) if args.ran_out: write_entries(args.ran_out, passed | failed) @@ -425,7 +497,7 @@ def run_enforce(args): _print_block( write, - "Quarantined flaky failures -- ignored (see flaky-tests.txt)", + "Quarantined flaky failures -- ignored (flaky-tests.txt + flaky-error-patterns.txt)", quarantined, ) @@ -581,7 +653,7 @@ def run_aggregate(args): _print_block(write, "Now-passing (global)", fixed) _print_block( write, - "Quarantined flaky failures -- ignored (see flaky-tests.txt)", + "Quarantined flaky failures -- ignored (flaky-tests.txt + flaky-error-patterns.txt)", quarantined, ) _print_block(write, "Stale baseline entries (suite/test gone)", stale) @@ -617,6 +689,15 @@ def main(argv=None): "now-passing when it passes, and is excluded from the regenerated baseline " "(aggregate mode). Optional; omitting it disables quarantining.", ) + parser.add_argument( + "--flaky-error-patterns", + help="Path to flaky-error-patterns.txt: regex patterns matched against a " + "failed test's / text (enforce mode). A failure that " + "matches is quarantined by root cause -- neither a regression nor written " + "to this shard's failures list -- so a nondeterministic native error (e.g. " + "the DV bitmap row-index bug) is ignored on whichever test it lands. " + "Optional.", + ) parser.add_argument( "--reports-dir", help="Root dir to search for JUnit XML (enforce/seed)." ) diff --git a/.github/workflows/util/delta-spark-ut/flaky-error-patterns.txt b/.github/workflows/util/delta-spark-ut/flaky-error-patterns.txt new file mode 100644 index 00000000000..917f62079d4 --- /dev/null +++ b/.github/workflows/util/delta-spark-ut/flaky-error-patterns.txt @@ -0,0 +1,28 @@ +# Flaky-error signatures for the Delta Spark UT (Gluten) gate. +# +# Each non-comment line is a Python regex matched (re.search, case-sensitive) +# against a failed test's JUnit / text (message + stack). A +# failure that matches is QUARANTINED by root cause: it never counts as a +# regression, and is dropped from the shard's failures list so it can't leak +# into the regenerated baseline -- regardless of WHICH test it landed on. +# +# Use this (instead of flaky-tests.txt) when a known nondeterministic bug +# surfaces on a different test each run, so matching by test name is +# whack-a-mole. Prefer fixing the underlying bug and REMOVING the entry. +# +# --------------------------------------------------------------------------- +# Native Delta DV bitmap aggregator aborts on an invalid Long.MAX_VALUE +# (9223372036854775807) row index during a MERGE that writes deletion vectors: +# +# VeloxRuntimeError ... INVALID_STATE +# Reason: Delta RoaringBitmapArray row index 9223372036854775807 exceeds max +# representable value 9223372030412324864 +# Expression: value <= kMaxRepresentableValue +# Function: addSafe File: .../velox/compute/delta/RoaringBitmapArray.cpp +# +# Intermittent (depends on the runtime plan/scan/scheduling), so it hits a +# different *DVs*Suite MERGE test on each run. Remove this once the row-index +# materialization is fixed in the native backend. Tracked upstream (DV bitmap +# Long.MAX_VALUE row index). +# --------------------------------------------------------------------------- +Delta RoaringBitmapArray row index \d+ exceeds max representable value diff --git a/.github/workflows/util/delta-spark-ut/flaky-tests.txt b/.github/workflows/util/delta-spark-ut/flaky-tests.txt index b56bea43947..e42348f0b0d 100644 --- a/.github/workflows/util/delta-spark-ut/flaky-tests.txt +++ b/.github/workflows/util/delta-spark-ut/flaky-tests.txt @@ -16,17 +16,9 @@ # Prefer fixing the underlying bug and REMOVING the entry over growing this list. # Every entry should reference a tracking issue for the root cause. # -# --------------------------------------------------------------------------- -# Root cause: native Delta DV bitmap aggregator aborts on an invalid Long.MAX_VALUE -# (9223372036854775807 > kMaxRepresentableValue) row index during MERGE that writes -# deletion vectors -- RoaringBitmapArray.cpp addSafe, INVALID_STATE VeloxRuntimeError. -# Intermittent (depends on runtime plan/scan/scheduling), so it hits a different -# `*DVs*Suite` MERGE test on each run. Tracked upstream (DV bitmap Long.MAX_VALUE). -# Remove these once the row-index materialization is fixed in the native backend. -# --------------------------------------------------------------------------- -*DVs*Suite#basic case - merge to Delta table by path, isPartitioned: true -*DVs*Suite#extended syntax - conditional update + conditional delete + conditional insert - isPartitioned: true -*DVs*Suite#extended syntax - update + conditional insert - isPartitioned: true -*DVs*Suite#matched only merge - disabled - with update and delete - isPartitioned: true -*DVs*Suite#matched only merge - enabled - with update and delete - isPartitioned: true -*DVs*Suite#single file, isPartitioned: true +# NOTE: when a bug surfaces on a DIFFERENT test each run (so matching by name is +# whack-a-mole), quarantine it by ERROR SIGNATURE in flaky-error-patterns.txt +# instead. The native Delta DV bitmap row-index bug (RoaringBitmapArray +# Long.MAX_VALUE) is handled there, which is why no `*DVs*Suite` MERGE entries +# are listed below. + diff --git a/.github/workflows/util/delta-spark-ut/run-delta-tests.sh b/.github/workflows/util/delta-spark-ut/run-delta-tests.sh index 72f39ec01cc..09b0d0bf04d 100755 --- a/.github/workflows/util/delta-spark-ut/run-delta-tests.sh +++ b/.github/workflows/util/delta-spark-ut/run-delta-tests.sh @@ -234,6 +234,7 @@ python3 "$UTIL_DIR/compare-test-results.py" \ --reports-dir "$GITHUB_WORKSPACE/delta" \ --known-failures "$UTIL_DIR/known-failures.txt" \ --flaky-tests "$UTIL_DIR/flaky-tests.txt" \ + --flaky-error-patterns "$UTIL_DIR/flaky-error-patterns.txt" \ --failures-out "$GITHUB_WORKSPACE/gate-out/failures-shard-${SHARD_ID}.txt" \ --ran-out "$GITHUB_WORKSPACE/gate-out/ran-shard-${SHARD_ID}.txt" \ --fail-on-fixed "${FAIL_ON_FIXED}" From c33ba9c5a085f105613a853fd32a573d8676c7e1 Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Thu, 9 Jul 2026 22:51:48 +0000 Subject: [PATCH 16/24] [CI] Quarantine the negative-index DV-bitmap flaky variant Run 29042495519 regressed on another DV-merge test whose failure was NOT the RoaringBitmapArray "exceeds max representable value" signature but a second, distinct native error from the same DV bitmap aggregation -- Reason: Delta bitmap row index cannot be negative: -6254810385378525259 Expression: value >= 0 Function: addRowIndex File: .../delta/DeltaBitmapAggregator.cc:44 vs the previously-seen too-large variant (value <= kMaxRepresentableValue, RoaringBitmapArray.cpp addSafe). Same root cause (garbage row index into the DV bitmap aggregator), different bounds check and different message. Add a second explicit pattern for it rather than broadening the existing one -- the two are distinct native error strings, so keeping each pattern tightly bound to its message avoids masking an unrelated failure that merely mentions a bitmap row index. Verified against the real failing report: the negative-index failure is a regression without the pattern and quarantined with it; the suite's five other (non-bitmap) baseline failures and benign controls are not matched. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../workflows/util/delta-spark-ut/README.md | 18 +++++---- .../delta-spark-ut/flaky-error-patterns.txt | 37 +++++++++++++------ 2 files changed, 37 insertions(+), 18 deletions(-) diff --git a/.github/workflows/util/delta-spark-ut/README.md b/.github/workflows/util/delta-spark-ut/README.md index 54581dbdf64..85d1798d7cd 100644 --- a/.github/workflows/util/delta-spark-ut/README.md +++ b/.github/workflows/util/delta-spark-ut/README.md @@ -128,17 +128,21 @@ and blank lines allowed: ### Quarantine by error signature Some bugs surface on a **different test each run** — for example the native Delta -DV bitmap row-index error (`RoaringBitmapArray ... exceeds max representable -value`, a `Long.MAX_VALUE` written during a MERGE that writes deletion vectors) -lands on a different `*DVs*Suite` MERGE test every time. Chasing those by name is -whack-a-mole, so quarantine them by **root cause** in **`flaky-error-patterns.txt`** -instead: each line is a regex matched against a failed test's ``/`` -text. Any failure that matches is treated as flaky regardless of which test it hit -(and is dropped from the shard's failures list so it can't leak into the baseline): +DV bitmap row-index error (the aggregator gets a garbage row index during a MERGE +that writes deletion vectors and aborts, e.g. `Delta RoaringBitmapArray row index +... exceeds max representable value` or `Delta bitmap row index cannot be +negative: ...`) lands on a different `*DVs*Suite` MERGE test every time. Chasing +those by name is whack-a-mole, so quarantine them by **root cause** in +**`flaky-error-patterns.txt`** instead: each line is a regex matched against a +failed test's ``/`` text. Any failure that matches is treated as +flaky regardless of which test it hit (and is dropped from the shard's failures +list so it can't leak into the baseline): ``` # regex matched against the failure message + stack (enforce mode). +# one explicit pattern per known error, deliberately specific. Delta RoaringBitmapArray row index \d+ exceeds max representable value +Delta bitmap row index cannot be negative: -?\d+ ``` This is more precise than a name glob: a *different* real failure in the same diff --git a/.github/workflows/util/delta-spark-ut/flaky-error-patterns.txt b/.github/workflows/util/delta-spark-ut/flaky-error-patterns.txt index 917f62079d4..23cf641aa99 100644 --- a/.github/workflows/util/delta-spark-ut/flaky-error-patterns.txt +++ b/.github/workflows/util/delta-spark-ut/flaky-error-patterns.txt @@ -11,18 +11,33 @@ # whack-a-mole. Prefer fixing the underlying bug and REMOVING the entry. # # --------------------------------------------------------------------------- -# Native Delta DV bitmap aggregator aborts on an invalid Long.MAX_VALUE -# (9223372036854775807) row index during a MERGE that writes deletion vectors: +# Native Delta bitmap aggregator receives an INVALID row index during a MERGE +# that writes deletion vectors, and aborts. The garbage row index trips one of +# two bounds checks, so the same root cause shows up with two messages: # -# VeloxRuntimeError ... INVALID_STATE -# Reason: Delta RoaringBitmapArray row index 9223372036854775807 exceeds max -# representable value 9223372030412324864 -# Expression: value <= kMaxRepresentableValue -# Function: addSafe File: .../velox/compute/delta/RoaringBitmapArray.cpp +# too large (Long.MAX_VALUE): +# VeloxRuntimeError INVALID_STATE +# Reason: Delta RoaringBitmapArray row index 9223372036854775807 exceeds max +# representable value 9223372030412324864 +# Expression: value <= kMaxRepresentableValue +# Function: addSafe File: .../velox/compute/delta/RoaringBitmapArray.cpp:92 # -# Intermittent (depends on the runtime plan/scan/scheduling), so it hits a -# different *DVs*Suite MERGE test on each run. Remove this once the row-index -# materialization is fixed in the native backend. Tracked upstream (DV bitmap -# Long.MAX_VALUE row index). +# negative (garbage): +# VeloxRuntimeError INVALID_STATE +# Reason: Delta bitmap row index cannot be negative: -6254810385378525259 +# Expression: value >= 0 +# Function: addRowIndex File: .../operators/functions/delta/DeltaBitmapAggregator.cc:44 +# +# Both are the same root cause (garbage row index into the DV bitmap aggregator) +# but distinct native errors, so each has its own explicit pattern below -- +# deliberately specific (bound to the exact error string) rather than a broad +# "Delta bitmap row index" match, to avoid masking an unrelated failure. Add a +# new line if a further bounds-check variant appears. Intermittent (depends on +# the runtime plan/scan/scheduling), so it hits a different *DVs*Suite MERGE test +# on each run. Remove these once the row-index materialization is fixed in the +# native backend. Tracked upstream (DV bitmap invalid row index). # --------------------------------------------------------------------------- +# too-large (Long.MAX_VALUE) -- RoaringBitmapArray.cpp addSafe, value <= kMaxRepresentableValue Delta RoaringBitmapArray row index \d+ exceeds max representable value +# negative garbage -- DeltaBitmapAggregator.cc addRowIndex, value >= 0 +Delta bitmap row index cannot be negative: -?\d+ From 3fc991823286ff8a5243c7f9afbf0f671e81f35e Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Mon, 13 Jul 2026 20:36:14 +0000 Subject: [PATCH 17/24] [CI] Remove now-passing Variant/UDT tests from Delta baseline The Velox Variant/UDT type-offload gap was fixed upstream, so 74 Delta UT tests (65 Variant + 9 user-defined-type) that were expected failures now pass and were tripping the fail-on-fixed gate as "now-passing". Remove them from known-failures.txt (810 -> 736). The 6 remaining `variant auto compact` entries are a different root cause (auto-compact metrics) and correctly stay in the baseline. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 66a9e40f-3ac8-45be-8fee-a606a22fa098 --- .../util/delta-spark-ut/known-failures.txt | 74 ------------------- 1 file changed, 74 deletions(-) diff --git a/.github/workflows/util/delta-spark-ut/known-failures.txt b/.github/workflows/util/delta-spark-ut/known-failures.txt index 624e0c5cf46..3cf71910846 100644 --- a/.github/workflows/util/delta-spark-ut/known-failures.txt +++ b/.github/workflows/util/delta-spark-ut/known-failures.txt @@ -51,25 +51,9 @@ org.apache.spark.sql.delta.AutoCompactExecutionSuite#auto-compact-enabled-proper org.apache.spark.sql.delta.AutoCompactExecutionSuite#auto-compact-enabled-property: auto compact should not kick in when session config is off org.apache.spark.sql.delta.AutoCompactExecutionSuite#variant auto compact kicks in when enabled - session config org.apache.spark.sql.delta.AutoCompactExecutionSuite#variant auto compact kicks in when enabled - table config -org.apache.spark.sql.delta.CheckpointsSuite#DML with DVs corrupts variant stats when collectVariantDataSkippingStats is disabled -org.apache.spark.sql.delta.CheckpointsSuite#DML with DVs preserves nested variant stats when collectVariantDataSkippingStats is enabled -org.apache.spark.sql.delta.CheckpointsSuite#DML with DVs preserves variant and struct stats when collectVariantDataSkippingStats is enabled -org.apache.spark.sql.delta.CheckpointsSuite#DML with DVs preserves variant stats when collectVariantDataSkippingStats is enabled org.apache.spark.sql.delta.CheckpointsSuite#SC-86940: writing a GCS checkpoint should happen in a new thread -org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch100Suite#DML with DVs corrupts variant stats when collectVariantDataSkippingStats is disabled -org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch100Suite#DML with DVs preserves nested variant stats when collectVariantDataSkippingStats is enabled -org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch100Suite#DML with DVs preserves variant and struct stats when collectVariantDataSkippingStats is enabled -org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch100Suite#DML with DVs preserves variant stats when collectVariantDataSkippingStats is enabled org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch100Suite#SC-86940: writing a GCS checkpoint should happen in a new thread -org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch1Suite#DML with DVs corrupts variant stats when collectVariantDataSkippingStats is disabled -org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch1Suite#DML with DVs preserves nested variant stats when collectVariantDataSkippingStats is enabled -org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch1Suite#DML with DVs preserves variant and struct stats when collectVariantDataSkippingStats is enabled -org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch1Suite#DML with DVs preserves variant stats when collectVariantDataSkippingStats is enabled org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch1Suite#SC-86940: writing a GCS checkpoint should happen in a new thread -org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch2Suite#DML with DVs corrupts variant stats when collectVariantDataSkippingStats is disabled -org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch2Suite#DML with DVs preserves nested variant stats when collectVariantDataSkippingStats is enabled -org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch2Suite#DML with DVs preserves variant and struct stats when collectVariantDataSkippingStats is enabled -org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch2Suite#DML with DVs preserves variant stats when collectVariantDataSkippingStats is enabled org.apache.spark.sql.delta.CheckpointsWithCatalogOwnedBatch2Suite#SC-86940: writing a GCS checkpoint should happen in a new thread org.apache.spark.sql.delta.CloneTableSQLSuite#shallow clone across file systems org.apache.spark.sql.delta.CloneTableSQLWithCatalogOwnedBatch100Suite#shallow clone across file systems @@ -156,27 +140,6 @@ org.apache.spark.sql.delta.DeltaUpdateCatalogSuite#convert to delta with partiti org.apache.spark.sql.delta.DeltaUpdateCatalogSuite#partitioned convert to delta with schema change org.apache.spark.sql.delta.DeltaVacuumSuite#vacuum for cdc - delete tombstones org.apache.spark.sql.delta.DeltaVacuumSuite#vacuum for cdc - update/merge -org.apache.spark.sql.delta.DeltaVariantShreddingSuite#Infer schema for Delta table -org.apache.spark.sql.delta.DeltaVariantSuite#DISABLE_VARIANT_TABLE_FEATURE_FOR_SPARK_40 - config disabled does not block -org.apache.spark.sql.delta.DeltaVariantSuite#DISABLE_VARIANT_TABLE_FEATURE_FOR_SPARK_40 - no-op on Spark 4.1+ -org.apache.spark.sql.delta.DeltaVariantSuite#Existing table with variant type can enable CDF -org.apache.spark.sql.delta.DeltaVariantSuite#Table with variant type can use CDF -org.apache.spark.sql.delta.DeltaVariantSuite#Variant can be used as a source for generated columns -org.apache.spark.sql.delta.DeltaVariantSuite#Variant can have default value set -org.apache.spark.sql.delta.DeltaVariantSuite#Variant cannot be created as a generated column -org.apache.spark.sql.delta.DeltaVariantSuite#Variant respects Delta table CHECK constraints -org.apache.spark.sql.delta.DeltaVariantSuite#Variant respects Delta table IS NOT NULL constraints -org.apache.spark.sql.delta.DeltaVariantSuite#Zorder is not supported for Variant -org.apache.spark.sql.delta.DeltaVariantSuite#column mapping works - id - false -org.apache.spark.sql.delta.DeltaVariantSuite#column mapping works - id - true -org.apache.spark.sql.delta.DeltaVariantSuite#column mapping works - name - false -org.apache.spark.sql.delta.DeltaVariantSuite#column mapping works - name - true -org.apache.spark.sql.delta.DeltaVariantSuite#optimize variant -org.apache.spark.sql.delta.DeltaVariantSuite#shallow cloning table with variant -org.apache.spark.sql.delta.DeltaVariantSuite#streaming variant delta table -org.apache.spark.sql.delta.DeltaVariantSuite#time travel with variant column works -org.apache.spark.sql.delta.DeltaVariantSuite#variant works with schema evolution for INSERT -org.apache.spark.sql.delta.DeltaVariantSuite#variant works with schema evolution for MERGE org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#SC-8810: skip deleted file org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#SC-8810: skipping deleted file still throws on corrupted file org.apache.spark.sql.delta.DeltaWithCatalogOwnedBatch100Suite#deleted files cause failure by default @@ -495,16 +458,8 @@ org.apache.spark.sql.delta.coordinatedcommits.CoordinatedCommitsSuite#Incomplete org.apache.spark.sql.delta.deletionvectors.DeletionVectorsSuite#DELETE with DVs with column mapping mode=id org.apache.spark.sql.delta.deletionvectors.DeletionVectorsSuite#huge table: delete a small number of rows from tables of 2B rows with DVs org.apache.spark.sql.delta.deletionvectors.DeletionVectorsSuite#huge table: read from tables of 2B rows with existing DV of many zeros -org.apache.spark.sql.delta.deletionvectors.DeletionVectorsSuite#variant types DELETE with DVs with column mapping mode=id -org.apache.spark.sql.delta.deletionvectors.DeletionVectorsSuite#variant types DELETE with DVs with column mapping mode=name org.apache.spark.sql.delta.deletionvectors.DeletionVectorsWithPredicatePushdownSuite#(It is not a test it is a sbt.testing.SuiteSelector) org.apache.spark.sql.delta.deletionvectors.DeletionVectorsWithPredicatePushdownSuite# -org.apache.spark.sql.delta.generatedsuites.DeleteBaseSQLNameBasedSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.DeleteBaseSQLPathBasedCDCOnSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.DeleteBaseSQLPathBasedDVPredPushOffSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.DeleteBaseSQLPathBasedDVPredPushOnSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.DeleteBaseSQLPathBasedSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.DeleteBaseScalaSuite#Variant type org.apache.spark.sql.delta.generatedsuites.DeleteTempViewSQLNameBasedSuite#test delete on temp view - nontrivial projection - Dataset TempView org.apache.spark.sql.delta.generatedsuites.DeleteTempViewSQLNameBasedSuite#test delete on temp view - nontrivial projection - SQL TempView org.apache.spark.sql.delta.generatedsuites.DeleteTempViewSQLPathBasedCDCOnSuite#test delete on temp view - nontrivial projection - Dataset TempView @@ -611,53 +566,26 @@ org.apache.spark.sql.delta.generatedsuites.MergeIntoSchemaEvolutionBaseNewColumn org.apache.spark.sql.delta.generatedsuites.MergeIntoSchemaEvolutionBaseNewColumnSQLPathBasedCDCOnSuite#schema evolution - extra nested column in source - update - single target partition org.apache.spark.sql.delta.generatedsuites.MergeIntoSchemaEvolutionBaseNewColumnSQLPathBasedSuite#schema evolution - extra nested column in source - update - single target partition org.apache.spark.sql.delta.generatedsuites.MergeIntoSchemaEvolutionBaseNewColumnScalaSuite#schema evolution - extra nested column in source - update - single target partition -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#UDT Data Types - simple and nested -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#Variant type org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#data skipping with matched predicates - with insert clause org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLNameBasedSuite#merge with repartition - insert only merge -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#UDT Data Types - simple and nested -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#Variant type org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#data skipping with matched predicates - with insert clause org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#merge with repartition - insert only merge org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOffSuite#merge with repartition - partition on multiple columns -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#UDT Data Types - simple and nested -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#Variant type org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#data skipping with matched predicates - with insert clause org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#merge with repartition - insert only merge org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnDVsPredPushOnSuite#merge with repartition - partition on multiple columns -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#UDT Data Types - simple and nested -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#Variant type org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#data skipping with matched predicates - with insert clause org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedCDCOnSuite#merge with repartition - insert only merge -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#UDT Data Types - simple and nested -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#Variant type org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#data skipping with matched predicates - with insert clause org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#merge with repartition - insert only merge org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOffSuite#merge with repartition - partition on multiple columns -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#UDT Data Types - simple and nested -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#Variant type org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#data skipping with matched predicates - with insert clause org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#merge with repartition - insert only merge org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedDVsPredPushOnSuite#merge with repartition - partition on multiple columns -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#UDT Data Types - simple and nested -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#Variant type org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#data skipping with matched predicates - with insert clause org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscSQLPathBasedSuite#merge with repartition - insert only merge -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#UDT Data Types - simple and nested -org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#Variant type org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#data skipping with matched predicates - with insert clause org.apache.spark.sql.delta.generatedsuites.MergeIntoSuiteBaseMiscScalaSuite#merge with repartition - insert only merge -org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLNameBasedSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedCDCOnDVSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedCDCOnRowTrackingOffSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedCDCOnRowTrackingOnSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedCDCOnSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedDVPredPushOffSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedDVPredPushOnSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedRowTrackingOffSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedRowTrackingOnSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscSQLPathBasedSuite#Variant type -org.apache.spark.sql.delta.generatedsuites.UpdateBaseMiscScalaSuite#Variant type org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLNameBasedSuite#test update on temp view - nontrivial projection - Dataset TempView org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLNameBasedSuite#test update on temp view - nontrivial projection - SQL TempView org.apache.spark.sql.delta.generatedsuites.UpdateBaseTempViewSQLPathBasedCDCOnDVSuite#test update on temp view - nontrivial projection - Dataset TempView @@ -801,14 +729,12 @@ org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite# org.apache.spark.sql.delta.stats.DataSkippingDeltaV1WithCatalogOwnedBatch2Suite#data skipping on TIMESTAMP_NTZ with Long.MaxValue - old behavior with DataFrame schema org.apache.spark.sql.delta.stats.PartitionLikeDataSkippingColumnMappingSuite#partition-like data skipping for expression COALESCE: COALESCE(TO_DATE(S.b), c) = '1976-07-03' - column mapping id mode org.apache.spark.sql.delta.stats.StatsCollectionSuite#recompute stats multiple columns and files -org.apache.spark.sql.delta.stats.StatsCollectionSuite#recompute variant stats org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening BIGINT -> DECIMAL(20,0), partitioned=true org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening DATE -> TIMESTAMP_NTZ, partitioned=false org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening DATE -> TIMESTAMP_NTZ, partitioned=true org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening DECIMAL(9,2) -> DECIMAL(19,3), partitioned=true org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening FLOAT -> DOUBLE, partitioned=true org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening INT -> DOUBLE, partitioned=true -org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#type widening with user-defined type in table org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#unsupported type changes DOUBLE -> FLOAT, partitioned=true org.apache.spark.sql.delta.typewidening.TypeWideningAlterTableSuite#unsupported type changes TIMESTAMP_NTZ -> DATE, partitioned=false org.apache.spark.sql.delta.typewidening.TypeWideningInsertSchemaEvolutionBasicSuite#INSERT - always automatic type widening DATE -> TIMESTAMP_NTZ From 86781135f1b9c3e97cac74011c03fff63bb07206 Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Tue, 14 Jul 2026 02:55:57 +0000 Subject: [PATCH 18/24] [CI] Remove now-passing DV-tombstone test from Delta baseline DeltaFastDropFeatureSuite "We do not create redundant DV tombstones after cloning isShallowClone: true" now passes consistently (green on 2026-07-13 and 2026-07-14 runs); the earlier FileNotFoundException on a deletion-vector .bin during the DROP FEATURE parallel OPTIMIZE no longer reproduces. Keeping it in the baseline trips the fail-on-fixed gate on every run, so remove it (736 -> 735). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 66a9e40f-3ac8-45be-8fee-a606a22fa098 --- .github/workflows/util/delta-spark-ut/known-failures.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/util/delta-spark-ut/known-failures.txt b/.github/workflows/util/delta-spark-ut/known-failures.txt index 3cf71910846..0999a1a389c 100644 --- a/.github/workflows/util/delta-spark-ut/known-failures.txt +++ b/.github/workflows/util/delta-spark-ut/known-failures.txt @@ -90,7 +90,6 @@ org.apache.spark.sql.delta.DeltaDataFrameHadoopOptionsSuite#SC-86916: read/write org.apache.spark.sql.delta.DeltaDataFrameHadoopOptionsSuite#all operations should propagate Hadoop file system options org.apache.spark.sql.delta.DeltaDataFrameHadoopOptionsSuite#operations without Hadoop options should fail for fake:// filesystem org.apache.spark.sql.delta.DeltaFastDropFeatureSuite#Vacuum does not delete deletion vector files.generateDVTombstones: false -org.apache.spark.sql.delta.DeltaFastDropFeatureSuite#We do not create redundant DV tombstones after cloning isShallowClone: true org.apache.spark.sql.delta.DeltaGenerateSymlinkManifestSuite#incremental manifest: failure to generate manifest throws exception org.apache.spark.sql.delta.DeltaGenerateSymlinkManifestSuite#special partition column values org.apache.spark.sql.delta.DeltaHistoryManagerSuite#data skipping still works with time travel From a96127b26fd98028a0baa773256b3b1a425df0a0 Mon Sep 17 00:00:00 2001 From: malinjawi Date: Fri, 24 Jul 2026 15:21:09 +0300 Subject: [PATCH 19/24] [VL][Delta] Preserve CDF filter pushdown --- .../org/apache/gluten/extension/DeltaCDFScanStrategy.scala | 6 +++++- .../scala/org/apache/gluten/execution/DeltaSuite.scala | 7 +++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala b/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala index 17be38aef21..bfb511f1a7e 100644 --- a/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala +++ b/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala @@ -84,7 +84,11 @@ case class DeltaCDFScanStrategy(spark: SparkSession) extends SparkStrategy { val cdfOutput = cdfPlan.output val rewrittenFilters = filters.map(rewriteExpression(_, cdfOutput)) val rewrittenProjects = projects.map(rewriteProject(_, cdfOutput)) - Some(projectAndFilter(cdfPlan, rewrittenProjects, rewrittenFilters)) + val rewrittenPlan = projectAndFilter(cdfPlan, rewrittenProjects, rewrittenFilters) + + // This strategy expands the CDF relation during physical planning, after Spark's normal + // optimizer pass. Optimize the resolved replacement so predicates can reach its file scans. + Some(spark.sessionState.optimizer.execute(rewrittenPlan)) } private def projectAndFilter( diff --git a/gluten-delta/src/test/scala/org/apache/gluten/execution/DeltaSuite.scala b/gluten-delta/src/test/scala/org/apache/gluten/execution/DeltaSuite.scala index 9e024cb1fae..5d7377658e0 100644 --- a/gluten-delta/src/test/scala/org/apache/gluten/execution/DeltaSuite.scala +++ b/gluten-delta/src/test/scala/org/apache/gluten/execution/DeltaSuite.scala @@ -407,6 +407,13 @@ abstract class DeltaSuite extends WholeStageTransformerSuite { Seq( Row(2, "v2", "update_preimage", 2L), Row(2, "v2_updated", "update_postimage", 2L))) + assert( + collect(filteredCDF.queryExecution.executedPlan) { + case scan: DeltaScanTransformer => + scan.dataFilters.exists(_.references.exists(_.name == "id")) + }.contains(true), + filteredCDF.queryExecution.executedPlan + ) val boundedCDF = runAndCompare( s""" From bf81a9ef29f4f4b278fbfe6a2af93246d3c212fc Mon Sep 17 00:00:00 2001 From: malinjawi Date: Fri, 24 Jul 2026 15:31:48 +0300 Subject: [PATCH 20/24] [VL][Delta] Add CDF offload guard --- .../component/VeloxDeltaComponent.scala | 8 +++-- .../gluten/config/VeloxDeltaConfig.scala | 9 +++++ .../gluten/execution/VeloxDeltaSuite.scala | 35 ++++++++++++++++++- docs/get-started/VeloxDelta.md | 6 ++++ .../extension/DeltaCDFScanStrategy.scala | 27 ++++++++------ 5 files changed, 72 insertions(+), 13 deletions(-) diff --git a/backends-velox/src-delta/main/scala/org/apache/gluten/component/VeloxDeltaComponent.scala b/backends-velox/src-delta/main/scala/org/apache/gluten/component/VeloxDeltaComponent.scala index b96f07cce05..c7146071770 100644 --- a/backends-velox/src-delta/main/scala/org/apache/gluten/component/VeloxDeltaComponent.scala +++ b/backends-velox/src-delta/main/scala/org/apache/gluten/component/VeloxDeltaComponent.scala @@ -17,7 +17,7 @@ package org.apache.gluten.component import org.apache.gluten.backendsapi.velox.VeloxBackend -import org.apache.gluten.config.GlutenConfig +import org.apache.gluten.config.{GlutenConfig, VeloxDeltaConfig} import org.apache.gluten.extension.{DeltaCDFScanStrategy, DeltaPostTransformRules, OffloadDeltaFilter, OffloadDeltaProject, OffloadDeltaScan} import org.apache.gluten.extension.columnar.heuristic.HeuristicTransform import org.apache.gluten.extension.columnar.validator.Validators @@ -35,7 +35,11 @@ class VeloxDeltaComponent extends Component { } override def injectRules(injector: Injector): Unit = { - injector.spark.injectPlannerStrategy(DeltaCDFScanStrategy(_)) + injector.spark.injectPlannerStrategy( + spark => + DeltaCDFScanStrategy( + spark, + () => new VeloxDeltaConfig(spark.sessionState.conf).enableChangeDataFeedScan)) val legacy = injector.gluten.legacy // Deletion-vector scans need no Gluten-side logical preprocessing: Delta's own diff --git a/backends-velox/src-delta/main/scala/org/apache/gluten/config/VeloxDeltaConfig.scala b/backends-velox/src-delta/main/scala/org/apache/gluten/config/VeloxDeltaConfig.scala index 99c2d2c26a7..566a17aab7a 100644 --- a/backends-velox/src-delta/main/scala/org/apache/gluten/config/VeloxDeltaConfig.scala +++ b/backends-velox/src-delta/main/scala/org/apache/gluten/config/VeloxDeltaConfig.scala @@ -22,6 +22,8 @@ class VeloxDeltaConfig(conf: SQLConf) extends GlutenCoreConfig(conf) { import VeloxDeltaConfig._ def enableNativeWrite: Boolean = getConf(ENABLE_NATIVE_WRITE) + + def enableChangeDataFeedScan: Boolean = getConf(ENABLE_CHANGE_DATA_FEED_SCAN) } object VeloxDeltaConfig extends ConfigRegistry { @@ -40,4 +42,11 @@ object VeloxDeltaConfig extends ConfigRegistry { .doc("Enable native Delta Lake write for Velox backend.") .booleanConf .createWithDefault(false) + + val ENABLE_CHANGE_DATA_FEED_SCAN: ConfigEntry[Boolean] = + buildConf("spark.gluten.sql.columnar.backend.velox.delta.enableChangeDataFeedScan") + .experimental() + .doc("Enable Delta Lake change data feed scan offload for Velox backend.") + .booleanConf + .createWithDefault(true) } diff --git a/backends-velox/src-delta/test/scala/org/apache/gluten/execution/VeloxDeltaSuite.scala b/backends-velox/src-delta/test/scala/org/apache/gluten/execution/VeloxDeltaSuite.scala index d7a12d1fc5d..83810b9708d 100644 --- a/backends-velox/src-delta/test/scala/org/apache/gluten/execution/VeloxDeltaSuite.scala +++ b/backends-velox/src-delta/test/scala/org/apache/gluten/execution/VeloxDeltaSuite.scala @@ -16,4 +16,37 @@ */ package org.apache.gluten.execution -class VeloxDeltaSuite extends DeltaSuite +import org.apache.gluten.config.VeloxDeltaConfig + +import org.apache.spark.sql.Row + +class VeloxDeltaSuite extends DeltaSuite { + testWithMinSparkVersion("delta: change data feed scan offload can be disabled", "3.2") { + withTable("delta_cdf_disabled") { + spark.sql(""" + |create table delta_cdf_disabled (id int, name string) using delta + |tblproperties ("delta.enableChangeDataFeed" = "true") + |""".stripMargin) + spark.sql(""" + |insert into delta_cdf_disabled values (1, "v1"), (2, "v2") + |""".stripMargin) + + withSQLConf(VeloxDeltaConfig.ENABLE_CHANGE_DATA_FEED_SCAN.key -> "false") { + val df = spark.sql(""" + |select id, name, _change_type, _commit_version + |from table_changes('delta_cdf_disabled', 1) + |""".stripMargin) + checkAnswer( + df, + Seq( + Row(1, "v1", "insert", 1L), + Row(2, "v2", "insert", 1L))) + assert( + df.queryExecution.executedPlan.collect { + case scan: DeltaScanTransformer => scan + }.isEmpty, + df.queryExecution.executedPlan) + } + } + } +} diff --git a/docs/get-started/VeloxDelta.md b/docs/get-started/VeloxDelta.md index 69964e78908..3c594b9b976 100644 --- a/docs/get-started/VeloxDelta.md +++ b/docs/get-started/VeloxDelta.md @@ -28,6 +28,12 @@ Native Delta write is controlled by: - Default: `false` - Type: experimental +Native change data feed scan offload is controlled by: + +- `spark.gluten.sql.columnar.backend.velox.delta.enableChangeDataFeedScan` + - Default: `true` + - Type: experimental + | Feature | Delta minWriterVersion | Delta minReaderVersion | Iceberg format-version | Feature type | Supported by Gluten (Velox) | |---|---:|---:|---:|---|---| | Basic functionality | 2 | 1 | 1 | Writer | Yes | diff --git a/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala b/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala index bfb511f1a7e..219f8549036 100644 --- a/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala +++ b/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala @@ -25,16 +25,23 @@ import org.apache.spark.sql.delta.commands.cdc.CDCReader import org.apache.spark.sql.execution.{SparkPlan, SparkStrategy} import org.apache.spark.sql.execution.datasources.LogicalRelation -case class DeltaCDFScanStrategy(spark: SparkSession) extends SparkStrategy { - override def apply(plan: LogicalPlan): Seq[SparkPlan] = plan match { - case PhysicalOperation(projects, filters, relation: LogicalRelation) => - relation.relation match { - case cdfRelation: CDCReader.DeltaCDFRelation - if !changesContainDeletionVectors(cdfRelation) => - planCDFRelation(relation, cdfRelation, projects, filters).map(planLater).toSeq - case _ => Nil - } - case _ => Nil +case class DeltaCDFScanStrategy(spark: SparkSession, offloadEnabled: () => Boolean) + extends SparkStrategy { + override def apply(plan: LogicalPlan): Seq[SparkPlan] = { + if (!offloadEnabled()) { + return Nil + } + + plan match { + case PhysicalOperation(projects, filters, relation: LogicalRelation) => + relation.relation match { + case cdfRelation: CDCReader.DeltaCDFRelation + if !changesContainDeletionVectors(cdfRelation) => + planCDFRelation(relation, cdfRelation, projects, filters).map(planLater).toSeq + case _ => Nil + } + case _ => Nil + } } // Delta CDF over a commit that uses deletion vectors needs Delta's DV-aware, row-level From 7becac341a91e2add24f1d87e1efe1614dc43692 Mon Sep 17 00:00:00 2001 From: malinjawi Date: Fri, 24 Jul 2026 16:16:19 +0300 Subject: [PATCH 21/24] [VL][Delta] Preserve CDF output attributes --- .../gluten/extension/DeltaCDFScanStrategy.scala | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala b/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala index 219f8549036..045a758b155 100644 --- a/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala +++ b/gluten-delta/src/main/scala/org/apache/gluten/extension/DeltaCDFScanStrategy.scala @@ -91,22 +91,31 @@ case class DeltaCDFScanStrategy(spark: SparkSession, offloadEnabled: () => Boole val cdfOutput = cdfPlan.output val rewrittenFilters = filters.map(rewriteExpression(_, cdfOutput)) val rewrittenProjects = projects.map(rewriteProject(_, cdfOutput)) - val rewrittenPlan = projectAndFilter(cdfPlan, rewrittenProjects, rewrittenFilters) // This strategy expands the CDF relation during physical planning, after Spark's normal - // optimizer pass. Optimize the resolved replacement so predicates can reach its file scans. - Some(spark.sessionState.optimizer.execute(rewrittenPlan)) + // optimizer pass. Optimize the resolved child so predicates can reach its file scans, but keep + // the output-restoring projection outside the optimizer: parent operators were planned against + // the original relation's expression IDs, and Spark 3.3 can remove these aliases as redundant. + val optimizedChild = + spark.sessionState.optimizer.execute(filter(cdfPlan, rewrittenFilters)) + Some(Project(rewrittenProjects, optimizedChild)) } private def projectAndFilter( child: LogicalPlan, projects: Seq[NamedExpression], filters: Seq[Expression]): LogicalPlan = { + Project(projects, filter(child, filters)) + } + + private def filter( + child: LogicalPlan, + filters: Seq[Expression]): LogicalPlan = { val filtered = filters.reduceOption(org.apache.spark.sql.catalyst.expressions.And) match { case Some(condition) => Filter(condition, child) case None => child } - Project(projects, filtered) + filtered } private def rewriteProject( From 2dbb578c9a59a1742bcd2e1a522d806e11191080 Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Fri, 24 Jul 2026 23:41:33 +0000 Subject: [PATCH 22/24] [VL][Delta] Mark CDF PushedFilters as native-handled in plan string (Delta-scoped) Delta's upstream CDF filter-pushdown tests (DeltaCDC*Suite "filters should be pushed down" / "select individual column should push down filters" / "filters with special characters in name should be pushed down") assert the executed plan prints `PushedFilters: [*IsNotNull(id), *LessThan(id,5)]`. The leading `*` is Spark's RowDataSourceScanExec convention for a filter the source fully evaluates itself (so Spark needs no separate post-scan Filter). Gluten offloads the CDF read to DeltaScanTransformer (a FileSourceScanLike), which pushes every conjunct into the native scan via PushDownFilterToScan and applies them as exact row-level filters -- the paired FilterExecTransformer is a no-op (FilterExecTransformerBase.isNoop), the same end state the `*` advertises. But the inherited FileSourceScanLike rendering leaves PushedFilters unmarked, so the assertion fails once the scan is offloaded. Post-process DeltaScanTransformer's rendered plan string (`simpleString`) to mark the PushedFilters entries with `*`. `metadata` is a lazy val and cannot be super-overridden, so the marking is applied to the rendered node string. This is Delta-scoped: only Delta scans are affected; other file-source scans are unchanged. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 02286396-395f-41db-ad89-ad69a192cded --- .../execution/DeltaScanTransformer.scala | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) diff --git a/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala b/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala index c2cb6604db8..64f0d469e8d 100644 --- a/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala +++ b/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala @@ -157,12 +157,98 @@ case class DeltaScanTransformer( override def withNewPushdownFilters(filters: Seq[Expression]): BasicScanExecTransformer = copy(pushDownFilters = Some(filters)) + + // Delta's upstream CDF filter-pushdown tests assert the executed plan prints + // `PushedFilters: [*IsNotNull(id), *LessThan(id,5)]`. The leading `*` is Spark's + // RowDataSourceScanExec convention for a filter the source evaluates itself, so no separate + // post-scan Filter is needed. Gluten pushes every conjunct into the native scan via + // PushDownFilterToScan and applies them as exact row-level filters, so the paired + // FilterExecTransformer is a no-op (FilterExecTransformerBase.isNoop) -- the same end state the + // `*` advertises. The inherited FileSourceScanLike rendering leaves `PushedFilters` unmarked, + // so mark it in the rendered plan string. (`metadata` is a lazy val, so it cannot be + // super-overridden -- post-process the rendered node string instead.) + override def simpleString(maxFields: Int): String = + DeltaScanTransformer.markPushedFilters(super.simpleString(maxFields)) } object DeltaScanTransformer { val DELETION_VECTOR_UNSUPPORTED = "Deletion vector is not supported in native." + /** + * Mark every entry of the `PushedFilters: [...]` list in a rendered plan-node string with a `*`, + * indicating the native scan fully evaluates those filters. Returns the text unchanged when no + * (untruncated) `PushedFilters` list is present. + */ + private[execution] def markPushedFilters(text: String): String = { + val marker = "PushedFilters: [" + val markerAt = text.indexOf(marker) + if (markerAt < 0) { + return text + } + val listStart = markerAt + marker.length - 1 // index of the opening '[' + var depth = 0 + var i = listStart + var listEnd = -1 + while (i < text.length && listEnd < 0) { + text.charAt(i) match { + case '[' | '(' => depth += 1 + case ']' | ')' => + depth -= 1 + if (depth == 0) { + listEnd = i + } + case _ => + } + i += 1 + } + if (listEnd < 0) { + return text // truncated/abbreviated list; leave as-is + } + val marked = starPushedFilters(text.substring(listStart, listEnd + 1)) + text.substring(0, listStart) + marked + text.substring(listEnd + 1) + } + + /** + * Prefix each top-level entry of a rendered `PushedFilters` list (`"[f1, f2, ...]"`) with `*` to + * mark it as fully handled by the native scan. Depth-aware: commas nested inside a single filter + * (e.g. `In(id, [1,2,3])`) are not treated as entry separators. + */ + private[execution] def starPushedFilters(rendered: String): String = { + if (rendered.length < 2 || rendered.head != '[' || rendered.last != ']') { + return rendered + } + val inner = rendered.substring(1, rendered.length - 1) + if (inner.isEmpty) { + return rendered + } + val entries = scala.collection.mutable.ArrayBuffer.empty[String] + val current = new StringBuilder + var depth = 0 + var i = 0 + while (i < inner.length) { + val c = inner.charAt(i) + if (c == '[' || c == '(') { + depth += 1 + current.append(c) + i += 1 + } else if (c == ']' || c == ')') { + depth -= 1 + current.append(c) + i += 1 + } else if (c == ',' && depth == 0 && i + 1 < inner.length && inner.charAt(i + 1) == ' ') { + entries += current.toString + current.clear() + i += 2 + } else { + current.append(c) + i += 1 + } + } + entries += current.toString + entries.map("*" + _).mkString("[", ", ", "]") + } + def apply(scanExec: FileSourceScanExec): DeltaScanTransformer = { new DeltaScanTransformer( scanExec.relation, From 78c409d229d00df2b080ce6b2584623c333f7c7c Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Fri, 24 Jul 2026 23:41:47 +0000 Subject: [PATCH 23/24] Revert "[VL][Delta] Mark CDF PushedFilters as native-handled in plan string (Delta-scoped)" This reverts commit 2dbb578c9. The Delta-scoped marking is undone so the next commit can apply the equivalent marking consistently across all Gluten file-source scans (not just Delta) in the shared FileSourceScanExecTransformerBase. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 02286396-395f-41db-ad89-ad69a192cded --- .../execution/DeltaScanTransformer.scala | 86 ------------------- 1 file changed, 86 deletions(-) diff --git a/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala b/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala index 64f0d469e8d..c2cb6604db8 100644 --- a/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala +++ b/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala @@ -157,98 +157,12 @@ case class DeltaScanTransformer( override def withNewPushdownFilters(filters: Seq[Expression]): BasicScanExecTransformer = copy(pushDownFilters = Some(filters)) - - // Delta's upstream CDF filter-pushdown tests assert the executed plan prints - // `PushedFilters: [*IsNotNull(id), *LessThan(id,5)]`. The leading `*` is Spark's - // RowDataSourceScanExec convention for a filter the source evaluates itself, so no separate - // post-scan Filter is needed. Gluten pushes every conjunct into the native scan via - // PushDownFilterToScan and applies them as exact row-level filters, so the paired - // FilterExecTransformer is a no-op (FilterExecTransformerBase.isNoop) -- the same end state the - // `*` advertises. The inherited FileSourceScanLike rendering leaves `PushedFilters` unmarked, - // so mark it in the rendered plan string. (`metadata` is a lazy val, so it cannot be - // super-overridden -- post-process the rendered node string instead.) - override def simpleString(maxFields: Int): String = - DeltaScanTransformer.markPushedFilters(super.simpleString(maxFields)) } object DeltaScanTransformer { val DELETION_VECTOR_UNSUPPORTED = "Deletion vector is not supported in native." - /** - * Mark every entry of the `PushedFilters: [...]` list in a rendered plan-node string with a `*`, - * indicating the native scan fully evaluates those filters. Returns the text unchanged when no - * (untruncated) `PushedFilters` list is present. - */ - private[execution] def markPushedFilters(text: String): String = { - val marker = "PushedFilters: [" - val markerAt = text.indexOf(marker) - if (markerAt < 0) { - return text - } - val listStart = markerAt + marker.length - 1 // index of the opening '[' - var depth = 0 - var i = listStart - var listEnd = -1 - while (i < text.length && listEnd < 0) { - text.charAt(i) match { - case '[' | '(' => depth += 1 - case ']' | ')' => - depth -= 1 - if (depth == 0) { - listEnd = i - } - case _ => - } - i += 1 - } - if (listEnd < 0) { - return text // truncated/abbreviated list; leave as-is - } - val marked = starPushedFilters(text.substring(listStart, listEnd + 1)) - text.substring(0, listStart) + marked + text.substring(listEnd + 1) - } - - /** - * Prefix each top-level entry of a rendered `PushedFilters` list (`"[f1, f2, ...]"`) with `*` to - * mark it as fully handled by the native scan. Depth-aware: commas nested inside a single filter - * (e.g. `In(id, [1,2,3])`) are not treated as entry separators. - */ - private[execution] def starPushedFilters(rendered: String): String = { - if (rendered.length < 2 || rendered.head != '[' || rendered.last != ']') { - return rendered - } - val inner = rendered.substring(1, rendered.length - 1) - if (inner.isEmpty) { - return rendered - } - val entries = scala.collection.mutable.ArrayBuffer.empty[String] - val current = new StringBuilder - var depth = 0 - var i = 0 - while (i < inner.length) { - val c = inner.charAt(i) - if (c == '[' || c == '(') { - depth += 1 - current.append(c) - i += 1 - } else if (c == ']' || c == ')') { - depth -= 1 - current.append(c) - i += 1 - } else if (c == ',' && depth == 0 && i + 1 < inner.length && inner.charAt(i + 1) == ' ') { - entries += current.toString - current.clear() - i += 2 - } else { - current.append(c) - i += 1 - } - } - entries += current.toString - entries.map("*" + _).mkString("[", ", ", "]") - } - def apply(scanExec: FileSourceScanExec): DeltaScanTransformer = { new DeltaScanTransformer( scanExec.relation, From 307abb59fba5878602271ecdc3e9ab8f4f23be41 Mon Sep 17 00:00:00 2001 From: Felipe Fujiy Pessoto Date: Fri, 24 Jul 2026 23:50:02 +0000 Subject: [PATCH 24/24] [VL] Mark natively-handled PushedFilters with `*` for all file-source scans Consistent, all-scans version of the CDF filter-pushdown rendering fix (the Delta-scoped variant was added then reverted in the previous two commits). Move the marking into the shared FileSourceScanExecTransformerBase so every Gluten file-source scan -- not just Delta -- renders `PushedFilters` with a `*` on each entry, matching Spark's RowDataSourceScanExec convention for a filter the source fully evaluates itself. Gluten pushes every conjunct into the native scan via PushDownFilterToScan and applies them as exact row-level filters, so the paired FilterExecTransformer is a no-op (FilterExecTransformerBase.isNoop) -- the same end state the `*` advertises. `metadata` is a lazy val and cannot be super-overridden, so the mark is applied to the rendered plan string in both paths that print it: - simpleString (used by executedPlan.toString, e.g. Delta's CDF UTs), and - verboseStringWithOperatorId (used by the formatted-explain plan-stability golden files). Golden plans updated accordingly (TPC-H approved-plan, TPC-DS plan-stability, and gluten-tpch-plan-stability across Spark 3.3/3.4/3.5/4.0/4.1): 6264 PushedFilters entries across 998 files now carry `*`. The goldens contain no DataSourceV2 BatchScan or vanilla FileSourceScanExec PushedFilters, so every entry originates from a FileSourceScanExecTransformer and marking all of them reproduces the new rendering exactly. The authoritative way to refresh them remains re-running the plan-stability suites with GLUTEN_UPDATE=1; the edits here were produced by the same deterministic marking the code applies. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 02286396-395f-41db-ad89-ad69a192cded [VL] Fix over-marked PushedFilters on vanilla scans in TPC-H golden plans The previous commit marked every `PushedFilters` entry with `*` across all golden plans. That was wrong for the TPC-H approved-plan goldens (VeloxTPCHSuite), which are rendered in AQE FormattedMode and therefore print BOTH plans: +- == Final Plan == ... FileSourceScanExecTransformer parquet (1) <- Gluten offloaded scan +- == Initial Plan == ... Scan parquet (14) <- vanilla FileSourceScanExec The `*`-marking lives in FileSourceScanExecTransformerBase, so only the offloaded FileSourceScanExecTransformer node (1) prints `*`. The vanilla `Scan parquet` node (14) -- a plain FileSourceScanExec shown in the Initial Plan -- prints its PushedFilters WITHOUT `*`. Marking node (14) in the golden made VeloxTPCHSuite's FormattedMode comparison mismatch, reddening spark-test-spark33/34/35. Unmark PushedFilters under vanilla `Scan parquet` nodes; keep the offloaded `FileSourceScanExecTransformer` nodes marked. This also matches the semantics of `*` (source fully evaluates the filter, no separate Filter needed): true for the offloaded scan whose paired FilterExecTransformer is a no-op, false for the vanilla Initial-Plan scan that still has a real Filter above it. The TPC-DS and gluten-tpch plan-stability goldens are unaffected: those suites disable AQE (no Initial Plan), so they contain only FileSourceScanExecTransformer scan nodes, all of which correctly stay marked. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 02286396-395f-41db-ad89-ad69a192cded [VL][Delta] Match vanilla Delta CDF PushedFilters rendering for special-char columns Delta's CDF filter-pushdown tests over a column-mapping table (DeltaCDC{Id,Name}ColumnMappingSuite / SQL variants, "filters with special characters in name should be pushed down") assert: PushedFilters: [*IsNotNull(id with space), *LessThan(id with space,5)] Vanilla Delta serves a CDF read through a single PrunedFilteredScan (DeltaCDFRelation), whose V1 PushedFilters are translated with nested-predicate pushdown DISABLED, so a column name is rendered verbatim (unquoted). Gluten offloads the CDF read to a parquet-backed scan, where Spark translates the same filters with nested pushdown ENABLED and back-quotes any name that needs quoting: PushedFilters: [*IsNotNull(`id with space`), *LessThan(`id with space`,5)] The `*` (added for all Gluten file scans in the prior commits) was already correct; only the display-only back-quoting differed. Drop it for CDF scans to match vanilla Delta. Scope is limited to CDF scans (relation.location is CdcAddFileIndex / TahoeRemoveFileIndex / TahoeChangeFileIndex): a regular Delta read is a parquet scan in vanilla Spark too and legitimately keeps the quoting. `metadata` is a lazy val and cannot be super-overridden, so both rewrites (`*` marking in the base, back-quote removal here) are applied to the rendered plan string. Factor the list-locating logic in FileSourceScanExecTransformerBase into a reusable `rewritePushedFiltersList` so DeltaScanTransformer layers the CDF un-quoting over the base `*`-marking in simpleString / verboseStringWithOperatorId. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 02286396-395f-41db-ad89-ad69a192cded --- .../v1-bhj-ras/spark32/1.txt | 2 +- .../v1-bhj-ras/spark32/10.txt | 8 +- .../v1-bhj-ras/spark32/11.txt | 6 +- .../v1-bhj-ras/spark32/12.txt | 4 +- .../v1-bhj-ras/spark32/13.txt | 2 +- .../v1-bhj-ras/spark32/14.txt | 4 +- .../v1-bhj-ras/spark32/15.txt | 4 +- .../v1-bhj-ras/spark32/16.txt | 4 +- .../v1-bhj-ras/spark32/18.txt | 6 +- .../v1-bhj-ras/spark32/19.txt | 4 +- .../v1-bhj-ras/spark32/20.txt | 10 +- .../v1-bhj-ras/spark32/21.txt | 10 +- .../v1-bhj-ras/spark32/22.txt | 2 +- .../v1-bhj-ras/spark32/3.txt | 6 +- .../v1-bhj-ras/spark32/4.txt | 4 +- .../v1-bhj-ras/spark32/5.txt | 12 +-- .../v1-bhj-ras/spark32/6.txt | 2 +- .../v1-bhj-ras/spark32/7.txt | 10 +- .../v1-bhj-ras/spark32/8.txt | 16 +-- .../v1-bhj-ras/spark32/9.txt | 12 +-- .../v1-bhj-ras/spark33/1.txt | 2 +- .../v1-bhj-ras/spark33/10.txt | 8 +- .../v1-bhj-ras/spark33/11.txt | 8 +- .../v1-bhj-ras/spark33/12.txt | 4 +- .../v1-bhj-ras/spark33/13.txt | 2 +- .../v1-bhj-ras/spark33/14.txt | 4 +- .../v1-bhj-ras/spark33/15.txt | 6 +- .../v1-bhj-ras/spark33/16.txt | 4 +- .../v1-bhj-ras/spark33/18.txt | 6 +- .../v1-bhj-ras/spark33/19.txt | 4 +- .../v1-bhj-ras/spark33/20.txt | 10 +- .../v1-bhj-ras/spark33/21.txt | 10 +- .../v1-bhj-ras/spark33/22.txt | 4 +- .../v1-bhj-ras/spark33/3.txt | 6 +- .../v1-bhj-ras/spark33/4.txt | 4 +- .../v1-bhj-ras/spark33/5.txt | 12 +-- .../v1-bhj-ras/spark33/6.txt | 2 +- .../v1-bhj-ras/spark33/7.txt | 10 +- .../v1-bhj-ras/spark33/8.txt | 16 +-- .../v1-bhj-ras/spark33/9.txt | 12 +-- .../v1-bhj-ras/spark34/1.txt | 2 +- .../v1-bhj-ras/spark34/10.txt | 8 +- .../v1-bhj-ras/spark34/11.txt | 8 +- .../v1-bhj-ras/spark34/12.txt | 4 +- .../v1-bhj-ras/spark34/13.txt | 2 +- .../v1-bhj-ras/spark34/14.txt | 4 +- .../v1-bhj-ras/spark34/15.txt | 6 +- .../v1-bhj-ras/spark34/16.txt | 4 +- .../v1-bhj-ras/spark34/18.txt | 6 +- .../v1-bhj-ras/spark34/19.txt | 4 +- .../v1-bhj-ras/spark34/20.txt | 10 +- .../v1-bhj-ras/spark34/21.txt | 10 +- .../v1-bhj-ras/spark34/22.txt | 4 +- .../v1-bhj-ras/spark34/3.txt | 6 +- .../v1-bhj-ras/spark34/4.txt | 4 +- .../v1-bhj-ras/spark34/5.txt | 12 +-- .../v1-bhj-ras/spark34/6.txt | 2 +- .../v1-bhj-ras/spark34/7.txt | 10 +- .../v1-bhj-ras/spark34/8.txt | 16 +-- .../v1-bhj-ras/spark34/9.txt | 12 +-- .../v1-bhj-ras/spark35/1.txt | 2 +- .../v1-bhj-ras/spark35/10.txt | 8 +- .../v1-bhj-ras/spark35/11.txt | 8 +- .../v1-bhj-ras/spark35/12.txt | 4 +- .../v1-bhj-ras/spark35/13.txt | 2 +- .../v1-bhj-ras/spark35/14.txt | 4 +- .../v1-bhj-ras/spark35/15.txt | 6 +- .../v1-bhj-ras/spark35/16.txt | 4 +- .../v1-bhj-ras/spark35/18.txt | 6 +- .../v1-bhj-ras/spark35/19.txt | 4 +- .../v1-bhj-ras/spark35/20.txt | 10 +- .../v1-bhj-ras/spark35/21.txt | 10 +- .../v1-bhj-ras/spark35/22.txt | 4 +- .../v1-bhj-ras/spark35/3.txt | 6 +- .../v1-bhj-ras/spark35/4.txt | 4 +- .../v1-bhj-ras/spark35/5.txt | 12 +-- .../v1-bhj-ras/spark35/6.txt | 2 +- .../v1-bhj-ras/spark35/7.txt | 10 +- .../v1-bhj-ras/spark35/8.txt | 16 +-- .../v1-bhj-ras/spark35/9.txt | 12 +-- .../tpch-approved-plan/v1-bhj/spark32/1.txt | 2 +- .../tpch-approved-plan/v1-bhj/spark32/10.txt | 8 +- .../tpch-approved-plan/v1-bhj/spark32/11.txt | 6 +- .../tpch-approved-plan/v1-bhj/spark32/12.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark32/13.txt | 2 +- .../tpch-approved-plan/v1-bhj/spark32/14.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark32/15.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark32/16.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark32/18.txt | 6 +- .../tpch-approved-plan/v1-bhj/spark32/19.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark32/20.txt | 10 +- .../tpch-approved-plan/v1-bhj/spark32/21.txt | 10 +- .../tpch-approved-plan/v1-bhj/spark32/22.txt | 2 +- .../tpch-approved-plan/v1-bhj/spark32/3.txt | 6 +- .../tpch-approved-plan/v1-bhj/spark32/4.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark32/5.txt | 12 +-- .../tpch-approved-plan/v1-bhj/spark32/6.txt | 2 +- .../tpch-approved-plan/v1-bhj/spark32/7.txt | 10 +- .../tpch-approved-plan/v1-bhj/spark32/8.txt | 16 +-- .../tpch-approved-plan/v1-bhj/spark32/9.txt | 12 +-- .../tpch-approved-plan/v1-bhj/spark33/1.txt | 2 +- .../tpch-approved-plan/v1-bhj/spark33/10.txt | 8 +- .../tpch-approved-plan/v1-bhj/spark33/11.txt | 8 +- .../tpch-approved-plan/v1-bhj/spark33/12.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark33/13.txt | 2 +- .../tpch-approved-plan/v1-bhj/spark33/14.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark33/15.txt | 6 +- .../tpch-approved-plan/v1-bhj/spark33/16.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark33/18.txt | 6 +- .../tpch-approved-plan/v1-bhj/spark33/19.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark33/20.txt | 10 +- .../tpch-approved-plan/v1-bhj/spark33/21.txt | 10 +- .../tpch-approved-plan/v1-bhj/spark33/22.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark33/3.txt | 6 +- .../tpch-approved-plan/v1-bhj/spark33/4.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark33/5.txt | 12 +-- .../tpch-approved-plan/v1-bhj/spark33/6.txt | 2 +- .../tpch-approved-plan/v1-bhj/spark33/7.txt | 10 +- .../tpch-approved-plan/v1-bhj/spark33/8.txt | 16 +-- .../tpch-approved-plan/v1-bhj/spark33/9.txt | 12 +-- .../tpch-approved-plan/v1-bhj/spark34/1.txt | 2 +- .../tpch-approved-plan/v1-bhj/spark34/10.txt | 8 +- .../tpch-approved-plan/v1-bhj/spark34/11.txt | 8 +- .../tpch-approved-plan/v1-bhj/spark34/12.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark34/13.txt | 2 +- .../tpch-approved-plan/v1-bhj/spark34/14.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark34/15.txt | 6 +- .../tpch-approved-plan/v1-bhj/spark34/16.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark34/18.txt | 6 +- .../tpch-approved-plan/v1-bhj/spark34/19.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark34/20.txt | 10 +- .../tpch-approved-plan/v1-bhj/spark34/21.txt | 10 +- .../tpch-approved-plan/v1-bhj/spark34/22.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark34/3.txt | 6 +- .../tpch-approved-plan/v1-bhj/spark34/4.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark34/5.txt | 12 +-- .../tpch-approved-plan/v1-bhj/spark34/6.txt | 2 +- .../tpch-approved-plan/v1-bhj/spark34/7.txt | 10 +- .../tpch-approved-plan/v1-bhj/spark34/8.txt | 16 +-- .../tpch-approved-plan/v1-bhj/spark34/9.txt | 12 +-- .../tpch-approved-plan/v1-bhj/spark35/1.txt | 2 +- .../tpch-approved-plan/v1-bhj/spark35/10.txt | 8 +- .../tpch-approved-plan/v1-bhj/spark35/11.txt | 8 +- .../tpch-approved-plan/v1-bhj/spark35/12.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark35/13.txt | 2 +- .../tpch-approved-plan/v1-bhj/spark35/14.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark35/15.txt | 6 +- .../tpch-approved-plan/v1-bhj/spark35/16.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark35/18.txt | 6 +- .../tpch-approved-plan/v1-bhj/spark35/19.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark35/20.txt | 10 +- .../tpch-approved-plan/v1-bhj/spark35/21.txt | 10 +- .../tpch-approved-plan/v1-bhj/spark35/22.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark35/3.txt | 6 +- .../tpch-approved-plan/v1-bhj/spark35/4.txt | 4 +- .../tpch-approved-plan/v1-bhj/spark35/5.txt | 12 +-- .../tpch-approved-plan/v1-bhj/spark35/6.txt | 2 +- .../tpch-approved-plan/v1-bhj/spark35/7.txt | 10 +- .../tpch-approved-plan/v1-bhj/spark35/8.txt | 16 +-- .../tpch-approved-plan/v1-bhj/spark35/9.txt | 12 +-- .../tpch-approved-plan/v1-ras/spark32/1.txt | 2 +- .../tpch-approved-plan/v1-ras/spark32/10.txt | 8 +- .../tpch-approved-plan/v1-ras/spark32/11.txt | 6 +- .../tpch-approved-plan/v1-ras/spark32/12.txt | 4 +- .../tpch-approved-plan/v1-ras/spark32/13.txt | 2 +- .../tpch-approved-plan/v1-ras/spark32/14.txt | 4 +- .../tpch-approved-plan/v1-ras/spark32/15.txt | 4 +- .../tpch-approved-plan/v1-ras/spark32/16.txt | 4 +- .../tpch-approved-plan/v1-ras/spark32/17.txt | 6 +- .../tpch-approved-plan/v1-ras/spark32/18.txt | 6 +- .../tpch-approved-plan/v1-ras/spark32/19.txt | 4 +- .../tpch-approved-plan/v1-ras/spark32/20.txt | 10 +- .../tpch-approved-plan/v1-ras/spark32/21.txt | 10 +- .../tpch-approved-plan/v1-ras/spark32/22.txt | 2 +- .../tpch-approved-plan/v1-ras/spark32/3.txt | 6 +- .../tpch-approved-plan/v1-ras/spark32/4.txt | 4 +- .../tpch-approved-plan/v1-ras/spark32/5.txt | 12 +-- .../tpch-approved-plan/v1-ras/spark32/6.txt | 2 +- .../tpch-approved-plan/v1-ras/spark32/7.txt | 10 +- .../tpch-approved-plan/v1-ras/spark32/8.txt | 16 +-- .../tpch-approved-plan/v1-ras/spark32/9.txt | 12 +-- .../tpch-approved-plan/v1-ras/spark33/1.txt | 2 +- .../tpch-approved-plan/v1-ras/spark33/10.txt | 8 +- .../tpch-approved-plan/v1-ras/spark33/11.txt | 8 +- .../tpch-approved-plan/v1-ras/spark33/12.txt | 4 +- .../tpch-approved-plan/v1-ras/spark33/13.txt | 2 +- .../tpch-approved-plan/v1-ras/spark33/14.txt | 4 +- .../tpch-approved-plan/v1-ras/spark33/15.txt | 6 +- .../tpch-approved-plan/v1-ras/spark33/16.txt | 4 +- .../tpch-approved-plan/v1-ras/spark33/17.txt | 6 +- .../tpch-approved-plan/v1-ras/spark33/18.txt | 6 +- .../tpch-approved-plan/v1-ras/spark33/19.txt | 4 +- .../tpch-approved-plan/v1-ras/spark33/20.txt | 10 +- .../tpch-approved-plan/v1-ras/spark33/21.txt | 10 +- .../tpch-approved-plan/v1-ras/spark33/22.txt | 4 +- .../tpch-approved-plan/v1-ras/spark33/3.txt | 6 +- .../tpch-approved-plan/v1-ras/spark33/4.txt | 4 +- .../tpch-approved-plan/v1-ras/spark33/5.txt | 12 +-- .../tpch-approved-plan/v1-ras/spark33/6.txt | 2 +- .../tpch-approved-plan/v1-ras/spark33/7.txt | 10 +- .../tpch-approved-plan/v1-ras/spark33/8.txt | 16 +-- .../tpch-approved-plan/v1-ras/spark33/9.txt | 12 +-- .../tpch-approved-plan/v1-ras/spark34/1.txt | 2 +- .../tpch-approved-plan/v1-ras/spark34/10.txt | 8 +- .../tpch-approved-plan/v1-ras/spark34/11.txt | 8 +- .../tpch-approved-plan/v1-ras/spark34/12.txt | 4 +- .../tpch-approved-plan/v1-ras/spark34/13.txt | 2 +- .../tpch-approved-plan/v1-ras/spark34/14.txt | 4 +- .../tpch-approved-plan/v1-ras/spark34/15.txt | 6 +- .../tpch-approved-plan/v1-ras/spark34/16.txt | 4 +- .../tpch-approved-plan/v1-ras/spark34/17.txt | 6 +- .../tpch-approved-plan/v1-ras/spark34/18.txt | 6 +- .../tpch-approved-plan/v1-ras/spark34/19.txt | 4 +- .../tpch-approved-plan/v1-ras/spark34/20.txt | 10 +- .../tpch-approved-plan/v1-ras/spark34/21.txt | 10 +- .../tpch-approved-plan/v1-ras/spark34/22.txt | 4 +- .../tpch-approved-plan/v1-ras/spark34/3.txt | 6 +- .../tpch-approved-plan/v1-ras/spark34/4.txt | 4 +- .../tpch-approved-plan/v1-ras/spark34/5.txt | 12 +-- .../tpch-approved-plan/v1-ras/spark34/6.txt | 2 +- .../tpch-approved-plan/v1-ras/spark34/7.txt | 10 +- .../tpch-approved-plan/v1-ras/spark34/8.txt | 16 +-- .../tpch-approved-plan/v1-ras/spark34/9.txt | 12 +-- .../tpch-approved-plan/v1-ras/spark35/1.txt | 2 +- .../tpch-approved-plan/v1-ras/spark35/10.txt | 8 +- .../tpch-approved-plan/v1-ras/spark35/11.txt | 8 +- .../tpch-approved-plan/v1-ras/spark35/12.txt | 4 +- .../tpch-approved-plan/v1-ras/spark35/13.txt | 2 +- .../tpch-approved-plan/v1-ras/spark35/14.txt | 4 +- .../tpch-approved-plan/v1-ras/spark35/15.txt | 6 +- .../tpch-approved-plan/v1-ras/spark35/16.txt | 4 +- .../tpch-approved-plan/v1-ras/spark35/17.txt | 6 +- .../tpch-approved-plan/v1-ras/spark35/18.txt | 6 +- .../tpch-approved-plan/v1-ras/spark35/19.txt | 4 +- .../tpch-approved-plan/v1-ras/spark35/20.txt | 10 +- .../tpch-approved-plan/v1-ras/spark35/21.txt | 10 +- .../tpch-approved-plan/v1-ras/spark35/22.txt | 4 +- .../tpch-approved-plan/v1-ras/spark35/3.txt | 6 +- .../tpch-approved-plan/v1-ras/spark35/4.txt | 4 +- .../tpch-approved-plan/v1-ras/spark35/5.txt | 12 +-- .../tpch-approved-plan/v1-ras/spark35/6.txt | 2 +- .../tpch-approved-plan/v1-ras/spark35/7.txt | 10 +- .../tpch-approved-plan/v1-ras/spark35/8.txt | 16 +-- .../tpch-approved-plan/v1-ras/spark35/9.txt | 12 +-- .../tpch-approved-plan/v1/spark32/1.txt | 2 +- .../tpch-approved-plan/v1/spark32/10.txt | 8 +- .../tpch-approved-plan/v1/spark32/11.txt | 6 +- .../tpch-approved-plan/v1/spark32/12.txt | 4 +- .../tpch-approved-plan/v1/spark32/13.txt | 2 +- .../tpch-approved-plan/v1/spark32/14.txt | 4 +- .../tpch-approved-plan/v1/spark32/15.txt | 4 +- .../tpch-approved-plan/v1/spark32/16.txt | 4 +- .../tpch-approved-plan/v1/spark32/17.txt | 6 +- .../tpch-approved-plan/v1/spark32/18.txt | 6 +- .../tpch-approved-plan/v1/spark32/19.txt | 4 +- .../tpch-approved-plan/v1/spark32/20.txt | 10 +- .../tpch-approved-plan/v1/spark32/21.txt | 10 +- .../tpch-approved-plan/v1/spark32/22.txt | 2 +- .../tpch-approved-plan/v1/spark32/3.txt | 6 +- .../tpch-approved-plan/v1/spark32/4.txt | 4 +- .../tpch-approved-plan/v1/spark32/5.txt | 12 +-- .../tpch-approved-plan/v1/spark32/6.txt | 2 +- .../tpch-approved-plan/v1/spark32/7.txt | 10 +- .../tpch-approved-plan/v1/spark32/8.txt | 16 +-- .../tpch-approved-plan/v1/spark32/9.txt | 12 +-- .../tpch-approved-plan/v1/spark33/1.txt | 2 +- .../tpch-approved-plan/v1/spark33/10.txt | 8 +- .../tpch-approved-plan/v1/spark33/11.txt | 8 +- .../tpch-approved-plan/v1/spark33/12.txt | 4 +- .../tpch-approved-plan/v1/spark33/13.txt | 2 +- .../tpch-approved-plan/v1/spark33/14.txt | 4 +- .../tpch-approved-plan/v1/spark33/15.txt | 6 +- .../tpch-approved-plan/v1/spark33/16.txt | 4 +- .../tpch-approved-plan/v1/spark33/17.txt | 6 +- .../tpch-approved-plan/v1/spark33/18.txt | 6 +- .../tpch-approved-plan/v1/spark33/19.txt | 4 +- .../tpch-approved-plan/v1/spark33/20.txt | 10 +- .../tpch-approved-plan/v1/spark33/21.txt | 10 +- .../tpch-approved-plan/v1/spark33/22.txt | 4 +- .../tpch-approved-plan/v1/spark33/3.txt | 6 +- .../tpch-approved-plan/v1/spark33/4.txt | 4 +- .../tpch-approved-plan/v1/spark33/5.txt | 12 +-- .../tpch-approved-plan/v1/spark33/6.txt | 2 +- .../tpch-approved-plan/v1/spark33/7.txt | 10 +- .../tpch-approved-plan/v1/spark33/8.txt | 16 +-- .../tpch-approved-plan/v1/spark33/9.txt | 12 +-- .../tpch-approved-plan/v1/spark34/1.txt | 2 +- .../tpch-approved-plan/v1/spark34/10.txt | 8 +- .../tpch-approved-plan/v1/spark34/11.txt | 8 +- .../tpch-approved-plan/v1/spark34/12.txt | 4 +- .../tpch-approved-plan/v1/spark34/13.txt | 2 +- .../tpch-approved-plan/v1/spark34/14.txt | 4 +- .../tpch-approved-plan/v1/spark34/15.txt | 6 +- .../tpch-approved-plan/v1/spark34/16.txt | 4 +- .../tpch-approved-plan/v1/spark34/17.txt | 6 +- .../tpch-approved-plan/v1/spark34/18.txt | 6 +- .../tpch-approved-plan/v1/spark34/19.txt | 4 +- .../tpch-approved-plan/v1/spark34/20.txt | 10 +- .../tpch-approved-plan/v1/spark34/21.txt | 10 +- .../tpch-approved-plan/v1/spark34/22.txt | 4 +- .../tpch-approved-plan/v1/spark34/3.txt | 6 +- .../tpch-approved-plan/v1/spark34/4.txt | 4 +- .../tpch-approved-plan/v1/spark34/5.txt | 12 +-- .../tpch-approved-plan/v1/spark34/6.txt | 2 +- .../tpch-approved-plan/v1/spark34/7.txt | 10 +- .../tpch-approved-plan/v1/spark34/8.txt | 16 +-- .../tpch-approved-plan/v1/spark34/9.txt | 12 +-- .../tpch-approved-plan/v1/spark35/1.txt | 2 +- .../tpch-approved-plan/v1/spark35/10.txt | 8 +- .../tpch-approved-plan/v1/spark35/11.txt | 8 +- .../tpch-approved-plan/v1/spark35/12.txt | 4 +- .../tpch-approved-plan/v1/spark35/13.txt | 2 +- .../tpch-approved-plan/v1/spark35/14.txt | 4 +- .../tpch-approved-plan/v1/spark35/15.txt | 6 +- .../tpch-approved-plan/v1/spark35/16.txt | 4 +- .../tpch-approved-plan/v1/spark35/17.txt | 6 +- .../tpch-approved-plan/v1/spark35/18.txt | 6 +- .../tpch-approved-plan/v1/spark35/19.txt | 4 +- .../tpch-approved-plan/v1/spark35/20.txt | 10 +- .../tpch-approved-plan/v1/spark35/21.txt | 10 +- .../tpch-approved-plan/v1/spark35/22.txt | 4 +- .../tpch-approved-plan/v1/spark35/3.txt | 6 +- .../tpch-approved-plan/v1/spark35/4.txt | 4 +- .../tpch-approved-plan/v1/spark35/5.txt | 12 +-- .../tpch-approved-plan/v1/spark35/6.txt | 2 +- .../tpch-approved-plan/v1/spark35/7.txt | 10 +- .../tpch-approved-plan/v1/spark35/8.txt | 16 +-- .../tpch-approved-plan/v1/spark35/9.txt | 12 +-- .../execution/DeltaScanTransformer.scala | 48 ++++++++- .../FileSourceScanExecTransformer.scala | 101 ++++++++++++++++++ .../gluten-tpch-plan-stability/q1/explain.txt | 2 +- .../q10/explain.txt | 8 +- .../q11/explain.txt | 8 +- .../q12/explain.txt | 4 +- .../q13/explain.txt | 2 +- .../q14/explain.txt | 4 +- .../q15/explain.txt | 6 +- .../q16/explain.txt | 6 +- .../q17/explain.txt | 6 +- .../q18/explain.txt | 6 +- .../q19/explain.txt | 4 +- .../gluten-tpch-plan-stability/q2/explain.txt | 16 +-- .../q20/explain.txt | 10 +- .../q21/explain.txt | 10 +- .../q22/explain.txt | 4 +- .../gluten-tpch-plan-stability/q3/explain.txt | 6 +- .../gluten-tpch-plan-stability/q4/explain.txt | 4 +- .../gluten-tpch-plan-stability/q5/explain.txt | 12 +-- .../gluten-tpch-plan-stability/q7/explain.txt | 10 +- .../gluten-tpch-plan-stability/q8/explain.txt | 16 +-- .../gluten-tpch-plan-stability/q9/explain.txt | 12 +-- .../q10.sf100/explain.txt | 16 +-- .../q10/explain.txt | 14 +-- .../q19.sf100/explain.txt | 12 +-- .../q19/explain.txt | 12 +-- .../q27.sf100/explain.txt | 18 ++-- .../q27/explain.txt | 18 ++-- .../q3.sf100/explain.txt | 6 +- .../q3/explain.txt | 6 +- .../q34.sf100/explain.txt | 10 +- .../q34/explain.txt | 10 +- .../q42.sf100/explain.txt | 6 +- .../q42/explain.txt | 6 +- .../q43.sf100/explain.txt | 6 +- .../q43/explain.txt | 6 +- .../q46.sf100/explain.txt | 12 +-- .../q46/explain.txt | 12 +-- .../q52.sf100/explain.txt | 6 +- .../q52/explain.txt | 6 +- .../q53.sf100/explain.txt | 8 +- .../q53/explain.txt | 8 +- .../q55.sf100/explain.txt | 6 +- .../q55/explain.txt | 6 +- .../q59.sf100/explain.txt | 20 ++-- .../q59/explain.txt | 14 +-- .../q63.sf100/explain.txt | 8 +- .../q63/explain.txt | 8 +- .../q65.sf100/explain.txt | 10 +- .../q65/explain.txt | 10 +- .../q68.sf100/explain.txt | 14 +-- .../q68/explain.txt | 12 +-- .../q7.sf100/explain.txt | 10 +- .../q7/explain.txt | 10 +- .../q73.sf100/explain.txt | 10 +- .../q73/explain.txt | 10 +- .../q79.sf100/explain.txt | 10 +- .../q79/explain.txt | 10 +- .../q89.sf100/explain.txt | 8 +- .../q89/explain.txt | 8 +- .../q98.sf100/explain.txt | 6 +- .../q98/explain.txt | 6 +- .../q1.sf100/explain.txt | 10 +- .../gluten-approved-plans-v1_4/q1/explain.txt | 10 +- .../q10.sf100/explain.txt | 10 +- .../q10/explain.txt | 8 +- .../q11.sf100/explain.txt | 14 +-- .../q11/explain.txt | 20 ++-- .../q12.sf100/explain.txt | 6 +- .../q12/explain.txt | 6 +- .../q13.sf100/explain.txt | 12 +-- .../q13/explain.txt | 12 +-- .../q14a.sf100/explain.txt | 24 ++--- .../q14a/explain.txt | 24 ++--- .../q14b.sf100/explain.txt | 28 ++--- .../q14b/explain.txt | 28 ++--- .../q15.sf100/explain.txt | 8 +- .../q15/explain.txt | 8 +- .../q16.sf100/explain.txt | 14 +-- .../q16/explain.txt | 8 +- .../q17.sf100/explain.txt | 14 +-- .../q17/explain.txt | 14 +-- .../q18.sf100/explain.txt | 14 +-- .../q18/explain.txt | 14 +-- .../q19.sf100/explain.txt | 12 +-- .../q19/explain.txt | 12 +-- .../q2.sf100/explain.txt | 12 +-- .../gluten-approved-plans-v1_4/q2/explain.txt | 6 +- .../q20.sf100/explain.txt | 6 +- .../q20/explain.txt | 6 +- .../q21.sf100/explain.txt | 8 +- .../q21/explain.txt | 8 +- .../q22.sf100/explain.txt | 8 +- .../q22/explain.txt | 8 +- .../q23a.sf100/explain.txt | 16 +-- .../q23a/explain.txt | 16 +-- .../q23b.sf100/explain.txt | 22 ++-- .../q23b/explain.txt | 22 ++-- .../q24a.sf100/explain.txt | 22 ++-- .../q24a/explain.txt | 14 +-- .../q24b.sf100/explain.txt | 22 ++-- .../q24b/explain.txt | 14 +-- .../q25.sf100/explain.txt | 14 +-- .../q25/explain.txt | 14 +-- .../q26.sf100/explain.txt | 10 +- .../q26/explain.txt | 10 +- .../q27.sf100/explain.txt | 10 +- .../q27/explain.txt | 10 +- .../q28.sf100/explain.txt | 12 +-- .../q28/explain.txt | 12 +-- .../q29.sf100/explain.txt | 16 +-- .../q29/explain.txt | 16 +-- .../q3.sf100/explain.txt | 6 +- .../gluten-approved-plans-v1_4/q3/explain.txt | 6 +- .../q30.sf100/explain.txt | 12 +-- .../q30/explain.txt | 12 +-- .../q31.sf100/explain.txt | 20 ++-- .../q31/explain.txt | 20 ++-- .../q32.sf100/explain.txt | 10 +- .../q32/explain.txt | 8 +- .../q33.sf100/explain.txt | 14 +-- .../q33/explain.txt | 14 +-- .../q34.sf100/explain.txt | 10 +- .../q34/explain.txt | 10 +- .../q35.sf100/explain.txt | 8 +- .../q35/explain.txt | 8 +- .../q36.sf100/explain.txt | 8 +- .../q36/explain.txt | 8 +- .../q37.sf100/explain.txt | 10 +- .../q37/explain.txt | 8 +- .../q38.sf100/explain.txt | 10 +- .../q38/explain.txt | 10 +- .../q39a.sf100/explain.txt | 12 +-- .../q39a/explain.txt | 12 +-- .../q39b.sf100/explain.txt | 12 +-- .../q39b/explain.txt | 12 +-- .../q4.sf100/explain.txt | 18 ++-- .../gluten-approved-plans-v1_4/q4/explain.txt | 28 ++--- .../q40.sf100/explain.txt | 12 +-- .../q40/explain.txt | 10 +- .../q41.sf100/explain.txt | 4 +- .../q41/explain.txt | 4 +- .../q42.sf100/explain.txt | 6 +- .../q42/explain.txt | 6 +- .../q43.sf100/explain.txt | 6 +- .../q43/explain.txt | 6 +- .../q44.sf100/explain.txt | 6 +- .../q44/explain.txt | 6 +- .../q45.sf100/explain.txt | 12 +-- .../q45/explain.txt | 12 +-- .../q46.sf100/explain.txt | 12 +-- .../q46/explain.txt | 12 +-- .../q47.sf100/explain.txt | 8 +- .../q47/explain.txt | 8 +- .../q48.sf100/explain.txt | 10 +- .../q48/explain.txt | 10 +- .../q49.sf100/explain.txt | 14 +-- .../q49/explain.txt | 14 +-- .../q5.sf100/explain.txt | 20 ++-- .../gluten-approved-plans-v1_4/q5/explain.txt | 20 ++-- .../q50.sf100/explain.txt | 10 +- .../q50/explain.txt | 10 +- .../q51.sf100/explain.txt | 6 +- .../q51/explain.txt | 6 +- .../q52.sf100/explain.txt | 6 +- .../q52/explain.txt | 6 +- .../q53.sf100/explain.txt | 8 +- .../q53/explain.txt | 8 +- .../q54.sf100/explain.txt | 22 ++-- .../q54/explain.txt | 22 ++-- .../q55.sf100/explain.txt | 6 +- .../q55/explain.txt | 6 +- .../q56.sf100/explain.txt | 14 +-- .../q56/explain.txt | 14 +-- .../q57.sf100/explain.txt | 8 +- .../q57/explain.txt | 8 +- .../q58.sf100/explain.txt | 14 +-- .../q58/explain.txt | 14 +-- .../q59.sf100/explain.txt | 20 ++-- .../q59/explain.txt | 12 +-- .../q6.sf100/explain.txt | 14 +-- .../gluten-approved-plans-v1_4/q6/explain.txt | 14 +-- .../q60.sf100/explain.txt | 14 +-- .../q60/explain.txt | 14 +-- .../q61.sf100/explain.txt | 16 +-- .../q61/explain.txt | 16 +-- .../q62.sf100/explain.txt | 10 +- .../q62/explain.txt | 10 +- .../q63.sf100/explain.txt | 8 +- .../q63/explain.txt | 8 +- .../q64.sf100/explain.txt | 34 +++--- .../q64/explain.txt | 34 +++--- .../q65.sf100/explain.txt | 10 +- .../q65/explain.txt | 10 +- .../q66.sf100/explain.txt | 12 +-- .../q66/explain.txt | 12 +-- .../q67.sf100/explain.txt | 8 +- .../q67/explain.txt | 8 +- .../q68.sf100/explain.txt | 12 +-- .../q68/explain.txt | 12 +-- .../q69.sf100/explain.txt | 10 +- .../q69/explain.txt | 8 +- .../q7.sf100/explain.txt | 10 +- .../gluten-approved-plans-v1_4/q7/explain.txt | 10 +- .../q70.sf100/explain.txt | 10 +- .../q70/explain.txt | 10 +- .../q71.sf100/explain.txt | 12 +-- .../q71/explain.txt | 12 +-- .../q72.sf100/explain.txt | 22 ++-- .../q72/explain.txt | 22 ++-- .../q73.sf100/explain.txt | 10 +- .../q73/explain.txt | 10 +- .../q74.sf100/explain.txt | 14 +-- .../q74/explain.txt | 20 ++-- .../q75.sf100/explain.txt | 24 ++--- .../q75/explain.txt | 24 ++--- .../q76.sf100/explain.txt | 14 +-- .../q76/explain.txt | 10 +- .../q77.sf100/explain.txt | 14 +-- .../q77/explain.txt | 14 +-- .../q78.sf100/explain.txt | 14 +-- .../q78/explain.txt | 14 +-- .../q79.sf100/explain.txt | 10 +- .../q79/explain.txt | 10 +- .../q8.sf100/explain.txt | 10 +- .../gluten-approved-plans-v1_4/q8/explain.txt | 10 +- .../q80.sf100/explain.txt | 28 ++--- .../q80/explain.txt | 24 ++--- .../q81.sf100/explain.txt | 12 +-- .../q81/explain.txt | 12 +-- .../q82.sf100/explain.txt | 10 +- .../q82/explain.txt | 8 +- .../q83.sf100/explain.txt | 10 +- .../q83/explain.txt | 10 +- .../q84.sf100/explain.txt | 12 +-- .../q84/explain.txt | 12 +-- .../q85.sf100/explain.txt | 20 ++-- .../q85/explain.txt | 16 +-- .../q86.sf100/explain.txt | 6 +- .../q86/explain.txt | 6 +- .../q87.sf100/explain.txt | 10 +- .../q87/explain.txt | 10 +- .../q88.sf100/explain.txt | 36 +++---- .../q88/explain.txt | 36 +++---- .../q89.sf100/explain.txt | 8 +- .../q89/explain.txt | 8 +- .../q9.sf100/explain.txt | 12 +-- .../gluten-approved-plans-v1_4/q9/explain.txt | 12 +-- .../q90.sf100/explain.txt | 12 +-- .../q90/explain.txt | 12 +-- .../q91.sf100/explain.txt | 14 +-- .../q91/explain.txt | 14 +-- .../q92.sf100/explain.txt | 10 +- .../q92/explain.txt | 8 +- .../q93.sf100/explain.txt | 4 +- .../q93/explain.txt | 4 +- .../q94.sf100/explain.txt | 14 +-- .../q94/explain.txt | 8 +- .../q95.sf100/explain.txt | 18 ++-- .../q95/explain.txt | 12 +-- .../q96.sf100/explain.txt | 8 +- .../q96/explain.txt | 8 +- .../q97.sf100/explain.txt | 2 +- .../q97/explain.txt | 2 +- .../q98.sf100/explain.txt | 6 +- .../q98/explain.txt | 6 +- .../q99.sf100/explain.txt | 10 +- .../q99/explain.txt | 10 +- .../q10a.sf100/explain.txt | 10 +- .../q10a/explain.txt | 8 +- .../q11.sf100/explain.txt | 14 +-- .../q11/explain.txt | 20 ++-- .../q12.sf100/explain.txt | 6 +- .../q12/explain.txt | 6 +- .../q14.sf100/explain.txt | 28 ++--- .../q14/explain.txt | 28 ++--- .../q14a.sf100/explain.txt | 26 ++--- .../q14a/explain.txt | 26 ++--- .../q18a.sf100/explain.txt | 34 +++--- .../q18a/explain.txt | 30 +++--- .../q20.sf100/explain.txt | 6 +- .../q20/explain.txt | 6 +- .../q22.sf100/explain.txt | 6 +- .../q22/explain.txt | 6 +- .../q22a.sf100/explain.txt | 8 +- .../q22a/explain.txt | 8 +- .../q24.sf100/explain.txt | 16 +-- .../q24/explain.txt | 14 +-- .../q27a.sf100/explain.txt | 18 ++-- .../q27a/explain.txt | 18 ++-- .../q34.sf100/explain.txt | 10 +- .../q34/explain.txt | 10 +- .../q35.sf100/explain.txt | 8 +- .../q35/explain.txt | 8 +- .../q35a.sf100/explain.txt | 8 +- .../q35a/explain.txt | 8 +- .../q36a.sf100/explain.txt | 8 +- .../q36a/explain.txt | 8 +- .../q47.sf100/explain.txt | 8 +- .../q47/explain.txt | 8 +- .../q49.sf100/explain.txt | 14 +-- .../q49/explain.txt | 14 +-- .../q51a.sf100/explain.txt | 6 +- .../q51a/explain.txt | 6 +- .../q57.sf100/explain.txt | 8 +- .../q57/explain.txt | 8 +- .../q5a.sf100/explain.txt | 20 ++-- .../q5a/explain.txt | 20 ++-- .../q6.sf100/explain.txt | 14 +-- .../gluten-approved-plans-v2_7/q6/explain.txt | 14 +-- .../q64.sf100/explain.txt | 34 +++--- .../q64/explain.txt | 34 +++--- .../q67a.sf100/explain.txt | 8 +- .../q67a/explain.txt | 8 +- .../q70a.sf100/explain.txt | 10 +- .../q70a/explain.txt | 10 +- .../q72.sf100/explain.txt | 22 ++-- .../q72/explain.txt | 22 ++-- .../q74.sf100/explain.txt | 14 +-- .../q74/explain.txt | 20 ++-- .../q75.sf100/explain.txt | 24 ++--- .../q75/explain.txt | 24 ++--- .../q77a.sf100/explain.txt | 14 +-- .../q77a/explain.txt | 14 +-- .../q78.sf100/explain.txt | 14 +-- .../q78/explain.txt | 14 +-- .../q80a.sf100/explain.txt | 34 +++--- .../q80a/explain.txt | 24 ++--- .../q86a.sf100/explain.txt | 6 +- .../q86a/explain.txt | 6 +- .../q98.sf100/explain.txt | 6 +- .../q98/explain.txt | 6 +- .../gluten-tpch-plan-stability/q1/explain.txt | 2 +- .../q10/explain.txt | 8 +- .../q11/explain.txt | 8 +- .../q12/explain.txt | 4 +- .../q13/explain.txt | 2 +- .../q14/explain.txt | 4 +- .../q15/explain.txt | 6 +- .../q16/explain.txt | 6 +- .../q17/explain.txt | 6 +- .../q18/explain.txt | 6 +- .../q19/explain.txt | 4 +- .../gluten-tpch-plan-stability/q2/explain.txt | 16 +-- .../q20/explain.txt | 10 +- .../q21/explain.txt | 10 +- .../q22/explain.txt | 4 +- .../gluten-tpch-plan-stability/q3/explain.txt | 6 +- .../gluten-tpch-plan-stability/q4/explain.txt | 4 +- .../gluten-tpch-plan-stability/q5/explain.txt | 12 +-- .../gluten-tpch-plan-stability/q7/explain.txt | 10 +- .../gluten-tpch-plan-stability/q8/explain.txt | 16 +-- .../gluten-tpch-plan-stability/q9/explain.txt | 12 +-- .../q10.sf100/explain.txt | 16 +-- .../q10/explain.txt | 14 +-- .../q19.sf100/explain.txt | 12 +-- .../q19/explain.txt | 12 +-- .../q27.sf100/explain.txt | 18 ++-- .../q27/explain.txt | 18 ++-- .../q3.sf100/explain.txt | 6 +- .../q3/explain.txt | 6 +- .../q34.sf100/explain.txt | 10 +- .../q34/explain.txt | 10 +- .../q42.sf100/explain.txt | 6 +- .../q42/explain.txt | 6 +- .../q43.sf100/explain.txt | 6 +- .../q43/explain.txt | 6 +- .../q46.sf100/explain.txt | 12 +-- .../q46/explain.txt | 12 +-- .../q52.sf100/explain.txt | 6 +- .../q52/explain.txt | 6 +- .../q53.sf100/explain.txt | 8 +- .../q53/explain.txt | 8 +- .../q55.sf100/explain.txt | 6 +- .../q55/explain.txt | 6 +- .../q59.sf100/explain.txt | 20 ++-- .../q59/explain.txt | 14 +-- .../q63.sf100/explain.txt | 8 +- .../q63/explain.txt | 8 +- .../q65.sf100/explain.txt | 10 +- .../q65/explain.txt | 10 +- .../q68.sf100/explain.txt | 14 +-- .../q68/explain.txt | 12 +-- .../q7.sf100/explain.txt | 10 +- .../q7/explain.txt | 10 +- .../q73.sf100/explain.txt | 10 +- .../q73/explain.txt | 10 +- .../q79.sf100/explain.txt | 10 +- .../q79/explain.txt | 10 +- .../q89.sf100/explain.txt | 8 +- .../q89/explain.txt | 8 +- .../q98.sf100/explain.txt | 6 +- .../q98/explain.txt | 6 +- .../q1.sf100/explain.txt | 10 +- .../gluten-approved-plans-v1_4/q1/explain.txt | 10 +- .../q10.sf100/explain.txt | 10 +- .../q10/explain.txt | 8 +- .../q11.sf100/explain.txt | 14 +-- .../q11/explain.txt | 20 ++-- .../q12.sf100/explain.txt | 6 +- .../q12/explain.txt | 6 +- .../q13.sf100/explain.txt | 12 +-- .../q13/explain.txt | 12 +-- .../q14a.sf100/explain.txt | 24 ++--- .../q14a/explain.txt | 24 ++--- .../q14b.sf100/explain.txt | 28 ++--- .../q14b/explain.txt | 28 ++--- .../q15.sf100/explain.txt | 8 +- .../q15/explain.txt | 8 +- .../q16.sf100/explain.txt | 14 +-- .../q16/explain.txt | 8 +- .../q17.sf100/explain.txt | 14 +-- .../q17/explain.txt | 14 +-- .../q18.sf100/explain.txt | 14 +-- .../q18/explain.txt | 14 +-- .../q19.sf100/explain.txt | 12 +-- .../q19/explain.txt | 12 +-- .../q2.sf100/explain.txt | 12 +-- .../gluten-approved-plans-v1_4/q2/explain.txt | 6 +- .../q20.sf100/explain.txt | 6 +- .../q20/explain.txt | 6 +- .../q21.sf100/explain.txt | 8 +- .../q21/explain.txt | 8 +- .../q22.sf100/explain.txt | 8 +- .../q22/explain.txt | 8 +- .../q23a.sf100/explain.txt | 16 +-- .../q23a/explain.txt | 16 +-- .../q23b.sf100/explain.txt | 22 ++-- .../q23b/explain.txt | 22 ++-- .../q24a.sf100/explain.txt | 22 ++-- .../q24a/explain.txt | 14 +-- .../q24b.sf100/explain.txt | 22 ++-- .../q24b/explain.txt | 14 +-- .../q25.sf100/explain.txt | 14 +-- .../q25/explain.txt | 14 +-- .../q26.sf100/explain.txt | 10 +- .../q26/explain.txt | 10 +- .../q27.sf100/explain.txt | 10 +- .../q27/explain.txt | 10 +- .../q28.sf100/explain.txt | 12 +-- .../q28/explain.txt | 12 +-- .../q29.sf100/explain.txt | 16 +-- .../q29/explain.txt | 16 +-- .../q3.sf100/explain.txt | 6 +- .../gluten-approved-plans-v1_4/q3/explain.txt | 6 +- .../q30.sf100/explain.txt | 12 +-- .../q30/explain.txt | 12 +-- .../q31.sf100/explain.txt | 20 ++-- .../q31/explain.txt | 20 ++-- .../q32.sf100/explain.txt | 10 +- .../q32/explain.txt | 8 +- .../q33.sf100/explain.txt | 14 +-- .../q33/explain.txt | 14 +-- .../q34.sf100/explain.txt | 10 +- .../q34/explain.txt | 10 +- .../q35.sf100/explain.txt | 8 +- .../q35/explain.txt | 8 +- .../q36.sf100/explain.txt | 8 +- .../q36/explain.txt | 8 +- .../q37.sf100/explain.txt | 10 +- .../q37/explain.txt | 8 +- .../q38.sf100/explain.txt | 10 +- .../q38/explain.txt | 10 +- .../q39a.sf100/explain.txt | 12 +-- .../q39a/explain.txt | 12 +-- .../q39b.sf100/explain.txt | 12 +-- .../q39b/explain.txt | 12 +-- .../q4.sf100/explain.txt | 18 ++-- .../gluten-approved-plans-v1_4/q4/explain.txt | 28 ++--- .../q40.sf100/explain.txt | 12 +-- .../q40/explain.txt | 10 +- .../q41.sf100/explain.txt | 4 +- .../q41/explain.txt | 4 +- .../q42.sf100/explain.txt | 6 +- .../q42/explain.txt | 6 +- .../q43.sf100/explain.txt | 6 +- .../q43/explain.txt | 6 +- .../q44.sf100/explain.txt | 6 +- .../q44/explain.txt | 6 +- .../q45.sf100/explain.txt | 12 +-- .../q45/explain.txt | 12 +-- .../q46.sf100/explain.txt | 12 +-- .../q46/explain.txt | 12 +-- .../q47.sf100/explain.txt | 8 +- .../q47/explain.txt | 8 +- .../q48.sf100/explain.txt | 10 +- .../q48/explain.txt | 10 +- .../q49.sf100/explain.txt | 14 +-- .../q49/explain.txt | 14 +-- .../q5.sf100/explain.txt | 20 ++-- .../gluten-approved-plans-v1_4/q5/explain.txt | 20 ++-- .../q50.sf100/explain.txt | 10 +- .../q50/explain.txt | 10 +- .../q51.sf100/explain.txt | 6 +- .../q51/explain.txt | 6 +- .../q52.sf100/explain.txt | 6 +- .../q52/explain.txt | 6 +- .../q53.sf100/explain.txt | 8 +- .../q53/explain.txt | 8 +- .../q54.sf100/explain.txt | 22 ++-- .../q54/explain.txt | 22 ++-- .../q55.sf100/explain.txt | 6 +- .../q55/explain.txt | 6 +- .../q56.sf100/explain.txt | 14 +-- .../q56/explain.txt | 14 +-- .../q57.sf100/explain.txt | 8 +- .../q57/explain.txt | 8 +- .../q58.sf100/explain.txt | 14 +-- .../q58/explain.txt | 14 +-- .../q59.sf100/explain.txt | 20 ++-- .../q59/explain.txt | 12 +-- .../q6.sf100/explain.txt | 14 +-- .../gluten-approved-plans-v1_4/q6/explain.txt | 14 +-- .../q60.sf100/explain.txt | 14 +-- .../q60/explain.txt | 14 +-- .../q61.sf100/explain.txt | 16 +-- .../q61/explain.txt | 16 +-- .../q62.sf100/explain.txt | 10 +- .../q62/explain.txt | 10 +- .../q63.sf100/explain.txt | 8 +- .../q63/explain.txt | 8 +- .../q64.sf100/explain.txt | 34 +++--- .../q64/explain.txt | 34 +++--- .../q65.sf100/explain.txt | 10 +- .../q65/explain.txt | 10 +- .../q66.sf100/explain.txt | 12 +-- .../q66/explain.txt | 12 +-- .../q67.sf100/explain.txt | 8 +- .../q67/explain.txt | 8 +- .../q68.sf100/explain.txt | 12 +-- .../q68/explain.txt | 12 +-- .../q69.sf100/explain.txt | 10 +- .../q69/explain.txt | 8 +- .../q7.sf100/explain.txt | 10 +- .../gluten-approved-plans-v1_4/q7/explain.txt | 10 +- .../q70.sf100/explain.txt | 10 +- .../q70/explain.txt | 10 +- .../q71.sf100/explain.txt | 12 +-- .../q71/explain.txt | 12 +-- .../q72.sf100/explain.txt | 22 ++-- .../q72/explain.txt | 22 ++-- .../q73.sf100/explain.txt | 10 +- .../q73/explain.txt | 10 +- .../q74.sf100/explain.txt | 14 +-- .../q74/explain.txt | 20 ++-- .../q75.sf100/explain.txt | 24 ++--- .../q75/explain.txt | 24 ++--- .../q76.sf100/explain.txt | 14 +-- .../q76/explain.txt | 10 +- .../q77.sf100/explain.txt | 14 +-- .../q77/explain.txt | 14 +-- .../q78.sf100/explain.txt | 14 +-- .../q78/explain.txt | 14 +-- .../q79.sf100/explain.txt | 10 +- .../q79/explain.txt | 10 +- .../q8.sf100/explain.txt | 10 +- .../gluten-approved-plans-v1_4/q8/explain.txt | 10 +- .../q80.sf100/explain.txt | 28 ++--- .../q80/explain.txt | 24 ++--- .../q81.sf100/explain.txt | 12 +-- .../q81/explain.txt | 12 +-- .../q82.sf100/explain.txt | 10 +- .../q82/explain.txt | 8 +- .../q83.sf100/explain.txt | 10 +- .../q83/explain.txt | 10 +- .../q84.sf100/explain.txt | 12 +-- .../q84/explain.txt | 12 +-- .../q85.sf100/explain.txt | 20 ++-- .../q85/explain.txt | 16 +-- .../q86.sf100/explain.txt | 6 +- .../q86/explain.txt | 6 +- .../q87.sf100/explain.txt | 10 +- .../q87/explain.txt | 10 +- .../q88.sf100/explain.txt | 36 +++---- .../q88/explain.txt | 36 +++---- .../q89.sf100/explain.txt | 8 +- .../q89/explain.txt | 8 +- .../q9.sf100/explain.txt | 12 +-- .../gluten-approved-plans-v1_4/q9/explain.txt | 12 +-- .../q90.sf100/explain.txt | 12 +-- .../q90/explain.txt | 12 +-- .../q91.sf100/explain.txt | 14 +-- .../q91/explain.txt | 14 +-- .../q92.sf100/explain.txt | 10 +- .../q92/explain.txt | 8 +- .../q93.sf100/explain.txt | 4 +- .../q93/explain.txt | 4 +- .../q94.sf100/explain.txt | 14 +-- .../q94/explain.txt | 8 +- .../q95.sf100/explain.txt | 18 ++-- .../q95/explain.txt | 12 +-- .../q96.sf100/explain.txt | 8 +- .../q96/explain.txt | 8 +- .../q97.sf100/explain.txt | 2 +- .../q97/explain.txt | 2 +- .../q98.sf100/explain.txt | 6 +- .../q98/explain.txt | 6 +- .../q99.sf100/explain.txt | 10 +- .../q99/explain.txt | 10 +- .../q10a.sf100/explain.txt | 10 +- .../q10a/explain.txt | 8 +- .../q11.sf100/explain.txt | 14 +-- .../q11/explain.txt | 20 ++-- .../q12.sf100/explain.txt | 6 +- .../q12/explain.txt | 6 +- .../q14.sf100/explain.txt | 28 ++--- .../q14/explain.txt | 28 ++--- .../q14a.sf100/explain.txt | 26 ++--- .../q14a/explain.txt | 26 ++--- .../q18a.sf100/explain.txt | 34 +++--- .../q18a/explain.txt | 30 +++--- .../q20.sf100/explain.txt | 6 +- .../q20/explain.txt | 6 +- .../q22.sf100/explain.txt | 6 +- .../q22/explain.txt | 6 +- .../q22a.sf100/explain.txt | 8 +- .../q22a/explain.txt | 8 +- .../q24.sf100/explain.txt | 16 +-- .../q24/explain.txt | 14 +-- .../q27a.sf100/explain.txt | 18 ++-- .../q27a/explain.txt | 18 ++-- .../q34.sf100/explain.txt | 10 +- .../q34/explain.txt | 10 +- .../q35.sf100/explain.txt | 8 +- .../q35/explain.txt | 8 +- .../q35a.sf100/explain.txt | 8 +- .../q35a/explain.txt | 8 +- .../q36a.sf100/explain.txt | 8 +- .../q36a/explain.txt | 8 +- .../q47.sf100/explain.txt | 8 +- .../q47/explain.txt | 8 +- .../q49.sf100/explain.txt | 14 +-- .../q49/explain.txt | 14 +-- .../q51a.sf100/explain.txt | 6 +- .../q51a/explain.txt | 6 +- .../q57.sf100/explain.txt | 8 +- .../q57/explain.txt | 8 +- .../q5a.sf100/explain.txt | 20 ++-- .../q5a/explain.txt | 20 ++-- .../q6.sf100/explain.txt | 14 +-- .../gluten-approved-plans-v2_7/q6/explain.txt | 14 +-- .../q64.sf100/explain.txt | 34 +++--- .../q64/explain.txt | 34 +++--- .../q67a.sf100/explain.txt | 8 +- .../q67a/explain.txt | 8 +- .../q70a.sf100/explain.txt | 10 +- .../q70a/explain.txt | 10 +- .../q72.sf100/explain.txt | 22 ++-- .../q72/explain.txt | 22 ++-- .../q74.sf100/explain.txt | 14 +-- .../q74/explain.txt | 20 ++-- .../q75.sf100/explain.txt | 24 ++--- .../q75/explain.txt | 24 ++--- .../q77a.sf100/explain.txt | 14 +-- .../q77a/explain.txt | 14 +-- .../q78.sf100/explain.txt | 14 +-- .../q78/explain.txt | 14 +-- .../q80a.sf100/explain.txt | 34 +++--- .../q80a/explain.txt | 24 ++--- .../q86a.sf100/explain.txt | 6 +- .../q86a/explain.txt | 6 +- .../q98.sf100/explain.txt | 6 +- .../q98/explain.txt | 6 +- 992 files changed, 5232 insertions(+), 5085 deletions(-) diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/1.txt index 5dbe515a393..d59aaa72807 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/10.txt index 9ee61a29c0b..8b11ea9782d 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/10.txt @@ -66,7 +66,7 @@ AdaptiveSparkPlan (68) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Arguments: (isnotnull(c_custkey#X) AND isnotnull(c_nationkey#X)) Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -119,7 +119,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer @@ -161,7 +161,7 @@ Input [11]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acc Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (24) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/11.txt index 54918ee84c0..3870d672547 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/11.txt @@ -58,7 +58,7 @@ AdaptiveSparkPlan (60) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -69,7 +69,7 @@ Arguments: isnotnull(ps_suppkey#X) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (4) FilterExecTransformer @@ -107,7 +107,7 @@ Input [6]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X, s_suppke Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (13) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/12.txt index 1dee6e87433..67e9d5591ad 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/12.txt @@ -44,7 +44,7 @@ AdaptiveSparkPlan (44) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/13.txt index ef94e280565..91c24959edc 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/13.txt @@ -59,7 +59,7 @@ ReadSchema: struct Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (3) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/14.txt index 1e64d60acb8..c582ee6fbcb 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/14.txt @@ -37,7 +37,7 @@ AdaptiveSparkPlan (35) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Input [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/15.txt index c53628b9d2a..8300c59da71 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/15.txt @@ -46,7 +46,7 @@ AdaptiveSparkPlan (46) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -75,7 +75,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (9) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/16.txt index ce1bf7edfec..f35513a368a 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/16.txt @@ -57,7 +57,7 @@ AdaptiveSparkPlan (59) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -68,7 +68,7 @@ Arguments: isnotnull(ps_partkey#X) Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (4) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/18.txt index 2ebb3a64b8c..90a5dd4f55e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/18.txt @@ -83,7 +83,7 @@ AdaptiveSparkPlan (88) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -112,7 +112,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -209,7 +209,7 @@ Input [6]: [c_custkey#X, c_name#X, o_orderkey#X, o_custkey#X, o_totalprice#X, o_ Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/19.txt index 440d63b276f..529c60f36dd 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/19.txt @@ -36,7 +36,7 @@ AdaptiveSparkPlan (34) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Input [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipin Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/20.txt index 38133b72691..ab0532ba267 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/20.txt @@ -103,7 +103,7 @@ AdaptiveSparkPlan (112) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -144,7 +144,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (12) FilterExecTransformer @@ -155,7 +155,7 @@ Arguments: ((isnotnull(ps_availqty#X) AND isnotnull(ps_partkey#X)) AND isnotnull Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (14) FilterExecTransformer @@ -211,7 +211,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (28) FilterExecTransformer @@ -328,7 +328,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (56) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/21.txt index 602ffef5a86..29385b647d4 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/21.txt @@ -87,7 +87,7 @@ AdaptiveSparkPlan (93) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -116,7 +116,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -160,7 +160,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (19) FilterExecTransformer @@ -207,7 +207,7 @@ Input [5]: [s_suppkey#X, s_name#X, s_nationkey#X, l_orderkey#X, l_suppkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (30) FilterExecTransformer @@ -249,7 +249,7 @@ Input [4]: [s_name#X, s_nationkey#X, l_orderkey#X, o_orderkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (40) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/22.txt index 7eaccda34b0..161491d8afa 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/22.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (40) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/3.txt index 4b5bd223cc2..28164285c95 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/3.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (54) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -87,7 +87,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -107,7 +107,7 @@ Input [5]: [c_custkey#X, o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriorit Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/4.txt index 1ee06025abb..f8e2b289bdb 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/4.txt @@ -46,7 +46,7 @@ AdaptiveSparkPlan (46) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -61,7 +61,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/5.txt index c1d7e182e11..2ffcb3acc73 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/5.txt @@ -94,7 +94,7 @@ AdaptiveSparkPlan (102) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -123,7 +123,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -147,7 +147,7 @@ Input [4]: [c_custkey#X, c_nationkey#X, o_orderkey#X, o_custkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (14) FilterExecTransformer @@ -185,7 +185,7 @@ Input [6]: [c_nationkey#X, o_orderkey#X, l_orderkey#X, l_suppkey#X, l_extendedpr Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (23) FilterExecTransformer @@ -223,7 +223,7 @@ Input [6]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppk Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (32) FilterExecTransformer @@ -261,7 +261,7 @@ Input [6]: [l_extendedprice#X, l_discount#X, s_nationkey#X, n_nationkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/6.txt index 54b59bd02e5..9cd94167185 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/7.txt index b28e085ab1d..84a2f6b7074 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/7.txt @@ -88,7 +88,7 @@ AdaptiveSparkPlan (95) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -117,7 +117,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -137,7 +137,7 @@ Input [7]: [s_suppkey#X, s_nationkey#X, l_orderkey#X, l_suppkey#X, l_extendedpri Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (13) FilterExecTransformer @@ -175,7 +175,7 @@ Input [7]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (22) FilterExecTransformer @@ -213,7 +213,7 @@ Input [7]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/8.txt index 031c15a04ce..9a08838e903 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/8.txt @@ -119,7 +119,7 @@ AdaptiveSparkPlan (131) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -152,7 +152,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -172,7 +172,7 @@ Input [6]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -210,7 +210,7 @@ Input [6]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppke Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (23) FilterExecTransformer @@ -248,7 +248,7 @@ Input [7]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X, o_orde Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (32) FilterExecTransformer @@ -286,7 +286,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (41) FilterExecTransformer @@ -324,7 +324,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (50) FilterExecTransformer @@ -362,7 +362,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (59) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/9.txt index d3f2bb02664..69613f51ade 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark32/9.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -125,7 +125,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -145,7 +145,7 @@ Input [7]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -183,7 +183,7 @@ Input [8]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (23) FilterExecTransformer @@ -221,7 +221,7 @@ Input [10]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpri Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (32) FilterExecTransformer @@ -259,7 +259,7 @@ Input [8]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/1.txt index 7f9f9b3ef20..e1163fc33df 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/10.txt index 5882b0ecda5..f41c1cb8f9f 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/10.txt @@ -66,7 +66,7 @@ AdaptiveSparkPlan (68) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Arguments: (isnotnull(c_custkey#X) AND isnotnull(c_nationkey#X)) Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -119,7 +119,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer @@ -161,7 +161,7 @@ Input [11]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acc Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (24) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/11.txt index c41fe97c03d..fc1dc340123 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/11.txt @@ -58,7 +58,7 @@ AdaptiveSparkPlan (60) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -69,7 +69,7 @@ Arguments: isnotnull(ps_suppkey#X) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (4) FilterExecTransformer @@ -107,7 +107,7 @@ Input [6]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X, s_suppke Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (13) FilterExecTransformer @@ -367,7 +367,7 @@ AdaptiveSparkPlan (102) Output [3]: [ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (62) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/12.txt index 22cbdd1281e..6fc53a24322 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/12.txt @@ -44,7 +44,7 @@ AdaptiveSparkPlan (44) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/13.txt index 2fa9ed5a15c..83cb68feae8 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/13.txt @@ -59,7 +59,7 @@ ReadSchema: struct Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (3) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/14.txt index c0d9399b6a9..ff9be7ee045 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/14.txt @@ -37,7 +37,7 @@ AdaptiveSparkPlan (35) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Input [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/15.txt index 1d8da74aa1a..0e2db4eeaca 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/15.txt @@ -45,7 +45,7 @@ AdaptiveSparkPlan (43) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (9) FilterExecTransformer @@ -267,7 +267,7 @@ AdaptiveSparkPlan (68) Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01)] ReadSchema: struct (45) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/16.txt index fdc63d230a0..30fa5ea7599 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/16.txt @@ -57,7 +57,7 @@ AdaptiveSparkPlan (59) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -68,7 +68,7 @@ Arguments: isnotnull(ps_partkey#X) Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (4) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/18.txt index e77112e0fc6..9bb2e64a28f 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/18.txt @@ -83,7 +83,7 @@ AdaptiveSparkPlan (88) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -112,7 +112,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -209,7 +209,7 @@ Input [6]: [c_custkey#X, c_name#X, o_orderkey#X, o_custkey#X, o_totalprice#X, o_ Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/19.txt index 68da9be6b15..146193bbef9 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/19.txt @@ -36,7 +36,7 @@ AdaptiveSparkPlan (34) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Input [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipin Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/20.txt index fb1c5f385e7..8a04220fd88 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/20.txt @@ -102,7 +102,7 @@ AdaptiveSparkPlan (109) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -143,7 +143,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (12) FilterExecTransformer @@ -154,7 +154,7 @@ Arguments: ((isnotnull(ps_availqty#X) AND isnotnull(ps_partkey#X)) AND isnotnull Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (14) FilterExecTransformer @@ -210,7 +210,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (28) FilterExecTransformer @@ -327,7 +327,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (56) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/21.txt index 7f3200f9e61..8cc07c32c79 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/21.txt @@ -86,7 +86,7 @@ AdaptiveSparkPlan (92) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -115,7 +115,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -159,7 +159,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (19) FilterExecTransformer @@ -206,7 +206,7 @@ Input [5]: [s_suppkey#X, s_name#X, s_nationkey#X, l_orderkey#X, l_suppkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (30) FilterExecTransformer @@ -248,7 +248,7 @@ Input [4]: [s_name#X, s_nationkey#X, l_orderkey#X, o_orderkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (40) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/22.txt index 6057869f3ff..8162a3e6cb6 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/22.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (40) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer @@ -241,7 +241,7 @@ AdaptiveSparkPlan (60) Output [2]: [c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal), GreaterThan(c_acctbal,0.00)] +PushedFilters: [*IsNotNull(c_acctbal), *GreaterThan(c_acctbal,0.00)] ReadSchema: struct (42) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/3.txt index b0d6ea7c4fe..a343402755a 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/3.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (54) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -87,7 +87,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -107,7 +107,7 @@ Input [5]: [c_custkey#X, o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriorit Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/4.txt index e47692167be..6db90c9193e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/4.txt @@ -46,7 +46,7 @@ AdaptiveSparkPlan (46) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -61,7 +61,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/5.txt index 4ce2b43f7f5..ba6e0266c9b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/5.txt @@ -94,7 +94,7 @@ AdaptiveSparkPlan (102) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -123,7 +123,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -147,7 +147,7 @@ Input [4]: [c_custkey#X, c_nationkey#X, o_orderkey#X, o_custkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (14) FilterExecTransformer @@ -185,7 +185,7 @@ Input [6]: [c_nationkey#X, o_orderkey#X, l_orderkey#X, l_suppkey#X, l_extendedpr Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (23) FilterExecTransformer @@ -223,7 +223,7 @@ Input [6]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppk Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (32) FilterExecTransformer @@ -261,7 +261,7 @@ Input [6]: [l_extendedprice#X, l_discount#X, s_nationkey#X, n_nationkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/6.txt index 2b4157f0364..3ac04c5f0c7 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/7.txt index ae2a1de6d8b..29cd7a50520 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/7.txt @@ -88,7 +88,7 @@ AdaptiveSparkPlan (95) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -117,7 +117,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -137,7 +137,7 @@ Input [7]: [s_suppkey#X, s_nationkey#X, l_orderkey#X, l_suppkey#X, l_extendedpri Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (13) FilterExecTransformer @@ -175,7 +175,7 @@ Input [7]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (22) FilterExecTransformer @@ -213,7 +213,7 @@ Input [7]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/8.txt index 631c670150e..f84ea95280d 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/8.txt @@ -119,7 +119,7 @@ AdaptiveSparkPlan (131) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -152,7 +152,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -172,7 +172,7 @@ Input [6]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -210,7 +210,7 @@ Input [6]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppke Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (23) FilterExecTransformer @@ -248,7 +248,7 @@ Input [7]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X, o_orde Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (32) FilterExecTransformer @@ -286,7 +286,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (41) FilterExecTransformer @@ -324,7 +324,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (50) FilterExecTransformer @@ -362,7 +362,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (59) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/9.txt index fc93c3dafde..86ecbea0124 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark33/9.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -125,7 +125,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -145,7 +145,7 @@ Input [7]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -183,7 +183,7 @@ Input [8]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (23) FilterExecTransformer @@ -221,7 +221,7 @@ Input [10]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpri Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (32) FilterExecTransformer @@ -259,7 +259,7 @@ Input [8]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/1.txt index 91e4ad434f4..d13a89cba93 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/10.txt index 33e5e1a7a5d..6352c22b990 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/10.txt @@ -66,7 +66,7 @@ AdaptiveSparkPlan (68) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Arguments: (isnotnull(c_custkey#X) AND isnotnull(c_nationkey#X)) Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -120,7 +120,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer @@ -163,7 +163,7 @@ Input [11]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acc Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (24) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/11.txt index 43861b59166..230d2175e17 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/11.txt @@ -58,7 +58,7 @@ AdaptiveSparkPlan (60) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -69,7 +69,7 @@ Arguments: isnotnull(ps_suppkey#X) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (4) FilterExecTransformer @@ -108,7 +108,7 @@ Input [6]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X, s_suppke Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (13) FilterExecTransformer @@ -371,7 +371,7 @@ AdaptiveSparkPlan (102) Output [3]: [ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (62) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/12.txt index 414447f4067..0928f0125e1 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/12.txt @@ -44,7 +44,7 @@ AdaptiveSparkPlan (44) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/13.txt index 3b5043fa126..07bfca6ae9f 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/13.txt @@ -59,7 +59,7 @@ ReadSchema: struct Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (3) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/14.txt index e96e51890f5..d722dd443d6 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/14.txt @@ -37,7 +37,7 @@ AdaptiveSparkPlan (35) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Input [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/15.txt index 0a0c376bf9a..8b57736b255 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/15.txt @@ -45,7 +45,7 @@ AdaptiveSparkPlan (43) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (9) FilterExecTransformer @@ -269,7 +269,7 @@ AdaptiveSparkPlan (68) Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01)] ReadSchema: struct (45) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/16.txt index 4f464210c29..914d83f67ba 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/16.txt @@ -57,7 +57,7 @@ AdaptiveSparkPlan (59) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -68,7 +68,7 @@ Arguments: isnotnull(ps_partkey#X) Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (4) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/18.txt index 6e3b7b9c2e2..67e11895bc5 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/18.txt @@ -83,7 +83,7 @@ AdaptiveSparkPlan (88) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -112,7 +112,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -211,7 +211,7 @@ Input [6]: [c_custkey#X, c_name#X, o_orderkey#X, o_custkey#X, o_totalprice#X, o_ Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/19.txt index 7dc7000155c..78e2a1ef119 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/19.txt @@ -36,7 +36,7 @@ AdaptiveSparkPlan (34) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Input [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipin Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/20.txt index 84454f1e0b4..654caa0f6d1 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/20.txt @@ -93,7 +93,7 @@ AdaptiveSparkPlan (98) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -104,7 +104,7 @@ Arguments: isnotnull(s_nationkey#X) Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (4) FilterExecTransformer @@ -115,7 +115,7 @@ Arguments: ((isnotnull(ps_availqty#X) AND isnotnull(ps_partkey#X)) AND isnotnull Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (6) FilterExecTransformer @@ -172,7 +172,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (20) FilterExecTransformer @@ -292,7 +292,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (48) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/21.txt index 5c44cf42f97..82c10ed797a 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/21.txt @@ -86,7 +86,7 @@ AdaptiveSparkPlan (92) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -115,7 +115,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -160,7 +160,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (19) FilterExecTransformer @@ -209,7 +209,7 @@ Input [5]: [s_suppkey#X, s_name#X, s_nationkey#X, l_orderkey#X, l_suppkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (30) FilterExecTransformer @@ -252,7 +252,7 @@ Input [4]: [s_name#X, s_nationkey#X, l_orderkey#X, o_orderkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (40) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/22.txt index ad2387c9027..25ba5e4eb5c 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/22.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (40) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer @@ -243,7 +243,7 @@ AdaptiveSparkPlan (60) Output [2]: [c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal), GreaterThan(c_acctbal,0.00)] +PushedFilters: [*IsNotNull(c_acctbal), *GreaterThan(c_acctbal,0.00)] ReadSchema: struct (42) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/3.txt index 4042c43dead..4290bd2f793 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/3.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (54) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -87,7 +87,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -108,7 +108,7 @@ Input [5]: [c_custkey#X, o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriorit Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/4.txt index a7d2bd846de..1bdc61f8afe 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/4.txt @@ -46,7 +46,7 @@ AdaptiveSparkPlan (46) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -61,7 +61,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/5.txt index a937bb3ebe2..a9dbe4474c8 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/5.txt @@ -94,7 +94,7 @@ AdaptiveSparkPlan (102) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -123,7 +123,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -148,7 +148,7 @@ Input [4]: [c_custkey#X, c_nationkey#X, o_orderkey#X, o_custkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (14) FilterExecTransformer @@ -187,7 +187,7 @@ Input [6]: [c_nationkey#X, o_orderkey#X, l_orderkey#X, l_suppkey#X, l_extendedpr Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (23) FilterExecTransformer @@ -226,7 +226,7 @@ Input [6]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppk Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (32) FilterExecTransformer @@ -265,7 +265,7 @@ Input [6]: [l_extendedprice#X, l_discount#X, s_nationkey#X, n_nationkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/6.txt index bfc4161da17..fd05e65ee5d 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/7.txt index dd942104d39..5ccdf4bbcff 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/7.txt @@ -88,7 +88,7 @@ AdaptiveSparkPlan (95) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -117,7 +117,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -138,7 +138,7 @@ Input [7]: [s_suppkey#X, s_nationkey#X, l_orderkey#X, l_suppkey#X, l_extendedpri Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (13) FilterExecTransformer @@ -177,7 +177,7 @@ Input [7]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (22) FilterExecTransformer @@ -216,7 +216,7 @@ Input [7]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/8.txt index fc2df428821..1d0a5b0f137 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/8.txt @@ -119,7 +119,7 @@ AdaptiveSparkPlan (131) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -152,7 +152,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -173,7 +173,7 @@ Input [6]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -212,7 +212,7 @@ Input [6]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppke Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (23) FilterExecTransformer @@ -251,7 +251,7 @@ Input [7]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X, o_orde Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (32) FilterExecTransformer @@ -290,7 +290,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (41) FilterExecTransformer @@ -329,7 +329,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (50) FilterExecTransformer @@ -368,7 +368,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (59) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/9.txt index 770cae35512..2a4e7549503 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark34/9.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -125,7 +125,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -146,7 +146,7 @@ Input [7]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -185,7 +185,7 @@ Input [8]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (23) FilterExecTransformer @@ -224,7 +224,7 @@ Input [10]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpri Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (32) FilterExecTransformer @@ -263,7 +263,7 @@ Input [8]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/1.txt index 91e4ad434f4..d13a89cba93 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/10.txt index 33e5e1a7a5d..6352c22b990 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/10.txt @@ -66,7 +66,7 @@ AdaptiveSparkPlan (68) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Arguments: (isnotnull(c_custkey#X) AND isnotnull(c_nationkey#X)) Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -120,7 +120,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer @@ -163,7 +163,7 @@ Input [11]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acc Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (24) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/11.txt index 43861b59166..230d2175e17 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/11.txt @@ -58,7 +58,7 @@ AdaptiveSparkPlan (60) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -69,7 +69,7 @@ Arguments: isnotnull(ps_suppkey#X) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (4) FilterExecTransformer @@ -108,7 +108,7 @@ Input [6]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X, s_suppke Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (13) FilterExecTransformer @@ -371,7 +371,7 @@ AdaptiveSparkPlan (102) Output [3]: [ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (62) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/12.txt index 414447f4067..0928f0125e1 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/12.txt @@ -44,7 +44,7 @@ AdaptiveSparkPlan (44) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/13.txt index 3b5043fa126..07bfca6ae9f 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/13.txt @@ -59,7 +59,7 @@ ReadSchema: struct Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (3) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/14.txt index e96e51890f5..d722dd443d6 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/14.txt @@ -37,7 +37,7 @@ AdaptiveSparkPlan (35) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Input [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/15.txt index 0a0c376bf9a..8b57736b255 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/15.txt @@ -45,7 +45,7 @@ AdaptiveSparkPlan (43) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (9) FilterExecTransformer @@ -269,7 +269,7 @@ AdaptiveSparkPlan (68) Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01)] ReadSchema: struct (45) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/16.txt index 4f464210c29..914d83f67ba 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/16.txt @@ -57,7 +57,7 @@ AdaptiveSparkPlan (59) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -68,7 +68,7 @@ Arguments: isnotnull(ps_partkey#X) Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (4) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/18.txt index 6e3b7b9c2e2..67e11895bc5 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/18.txt @@ -83,7 +83,7 @@ AdaptiveSparkPlan (88) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -112,7 +112,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -211,7 +211,7 @@ Input [6]: [c_custkey#X, c_name#X, o_orderkey#X, o_custkey#X, o_totalprice#X, o_ Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/19.txt index 7dc7000155c..78e2a1ef119 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/19.txt @@ -36,7 +36,7 @@ AdaptiveSparkPlan (34) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Input [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipin Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/20.txt index 84454f1e0b4..654caa0f6d1 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/20.txt @@ -93,7 +93,7 @@ AdaptiveSparkPlan (98) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -104,7 +104,7 @@ Arguments: isnotnull(s_nationkey#X) Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (4) FilterExecTransformer @@ -115,7 +115,7 @@ Arguments: ((isnotnull(ps_availqty#X) AND isnotnull(ps_partkey#X)) AND isnotnull Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (6) FilterExecTransformer @@ -172,7 +172,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (20) FilterExecTransformer @@ -292,7 +292,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (48) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/21.txt index 5c44cf42f97..82c10ed797a 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/21.txt @@ -86,7 +86,7 @@ AdaptiveSparkPlan (92) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -115,7 +115,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -160,7 +160,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (19) FilterExecTransformer @@ -209,7 +209,7 @@ Input [5]: [s_suppkey#X, s_name#X, s_nationkey#X, l_orderkey#X, l_suppkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (30) FilterExecTransformer @@ -252,7 +252,7 @@ Input [4]: [s_name#X, s_nationkey#X, l_orderkey#X, o_orderkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (40) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/22.txt index ad2387c9027..25ba5e4eb5c 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/22.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (40) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer @@ -243,7 +243,7 @@ AdaptiveSparkPlan (60) Output [2]: [c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal), GreaterThan(c_acctbal,0.00)] +PushedFilters: [*IsNotNull(c_acctbal), *GreaterThan(c_acctbal,0.00)] ReadSchema: struct (42) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/3.txt index 4042c43dead..4290bd2f793 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/3.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (54) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -87,7 +87,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -108,7 +108,7 @@ Input [5]: [c_custkey#X, o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriorit Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/4.txt index a7d2bd846de..1bdc61f8afe 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/4.txt @@ -46,7 +46,7 @@ AdaptiveSparkPlan (46) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -61,7 +61,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/5.txt index a937bb3ebe2..a9dbe4474c8 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/5.txt @@ -94,7 +94,7 @@ AdaptiveSparkPlan (102) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -123,7 +123,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -148,7 +148,7 @@ Input [4]: [c_custkey#X, c_nationkey#X, o_orderkey#X, o_custkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (14) FilterExecTransformer @@ -187,7 +187,7 @@ Input [6]: [c_nationkey#X, o_orderkey#X, l_orderkey#X, l_suppkey#X, l_extendedpr Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (23) FilterExecTransformer @@ -226,7 +226,7 @@ Input [6]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppk Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (32) FilterExecTransformer @@ -265,7 +265,7 @@ Input [6]: [l_extendedprice#X, l_discount#X, s_nationkey#X, n_nationkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/6.txt index bfc4161da17..fd05e65ee5d 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/7.txt index dd942104d39..5ccdf4bbcff 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/7.txt @@ -88,7 +88,7 @@ AdaptiveSparkPlan (95) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -117,7 +117,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -138,7 +138,7 @@ Input [7]: [s_suppkey#X, s_nationkey#X, l_orderkey#X, l_suppkey#X, l_extendedpri Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (13) FilterExecTransformer @@ -177,7 +177,7 @@ Input [7]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (22) FilterExecTransformer @@ -216,7 +216,7 @@ Input [7]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/8.txt index fc2df428821..1d0a5b0f137 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/8.txt @@ -119,7 +119,7 @@ AdaptiveSparkPlan (131) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -152,7 +152,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -173,7 +173,7 @@ Input [6]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -212,7 +212,7 @@ Input [6]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppke Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (23) FilterExecTransformer @@ -251,7 +251,7 @@ Input [7]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X, o_orde Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (32) FilterExecTransformer @@ -290,7 +290,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (41) FilterExecTransformer @@ -329,7 +329,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (50) FilterExecTransformer @@ -368,7 +368,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (59) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/9.txt index 770cae35512..2a4e7549503 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj-ras/spark35/9.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -125,7 +125,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -146,7 +146,7 @@ Input [7]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -185,7 +185,7 @@ Input [8]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (23) FilterExecTransformer @@ -224,7 +224,7 @@ Input [10]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpri Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (32) FilterExecTransformer @@ -263,7 +263,7 @@ Input [8]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/1.txt index f201ccfffb9..7d3c7366f06 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/10.txt index 2f1dde34f7f..3457ea358c5 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/10.txt @@ -66,7 +66,7 @@ AdaptiveSparkPlan (68) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Arguments: (isnotnull(c_custkey#X) AND isnotnull(c_nationkey#X)) Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -119,7 +119,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer @@ -161,7 +161,7 @@ Input [11]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acc Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (24) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/11.txt index 8cda065fd78..50426aa9afc 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/11.txt @@ -58,7 +58,7 @@ AdaptiveSparkPlan (60) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -69,7 +69,7 @@ Arguments: isnotnull(ps_suppkey#X) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (4) FilterExecTransformer @@ -107,7 +107,7 @@ Input [6]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X, s_suppke Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (13) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/12.txt index e03cdae35d7..62403f0667a 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/12.txt @@ -44,7 +44,7 @@ AdaptiveSparkPlan (44) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/13.txt index e4a02e6756d..56249953086 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/13.txt @@ -59,7 +59,7 @@ ReadSchema: struct Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (3) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/14.txt index d0227a4cf9d..e0eed79ef96 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/14.txt @@ -37,7 +37,7 @@ AdaptiveSparkPlan (35) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Input [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/15.txt index 09f34a50e10..c18976fa204 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/15.txt @@ -46,7 +46,7 @@ AdaptiveSparkPlan (46) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -75,7 +75,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (9) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/16.txt index 7ce9a807e5d..b4806e7b859 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/16.txt @@ -57,7 +57,7 @@ AdaptiveSparkPlan (59) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -68,7 +68,7 @@ Arguments: isnotnull(ps_partkey#X) Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (4) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/18.txt index d01f99368fa..51301c5a3ab 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/18.txt @@ -83,7 +83,7 @@ AdaptiveSparkPlan (88) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -112,7 +112,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -208,7 +208,7 @@ Input [6]: [c_custkey#X, c_name#X, o_orderkey#X, o_custkey#X, o_totalprice#X, o_ Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/19.txt index 44da3118db1..ebf21ba5d56 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/19.txt @@ -36,7 +36,7 @@ AdaptiveSparkPlan (34) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Input [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipin Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/20.txt index dc636256f25..645cf83243e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/20.txt @@ -103,7 +103,7 @@ AdaptiveSparkPlan (112) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -143,7 +143,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (12) FilterExecTransformer @@ -154,7 +154,7 @@ Arguments: ((isnotnull(ps_availqty#X) AND isnotnull(ps_partkey#X)) AND isnotnull Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (14) FilterExecTransformer @@ -210,7 +210,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (28) FilterExecTransformer @@ -326,7 +326,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (56) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/21.txt index 4d8226c3eb5..38c0504c803 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/21.txt @@ -87,7 +87,7 @@ AdaptiveSparkPlan (93) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -116,7 +116,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -160,7 +160,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (19) FilterExecTransformer @@ -207,7 +207,7 @@ Input [5]: [s_suppkey#X, s_name#X, s_nationkey#X, l_orderkey#X, l_suppkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (30) FilterExecTransformer @@ -249,7 +249,7 @@ Input [4]: [s_name#X, s_nationkey#X, l_orderkey#X, o_orderkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (40) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/22.txt index 880c8a18cdc..71285780331 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/22.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (40) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/3.txt index 0188e0c7127..1ff579afff6 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/3.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (54) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -87,7 +87,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -107,7 +107,7 @@ Input [5]: [c_custkey#X, o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriorit Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/4.txt index b3cb9ee510b..9147e66c399 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/4.txt @@ -46,7 +46,7 @@ AdaptiveSparkPlan (46) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -61,7 +61,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/5.txt index a4ba5c15dbe..c0d0a2fff25 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/5.txt @@ -94,7 +94,7 @@ AdaptiveSparkPlan (102) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -123,7 +123,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -147,7 +147,7 @@ Input [4]: [c_custkey#X, c_nationkey#X, o_orderkey#X, o_custkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (14) FilterExecTransformer @@ -185,7 +185,7 @@ Input [6]: [c_nationkey#X, o_orderkey#X, l_orderkey#X, l_suppkey#X, l_extendedpr Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (23) FilterExecTransformer @@ -223,7 +223,7 @@ Input [6]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppk Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (32) FilterExecTransformer @@ -261,7 +261,7 @@ Input [6]: [l_extendedprice#X, l_discount#X, s_nationkey#X, n_nationkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/6.txt index e9424d863c1..4781d1bbaf4 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/7.txt index 604eaeb39b1..ff3cc0e8a60 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/7.txt @@ -88,7 +88,7 @@ AdaptiveSparkPlan (95) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -117,7 +117,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -137,7 +137,7 @@ Input [7]: [s_suppkey#X, s_nationkey#X, l_orderkey#X, l_suppkey#X, l_extendedpri Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (13) FilterExecTransformer @@ -175,7 +175,7 @@ Input [7]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (22) FilterExecTransformer @@ -213,7 +213,7 @@ Input [7]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/8.txt index 32d573ed16b..bcddac1945a 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/8.txt @@ -119,7 +119,7 @@ AdaptiveSparkPlan (131) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -152,7 +152,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -172,7 +172,7 @@ Input [6]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -210,7 +210,7 @@ Input [6]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppke Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (23) FilterExecTransformer @@ -248,7 +248,7 @@ Input [7]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X, o_orde Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (32) FilterExecTransformer @@ -286,7 +286,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (41) FilterExecTransformer @@ -324,7 +324,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (50) FilterExecTransformer @@ -362,7 +362,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (59) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/9.txt index a3146a9af29..880ea446d35 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark32/9.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -125,7 +125,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -145,7 +145,7 @@ Input [7]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -183,7 +183,7 @@ Input [8]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (23) FilterExecTransformer @@ -221,7 +221,7 @@ Input [10]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpri Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (32) FilterExecTransformer @@ -259,7 +259,7 @@ Input [8]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/1.txt index 874b24f6c2a..55ae9bd0fc9 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/10.txt index 79dc111aaa2..915fd88ae61 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/10.txt @@ -66,7 +66,7 @@ AdaptiveSparkPlan (68) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Arguments: (isnotnull(c_custkey#X) AND isnotnull(c_nationkey#X)) Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -119,7 +119,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer @@ -161,7 +161,7 @@ Input [11]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acc Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (24) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/11.txt index 96a23c07840..f18dcc485f7 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/11.txt @@ -58,7 +58,7 @@ AdaptiveSparkPlan (60) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -69,7 +69,7 @@ Arguments: isnotnull(ps_suppkey#X) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (4) FilterExecTransformer @@ -107,7 +107,7 @@ Input [6]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X, s_suppke Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (13) FilterExecTransformer @@ -365,7 +365,7 @@ AdaptiveSparkPlan (102) Output [3]: [ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (62) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/12.txt index 77e8ab1e5d0..438d5a67b85 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/12.txt @@ -44,7 +44,7 @@ AdaptiveSparkPlan (44) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/13.txt index c5f217ff2b7..5233907f8bb 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/13.txt @@ -59,7 +59,7 @@ ReadSchema: struct Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (3) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/14.txt index 2030306af8a..4706f11a473 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/14.txt @@ -37,7 +37,7 @@ AdaptiveSparkPlan (35) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Input [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/15.txt index a5a88d3bea9..2b3729e2f46 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/15.txt @@ -45,7 +45,7 @@ AdaptiveSparkPlan (43) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (9) FilterExecTransformer @@ -265,7 +265,7 @@ AdaptiveSparkPlan (68) Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01)] ReadSchema: struct (45) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/16.txt index 29f8d071c0f..6509a0cf772 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/16.txt @@ -57,7 +57,7 @@ AdaptiveSparkPlan (59) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -68,7 +68,7 @@ Arguments: isnotnull(ps_partkey#X) Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (4) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/18.txt index bee21f3f208..3cdeab21a38 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/18.txt @@ -83,7 +83,7 @@ AdaptiveSparkPlan (88) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -112,7 +112,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -208,7 +208,7 @@ Input [6]: [c_custkey#X, c_name#X, o_orderkey#X, o_custkey#X, o_totalprice#X, o_ Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/19.txt index 275cf39f533..b570e85abe2 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/19.txt @@ -36,7 +36,7 @@ AdaptiveSparkPlan (34) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Input [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipin Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/20.txt index 5a1cc18236d..7254f1d7df1 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/20.txt @@ -102,7 +102,7 @@ AdaptiveSparkPlan (109) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -142,7 +142,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (12) FilterExecTransformer @@ -153,7 +153,7 @@ Arguments: ((isnotnull(ps_availqty#X) AND isnotnull(ps_partkey#X)) AND isnotnull Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (14) FilterExecTransformer @@ -209,7 +209,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (28) FilterExecTransformer @@ -325,7 +325,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (56) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/21.txt index b01c6fb1ecb..f898b225107 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/21.txt @@ -86,7 +86,7 @@ AdaptiveSparkPlan (92) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -115,7 +115,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -159,7 +159,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (19) FilterExecTransformer @@ -206,7 +206,7 @@ Input [5]: [s_suppkey#X, s_name#X, s_nationkey#X, l_orderkey#X, l_suppkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (30) FilterExecTransformer @@ -248,7 +248,7 @@ Input [4]: [s_name#X, s_nationkey#X, l_orderkey#X, o_orderkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (40) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/22.txt index 58844e687d9..a76c5211df7 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/22.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (40) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer @@ -239,7 +239,7 @@ AdaptiveSparkPlan (60) Output [2]: [c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal), GreaterThan(c_acctbal,0.00)] +PushedFilters: [*IsNotNull(c_acctbal), *GreaterThan(c_acctbal,0.00)] ReadSchema: struct (42) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/3.txt index 7d9ef012d0d..a7cb649bb42 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/3.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (54) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -87,7 +87,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -107,7 +107,7 @@ Input [5]: [c_custkey#X, o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriorit Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/4.txt index 0a55ea344d4..babe4978918 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/4.txt @@ -46,7 +46,7 @@ AdaptiveSparkPlan (46) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -61,7 +61,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/5.txt index 48e55eb2be0..d61b736d27e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/5.txt @@ -94,7 +94,7 @@ AdaptiveSparkPlan (102) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -123,7 +123,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -147,7 +147,7 @@ Input [4]: [c_custkey#X, c_nationkey#X, o_orderkey#X, o_custkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (14) FilterExecTransformer @@ -185,7 +185,7 @@ Input [6]: [c_nationkey#X, o_orderkey#X, l_orderkey#X, l_suppkey#X, l_extendedpr Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (23) FilterExecTransformer @@ -223,7 +223,7 @@ Input [6]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppk Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (32) FilterExecTransformer @@ -261,7 +261,7 @@ Input [6]: [l_extendedprice#X, l_discount#X, s_nationkey#X, n_nationkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/6.txt index 349f8ccdbe8..059f03cb455 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/7.txt index d593cd1bafa..d896b5095b7 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/7.txt @@ -88,7 +88,7 @@ AdaptiveSparkPlan (95) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -117,7 +117,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -137,7 +137,7 @@ Input [7]: [s_suppkey#X, s_nationkey#X, l_orderkey#X, l_suppkey#X, l_extendedpri Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (13) FilterExecTransformer @@ -175,7 +175,7 @@ Input [7]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (22) FilterExecTransformer @@ -213,7 +213,7 @@ Input [7]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/8.txt index f87bbf1246f..26d059154cc 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/8.txt @@ -119,7 +119,7 @@ AdaptiveSparkPlan (131) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -152,7 +152,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -172,7 +172,7 @@ Input [6]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -210,7 +210,7 @@ Input [6]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppke Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (23) FilterExecTransformer @@ -248,7 +248,7 @@ Input [7]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X, o_orde Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (32) FilterExecTransformer @@ -286,7 +286,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (41) FilterExecTransformer @@ -324,7 +324,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (50) FilterExecTransformer @@ -362,7 +362,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (59) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/9.txt index dfe4d032b2d..99e0a8de905 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark33/9.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -125,7 +125,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -145,7 +145,7 @@ Input [7]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -183,7 +183,7 @@ Input [8]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (23) FilterExecTransformer @@ -221,7 +221,7 @@ Input [10]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpri Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (32) FilterExecTransformer @@ -259,7 +259,7 @@ Input [8]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/1.txt index 8307abc9df2..46248c858e4 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/10.txt index 0b80a110d98..d27b2d35f8e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/10.txt @@ -66,7 +66,7 @@ AdaptiveSparkPlan (68) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Arguments: (isnotnull(c_custkey#X) AND isnotnull(c_nationkey#X)) Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -120,7 +120,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer @@ -163,7 +163,7 @@ Input [11]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acc Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (24) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/11.txt index e63dc04bbb5..4e0e780e7c7 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/11.txt @@ -58,7 +58,7 @@ AdaptiveSparkPlan (60) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -69,7 +69,7 @@ Arguments: isnotnull(ps_suppkey#X) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (4) FilterExecTransformer @@ -108,7 +108,7 @@ Input [6]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X, s_suppke Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (13) FilterExecTransformer @@ -369,7 +369,7 @@ AdaptiveSparkPlan (102) Output [3]: [ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (62) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/12.txt index ce77cb2f278..5679c14e676 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/12.txt @@ -44,7 +44,7 @@ AdaptiveSparkPlan (44) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/13.txt index 6e92271f786..f8485ac2d34 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/13.txt @@ -59,7 +59,7 @@ ReadSchema: struct Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (3) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/14.txt index 0e7cc65f3c8..7a5d6640fb7 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/14.txt @@ -37,7 +37,7 @@ AdaptiveSparkPlan (35) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Input [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/15.txt index 5a6f53e8063..e846a7f350e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/15.txt @@ -45,7 +45,7 @@ AdaptiveSparkPlan (43) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (9) FilterExecTransformer @@ -267,7 +267,7 @@ AdaptiveSparkPlan (68) Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01)] ReadSchema: struct (45) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/16.txt index 1f7c8a834c9..0149d28464b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/16.txt @@ -57,7 +57,7 @@ AdaptiveSparkPlan (59) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -68,7 +68,7 @@ Arguments: isnotnull(ps_partkey#X) Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (4) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/18.txt index 348279d67fe..3f39a466da1 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/18.txt @@ -83,7 +83,7 @@ AdaptiveSparkPlan (88) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -112,7 +112,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -210,7 +210,7 @@ Input [6]: [c_custkey#X, c_name#X, o_orderkey#X, o_custkey#X, o_totalprice#X, o_ Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/19.txt index 14111b23b67..53cc929f31b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/19.txt @@ -36,7 +36,7 @@ AdaptiveSparkPlan (34) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Input [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipin Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/20.txt index 1da8f56510b..685e6e9b48e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/20.txt @@ -93,7 +93,7 @@ AdaptiveSparkPlan (98) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -104,7 +104,7 @@ Arguments: isnotnull(s_nationkey#X) Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (4) FilterExecTransformer @@ -115,7 +115,7 @@ Arguments: ((isnotnull(ps_availqty#X) AND isnotnull(ps_partkey#X)) AND isnotnull Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (6) FilterExecTransformer @@ -172,7 +172,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (20) FilterExecTransformer @@ -291,7 +291,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (48) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/21.txt index b801c06eac3..2cbb78a355c 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/21.txt @@ -86,7 +86,7 @@ AdaptiveSparkPlan (92) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -115,7 +115,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -160,7 +160,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (19) FilterExecTransformer @@ -209,7 +209,7 @@ Input [5]: [s_suppkey#X, s_name#X, s_nationkey#X, l_orderkey#X, l_suppkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (30) FilterExecTransformer @@ -252,7 +252,7 @@ Input [4]: [s_name#X, s_nationkey#X, l_orderkey#X, o_orderkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (40) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/22.txt index c80f06da719..98c1bdfb115 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/22.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (40) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer @@ -241,7 +241,7 @@ AdaptiveSparkPlan (60) Output [2]: [c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal), GreaterThan(c_acctbal,0.00)] +PushedFilters: [*IsNotNull(c_acctbal), *GreaterThan(c_acctbal,0.00)] ReadSchema: struct (42) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/3.txt index 0707b567963..e462de6eecd 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/3.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (54) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -87,7 +87,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -108,7 +108,7 @@ Input [5]: [c_custkey#X, o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriorit Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/4.txt index 94f6a0c2b3c..f93d07113ba 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/4.txt @@ -46,7 +46,7 @@ AdaptiveSparkPlan (46) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -61,7 +61,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/5.txt index 5524a605091..8e0a43379f3 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/5.txt @@ -94,7 +94,7 @@ AdaptiveSparkPlan (102) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -123,7 +123,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -148,7 +148,7 @@ Input [4]: [c_custkey#X, c_nationkey#X, o_orderkey#X, o_custkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (14) FilterExecTransformer @@ -187,7 +187,7 @@ Input [6]: [c_nationkey#X, o_orderkey#X, l_orderkey#X, l_suppkey#X, l_extendedpr Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (23) FilterExecTransformer @@ -226,7 +226,7 @@ Input [6]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppk Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (32) FilterExecTransformer @@ -265,7 +265,7 @@ Input [6]: [l_extendedprice#X, l_discount#X, s_nationkey#X, n_nationkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/6.txt index 6b927e36c99..9f3204817f2 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/7.txt index f8f69781600..f14a1b5960d 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/7.txt @@ -88,7 +88,7 @@ AdaptiveSparkPlan (95) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -117,7 +117,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -138,7 +138,7 @@ Input [7]: [s_suppkey#X, s_nationkey#X, l_orderkey#X, l_suppkey#X, l_extendedpri Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (13) FilterExecTransformer @@ -177,7 +177,7 @@ Input [7]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (22) FilterExecTransformer @@ -216,7 +216,7 @@ Input [7]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/8.txt index ff60c32376b..3517d776362 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/8.txt @@ -119,7 +119,7 @@ AdaptiveSparkPlan (131) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -152,7 +152,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -173,7 +173,7 @@ Input [6]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -212,7 +212,7 @@ Input [6]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppke Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (23) FilterExecTransformer @@ -251,7 +251,7 @@ Input [7]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X, o_orde Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (32) FilterExecTransformer @@ -290,7 +290,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (41) FilterExecTransformer @@ -329,7 +329,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (50) FilterExecTransformer @@ -368,7 +368,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (59) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/9.txt index f598f039808..5b0ec9698fc 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark34/9.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -125,7 +125,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -146,7 +146,7 @@ Input [7]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -185,7 +185,7 @@ Input [8]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (23) FilterExecTransformer @@ -224,7 +224,7 @@ Input [10]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpri Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (32) FilterExecTransformer @@ -263,7 +263,7 @@ Input [8]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/1.txt index 8307abc9df2..46248c858e4 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/10.txt index 0b80a110d98..d27b2d35f8e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/10.txt @@ -66,7 +66,7 @@ AdaptiveSparkPlan (68) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Arguments: (isnotnull(c_custkey#X) AND isnotnull(c_nationkey#X)) Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -120,7 +120,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer @@ -163,7 +163,7 @@ Input [11]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acc Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (24) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/11.txt index e63dc04bbb5..4e0e780e7c7 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/11.txt @@ -58,7 +58,7 @@ AdaptiveSparkPlan (60) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -69,7 +69,7 @@ Arguments: isnotnull(ps_suppkey#X) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (4) FilterExecTransformer @@ -108,7 +108,7 @@ Input [6]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X, s_suppke Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (13) FilterExecTransformer @@ -369,7 +369,7 @@ AdaptiveSparkPlan (102) Output [3]: [ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (62) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/12.txt index ce77cb2f278..5679c14e676 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/12.txt @@ -44,7 +44,7 @@ AdaptiveSparkPlan (44) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/13.txt index 6e92271f786..f8485ac2d34 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/13.txt @@ -59,7 +59,7 @@ ReadSchema: struct Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (3) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/14.txt index 0e7cc65f3c8..7a5d6640fb7 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/14.txt @@ -37,7 +37,7 @@ AdaptiveSparkPlan (35) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Input [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/15.txt index 5a6f53e8063..e846a7f350e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/15.txt @@ -45,7 +45,7 @@ AdaptiveSparkPlan (43) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (9) FilterExecTransformer @@ -267,7 +267,7 @@ AdaptiveSparkPlan (68) Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01)] ReadSchema: struct (45) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/16.txt index 1f7c8a834c9..0149d28464b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/16.txt @@ -57,7 +57,7 @@ AdaptiveSparkPlan (59) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -68,7 +68,7 @@ Arguments: isnotnull(ps_partkey#X) Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (4) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/18.txt index 348279d67fe..3f39a466da1 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/18.txt @@ -83,7 +83,7 @@ AdaptiveSparkPlan (88) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -112,7 +112,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -210,7 +210,7 @@ Input [6]: [c_custkey#X, c_name#X, o_orderkey#X, o_custkey#X, o_totalprice#X, o_ Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/19.txt index 14111b23b67..53cc929f31b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/19.txt @@ -36,7 +36,7 @@ AdaptiveSparkPlan (34) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Input [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipin Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/20.txt index 1da8f56510b..685e6e9b48e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/20.txt @@ -93,7 +93,7 @@ AdaptiveSparkPlan (98) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -104,7 +104,7 @@ Arguments: isnotnull(s_nationkey#X) Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (4) FilterExecTransformer @@ -115,7 +115,7 @@ Arguments: ((isnotnull(ps_availqty#X) AND isnotnull(ps_partkey#X)) AND isnotnull Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (6) FilterExecTransformer @@ -172,7 +172,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (20) FilterExecTransformer @@ -291,7 +291,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (48) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/21.txt index b801c06eac3..2cbb78a355c 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/21.txt @@ -86,7 +86,7 @@ AdaptiveSparkPlan (92) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -115,7 +115,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -160,7 +160,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (19) FilterExecTransformer @@ -209,7 +209,7 @@ Input [5]: [s_suppkey#X, s_name#X, s_nationkey#X, l_orderkey#X, l_suppkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (30) FilterExecTransformer @@ -252,7 +252,7 @@ Input [4]: [s_name#X, s_nationkey#X, l_orderkey#X, o_orderkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (40) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/22.txt index c80f06da719..98c1bdfb115 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/22.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (40) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer @@ -241,7 +241,7 @@ AdaptiveSparkPlan (60) Output [2]: [c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal), GreaterThan(c_acctbal,0.00)] +PushedFilters: [*IsNotNull(c_acctbal), *GreaterThan(c_acctbal,0.00)] ReadSchema: struct (42) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/3.txt index 0707b567963..e462de6eecd 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/3.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (54) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -87,7 +87,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -108,7 +108,7 @@ Input [5]: [c_custkey#X, o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriorit Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (14) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/4.txt index 94f6a0c2b3c..f93d07113ba 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/4.txt @@ -46,7 +46,7 @@ AdaptiveSparkPlan (46) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -61,7 +61,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (5) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/5.txt index 5524a605091..8e0a43379f3 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/5.txt @@ -94,7 +94,7 @@ AdaptiveSparkPlan (102) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -123,7 +123,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -148,7 +148,7 @@ Input [4]: [c_custkey#X, c_nationkey#X, o_orderkey#X, o_custkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (14) FilterExecTransformer @@ -187,7 +187,7 @@ Input [6]: [c_nationkey#X, o_orderkey#X, l_orderkey#X, l_suppkey#X, l_extendedpr Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (23) FilterExecTransformer @@ -226,7 +226,7 @@ Input [6]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppk Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (32) FilterExecTransformer @@ -265,7 +265,7 @@ Input [6]: [l_extendedprice#X, l_discount#X, s_nationkey#X, n_nationkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/6.txt index 6b927e36c99..9f3204817f2 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/7.txt index f8f69781600..f14a1b5960d 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/7.txt @@ -88,7 +88,7 @@ AdaptiveSparkPlan (95) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -117,7 +117,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (9) FilterExecTransformer @@ -138,7 +138,7 @@ Input [7]: [s_suppkey#X, s_nationkey#X, l_orderkey#X, l_suppkey#X, l_extendedpri Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (13) FilterExecTransformer @@ -177,7 +177,7 @@ Input [7]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (22) FilterExecTransformer @@ -216,7 +216,7 @@ Input [7]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (31) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/8.txt index ff60c32376b..3517d776362 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/8.txt @@ -119,7 +119,7 @@ AdaptiveSparkPlan (131) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -152,7 +152,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -173,7 +173,7 @@ Input [6]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -212,7 +212,7 @@ Input [6]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, s_suppke Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (23) FilterExecTransformer @@ -251,7 +251,7 @@ Input [7]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X, o_orde Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (32) FilterExecTransformer @@ -290,7 +290,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (41) FilterExecTransformer @@ -329,7 +329,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (50) FilterExecTransformer @@ -368,7 +368,7 @@ Input [7]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (59) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/9.txt index f598f039808..5b0ec9698fc 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-bhj/spark35/9.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -125,7 +125,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (10) FilterExecTransformer @@ -146,7 +146,7 @@ Input [7]: [p_partkey#X, l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (14) FilterExecTransformer @@ -185,7 +185,7 @@ Input [8]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (23) FilterExecTransformer @@ -224,7 +224,7 @@ Input [10]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpri Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (32) FilterExecTransformer @@ -263,7 +263,7 @@ Input [8]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (41) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/1.txt index 5dbe515a393..d59aaa72807 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/10.txt index 9dc7c6a6a48..4e1ede8dbab 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/10.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -129,7 +129,7 @@ Input [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -197,7 +197,7 @@ Input [8]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer @@ -265,7 +265,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (45) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/11.txt index 3f03f8466e1..56a5942daca 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/11.txt @@ -76,7 +76,7 @@ AdaptiveSparkPlan (82) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -113,7 +113,7 @@ Input [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (11) FilterExecTransformer @@ -181,7 +181,7 @@ Input [4]: [ps_partkey#X, ps_availqty#X, ps_supplycost#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (28) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/12.txt index 7f0b367ee53..fc7bf267cbf 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/12.txt @@ -53,7 +53,7 @@ AdaptiveSparkPlan (55) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/13.txt index 0febbaa0905..a717a011d75 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/13.txt @@ -87,7 +87,7 @@ Input [1]: [c_custkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (10) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/14.txt index 79ff227bb0f..fc7216f2aec 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/14.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (38) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Input [3]: [l_partkey#X, l_extendedprice#X, l_discount#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/15.txt index 41659310f5b..57f28476fa2 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/15.txt @@ -50,7 +50,7 @@ AdaptiveSparkPlan (50) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -87,7 +87,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/16.txt index a5189b4ac5a..0ee9158bc74 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/16.txt @@ -67,7 +67,7 @@ AdaptiveSparkPlan (71) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -104,7 +104,7 @@ Input [2]: [ps_partkey#X, ps_suppkey#X] Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/17.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/17.txt index c450fb0e92f..7893435b0e9 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/17.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/17.txt @@ -62,7 +62,7 @@ AdaptiveSparkPlan (62) Output [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_quantity)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_quantity)] ReadSchema: struct (2) FilterExecTransformer @@ -99,7 +99,7 @@ Input [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Output [3]: [p_partkey#X, p_brand#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_container), EqualTo(p_brand,Brand#X), EqualTo(p_container,MED BOX), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_container), *EqualTo(p_brand,Brand#X), *EqualTo(p_container,MED BOX), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer @@ -145,7 +145,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, p_partkey#X] Output [2]: [l_partkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_partkey)] ReadSchema: struct (22) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/18.txt index a6194784808..d057ab2a0fc 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/18.txt @@ -102,7 +102,7 @@ AdaptiveSparkPlan (109) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -139,7 +139,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -292,7 +292,7 @@ Input [5]: [c_custkey#X, c_name#X, o_orderkey#X, o_totalprice#X, o_orderdate#X] Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (48) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/19.txt index ad4d4320fef..821fe129237 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/19.txt @@ -39,7 +39,7 @@ AdaptiveSparkPlan (37) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/20.txt index 26933f134a2..0e2c045feb4 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/20.txt @@ -130,7 +130,7 @@ AdaptiveSparkPlan (145) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -167,7 +167,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (11) FilterExecTransformer @@ -204,7 +204,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (20) FilterExecTransformer @@ -272,7 +272,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (37) FilterExecTransformer @@ -430,7 +430,7 @@ Input [3]: [s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (77) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/21.txt index 50233dab278..af6618c9591 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/21.txt @@ -124,7 +124,7 @@ AdaptiveSparkPlan (138) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -161,7 +161,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -235,7 +235,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (29) FilterExecTransformer @@ -334,7 +334,7 @@ Input [3]: [s_name#X, s_nationkey#X, l_orderkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (54) FilterExecTransformer @@ -402,7 +402,7 @@ Input [2]: [s_name#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (71) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/22.txt index 2c1078a1650..632b1f75951 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/22.txt @@ -50,7 +50,7 @@ AdaptiveSparkPlan (52) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/3.txt index 45aa5fe1da5..5b23bd7a6c5 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/3.txt @@ -64,7 +64,7 @@ AdaptiveSparkPlan (66) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -101,7 +101,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -169,7 +169,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_shippriority#X] Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/4.txt index 0128c904d33..2a64f8c5716 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/4.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (56) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -91,7 +91,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/5.txt index 312a095fae6..dc1ef8ccc24 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/5.txt @@ -138,7 +138,7 @@ AdaptiveSparkPlan (156) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -175,7 +175,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -243,7 +243,7 @@ Input [2]: [c_nationkey#X, o_orderkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (28) FilterExecTransformer @@ -311,7 +311,7 @@ Input [4]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -379,7 +379,7 @@ Input [3]: [l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (62) FilterExecTransformer @@ -447,7 +447,7 @@ Input [4]: [l_extendedprice#X, l_discount#X, n_name#X, n_regionkey#X] Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/6.txt index 54b59bd02e5..9cd94167185 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/7.txt index a2b6b4a15a5..3ba1e640df5 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/7.txt @@ -132,7 +132,7 @@ AdaptiveSparkPlan (149) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -169,7 +169,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -237,7 +237,7 @@ Input [5]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (28) FilterExecTransformer @@ -305,7 +305,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -373,7 +373,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, c_nati Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (62) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/8.txt index 0fab5cd81af..0c75152f536 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/8.txt @@ -181,7 +181,7 @@ AdaptiveSparkPlan (207) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -218,7 +218,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -286,7 +286,7 @@ Input [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -354,7 +354,7 @@ Input [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (45) FilterExecTransformer @@ -422,7 +422,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (62) FilterExecTransformer @@ -490,7 +490,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (79) FilterExecTransformer @@ -558,7 +558,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (96) FilterExecTransformer @@ -626,7 +626,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, o_orderdate#X, n_regionkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (113) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/9.txt index 79bb4a52022..7906c7b3953 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark32/9.txt @@ -137,7 +137,7 @@ AdaptiveSparkPlan (155) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -174,7 +174,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -242,7 +242,7 @@ Input [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -310,7 +310,7 @@ Input [7]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (45) FilterExecTransformer @@ -378,7 +378,7 @@ Input [6]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (62) FilterExecTransformer @@ -446,7 +446,7 @@ Input [6]: [l_quantity#X, l_extendedprice#X, l_discount#X, s_nationkey#X, ps_sup Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/1.txt index 7f9f9b3ef20..e1163fc33df 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/10.txt index df851ce1b79..3f54967dfd2 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/10.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -129,7 +129,7 @@ Input [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -197,7 +197,7 @@ Input [8]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer @@ -265,7 +265,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (45) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/11.txt index 682e6800004..33ad3c2d136 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/11.txt @@ -76,7 +76,7 @@ AdaptiveSparkPlan (82) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -113,7 +113,7 @@ Input [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (11) FilterExecTransformer @@ -181,7 +181,7 @@ Input [4]: [ps_partkey#X, ps_availqty#X, ps_supplycost#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -478,7 +478,7 @@ AdaptiveSparkPlan (135) Output [3]: [ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (84) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/12.txt index 571196b71c7..40f7a00c75c 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/12.txt @@ -53,7 +53,7 @@ AdaptiveSparkPlan (55) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/13.txt index 5f363ab6493..789b615c053 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/13.txt @@ -87,7 +87,7 @@ Input [1]: [c_custkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (10) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/14.txt index 414be888ec6..7096dafefa7 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/14.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (38) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Input [3]: [l_partkey#X, l_extendedprice#X, l_discount#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/15.txt index b361b1d6edb..651208cb35f 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/15.txt @@ -49,7 +49,7 @@ AdaptiveSparkPlan (47) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -86,7 +86,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (11) FilterExecTransformer @@ -287,7 +287,7 @@ AdaptiveSparkPlan (72) Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01)] ReadSchema: struct (49) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/16.txt index 93b51cc52f7..1d38b96304c 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/16.txt @@ -67,7 +67,7 @@ AdaptiveSparkPlan (71) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -104,7 +104,7 @@ Input [2]: [ps_partkey#X, ps_suppkey#X] Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/17.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/17.txt index bc173718cde..17cf185a68e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/17.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/17.txt @@ -62,7 +62,7 @@ AdaptiveSparkPlan (62) Output [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_quantity)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_quantity)] ReadSchema: struct (2) FilterExecTransformer @@ -99,7 +99,7 @@ Input [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Output [3]: [p_partkey#X, p_brand#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_container), EqualTo(p_brand,Brand#X), EqualTo(p_container,MED BOX), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_container), *EqualTo(p_brand,Brand#X), *EqualTo(p_container,MED BOX), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer @@ -145,7 +145,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, p_partkey#X] Output [2]: [l_partkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_partkey)] ReadSchema: struct (22) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/18.txt index e22552fbbb1..86a4f2a71f6 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/18.txt @@ -102,7 +102,7 @@ AdaptiveSparkPlan (109) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -139,7 +139,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -292,7 +292,7 @@ Input [5]: [c_custkey#X, c_name#X, o_orderkey#X, o_totalprice#X, o_orderdate#X] Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (48) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/19.txt index 07801a0793f..01e306c0b54 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/19.txt @@ -39,7 +39,7 @@ AdaptiveSparkPlan (37) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/20.txt index 415a5e41e1f..7aa183dc487 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/20.txt @@ -129,7 +129,7 @@ AdaptiveSparkPlan (142) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -166,7 +166,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (11) FilterExecTransformer @@ -203,7 +203,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (20) FilterExecTransformer @@ -271,7 +271,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (37) FilterExecTransformer @@ -429,7 +429,7 @@ Input [3]: [s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (77) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/21.txt index 040765eec75..12f129ac31c 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/21.txt @@ -123,7 +123,7 @@ AdaptiveSparkPlan (137) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -160,7 +160,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -234,7 +234,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (29) FilterExecTransformer @@ -333,7 +333,7 @@ Input [3]: [s_name#X, s_nationkey#X, l_orderkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (54) FilterExecTransformer @@ -401,7 +401,7 @@ Input [2]: [s_name#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (71) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/22.txt index 9a8dd9f55c0..b1e121c22a4 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/22.txt @@ -50,7 +50,7 @@ AdaptiveSparkPlan (52) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer @@ -297,7 +297,7 @@ AdaptiveSparkPlan (72) Output [2]: [c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal), GreaterThan(c_acctbal,0.00)] +PushedFilters: [*IsNotNull(c_acctbal), *GreaterThan(c_acctbal,0.00)] ReadSchema: struct (54) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/3.txt index 5562ad43c31..4a5f8ad5807 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/3.txt @@ -64,7 +64,7 @@ AdaptiveSparkPlan (66) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -101,7 +101,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -169,7 +169,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_shippriority#X] Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/4.txt index 505c4f22694..495eeedc162 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/4.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (56) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -91,7 +91,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/5.txt index aaf074aa272..80172f7f76d 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/5.txt @@ -138,7 +138,7 @@ AdaptiveSparkPlan (156) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -175,7 +175,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -243,7 +243,7 @@ Input [2]: [c_nationkey#X, o_orderkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (28) FilterExecTransformer @@ -311,7 +311,7 @@ Input [4]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -379,7 +379,7 @@ Input [3]: [l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (62) FilterExecTransformer @@ -447,7 +447,7 @@ Input [4]: [l_extendedprice#X, l_discount#X, n_name#X, n_regionkey#X] Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/6.txt index 2b4157f0364..3ac04c5f0c7 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/7.txt index b3c01695980..25d766e62e0 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/7.txt @@ -132,7 +132,7 @@ AdaptiveSparkPlan (149) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -169,7 +169,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -237,7 +237,7 @@ Input [5]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (28) FilterExecTransformer @@ -305,7 +305,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -373,7 +373,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, c_nati Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (62) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/8.txt index caf31257f82..5d226016b0b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/8.txt @@ -181,7 +181,7 @@ AdaptiveSparkPlan (207) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -218,7 +218,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -286,7 +286,7 @@ Input [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -354,7 +354,7 @@ Input [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (45) FilterExecTransformer @@ -422,7 +422,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (62) FilterExecTransformer @@ -490,7 +490,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (79) FilterExecTransformer @@ -558,7 +558,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (96) FilterExecTransformer @@ -626,7 +626,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, o_orderdate#X, n_regionkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (113) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/9.txt index ae46af559b5..27cea1a7881 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark33/9.txt @@ -137,7 +137,7 @@ AdaptiveSparkPlan (155) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -174,7 +174,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -242,7 +242,7 @@ Input [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -310,7 +310,7 @@ Input [7]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (45) FilterExecTransformer @@ -378,7 +378,7 @@ Input [6]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (62) FilterExecTransformer @@ -446,7 +446,7 @@ Input [6]: [l_quantity#X, l_extendedprice#X, l_discount#X, s_nationkey#X, ps_sup Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/1.txt index 91e4ad434f4..d13a89cba93 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/10.txt index 2612d5d8e3e..ae3242abc02 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/10.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -129,7 +129,7 @@ Input [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -198,7 +198,7 @@ Input [8]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer @@ -267,7 +267,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (45) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/11.txt index 8b7b1f4a5bf..a0a7a5f1536 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/11.txt @@ -76,7 +76,7 @@ AdaptiveSparkPlan (82) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -113,7 +113,7 @@ Input [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (11) FilterExecTransformer @@ -182,7 +182,7 @@ Input [4]: [ps_partkey#X, ps_availqty#X, ps_supplycost#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -482,7 +482,7 @@ AdaptiveSparkPlan (135) Output [3]: [ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (84) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/12.txt index c0024a576ab..bee1de9959a 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/12.txt @@ -53,7 +53,7 @@ AdaptiveSparkPlan (55) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/13.txt index edce90c8f31..0b49da68235 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/13.txt @@ -87,7 +87,7 @@ Input [1]: [c_custkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (10) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/14.txt index 2cbb7df2fee..103a9c3ca1e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/14.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (38) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Input [3]: [l_partkey#X, l_extendedprice#X, l_discount#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/15.txt index 264d9a02de1..0208c7a9e6b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/15.txt @@ -49,7 +49,7 @@ AdaptiveSparkPlan (47) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -86,7 +86,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (11) FilterExecTransformer @@ -289,7 +289,7 @@ AdaptiveSparkPlan (72) Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01)] ReadSchema: struct (49) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/16.txt index 3ecbfacf220..32ffefa7c69 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/16.txt @@ -67,7 +67,7 @@ AdaptiveSparkPlan (71) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -104,7 +104,7 @@ Input [2]: [ps_partkey#X, ps_suppkey#X] Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/17.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/17.txt index 1c7d4ab0ad8..6bb70aafc49 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/17.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/17.txt @@ -62,7 +62,7 @@ AdaptiveSparkPlan (62) Output [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_quantity)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_quantity)] ReadSchema: struct (2) FilterExecTransformer @@ -99,7 +99,7 @@ Input [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Output [3]: [p_partkey#X, p_brand#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_container), EqualTo(p_brand,Brand#X), EqualTo(p_container,MED BOX), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_container), *EqualTo(p_brand,Brand#X), *EqualTo(p_container,MED BOX), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer @@ -146,7 +146,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, p_partkey#X] Output [2]: [l_partkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_partkey)] ReadSchema: struct (22) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/18.txt index 9ed7f1c776f..20c3e22b4e7 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/18.txt @@ -102,7 +102,7 @@ AdaptiveSparkPlan (109) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -139,7 +139,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -294,7 +294,7 @@ Input [5]: [c_custkey#X, c_name#X, o_orderkey#X, o_totalprice#X, o_orderdate#X] Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (48) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/19.txt index 3f8bde35a26..2b8509bab19 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/19.txt @@ -39,7 +39,7 @@ AdaptiveSparkPlan (37) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/20.txt index 833974ebc1b..d26734ab196 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/20.txt @@ -129,7 +129,7 @@ AdaptiveSparkPlan (142) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -166,7 +166,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (11) FilterExecTransformer @@ -203,7 +203,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (20) FilterExecTransformer @@ -272,7 +272,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (37) FilterExecTransformer @@ -433,7 +433,7 @@ Input [3]: [s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (77) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/21.txt index f9ff32d175b..bcfeeb51f33 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/21.txt @@ -123,7 +123,7 @@ AdaptiveSparkPlan (137) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -160,7 +160,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -235,7 +235,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (29) FilterExecTransformer @@ -336,7 +336,7 @@ Input [3]: [s_name#X, s_nationkey#X, l_orderkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (54) FilterExecTransformer @@ -405,7 +405,7 @@ Input [2]: [s_name#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (71) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/22.txt index e6135dc524f..aad7d77930b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/22.txt @@ -50,7 +50,7 @@ AdaptiveSparkPlan (52) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer @@ -299,7 +299,7 @@ AdaptiveSparkPlan (72) Output [2]: [c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal), GreaterThan(c_acctbal,0.00)] +PushedFilters: [*IsNotNull(c_acctbal), *GreaterThan(c_acctbal,0.00)] ReadSchema: struct (54) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/3.txt index 5e143419b35..b451f9c28d2 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/3.txt @@ -64,7 +64,7 @@ AdaptiveSparkPlan (66) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -101,7 +101,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -170,7 +170,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_shippriority#X] Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/4.txt index 1ceb42cb9dc..4d827627567 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/4.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (56) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -91,7 +91,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/5.txt index e6154eea48c..6481c9fa365 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/5.txt @@ -138,7 +138,7 @@ AdaptiveSparkPlan (156) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -175,7 +175,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -244,7 +244,7 @@ Input [2]: [c_nationkey#X, o_orderkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (28) FilterExecTransformer @@ -313,7 +313,7 @@ Input [4]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -382,7 +382,7 @@ Input [3]: [l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (62) FilterExecTransformer @@ -451,7 +451,7 @@ Input [4]: [l_extendedprice#X, l_discount#X, n_name#X, n_regionkey#X] Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/6.txt index bfc4161da17..fd05e65ee5d 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/7.txt index 389dcfc8405..3b59112ca2e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/7.txt @@ -132,7 +132,7 @@ AdaptiveSparkPlan (149) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -169,7 +169,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -238,7 +238,7 @@ Input [5]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (28) FilterExecTransformer @@ -307,7 +307,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -376,7 +376,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, c_nati Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (62) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/8.txt index df31a11381d..b14f0a5082a 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/8.txt @@ -181,7 +181,7 @@ AdaptiveSparkPlan (207) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -218,7 +218,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -287,7 +287,7 @@ Input [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -356,7 +356,7 @@ Input [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (45) FilterExecTransformer @@ -425,7 +425,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (62) FilterExecTransformer @@ -494,7 +494,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (79) FilterExecTransformer @@ -563,7 +563,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (96) FilterExecTransformer @@ -632,7 +632,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, o_orderdate#X, n_regionkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (113) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/9.txt index af675e1e305..baa59ffdc03 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark34/9.txt @@ -137,7 +137,7 @@ AdaptiveSparkPlan (155) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -174,7 +174,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -243,7 +243,7 @@ Input [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -312,7 +312,7 @@ Input [7]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (45) FilterExecTransformer @@ -381,7 +381,7 @@ Input [6]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (62) FilterExecTransformer @@ -450,7 +450,7 @@ Input [6]: [l_quantity#X, l_extendedprice#X, l_discount#X, s_nationkey#X, ps_sup Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/1.txt index 91e4ad434f4..d13a89cba93 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/10.txt index 2612d5d8e3e..ae3242abc02 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/10.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -129,7 +129,7 @@ Input [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -198,7 +198,7 @@ Input [8]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer @@ -267,7 +267,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (45) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/11.txt index 8b7b1f4a5bf..a0a7a5f1536 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/11.txt @@ -76,7 +76,7 @@ AdaptiveSparkPlan (82) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -113,7 +113,7 @@ Input [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (11) FilterExecTransformer @@ -182,7 +182,7 @@ Input [4]: [ps_partkey#X, ps_availqty#X, ps_supplycost#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -482,7 +482,7 @@ AdaptiveSparkPlan (135) Output [3]: [ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (84) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/12.txt index c0024a576ab..bee1de9959a 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/12.txt @@ -53,7 +53,7 @@ AdaptiveSparkPlan (55) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/13.txt index edce90c8f31..0b49da68235 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/13.txt @@ -87,7 +87,7 @@ Input [1]: [c_custkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (10) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/14.txt index 2cbb7df2fee..103a9c3ca1e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/14.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (38) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Input [3]: [l_partkey#X, l_extendedprice#X, l_discount#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/15.txt index 264d9a02de1..0208c7a9e6b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/15.txt @@ -49,7 +49,7 @@ AdaptiveSparkPlan (47) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -86,7 +86,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (11) FilterExecTransformer @@ -289,7 +289,7 @@ AdaptiveSparkPlan (72) Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01)] ReadSchema: struct (49) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/16.txt index 3ecbfacf220..32ffefa7c69 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/16.txt @@ -67,7 +67,7 @@ AdaptiveSparkPlan (71) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -104,7 +104,7 @@ Input [2]: [ps_partkey#X, ps_suppkey#X] Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/17.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/17.txt index 1c7d4ab0ad8..6bb70aafc49 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/17.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/17.txt @@ -62,7 +62,7 @@ AdaptiveSparkPlan (62) Output [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_quantity)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_quantity)] ReadSchema: struct (2) FilterExecTransformer @@ -99,7 +99,7 @@ Input [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Output [3]: [p_partkey#X, p_brand#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_container), EqualTo(p_brand,Brand#X), EqualTo(p_container,MED BOX), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_container), *EqualTo(p_brand,Brand#X), *EqualTo(p_container,MED BOX), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer @@ -146,7 +146,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, p_partkey#X] Output [2]: [l_partkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_partkey)] ReadSchema: struct (22) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/18.txt index 9ed7f1c776f..20c3e22b4e7 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/18.txt @@ -102,7 +102,7 @@ AdaptiveSparkPlan (109) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -139,7 +139,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -294,7 +294,7 @@ Input [5]: [c_custkey#X, c_name#X, o_orderkey#X, o_totalprice#X, o_orderdate#X] Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (48) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/19.txt index 3f8bde35a26..2b8509bab19 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/19.txt @@ -39,7 +39,7 @@ AdaptiveSparkPlan (37) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/20.txt index 833974ebc1b..d26734ab196 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/20.txt @@ -129,7 +129,7 @@ AdaptiveSparkPlan (142) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -166,7 +166,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (11) FilterExecTransformer @@ -203,7 +203,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (20) FilterExecTransformer @@ -272,7 +272,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (37) FilterExecTransformer @@ -433,7 +433,7 @@ Input [3]: [s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (77) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/21.txt index f9ff32d175b..bcfeeb51f33 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/21.txt @@ -123,7 +123,7 @@ AdaptiveSparkPlan (137) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -160,7 +160,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -235,7 +235,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (29) FilterExecTransformer @@ -336,7 +336,7 @@ Input [3]: [s_name#X, s_nationkey#X, l_orderkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (54) FilterExecTransformer @@ -405,7 +405,7 @@ Input [2]: [s_name#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (71) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/22.txt index e6135dc524f..aad7d77930b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/22.txt @@ -50,7 +50,7 @@ AdaptiveSparkPlan (52) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer @@ -299,7 +299,7 @@ AdaptiveSparkPlan (72) Output [2]: [c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal), GreaterThan(c_acctbal,0.00)] +PushedFilters: [*IsNotNull(c_acctbal), *GreaterThan(c_acctbal,0.00)] ReadSchema: struct (54) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/3.txt index 5e143419b35..b451f9c28d2 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/3.txt @@ -64,7 +64,7 @@ AdaptiveSparkPlan (66) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -101,7 +101,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -170,7 +170,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_shippriority#X] Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/4.txt index 1ceb42cb9dc..4d827627567 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/4.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (56) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -91,7 +91,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/5.txt index e6154eea48c..6481c9fa365 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/5.txt @@ -138,7 +138,7 @@ AdaptiveSparkPlan (156) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -175,7 +175,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -244,7 +244,7 @@ Input [2]: [c_nationkey#X, o_orderkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (28) FilterExecTransformer @@ -313,7 +313,7 @@ Input [4]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -382,7 +382,7 @@ Input [3]: [l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (62) FilterExecTransformer @@ -451,7 +451,7 @@ Input [4]: [l_extendedprice#X, l_discount#X, n_name#X, n_regionkey#X] Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/6.txt index bfc4161da17..fd05e65ee5d 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/7.txt index 389dcfc8405..3b59112ca2e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/7.txt @@ -132,7 +132,7 @@ AdaptiveSparkPlan (149) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -169,7 +169,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -238,7 +238,7 @@ Input [5]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (28) FilterExecTransformer @@ -307,7 +307,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -376,7 +376,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, c_nati Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (62) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/8.txt index df31a11381d..b14f0a5082a 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/8.txt @@ -181,7 +181,7 @@ AdaptiveSparkPlan (207) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -218,7 +218,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -287,7 +287,7 @@ Input [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -356,7 +356,7 @@ Input [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (45) FilterExecTransformer @@ -425,7 +425,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (62) FilterExecTransformer @@ -494,7 +494,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (79) FilterExecTransformer @@ -563,7 +563,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (96) FilterExecTransformer @@ -632,7 +632,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, o_orderdate#X, n_regionkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (113) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/9.txt index af675e1e305..baa59ffdc03 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1-ras/spark35/9.txt @@ -137,7 +137,7 @@ AdaptiveSparkPlan (155) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -174,7 +174,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -243,7 +243,7 @@ Input [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -312,7 +312,7 @@ Input [7]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (45) FilterExecTransformer @@ -381,7 +381,7 @@ Input [6]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (62) FilterExecTransformer @@ -450,7 +450,7 @@ Input [6]: [l_quantity#X, l_extendedprice#X, l_discount#X, s_nationkey#X, ps_sup Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/1.txt index f201ccfffb9..7d3c7366f06 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/10.txt index 51d726aa8d1..79a8b8657fe 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/10.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -128,7 +128,7 @@ Input [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -194,7 +194,7 @@ Input [8]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer @@ -260,7 +260,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (45) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/11.txt index 534104e6610..37c197e3668 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/11.txt @@ -76,7 +76,7 @@ AdaptiveSparkPlan (82) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -112,7 +112,7 @@ Input [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (11) FilterExecTransformer @@ -178,7 +178,7 @@ Input [4]: [ps_partkey#X, ps_availqty#X, ps_supplycost#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (28) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/12.txt index e45a78e4b43..13e036e619f 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/12.txt @@ -53,7 +53,7 @@ AdaptiveSparkPlan (55) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -89,7 +89,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/13.txt index 492fb88e617..258fa1645fe 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/13.txt @@ -86,7 +86,7 @@ Input [1]: [c_custkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (10) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/14.txt index 96137182c67..ab5d81e6a8d 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/14.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (38) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Input [3]: [l_partkey#X, l_extendedprice#X, l_discount#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/15.txt index e82636c2167..a4df1e02b64 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/15.txt @@ -50,7 +50,7 @@ AdaptiveSparkPlan (50) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -86,7 +86,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/16.txt index f5152a59210..204ddd315ad 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/16.txt @@ -67,7 +67,7 @@ AdaptiveSparkPlan (71) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -103,7 +103,7 @@ Input [2]: [ps_partkey#X, ps_suppkey#X] Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/17.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/17.txt index a44932ac93c..a3752c72664 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/17.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/17.txt @@ -62,7 +62,7 @@ AdaptiveSparkPlan (62) Output [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_quantity)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_quantity)] ReadSchema: struct (2) FilterExecTransformer @@ -98,7 +98,7 @@ Input [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Output [3]: [p_partkey#X, p_brand#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_container), EqualTo(p_brand,Brand#X), EqualTo(p_container,MED BOX), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_container), *EqualTo(p_brand,Brand#X), *EqualTo(p_container,MED BOX), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer @@ -143,7 +143,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, p_partkey#X] Output [2]: [l_partkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_partkey)] ReadSchema: struct (22) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/18.txt index 9c4c6654527..d5f2e3d4c73 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/18.txt @@ -102,7 +102,7 @@ AdaptiveSparkPlan (109) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -138,7 +138,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -287,7 +287,7 @@ Input [5]: [c_custkey#X, c_name#X, o_orderkey#X, o_totalprice#X, o_orderdate#X] Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (48) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/19.txt index 91be07a1c04..81f92b2050d 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/19.txt @@ -39,7 +39,7 @@ AdaptiveSparkPlan (37) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -75,7 +75,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/20.txt index f41e9199adc..bab2aa8b327 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/20.txt @@ -130,7 +130,7 @@ AdaptiveSparkPlan (145) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -166,7 +166,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (11) FilterExecTransformer @@ -202,7 +202,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (20) FilterExecTransformer @@ -268,7 +268,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (37) FilterExecTransformer @@ -422,7 +422,7 @@ Input [3]: [s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (77) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/21.txt index e128f58626a..db235d6d995 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/21.txt @@ -124,7 +124,7 @@ AdaptiveSparkPlan (138) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -160,7 +160,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -232,7 +232,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (29) FilterExecTransformer @@ -328,7 +328,7 @@ Input [3]: [s_name#X, s_nationkey#X, l_orderkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (54) FilterExecTransformer @@ -394,7 +394,7 @@ Input [2]: [s_name#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (71) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/22.txt index 5939b3722d7..c33ea7ead1c 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/22.txt @@ -50,7 +50,7 @@ AdaptiveSparkPlan (52) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/3.txt index 7a691a2484f..8442ea73140 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/3.txt @@ -64,7 +64,7 @@ AdaptiveSparkPlan (66) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -100,7 +100,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -166,7 +166,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_shippriority#X] Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/4.txt index 77570a9662b..da514fa7cb2 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/4.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (56) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/5.txt index a3c7b26e4fd..c905dff252c 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/5.txt @@ -138,7 +138,7 @@ AdaptiveSparkPlan (156) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -174,7 +174,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -240,7 +240,7 @@ Input [2]: [c_nationkey#X, o_orderkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (28) FilterExecTransformer @@ -306,7 +306,7 @@ Input [4]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -372,7 +372,7 @@ Input [3]: [l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (62) FilterExecTransformer @@ -438,7 +438,7 @@ Input [4]: [l_extendedprice#X, l_discount#X, n_name#X, n_regionkey#X] Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/6.txt index e9424d863c1..4781d1bbaf4 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/7.txt index c85a76b2377..8c31185cf40 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/7.txt @@ -132,7 +132,7 @@ AdaptiveSparkPlan (149) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -168,7 +168,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -234,7 +234,7 @@ Input [5]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (28) FilterExecTransformer @@ -300,7 +300,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -366,7 +366,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, c_nati Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (62) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/8.txt index dc8c6f5b0d4..e96590bb9eb 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/8.txt @@ -181,7 +181,7 @@ AdaptiveSparkPlan (207) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -217,7 +217,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -283,7 +283,7 @@ Input [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -349,7 +349,7 @@ Input [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (45) FilterExecTransformer @@ -415,7 +415,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (62) FilterExecTransformer @@ -481,7 +481,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (79) FilterExecTransformer @@ -547,7 +547,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (96) FilterExecTransformer @@ -613,7 +613,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, o_orderdate#X, n_regionkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (113) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/9.txt index 62d82e7eea5..0b26f2944c4 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark32/9.txt @@ -137,7 +137,7 @@ AdaptiveSparkPlan (155) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -173,7 +173,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -239,7 +239,7 @@ Input [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -305,7 +305,7 @@ Input [7]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (45) FilterExecTransformer @@ -371,7 +371,7 @@ Input [6]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (62) FilterExecTransformer @@ -437,7 +437,7 @@ Input [6]: [l_quantity#X, l_extendedprice#X, l_discount#X, s_nationkey#X, ps_sup Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/1.txt index 874b24f6c2a..55ae9bd0fc9 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/10.txt index d58682a0c48..73c98038c40 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/10.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -128,7 +128,7 @@ Input [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -194,7 +194,7 @@ Input [8]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer @@ -260,7 +260,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (45) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/11.txt index 76b23b31264..b121d4fd2c8 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/11.txt @@ -76,7 +76,7 @@ AdaptiveSparkPlan (82) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -112,7 +112,7 @@ Input [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (11) FilterExecTransformer @@ -178,7 +178,7 @@ Input [4]: [ps_partkey#X, ps_availqty#X, ps_supplycost#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -472,7 +472,7 @@ AdaptiveSparkPlan (135) Output [3]: [ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (84) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/12.txt index cfc74b18545..f4e3e763d3b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/12.txt @@ -53,7 +53,7 @@ AdaptiveSparkPlan (55) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -89,7 +89,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/13.txt index 7797caf10fc..cfc57efb497 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/13.txt @@ -86,7 +86,7 @@ Input [1]: [c_custkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (10) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/14.txt index 36746c0c760..d2ce5386a7f 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/14.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (38) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Input [3]: [l_partkey#X, l_extendedprice#X, l_discount#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/15.txt index 4dc2ad2b84e..43643417b3e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/15.txt @@ -49,7 +49,7 @@ AdaptiveSparkPlan (47) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -85,7 +85,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (11) FilterExecTransformer @@ -284,7 +284,7 @@ AdaptiveSparkPlan (72) Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01)] ReadSchema: struct (49) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/16.txt index fd15a3d3521..9779df8acb8 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/16.txt @@ -67,7 +67,7 @@ AdaptiveSparkPlan (71) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -103,7 +103,7 @@ Input [2]: [ps_partkey#X, ps_suppkey#X] Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/17.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/17.txt index 8537c6b0e1e..24c850d7b7e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/17.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/17.txt @@ -62,7 +62,7 @@ AdaptiveSparkPlan (62) Output [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_quantity)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_quantity)] ReadSchema: struct (2) FilterExecTransformer @@ -98,7 +98,7 @@ Input [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Output [3]: [p_partkey#X, p_brand#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_container), EqualTo(p_brand,Brand#X), EqualTo(p_container,MED BOX), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_container), *EqualTo(p_brand,Brand#X), *EqualTo(p_container,MED BOX), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer @@ -143,7 +143,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, p_partkey#X] Output [2]: [l_partkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_partkey)] ReadSchema: struct (22) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/18.txt index ab04e33cce0..98352f1643a 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/18.txt @@ -102,7 +102,7 @@ AdaptiveSparkPlan (109) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -138,7 +138,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -287,7 +287,7 @@ Input [5]: [c_custkey#X, c_name#X, o_orderkey#X, o_totalprice#X, o_orderdate#X] Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (48) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/19.txt index 5c936160b80..01a12c56b87 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/19.txt @@ -39,7 +39,7 @@ AdaptiveSparkPlan (37) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -75,7 +75,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/20.txt index 35a284f1f12..fd0313d6ddb 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/20.txt @@ -129,7 +129,7 @@ AdaptiveSparkPlan (142) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -165,7 +165,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (11) FilterExecTransformer @@ -201,7 +201,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (20) FilterExecTransformer @@ -267,7 +267,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (37) FilterExecTransformer @@ -421,7 +421,7 @@ Input [3]: [s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (77) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/21.txt index fbe2f5acc84..fabcc20fcb5 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/21.txt @@ -123,7 +123,7 @@ AdaptiveSparkPlan (137) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -159,7 +159,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -231,7 +231,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (29) FilterExecTransformer @@ -327,7 +327,7 @@ Input [3]: [s_name#X, s_nationkey#X, l_orderkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (54) FilterExecTransformer @@ -393,7 +393,7 @@ Input [2]: [s_name#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (71) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/22.txt index a9d590440b6..1a0fc4c58af 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/22.txt @@ -50,7 +50,7 @@ AdaptiveSparkPlan (52) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer @@ -293,7 +293,7 @@ AdaptiveSparkPlan (72) Output [2]: [c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal), GreaterThan(c_acctbal,0.00)] +PushedFilters: [*IsNotNull(c_acctbal), *GreaterThan(c_acctbal,0.00)] ReadSchema: struct (54) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/3.txt index 3b400d8678c..0afb00c5a49 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/3.txt @@ -64,7 +64,7 @@ AdaptiveSparkPlan (66) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -100,7 +100,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -166,7 +166,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_shippriority#X] Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/4.txt index 31370029a35..ebb10544d90 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/4.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (56) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/5.txt index 112cbb89cec..343ed8f9a2a 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/5.txt @@ -138,7 +138,7 @@ AdaptiveSparkPlan (156) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -174,7 +174,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -240,7 +240,7 @@ Input [2]: [c_nationkey#X, o_orderkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (28) FilterExecTransformer @@ -306,7 +306,7 @@ Input [4]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -372,7 +372,7 @@ Input [3]: [l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (62) FilterExecTransformer @@ -438,7 +438,7 @@ Input [4]: [l_extendedprice#X, l_discount#X, n_name#X, n_regionkey#X] Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/6.txt index 349f8ccdbe8..059f03cb455 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/7.txt index e12a31fc9de..17e2b5dc7a7 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/7.txt @@ -132,7 +132,7 @@ AdaptiveSparkPlan (149) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -168,7 +168,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -234,7 +234,7 @@ Input [5]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (28) FilterExecTransformer @@ -300,7 +300,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -366,7 +366,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, c_nati Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (62) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/8.txt index 5135615ca7a..909eeac5823 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/8.txt @@ -181,7 +181,7 @@ AdaptiveSparkPlan (207) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -217,7 +217,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -283,7 +283,7 @@ Input [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -349,7 +349,7 @@ Input [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (45) FilterExecTransformer @@ -415,7 +415,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (62) FilterExecTransformer @@ -481,7 +481,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (79) FilterExecTransformer @@ -547,7 +547,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (96) FilterExecTransformer @@ -613,7 +613,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, o_orderdate#X, n_regionkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (113) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/9.txt index 5d5281e0ee3..94a43a81f7e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark33/9.txt @@ -137,7 +137,7 @@ AdaptiveSparkPlan (155) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -173,7 +173,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -239,7 +239,7 @@ Input [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -305,7 +305,7 @@ Input [7]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (45) FilterExecTransformer @@ -371,7 +371,7 @@ Input [6]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (62) FilterExecTransformer @@ -437,7 +437,7 @@ Input [6]: [l_quantity#X, l_extendedprice#X, l_discount#X, s_nationkey#X, ps_sup Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/1.txt index 8307abc9df2..46248c858e4 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/10.txt index 2356de6bdaa..d889b2ea1c6 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/10.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -128,7 +128,7 @@ Input [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -195,7 +195,7 @@ Input [8]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer @@ -262,7 +262,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (45) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/11.txt index 1205e41be9b..41ec2e7c5ff 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/11.txt @@ -76,7 +76,7 @@ AdaptiveSparkPlan (82) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -112,7 +112,7 @@ Input [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (11) FilterExecTransformer @@ -179,7 +179,7 @@ Input [4]: [ps_partkey#X, ps_availqty#X, ps_supplycost#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -476,7 +476,7 @@ AdaptiveSparkPlan (135) Output [3]: [ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (84) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/12.txt index cc5ad598e87..0fb37c34916 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/12.txt @@ -53,7 +53,7 @@ AdaptiveSparkPlan (55) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -89,7 +89,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/13.txt index ffc9892b955..b187d5061ac 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/13.txt @@ -86,7 +86,7 @@ Input [1]: [c_custkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (10) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/14.txt index c679805bcfb..391d243ee88 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/14.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (38) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Input [3]: [l_partkey#X, l_extendedprice#X, l_discount#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/15.txt index ef49d8898cd..4b1d3e698b5 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/15.txt @@ -49,7 +49,7 @@ AdaptiveSparkPlan (47) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -85,7 +85,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (11) FilterExecTransformer @@ -286,7 +286,7 @@ AdaptiveSparkPlan (72) Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01)] ReadSchema: struct (49) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/16.txt index 3e01f2db32d..f58a7582f00 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/16.txt @@ -67,7 +67,7 @@ AdaptiveSparkPlan (71) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -103,7 +103,7 @@ Input [2]: [ps_partkey#X, ps_suppkey#X] Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/17.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/17.txt index 851b23a3283..857eec2e12a 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/17.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/17.txt @@ -62,7 +62,7 @@ AdaptiveSparkPlan (62) Output [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_quantity)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_quantity)] ReadSchema: struct (2) FilterExecTransformer @@ -98,7 +98,7 @@ Input [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Output [3]: [p_partkey#X, p_brand#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_container), EqualTo(p_brand,Brand#X), EqualTo(p_container,MED BOX), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_container), *EqualTo(p_brand,Brand#X), *EqualTo(p_container,MED BOX), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer @@ -144,7 +144,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, p_partkey#X] Output [2]: [l_partkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_partkey)] ReadSchema: struct (22) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/18.txt index 08541af3e92..ab7de51705b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/18.txt @@ -102,7 +102,7 @@ AdaptiveSparkPlan (109) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -138,7 +138,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -289,7 +289,7 @@ Input [5]: [c_custkey#X, c_name#X, o_orderkey#X, o_totalprice#X, o_orderdate#X] Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (48) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/19.txt index 7dce3702337..ddb0b4de752 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/19.txt @@ -39,7 +39,7 @@ AdaptiveSparkPlan (37) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -75,7 +75,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/20.txt index 6a88424f60a..617943787ab 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/20.txt @@ -129,7 +129,7 @@ AdaptiveSparkPlan (142) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -165,7 +165,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (11) FilterExecTransformer @@ -201,7 +201,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (20) FilterExecTransformer @@ -268,7 +268,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (37) FilterExecTransformer @@ -425,7 +425,7 @@ Input [3]: [s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (77) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/21.txt index 66571706f06..00085a3fac0 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/21.txt @@ -123,7 +123,7 @@ AdaptiveSparkPlan (137) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -159,7 +159,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -232,7 +232,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (29) FilterExecTransformer @@ -330,7 +330,7 @@ Input [3]: [s_name#X, s_nationkey#X, l_orderkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (54) FilterExecTransformer @@ -397,7 +397,7 @@ Input [2]: [s_name#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (71) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/22.txt index d04d4f3519f..6801a3a5f9e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/22.txt @@ -50,7 +50,7 @@ AdaptiveSparkPlan (52) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer @@ -295,7 +295,7 @@ AdaptiveSparkPlan (72) Output [2]: [c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal), GreaterThan(c_acctbal,0.00)] +PushedFilters: [*IsNotNull(c_acctbal), *GreaterThan(c_acctbal,0.00)] ReadSchema: struct (54) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/3.txt index 9e540437e9d..03fdfec08ad 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/3.txt @@ -64,7 +64,7 @@ AdaptiveSparkPlan (66) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -100,7 +100,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -167,7 +167,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_shippriority#X] Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/4.txt index 14bb927f98f..08dffa9dc77 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/4.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (56) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/5.txt index 892ee76d374..2cdbb120522 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/5.txt @@ -138,7 +138,7 @@ AdaptiveSparkPlan (156) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -174,7 +174,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -241,7 +241,7 @@ Input [2]: [c_nationkey#X, o_orderkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (28) FilterExecTransformer @@ -308,7 +308,7 @@ Input [4]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -375,7 +375,7 @@ Input [3]: [l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (62) FilterExecTransformer @@ -442,7 +442,7 @@ Input [4]: [l_extendedprice#X, l_discount#X, n_name#X, n_regionkey#X] Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/6.txt index 6b927e36c99..9f3204817f2 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/7.txt index d7a16b19661..25d75294217 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/7.txt @@ -132,7 +132,7 @@ AdaptiveSparkPlan (149) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -168,7 +168,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -235,7 +235,7 @@ Input [5]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (28) FilterExecTransformer @@ -302,7 +302,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -369,7 +369,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, c_nati Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (62) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/8.txt index b6fe6d949c4..46dde36bd78 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/8.txt @@ -181,7 +181,7 @@ AdaptiveSparkPlan (207) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -217,7 +217,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -284,7 +284,7 @@ Input [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -351,7 +351,7 @@ Input [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (45) FilterExecTransformer @@ -418,7 +418,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (62) FilterExecTransformer @@ -485,7 +485,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (79) FilterExecTransformer @@ -552,7 +552,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (96) FilterExecTransformer @@ -619,7 +619,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, o_orderdate#X, n_regionkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (113) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/9.txt index b0bc3f8b816..5d9d1f9614b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark34/9.txt @@ -137,7 +137,7 @@ AdaptiveSparkPlan (155) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -173,7 +173,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -240,7 +240,7 @@ Input [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -307,7 +307,7 @@ Input [7]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (45) FilterExecTransformer @@ -374,7 +374,7 @@ Input [6]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (62) FilterExecTransformer @@ -441,7 +441,7 @@ Input [6]: [l_quantity#X, l_extendedprice#X, l_discount#X, s_nationkey#X, ps_sup Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/1.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/1.txt index 8307abc9df2..46248c858e4 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/1.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/1.txt @@ -32,7 +32,7 @@ AdaptiveSparkPlan (30) Output [7]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_tax#X, l_returnflag#X, l_linestatus#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/10.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/10.txt index 2356de6bdaa..d889b2ea1c6 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/10.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/10.txt @@ -92,7 +92,7 @@ AdaptiveSparkPlan (100) Output [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acctbal#X, c_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -128,7 +128,7 @@ Input [7]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -195,7 +195,7 @@ Input [8]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_returnflag#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer @@ -262,7 +262,7 @@ Input [9]: [c_custkey#X, c_name#X, c_address#X, c_nationkey#X, c_phone#X, c_acct Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (45) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/11.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/11.txt index 1205e41be9b..41ec2e7c5ff 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/11.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/11.txt @@ -76,7 +76,7 @@ AdaptiveSparkPlan (82) Output [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -112,7 +112,7 @@ Input [4]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (11) FilterExecTransformer @@ -179,7 +179,7 @@ Input [4]: [ps_partkey#X, ps_availqty#X, ps_supplycost#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -476,7 +476,7 @@ AdaptiveSparkPlan (135) Output [3]: [ps_suppkey#X, ps_availqty#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (84) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/12.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/12.txt index cc5ad598e87..0fb37c34916 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/12.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/12.txt @@ -53,7 +53,7 @@ AdaptiveSparkPlan (55) Output [2]: [o_orderkey#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -89,7 +89,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [5]: [l_orderkey#X, l_shipdate#X, l_commitdate#X, l_receiptdate#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/13.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/13.txt index ffc9892b955..b187d5061ac 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/13.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/13.txt @@ -86,7 +86,7 @@ Input [1]: [c_custkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_comment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (10) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/14.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/14.txt index c679805bcfb..391d243ee88 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/14.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/14.txt @@ -40,7 +40,7 @@ AdaptiveSparkPlan (38) Output [4]: [l_partkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Input [3]: [l_partkey#X, l_extendedprice#X, l_discount#X] Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/15.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/15.txt index ef49d8898cd..4b1d3e698b5 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/15.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/15.txt @@ -49,7 +49,7 @@ AdaptiveSparkPlan (47) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -85,7 +85,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_phone#X] Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (11) FilterExecTransformer @@ -286,7 +286,7 @@ AdaptiveSparkPlan (72) Output [4]: [l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01)] ReadSchema: struct (49) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/16.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/16.txt index 3e01f2db32d..f58a7582f00 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/16.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/16.txt @@ -67,7 +67,7 @@ AdaptiveSparkPlan (71) Output [2]: [ps_partkey#X, ps_suppkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -103,7 +103,7 @@ Input [2]: [ps_partkey#X, ps_suppkey#X] Output [4]: [p_partkey#X, p_brand#X, p_type#X, p_size#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#X)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#X)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/17.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/17.txt index 851b23a3283..857eec2e12a 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/17.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/17.txt @@ -62,7 +62,7 @@ AdaptiveSparkPlan (62) Output [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_quantity)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_quantity)] ReadSchema: struct (2) FilterExecTransformer @@ -98,7 +98,7 @@ Input [3]: [l_partkey#X, l_quantity#X, l_extendedprice#X] Output [3]: [p_partkey#X, p_brand#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_container), EqualTo(p_brand,Brand#X), EqualTo(p_container,MED BOX), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_container), *EqualTo(p_brand,Brand#X), *EqualTo(p_container,MED BOX), *IsNotNull(p_partkey)] ReadSchema: struct (11) FilterExecTransformer @@ -144,7 +144,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, p_partkey#X] Output [2]: [l_partkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_partkey)] ReadSchema: struct (22) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/18.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/18.txt index 08541af3e92..ab7de51705b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/18.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/18.txt @@ -102,7 +102,7 @@ AdaptiveSparkPlan (109) Output [2]: [c_custkey#X, c_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -138,7 +138,7 @@ Input [2]: [c_custkey#X, c_name#X] Output [4]: [o_orderkey#X, o_custkey#X, o_totalprice#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -289,7 +289,7 @@ Input [5]: [c_custkey#X, c_name#X, o_orderkey#X, o_totalprice#X, o_orderdate#X] Output [2]: [l_orderkey#X, l_quantity#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (48) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/19.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/19.txt index 7dce3702337..ddb0b4de752 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/19.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/19.txt @@ -39,7 +39,7 @@ AdaptiveSparkPlan (37) Output [6]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, l_shipinstruct#X, l_shipmode#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1.00),LessThanOrEqual(l_quantity,11.00)),And(GreaterThanOrEqual(l_quantity,10.00),LessThanOrEqual(l_quantity,20.00))),And(GreaterThanOrEqual(l_quantity,20.00),LessThanOrEqual(l_quantity,30.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -75,7 +75,7 @@ Input [4]: [l_partkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Output [4]: [p_partkey#X, p_brand#X, p_size#X, p_container#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#X),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#X),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#X),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/20.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/20.txt index 6a88424f60a..617943787ab 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/20.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/20.txt @@ -129,7 +129,7 @@ AdaptiveSparkPlan (142) Output [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -165,7 +165,7 @@ Input [4]: [s_suppkey#X, s_name#X, s_address#X, s_nationkey#X] Output [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (11) FilterExecTransformer @@ -201,7 +201,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (20) FilterExecTransformer @@ -268,7 +268,7 @@ Input [3]: [ps_partkey#X, ps_suppkey#X, ps_availqty#X] Output [4]: [l_partkey#X, l_suppkey#X, l_quantity#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (37) FilterExecTransformer @@ -425,7 +425,7 @@ Input [3]: [s_name#X, s_address#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (77) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/21.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/21.txt index 66571706f06..00085a3fac0 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/21.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/21.txt @@ -123,7 +123,7 @@ AdaptiveSparkPlan (137) Output [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -159,7 +159,7 @@ Input [3]: [s_suppkey#X, s_name#X, s_nationkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -232,7 +232,7 @@ Join condition: NOT (l_suppkey#X = l_suppkey#X) Output [4]: [l_orderkey#X, l_suppkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (29) FilterExecTransformer @@ -330,7 +330,7 @@ Input [3]: [s_name#X, s_nationkey#X, l_orderkey#X] Output [2]: [o_orderkey#X, o_orderstatus#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (54) FilterExecTransformer @@ -397,7 +397,7 @@ Input [2]: [s_name#X, s_nationkey#X] Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (71) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/22.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/22.txt index d04d4f3519f..6801a3a5f9e 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/22.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/22.txt @@ -50,7 +50,7 @@ AdaptiveSparkPlan (52) Output [3]: [c_custkey#X, c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer @@ -295,7 +295,7 @@ AdaptiveSparkPlan (72) Output [2]: [c_phone#X, c_acctbal#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_acctbal), GreaterThan(c_acctbal,0.00)] +PushedFilters: [*IsNotNull(c_acctbal), *GreaterThan(c_acctbal,0.00)] ReadSchema: struct (54) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/3.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/3.txt index 9e540437e9d..03fdfec08ad 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/3.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/3.txt @@ -64,7 +64,7 @@ AdaptiveSparkPlan (66) Output [2]: [c_custkey#X, c_mktsegment#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -100,7 +100,7 @@ Input [1]: [c_custkey#X] Output [4]: [o_orderkey#X, o_custkey#X, o_orderdate#X, o_shippriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -167,7 +167,7 @@ Input [3]: [o_orderkey#X, o_orderdate#X, o_shippriority#X] Output [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/4.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/4.txt index 14bb927f98f..08dffa9dc77 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/4.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/4.txt @@ -54,7 +54,7 @@ AdaptiveSparkPlan (56) Output [3]: [o_orderkey#X, o_orderdate#X, o_orderpriority#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [2]: [o_orderkey#X, o_orderpriority#X] Output [3]: [l_orderkey#X, l_commitdate#X, l_receiptdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (11) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/5.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/5.txt index 892ee76d374..2cdbb120522 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/5.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/5.txt @@ -138,7 +138,7 @@ AdaptiveSparkPlan (156) Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -174,7 +174,7 @@ Input [2]: [c_custkey#X, c_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -241,7 +241,7 @@ Input [2]: [c_nationkey#X, o_orderkey#X] Output [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (28) FilterExecTransformer @@ -308,7 +308,7 @@ Input [4]: [c_nationkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -375,7 +375,7 @@ Input [3]: [l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [n_nationkey#X, n_name#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (62) FilterExecTransformer @@ -442,7 +442,7 @@ Input [4]: [l_extendedprice#X, l_discount#X, n_name#X, n_regionkey#X] Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/6.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/6.txt index 6b927e36c99..9f3204817f2 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/6.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/6.txt @@ -24,7 +24,7 @@ AdaptiveSparkPlan (20) Output [4]: [l_quantity#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), IsNotNull(l_discount), IsNotNull(l_quantity), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), GreaterThanOrEqual(l_discount,0.05), LessThanOrEqual(l_discount,0.07), LessThan(l_quantity,24.00)] +PushedFilters: [*IsNotNull(l_shipdate), *IsNotNull(l_discount), *IsNotNull(l_quantity), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *GreaterThanOrEqual(l_discount,0.05), *LessThanOrEqual(l_discount,0.07), *LessThan(l_quantity,24.00)] ReadSchema: struct (2) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/7.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/7.txt index d7a16b19661..25d75294217 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/7.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/7.txt @@ -132,7 +132,7 @@ AdaptiveSparkPlan (149) Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -168,7 +168,7 @@ Input [2]: [s_suppkey#X, s_nationkey#X] Output [5]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -235,7 +235,7 @@ Input [5]: [s_nationkey#X, l_orderkey#X, l_extendedprice#X, l_discount#X, l_ship Output [2]: [o_orderkey#X, o_custkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (28) FilterExecTransformer @@ -302,7 +302,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, o_cust Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -369,7 +369,7 @@ Input [5]: [s_nationkey#X, l_extendedprice#X, l_discount#X, l_shipdate#X, c_nati Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (62) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/8.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/8.txt index b6fe6d949c4..46dde36bd78 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/8.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/8.txt @@ -181,7 +181,7 @@ AdaptiveSparkPlan (207) Output [2]: [p_partkey#X, p_type#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -217,7 +217,7 @@ Input [1]: [p_partkey#X] Output [5]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -284,7 +284,7 @@ Input [4]: [l_orderkey#X, l_suppkey#X, l_extendedprice#X, l_discount#X] Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -351,7 +351,7 @@ Input [4]: [l_orderkey#X, l_extendedprice#X, l_discount#X, s_nationkey#X] Output [3]: [o_orderkey#X, o_custkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (45) FilterExecTransformer @@ -418,7 +418,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_custkey#X, o_order Output [2]: [c_custkey#X, c_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (62) FilterExecTransformer @@ -485,7 +485,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, c_nat Output [2]: [n_nationkey#X, n_regionkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (79) FilterExecTransformer @@ -552,7 +552,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, s_nationkey#X, o_orderdate#X, n_reg Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (96) FilterExecTransformer @@ -619,7 +619,7 @@ Input [5]: [l_extendedprice#X, l_discount#X, o_orderdate#X, n_regionkey#X, n_nam Output [2]: [r_regionkey#X, r_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (113) FilterExecTransformer diff --git a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/9.txt b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/9.txt index b0bc3f8b816..5d9d1f9614b 100644 --- a/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/9.txt +++ b/backends-velox/src/test/resources/tpch-approved-plan/v1/spark35/9.txt @@ -137,7 +137,7 @@ AdaptiveSparkPlan (155) Output [2]: [p_partkey#X, p_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -173,7 +173,7 @@ Input [1]: [p_partkey#X] Output [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedprice#X, l_discount#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (11) FilterExecTransformer @@ -240,7 +240,7 @@ Input [6]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [2]: [s_suppkey#X, s_nationkey#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (28) FilterExecTransformer @@ -307,7 +307,7 @@ Input [7]: [l_orderkey#X, l_partkey#X, l_suppkey#X, l_quantity#X, l_extendedpric Output [3]: [ps_partkey#X, ps_suppkey#X, ps_supplycost#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (45) FilterExecTransformer @@ -374,7 +374,7 @@ Input [6]: [l_orderkey#X, l_quantity#X, l_extendedprice#X, l_discount#X, s_natio Output [2]: [o_orderkey#X, o_orderdate#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (62) FilterExecTransformer @@ -441,7 +441,7 @@ Input [6]: [l_quantity#X, l_extendedprice#X, l_discount#X, s_nationkey#X, ps_sup Output [2]: [n_nationkey#X, n_name#X] Batched: true Location: InMemoryFileIndex [*] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (79) FilterExecTransformer diff --git a/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala b/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala index c2cb6604db8..1cb0b19a205 100644 --- a/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala +++ b/gluten-delta/src/main/scala/org/apache/gluten/execution/DeltaScanTransformer.scala @@ -27,7 +27,8 @@ import org.apache.spark.sql.catalyst.expressions.{Attribute, AttributeReference, import org.apache.spark.sql.catalyst.plans.QueryPlan import org.apache.spark.sql.connector.read.streaming.SparkDataStream import org.apache.spark.sql.delta.{DeltaParquetFileFormat, NoMapping} -import org.apache.spark.sql.delta.files.{CdcAddFileIndex, TahoeRemoveFileIndex} +import org.apache.spark.sql.delta.files.{CdcAddFileIndex, TahoeChangeFileIndex} +import org.apache.spark.sql.delta.files.TahoeRemoveFileIndex import org.apache.spark.sql.execution.FileSourceScanExec import org.apache.spark.sql.execution.datasources.{FilePartition, HadoopFsRelation} import org.apache.spark.sql.types.StructType @@ -157,12 +158,57 @@ case class DeltaScanTransformer( override def withNewPushdownFilters(filters: Seq[Expression]): BasicScanExecTransformer = copy(pushDownFilters = Some(filters)) + + // Vanilla Delta serves a CDF read through a single PrunedFilteredScan (DeltaCDFRelation), whose + // `PushedFilters` are V1 filters translated with nested-predicate pushdown DISABLED, so a column + // name is rendered verbatim (`IsNotNull(id with space)`). Gluten offloads the CDF read to this + // parquet-backed scan, where Spark translates the same filters with nested pushdown ENABLED and + // therefore back-quotes any name needing quoting (`IsNotNull(`id with space`)`). Delta's CDF + // "filters ... should be pushed down" tests assert the un-quoted form, so drop the display-only + // back-quoting for CDF scans to match vanilla Delta. Only CDF scans are affected; a regular Delta + // read is a parquet scan in vanilla Spark too and keeps the quoting. `metadata` is a lazy val and + // cannot be super-overridden, so the rewrite is applied to the rendered plan string (on top of + // the base `*`-marking). + override def simpleString(maxFields: Int): String = + stripCdfPushedFilterQuoting(super.simpleString(maxFields)) + + override def verboseStringWithOperatorId(): String = + stripCdfPushedFilterQuoting(super.verboseStringWithOperatorId()) + + private def stripCdfPushedFilterQuoting(rendered: String): String = { + if (isCdfScan) { + FileSourceScanExecTransformerBase.rewritePushedFiltersList( + rendered, + DeltaScanTransformer.unquotePushedFilters) + } else { + rendered + } + } + + private def isCdfScan: Boolean = relation.location match { + case _: CdcAddFileIndex | _: TahoeRemoveFileIndex | _: TahoeChangeFileIndex => true + case _ => false + } } object DeltaScanTransformer { val DELETION_VECTOR_UNSUPPORTED = "Deletion vector is not supported in native." + // Matches a back-quoted identifier `...` where an embedded backtick is escaped by doubling (``). + private val backQuotedIdentifier = "`((?:[^`]|``)*)`".r + + /** + * Remove the display-only back-quoting Spark's V1 filter translation adds around column names + * that need quoting (e.g. names with spaces), turning `` `id with space` `` into `id with space`. + * Operates on a rendered `PushedFilters` list (`"[...]"`) so vanilla Delta CDF's un-quoted + * rendering is matched. Embedded doubled backticks are un-escaped back to a single backtick. + */ + private[execution] def unquotePushedFilters(renderedList: String): String = + backQuotedIdentifier.replaceAllIn( + renderedList, + m => java.util.regex.Matcher.quoteReplacement(m.group(1).replace("``", "`"))) + def apply(scanExec: FileSourceScanExec): DeltaScanTransformer = { new DeltaScanTransformer( scanExec.relation, diff --git a/gluten-substrait/src/main/scala/org/apache/gluten/execution/FileSourceScanExecTransformer.scala b/gluten-substrait/src/main/scala/org/apache/gluten/execution/FileSourceScanExecTransformer.scala index 83023f027ac..899ccf5686f 100644 --- a/gluten-substrait/src/main/scala/org/apache/gluten/execution/FileSourceScanExecTransformer.scala +++ b/gluten-substrait/src/main/scala/org/apache/gluten/execution/FileSourceScanExecTransformer.scala @@ -219,6 +219,10 @@ abstract class FileSourceScanExecTransformerBase( override def simpleString(maxFields: Int): String = { val metadataEntries = metadata.toSeq.sorted.map { + case ("PushedFilters", value) => + "PushedFilters: " + StringUtils.abbreviate( + redact(FileSourceScanExecTransformerBase.starPushedFilters(value)), + maxMetadataValueLength) case (key, value) => key + ": " + StringUtils.abbreviate(redact(value), maxMetadataValueLength) } @@ -229,6 +233,12 @@ abstract class FileSourceScanExecTransformerBase( s" $nativeFiltersString") } + // Formatted explain (used by the plan-stability golden files) renders `PushedFilters` from + // `metadata` via Spark's verboseStringWithOperatorId, which the simpleString override above does + // not touch. Mark it there too so both rendering paths agree. + override def verboseStringWithOperatorId(): String = + FileSourceScanExecTransformerBase.markPushedFilters(super.verboseStringWithOperatorId()) + // The "override" keyword is omitted to maintain compatibility with earlier Spark versions. def getStream: Option[SparkDataStream] = { stream @@ -238,4 +248,95 @@ abstract class FileSourceScanExecTransformerBase( object FileSourceScanExecTransformerBase { private def isDynamicPruningFilter(e: Expression): Boolean = e.find(_.isInstanceOf[PlanExpression[_]]).isDefined + + // Mark each pushed filter with a `*` in the rendered `PushedFilters` list, mirroring Spark's + // RowDataSourceScanExec convention for a filter the source evaluates itself (so no separate + // post-scan Filter is needed). Gluten pushes every conjunct into the native scan via + // PushDownFilterToScan and applies them as exact row-level filters, so the paired + // FilterExecTransformer is a no-op (FilterExecTransformerBase.isNoop) -- the same end state a `*` + // advertises. `metadata` is a lazy val and cannot be super-overridden, so the mark is applied to + // the rendered plan string. + + /** + * Mark every entry of the `PushedFilters: [...]` list in a rendered plan-node string with a `*`. + * Returns the text unchanged when no (untruncated) `PushedFilters` list is present. + */ + private[execution] def markPushedFilters(text: String): String = + rewritePushedFiltersList(text, starPushedFilters) + + /** + * Locate the `PushedFilters: [...]` list in a rendered plan-node string and replace it with + * `rewrite(list)` (where `list` is the whole `"[...]"` including brackets). Returns the text + * unchanged when no (untruncated) `PushedFilters` list is present. Used to layer independent + * display rewrites (e.g. `*`-marking, Delta CDF backtick removal) over the same list. + */ + private[execution] def rewritePushedFiltersList( + text: String, + rewrite: String => String): String = { + val marker = "PushedFilters: [" + val markerAt = text.indexOf(marker) + if (markerAt < 0) { + return text + } + val listStart = markerAt + marker.length - 1 // index of the opening '[' + var depth = 0 + var i = listStart + var listEnd = -1 + while (i < text.length && listEnd < 0) { + text.charAt(i) match { + case '[' | '(' => depth += 1 + case ']' | ')' => + depth -= 1 + if (depth == 0) { + listEnd = i + } + case _ => + } + i += 1 + } + if (listEnd < 0) { + return text // truncated/abbreviated list; leave as-is + } + val rewritten = rewrite(text.substring(listStart, listEnd + 1)) + text.substring(0, listStart) + rewritten + text.substring(listEnd + 1) + } + + /** + * Prefix each top-level entry of a rendered `PushedFilters` list (`"[f1, f2, ...]"`) with `*`. + * Depth-aware: commas nested inside a single filter (e.g. `In(id, [1,2,3])`) are not separators. + */ + private[execution] def starPushedFilters(rendered: String): String = { + if (rendered.length < 2 || rendered.head != '[' || rendered.last != ']') { + return rendered + } + val inner = rendered.substring(1, rendered.length - 1) + if (inner.isEmpty) { + return rendered + } + val entries = scala.collection.mutable.ArrayBuffer.empty[String] + val current = new StringBuilder + var depth = 0 + var i = 0 + while (i < inner.length) { + val c = inner.charAt(i) + if (c == '[' || c == '(') { + depth += 1 + current.append(c) + i += 1 + } else if (c == ']' || c == ')') { + depth -= 1 + current.append(c) + i += 1 + } else if (c == ',' && depth == 0 && i + 1 < inner.length && inner.charAt(i + 1) == ' ') { + entries += current.toString + current.clear() + i += 2 + } else { + current.append(c) + i += 1 + } + } + entries += current.toString + entries.map("*" + _).mkString("[", ", ", "]") + } } diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q1/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q1/explain.txt index 8996ac8277e..2a146c179ad 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q1/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q1/explain.txt @@ -20,7 +20,7 @@ VeloxColumnarToRow (20) Output [7]: [l_quantity#1, l_extendedprice#2, l_discount#3, l_tax#4, l_returnflag#5, l_linestatus#6, l_shipdate#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q10/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q10/explain.txt index a4453ac12e5..176127a6263 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q10/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q10/explain.txt @@ -36,7 +36,7 @@ VeloxColumnarToRow (40) Output [7]: [c_custkey#1, c_name#2, c_address#3, c_nationkey#4, c_phone#5, c_acctbal#6, c_comment#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -47,7 +47,7 @@ Arguments: (isnotnull(c_custkey#1) AND isnotnull(c_nationkey#4)) Output [3]: [o_orderkey#8, o_custkey#9, o_orderdate#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -86,7 +86,7 @@ Input [9]: [c_custkey#1, c_name#2, c_address#3, c_nationkey#4, c_phone#5, c_acct Output [4]: [l_orderkey#11, l_extendedprice#12, l_discount#13, l_returnflag#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (13) FilterExecTransformer @@ -125,7 +125,7 @@ Input [11]: [c_custkey#1, c_name#2, c_address#3, c_nationkey#4, c_phone#5, c_acc Output [2]: [n_nationkey#15, n_name#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (22) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q11/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q11/explain.txt index b96c068dc8b..4a5b2cfe169 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q11/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q11/explain.txt @@ -32,7 +32,7 @@ VeloxColumnarToRow (36) Output [4]: [ps_partkey#1, ps_suppkey#2, ps_availqty#3, ps_supplycost#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/partsupp] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -43,7 +43,7 @@ Arguments: isnotnull(ps_suppkey#2) Output [2]: [s_suppkey#5, s_nationkey#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (4) FilterExecTransformer @@ -78,7 +78,7 @@ Input [6]: [ps_partkey#1, ps_suppkey#2, ps_availqty#3, ps_supplycost#4, s_suppke Output [2]: [n_nationkey#7, n_name#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (12) FilterExecTransformer @@ -206,7 +206,7 @@ VeloxColumnarToRow (58) Output [3]: [ps_suppkey#18, ps_availqty#19, ps_supplycost#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/partsupp] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (38) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q12/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q12/explain.txt index 7f33106c5ec..7ef9cad9006 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q12/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q12/explain.txt @@ -25,7 +25,7 @@ VeloxColumnarToRow (27) Output [2]: [o_orderkey#1, o_orderpriority#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -36,7 +36,7 @@ Arguments: isnotnull(o_orderkey#1) Output [5]: [l_orderkey#3, l_shipdate#4, l_commitdate#5, l_receiptdate#6, l_shipmode#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (4) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q13/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q13/explain.txt index fa992bd0cc2..04a08b966c3 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q13/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q13/explain.txt @@ -37,7 +37,7 @@ ReadSchema: struct Output [3]: [o_orderkey#2, o_custkey#3, o_comment#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (3) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q14/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q14/explain.txt index 9ebcc332563..7fcadfccda3 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q14/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q14/explain.txt @@ -21,7 +21,7 @@ VeloxColumnarToRow (21) Output [4]: [l_partkey#1, l_extendedprice#2, l_discount#3, l_shipdate#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -36,7 +36,7 @@ Input [4]: [l_partkey#1, l_extendedprice#2, l_discount#3, l_shipdate#4] Output [2]: [p_partkey#5, p_type#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (5) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q15/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q15/explain.txt index ae19f517ad9..66b4ace1793 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q15/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q15/explain.txt @@ -26,7 +26,7 @@ VeloxColumnarToRow (28) Output [4]: [s_suppkey#1, s_name#2, s_address#3, s_phone#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -37,7 +37,7 @@ Arguments: isnotnull(s_suppkey#1) Output [4]: [l_suppkey#5, l_extendedprice#6, l_discount#7, l_shipdate#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (4) FilterExecTransformer @@ -160,7 +160,7 @@ VeloxColumnarToRow (43) Output [4]: [l_suppkey#19, l_extendedprice#20, l_discount#21, l_shipdate#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01)] ReadSchema: struct (30) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q16/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q16/explain.txt index 63ef61794b9..c13b917692d 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q16/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q16/explain.txt @@ -36,7 +36,7 @@ VeloxColumnarToRow (42) Output [2]: [ps_partkey#1, ps_suppkey#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/partsupp] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -47,7 +47,7 @@ Arguments: isnotnull(ps_partkey#1) Output [2]: [s_suppkey#3, s_comment#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_comment)] +PushedFilters: [*IsNotNull(s_comment)] ReadSchema: struct (4) FilterExecTransformer @@ -82,7 +82,7 @@ Join condition: None Output [4]: [p_partkey#5, p_brand#6, p_type#7, p_size#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#9)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#9)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (12) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q17/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q17/explain.txt index b78e0125c32..3206340aa50 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q17/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q17/explain.txt @@ -36,7 +36,7 @@ VeloxColumnarToRow (40) Output [3]: [l_partkey#1, l_quantity#2, l_extendedprice#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_quantity)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_quantity)] ReadSchema: struct (2) FilterExecTransformer @@ -47,7 +47,7 @@ Arguments: (isnotnull(l_partkey#1) AND isnotnull(l_quantity#2)) Output [3]: [p_partkey#4, p_brand#5, p_container#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_container), EqualTo(p_brand,Brand#7), EqualTo(p_container,MED BOX), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_container), *EqualTo(p_brand,Brand#7), *EqualTo(p_container,MED BOX), *IsNotNull(p_partkey)] ReadSchema: struct (4) FilterExecTransformer @@ -86,7 +86,7 @@ Input [4]: [l_partkey#1, l_quantity#2, l_extendedprice#3, p_partkey#4] Output [2]: [l_partkey#8, l_quantity#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_partkey)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q18/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q18/explain.txt index 4945ceabafd..a8025b99146 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q18/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q18/explain.txt @@ -42,7 +42,7 @@ VeloxColumnarToRow (49) Output [2]: [c_custkey#1, c_name#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -53,7 +53,7 @@ Arguments: isnotnull(c_custkey#1) Output [4]: [o_orderkey#3, o_custkey#4, o_totalprice#5, o_orderdate#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -157,7 +157,7 @@ Input [6]: [c_custkey#1, c_name#2, o_orderkey#3, o_custkey#4, o_totalprice#5, o_ Output [2]: [l_orderkey#17, l_quantity#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q19/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q19/explain.txt index 3840fd50110..f8668ed3fb7 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q19/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q19/explain.txt @@ -20,7 +20,7 @@ VeloxColumnarToRow (20) Output [6]: [l_partkey#1, l_quantity#2, l_extendedprice#3, l_discount#4, l_shipinstruct#5, l_shipmode#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1),LessThanOrEqual(l_quantity,11)),And(GreaterThanOrEqual(l_quantity,10),LessThanOrEqual(l_quantity,20))),And(GreaterThanOrEqual(l_quantity,20),LessThanOrEqual(l_quantity,30)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1),LessThanOrEqual(l_quantity,11)),And(GreaterThanOrEqual(l_quantity,10),LessThanOrEqual(l_quantity,20))),And(GreaterThanOrEqual(l_quantity,20),LessThanOrEqual(l_quantity,30)))] ReadSchema: struct (2) FilterExecTransformer @@ -35,7 +35,7 @@ Input [6]: [l_partkey#1, l_quantity#2, l_extendedprice#3, l_discount#4, l_shipin Output [4]: [p_partkey#7, p_brand#8, p_size#9, p_container#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#11),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#12),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#13),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#11),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#12),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#13),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (5) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q2/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q2/explain.txt index fc44c210846..247ff947d41 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q2/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q2/explain.txt @@ -65,7 +65,7 @@ VeloxColumnarToRow (78) Output [4]: [p_partkey#1, p_mfgr#2, p_type#3, p_size#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_size), IsNotNull(p_type), EqualTo(p_size,15), StringEndsWith(p_type,BRASS), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_size), *IsNotNull(p_type), *EqualTo(p_size,15), *StringEndsWith(p_type,BRASS), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -80,7 +80,7 @@ Input [4]: [p_partkey#1, p_mfgr#2, p_type#3, p_size#4] Output [3]: [ps_partkey#5, ps_suppkey#6, ps_supplycost#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/partsupp] -PushedFilters: [IsNotNull(ps_partkey), IsNotNull(ps_supplycost), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_partkey), *IsNotNull(ps_supplycost), *IsNotNull(ps_suppkey)] ReadSchema: struct (5) FilterExecTransformer @@ -115,7 +115,7 @@ Input [5]: [p_partkey#1, p_mfgr#2, ps_partkey#5, ps_suppkey#6, ps_supplycost#7] Output [3]: [ps_partkey#8, ps_suppkey#9, ps_supplycost#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/partsupp] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (13) FilterExecTransformer @@ -126,7 +126,7 @@ Arguments: (isnotnull(ps_suppkey#9) AND isnotnull(ps_partkey#8)) Output [2]: [s_suppkey#11, s_nationkey#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (15) FilterExecTransformer @@ -161,7 +161,7 @@ Input [5]: [ps_partkey#8, ps_suppkey#9, ps_supplycost#10, s_suppkey#11, s_nation Output [2]: [n_nationkey#13, n_regionkey#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (23) FilterExecTransformer @@ -196,7 +196,7 @@ Input [5]: [ps_partkey#8, ps_supplycost#10, s_nationkey#12, n_nationkey#13, n_re Output [2]: [r_regionkey#15, r_name#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/region] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,EUROPE), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,EUROPE), *IsNotNull(r_regionkey)] ReadSchema: struct (31) FilterExecTransformer @@ -302,7 +302,7 @@ Input [6]: [p_partkey#1, p_mfgr#2, ps_suppkey#6, ps_supplycost#7, min(ps_supplyc Output [7]: [s_suppkey#22, s_name#23, s_address#24, s_nationkey#25, s_phone#26, s_acctbal#27, s_comment#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (56) FilterExecTransformer @@ -337,7 +337,7 @@ Input [10]: [p_partkey#1, p_mfgr#2, ps_suppkey#6, s_suppkey#22, s_name#23, s_add Output [3]: [n_nationkey#29, n_name#30, n_regionkey#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (64) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q20/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q20/explain.txt index ab220baad0f..ffea374bc1d 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q20/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q20/explain.txt @@ -49,7 +49,7 @@ VeloxColumnarToRow (58) Output [4]: [s_suppkey#1, s_name#2, s_address#3, s_nationkey#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -60,7 +60,7 @@ Arguments: isnotnull(s_nationkey#4) Output [3]: [ps_partkey#5, ps_suppkey#6, ps_availqty#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/partsupp] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (4) FilterExecTransformer @@ -71,7 +71,7 @@ Arguments: ((isnotnull(ps_availqty#7) AND isnotnull(ps_partkey#5)) AND isnotnull Output [2]: [p_partkey#8, p_name#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (6) FilterExecTransformer @@ -106,7 +106,7 @@ Join condition: None Output [4]: [l_partkey#10, l_suppkey#11, l_quantity#12, l_shipdate#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (14) FilterExecTransformer @@ -227,7 +227,7 @@ Input [4]: [s_suppkey#1, s_name#2, s_address#3, s_nationkey#4] Output [2]: [n_nationkey#21, n_name#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (43) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q21/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q21/explain.txt index 6079bad0dd4..31364ac47be 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q21/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q21/explain.txt @@ -46,7 +46,7 @@ VeloxColumnarToRow (54) Output [3]: [s_suppkey#1, s_name#2, s_nationkey#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -57,7 +57,7 @@ Arguments: (isnotnull(s_suppkey#1) AND isnotnull(s_nationkey#3)) Output [4]: [l_orderkey#4, l_suppkey#5, l_commitdate#6, l_receiptdate#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -98,7 +98,7 @@ Join condition: NOT (l_suppkey#9 = l_suppkey#5) Output [4]: [l_orderkey#10, l_suppkey#11, l_commitdate#12, l_receiptdate#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (13) FilterExecTransformer @@ -157,7 +157,7 @@ Input [5]: [s_suppkey#1, s_name#2, s_nationkey#3, l_orderkey#4, l_suppkey#5] Output [2]: [o_orderkey#14, o_orderstatus#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (27) FilterExecTransformer @@ -196,7 +196,7 @@ Input [4]: [s_name#2, s_nationkey#3, l_orderkey#4, o_orderkey#14] Output [2]: [n_nationkey#16, n_name#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (36) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q22/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q22/explain.txt index 3eb3608fe41..16d19c81af4 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q22/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q22/explain.txt @@ -23,7 +23,7 @@ VeloxColumnarToRow (25) Output [3]: [c_custkey#1, c_phone#2, c_acctbal#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer @@ -144,7 +144,7 @@ VeloxColumnarToRow (38) Output [2]: [c_phone#18, c_acctbal#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_acctbal), GreaterThan(c_acctbal,0)] +PushedFilters: [*IsNotNull(c_acctbal), *GreaterThan(c_acctbal,0)] ReadSchema: struct (27) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q3/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q3/explain.txt index f3baf0356cf..bcf950df445 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q3/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q3/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [2]: [c_custkey#1, c_mktsegment#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -45,7 +45,7 @@ Input [2]: [c_custkey#1, c_mktsegment#2] Output [4]: [o_orderkey#3, o_custkey#4, o_orderdate#5, o_shippriority#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (5) FilterExecTransformer @@ -80,7 +80,7 @@ Input [5]: [c_custkey#1, o_orderkey#3, o_custkey#4, o_orderdate#5, o_shippriorit Output [4]: [l_orderkey#7, l_extendedprice#8, l_discount#9, l_shipdate#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q4/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q4/explain.txt index ad4eaa20a9a..cdc88d76dfe 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q4/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q4/explain.txt @@ -26,7 +26,7 @@ VeloxColumnarToRow (28) Output [3]: [o_orderkey#1, o_orderdate#2, o_orderpriority#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -41,7 +41,7 @@ Input [3]: [o_orderkey#1, o_orderdate#2, o_orderpriority#3] Output [3]: [l_orderkey#4, l_commitdate#5, l_receiptdate#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (5) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q5/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q5/explain.txt index c786fa97a5b..cd42b759a53 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q5/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q5/explain.txt @@ -50,7 +50,7 @@ VeloxColumnarToRow (60) Output [2]: [c_custkey#1, c_nationkey#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -61,7 +61,7 @@ Arguments: (isnotnull(c_custkey#1) AND isnotnull(c_nationkey#2)) Output [3]: [o_orderkey#3, o_custkey#4, o_orderdate#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -100,7 +100,7 @@ Input [4]: [c_custkey#1, c_nationkey#2, o_orderkey#3, o_custkey#4] Output [4]: [l_orderkey#6, l_suppkey#7, l_extendedprice#8, l_discount#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (13) FilterExecTransformer @@ -135,7 +135,7 @@ Input [6]: [c_nationkey#2, o_orderkey#3, l_orderkey#6, l_suppkey#7, l_extendedpr Output [2]: [s_suppkey#10, s_nationkey#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (21) FilterExecTransformer @@ -170,7 +170,7 @@ Input [6]: [c_nationkey#2, l_suppkey#7, l_extendedprice#8, l_discount#9, s_suppk Output [3]: [n_nationkey#12, n_name#13, n_regionkey#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (29) FilterExecTransformer @@ -205,7 +205,7 @@ Input [6]: [l_extendedprice#8, l_discount#9, s_nationkey#11, n_nationkey#12, n_n Output [2]: [r_regionkey#15, r_name#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/region] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q7/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q7/explain.txt index 29f943058fc..4381bf6e185 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q7/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q7/explain.txt @@ -46,7 +46,7 @@ VeloxColumnarToRow (55) Output [2]: [s_suppkey#1, s_nationkey#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -57,7 +57,7 @@ Arguments: (isnotnull(s_suppkey#1) AND isnotnull(s_nationkey#2)) Output [5]: [l_orderkey#3, l_suppkey#4, l_extendedprice#5, l_discount#6, l_shipdate#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -92,7 +92,7 @@ Input [7]: [s_suppkey#1, s_nationkey#2, l_orderkey#3, l_suppkey#4, l_extendedpri Output [2]: [o_orderkey#8, o_custkey#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (12) FilterExecTransformer @@ -127,7 +127,7 @@ Input [7]: [s_nationkey#2, l_orderkey#3, l_extendedprice#5, l_discount#6, l_ship Output [2]: [c_custkey#10, c_nationkey#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (20) FilterExecTransformer @@ -162,7 +162,7 @@ Input [7]: [s_nationkey#2, l_extendedprice#5, l_discount#6, l_shipdate#7, o_cust Output [2]: [n_nationkey#12, n_name#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (28) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q8/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q8/explain.txt index 7aa8585329e..884e509a3ce 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q8/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q8/explain.txt @@ -63,7 +63,7 @@ VeloxColumnarToRow (77) Output [2]: [p_partkey#1, p_type#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -78,7 +78,7 @@ Input [2]: [p_partkey#1, p_type#2] Output [5]: [l_orderkey#3, l_partkey#4, l_suppkey#5, l_extendedprice#6, l_discount#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (5) FilterExecTransformer @@ -113,7 +113,7 @@ Input [6]: [p_partkey#1, l_orderkey#3, l_partkey#4, l_suppkey#5, l_extendedprice Output [2]: [s_suppkey#8, s_nationkey#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (13) FilterExecTransformer @@ -148,7 +148,7 @@ Input [6]: [l_orderkey#3, l_suppkey#5, l_extendedprice#6, l_discount#7, s_suppke Output [3]: [o_orderkey#10, o_custkey#11, o_orderdate#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (21) FilterExecTransformer @@ -183,7 +183,7 @@ Input [7]: [l_orderkey#3, l_extendedprice#6, l_discount#7, s_nationkey#9, o_orde Output [2]: [c_custkey#13, c_nationkey#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (29) FilterExecTransformer @@ -218,7 +218,7 @@ Input [7]: [l_extendedprice#6, l_discount#7, s_nationkey#9, o_custkey#11, o_orde Output [2]: [n_nationkey#15, n_regionkey#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (37) FilterExecTransformer @@ -253,7 +253,7 @@ Input [7]: [l_extendedprice#6, l_discount#7, s_nationkey#9, o_orderdate#12, c_na Output [2]: [n_nationkey#17, n_name#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -288,7 +288,7 @@ Input [7]: [l_extendedprice#6, l_discount#7, s_nationkey#9, o_orderdate#12, n_re Output [2]: [r_regionkey#19, r_name#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/region] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (53) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q9/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q9/explain.txt index 60439fa2f4b..985f7797f67 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q9/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/gluten-tpch-plan-stability/q9/explain.txt @@ -49,7 +49,7 @@ VeloxColumnarToRow (59) Output [2]: [p_partkey#1, p_name#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -64,7 +64,7 @@ Input [2]: [p_partkey#1, p_name#2] Output [6]: [l_orderkey#3, l_partkey#4, l_suppkey#5, l_quantity#6, l_extendedprice#7, l_discount#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (5) FilterExecTransformer @@ -99,7 +99,7 @@ Input [7]: [p_partkey#1, l_orderkey#3, l_partkey#4, l_suppkey#5, l_quantity#6, l Output [2]: [s_suppkey#9, s_nationkey#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (13) FilterExecTransformer @@ -134,7 +134,7 @@ Input [8]: [l_orderkey#3, l_partkey#4, l_suppkey#5, l_quantity#6, l_extendedpric Output [3]: [ps_partkey#11, ps_suppkey#12, ps_supplycost#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/partsupp] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (21) FilterExecTransformer @@ -169,7 +169,7 @@ Input [10]: [l_orderkey#3, l_partkey#4, l_suppkey#5, l_quantity#6, l_extendedpri Output [2]: [o_orderkey#14, o_orderdate#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (29) FilterExecTransformer @@ -204,7 +204,7 @@ Input [8]: [l_orderkey#3, l_quantity#6, l_extendedprice#7, l_discount#8, s_natio Output [2]: [n_nationkey#16, n_name#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10.sf100/explain.txt index 3b5b287a772..28e0e3cb4d0 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10.sf100/explain.txt @@ -63,7 +63,7 @@ VeloxColumnarToRow (77) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Output [2]: [ws_bill_customer_sk#6, ws_sold_date_sk#7] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#7), dynamicpruningexpression(ws_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -131,7 +131,7 @@ Output [2]: [cs_ship_customer_sk#11, cs_sold_date_sk#12] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#12), dynamicpruningexpression(cs_sold_date_sk#12 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_ship_customer_sk)] +PushedFilters: [*IsNotNull(cs_ship_customer_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -202,7 +202,7 @@ Output [2]: [ss_customer_sk#16, ss_sold_date_sk#17] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#17), dynamicpruningexpression(ss_sold_date_sk#17 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -259,7 +259,7 @@ Input [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#21, ca_county#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (50) FilterExecTransformer @@ -312,7 +312,7 @@ Input [1]: [c_current_cdemo_sk#2] Output [9]: [cd_demo_sk#23, cd_gender#24, cd_marital_status#25, cd_education_status#26, cd_purchase_estimate#27, cd_credit_rating#28, cd_dep_count#29, cd_dep_employed_count#30, cd_dep_college_count#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (63) FilterExecTransformer @@ -397,7 +397,7 @@ VeloxColumnarToRow (89) Output [2]: [ca_address_sk#21, ca_county#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -469,7 +469,7 @@ ColumnarBroadcastExchange (94) Output [3]: [d_date_sk#9, d_year#47, d_moy#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2002), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,7), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2002), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,7), *IsNotNull(d_date_sk)] ReadSchema: struct (91) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10/explain.txt index f6645f6b402..50ea3a98ad5 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10/explain.txt @@ -55,7 +55,7 @@ VeloxColumnarToRow (65) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -67,7 +67,7 @@ Output [2]: [ws_bill_customer_sk#4, ws_sold_date_sk#5] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#5), dynamicpruningexpression(ws_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -102,7 +102,7 @@ Output [2]: [cs_ship_customer_sk#9, cs_sold_date_sk#10] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#10), dynamicpruningexpression(cs_sold_date_sk#10 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_ship_customer_sk)] +PushedFilters: [*IsNotNull(cs_ship_customer_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -156,7 +156,7 @@ Output [2]: [ss_customer_sk#13, ss_sold_date_sk#14] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#14), dynamicpruningexpression(ss_sold_date_sk#14 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -210,7 +210,7 @@ Input [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#17, ca_county#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -249,7 +249,7 @@ Input [3]: [c_current_cdemo_sk#2, c_current_addr_sk#3, ca_address_sk#17] Output [9]: [cd_demo_sk#19, cd_gender#20, cd_marital_status#21, cd_education_status#22, cd_purchase_estimate#23, cd_credit_rating#24, cd_dep_count#25, cd_dep_employed_count#26, cd_dep_college_count#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -343,7 +343,7 @@ ColumnarBroadcastExchange (70) Output [3]: [d_date_sk#7, d_year#38, d_moy#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2002), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,7), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2002), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,7), *IsNotNull(d_date_sk)] ReadSchema: struct (67) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19.sf100/explain.txt index 47ae6bdeb54..dc841592122 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19.sf100/explain.txt @@ -48,7 +48,7 @@ VeloxColumnarToRow (56) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1999), GreaterThanOrEqual(d_date_sk,2451484), LessThanOrEqual(d_date_sk,2451513), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1999), *GreaterThanOrEqual(d_date_sk,2451484), *LessThanOrEqual(d_date_sk,2451513), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -78,7 +78,7 @@ Output [5]: [ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2451484), (ss_sold_date_sk#8 <= 2451513), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -113,7 +113,7 @@ Input [4]: [ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7] Output [2]: [c_customer_sk#10, c_current_addr_sk#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -134,7 +134,7 @@ Input [6]: [ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7, Output [2]: [s_store_sk#12, s_zip#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_zip), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_zip), *IsNotNull(s_store_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -183,7 +183,7 @@ Input [4]: [ss_item_sk#4, ss_ext_sales_price#7, c_current_addr_sk#11, s_zip#13] Output [2]: [ca_address_sk#14, ca_zip#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_zip)] ReadSchema: struct (33) FilterExecTransformer @@ -204,7 +204,7 @@ Input [6]: [ss_item_sk#4, ss_ext_sales_price#7, c_current_addr_sk#11, s_zip#13, Output [6]: [i_item_sk#16, i_brand_id#17, i_brand#18, i_manufact_id#19, i_manufact#20, i_manager_id#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,7), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,7), *IsNotNull(i_item_sk)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19/explain.txt index 8a9cfe343e6..083a04680a5 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19/explain.txt @@ -48,7 +48,7 @@ VeloxColumnarToRow (56) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1999), GreaterThanOrEqual(d_date_sk,2451484), LessThanOrEqual(d_date_sk,2451513), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1999), *GreaterThanOrEqual(d_date_sk,2451484), *LessThanOrEqual(d_date_sk,2451513), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -64,7 +64,7 @@ Output [5]: [ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2451484), (ss_sold_date_sk#8 <= 2451513), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -99,7 +99,7 @@ Input [6]: [d_date_sk#1, ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_s Output [6]: [i_item_sk#9, i_brand_id#10, i_brand#11, i_manufact_id#12, i_manufact#13, i_manager_id#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,7), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,7), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -138,7 +138,7 @@ Input [9]: [ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7, Output [2]: [c_customer_sk#15, c_current_addr_sk#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -173,7 +173,7 @@ Input [9]: [ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7, i_brand_id#10 Output [2]: [ca_address_sk#17, ca_zip#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_zip)] ReadSchema: struct (30) FilterExecTransformer @@ -208,7 +208,7 @@ Input [9]: [ss_store_sk#6, ss_ext_sales_price#7, i_brand_id#10, i_brand#11, i_ma Output [2]: [s_store_sk#19, s_zip#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_zip), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_zip), *IsNotNull(s_store_sk)] ReadSchema: struct (38) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27.sf100/explain.txt index a225dff2976..d2503d33120 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27.sf100/explain.txt @@ -95,7 +95,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2451545), (ss_sold_date_sk#8 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -125,7 +125,7 @@ Input [9]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_p Output [4]: [cd_demo_sk#11, cd_gender#12, cd_marital_status#13, cd_education_status#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_marital_status,D), EqualTo(cd_education_status,Primary ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_marital_status,D), *EqualTo(cd_education_status,Primary ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -164,7 +164,7 @@ Input [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_p Output [2]: [s_store_sk#15, s_state#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_state, [AL,SD,TN]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_state, [AL,SD,TN]), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -199,7 +199,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#17, i_item_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -278,7 +278,7 @@ Output [8]: [ss_item_sk#52, ss_cdemo_sk#53, ss_store_sk#54, ss_quantity#55, ss_l Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#59), (ss_sold_date_sk#59 >= 2451545), (ss_sold_date_sk#59 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#59 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -308,7 +308,7 @@ Input [9]: [ss_item_sk#52, ss_cdemo_sk#53, ss_store_sk#54, ss_quantity#55, ss_li Output [2]: [s_store_sk#61, s_state#62] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_state, [AL,SD,TN]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_state, [AL,SD,TN]), *IsNotNull(s_store_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -429,7 +429,7 @@ Output [8]: [ss_item_sk#100, ss_cdemo_sk#101, ss_store_sk#102, ss_quantity#103, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#107), (ss_sold_date_sk#107 >= 2451545), (ss_sold_date_sk#107 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#107 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -497,7 +497,7 @@ Input [7]: [ss_item_sk#100, ss_cdemo_sk#101, ss_quantity#103, ss_list_price#104, Output [1]: [i_item_sk#111] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -590,7 +590,7 @@ ColumnarBroadcastExchange (120) Output [2]: [d_date_sk#10, d_year#146] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), GreaterThanOrEqual(d_date_sk,2451545), LessThanOrEqual(d_date_sk,2451910), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *GreaterThanOrEqual(d_date_sk,2451545), *LessThanOrEqual(d_date_sk,2451910), *IsNotNull(d_date_sk)] ReadSchema: struct (117) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27/explain.txt index fea9215541d..3db91dfe42c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27/explain.txt @@ -95,7 +95,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2451545), (ss_sold_date_sk#8 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -106,7 +106,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_store_sk#3)) AND isnotnul Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_marital_status,D), EqualTo(cd_education_status,Primary ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_marital_status,D), *EqualTo(cd_education_status,Primary ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -164,7 +164,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [s_store_sk#15, s_state#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_state, [AL,SD,TN]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_state, [AL,SD,TN]), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -199,7 +199,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#17, i_item_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -278,7 +278,7 @@ Output [8]: [ss_item_sk#52, ss_cdemo_sk#53, ss_store_sk#54, ss_quantity#55, ss_l Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#59), (ss_sold_date_sk#59 >= 2451545), (ss_sold_date_sk#59 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#59 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -327,7 +327,7 @@ Input [8]: [ss_item_sk#52, ss_store_sk#54, ss_quantity#55, ss_list_price#56, ss_ Output [2]: [s_store_sk#62, s_state#63] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_state, [AL,SD,TN]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_state, [AL,SD,TN]), *IsNotNull(s_store_sk)] ReadSchema: struct (56) FilterExecTransformer @@ -429,7 +429,7 @@ Output [8]: [ss_item_sk#100, ss_cdemo_sk#101, ss_store_sk#102, ss_quantity#103, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#107), (ss_sold_date_sk#107 >= 2451545), (ss_sold_date_sk#107 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#107 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -497,7 +497,7 @@ Input [7]: [ss_item_sk#100, ss_store_sk#102, ss_quantity#103, ss_list_price#104, Output [1]: [i_item_sk#111] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -590,7 +590,7 @@ ColumnarBroadcastExchange (120) Output [2]: [d_date_sk#14, d_year#146] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), GreaterThanOrEqual(d_date_sk,2451545), LessThanOrEqual(d_date_sk,2451910), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *GreaterThanOrEqual(d_date_sk,2451545), *LessThanOrEqual(d_date_sk,2451910), *IsNotNull(d_date_sk)] ReadSchema: struct (117) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3.sf100/explain.txt index 309aa988f49..69df2e87549 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3.sf100/explain.txt @@ -28,7 +28,7 @@ Output [3]: [ss_item_sk#1, ss_net_profit#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [((((((((((ss_sold_date_sk#3 >= 2415355) AND (ss_sold_date_sk#3 <= 2415385)) OR ((ss_sold_date_sk#3 >= 2415720) AND (ss_sold_date_sk#3 <= 2415750))) OR (((ss_sold_date_sk#3 >= 2416085) AND (ss_sold_date_sk#3 <= 2416115)) OR ((ss_sold_date_sk#3 >= 2416450) AND (ss_sold_date_sk#3 <= 2416480)))) OR ((((ss_sold_date_sk#3 >= 2416816) AND (ss_sold_date_sk#3 <= 2416846)) OR ((ss_sold_date_sk#3 >= 2417181) AND (ss_sold_date_sk#3 <= 2417211))) OR ((ss_sold_date_sk#3 >= 2417546) AND (ss_sold_date_sk#3 <= 2417576)))) OR (((((ss_sold_date_sk#3 >= 2417911) AND (ss_sold_date_sk#3 <= 2417941)) OR ((ss_sold_date_sk#3 >= 2418277) AND (ss_sold_date_sk#3 <= 2418307))) OR ((ss_sold_date_sk#3 >= 2418642) AND (ss_sold_date_sk#3 <= 2418672))) OR ((((ss_sold_date_sk#3 >= 2419007) AND (ss_sold_date_sk#3 <= 2419037)) OR ((ss_sold_date_sk#3 >= 2419372) AND (ss_sold_date_sk#3 <= 2419402))) OR ((ss_sold_date_sk#3 >= 2419738) AND (ss_sold_date_sk#3 <= 2419768))))) OR ((((((ss_sold_date_sk#3 >= 2420103) AND (ss_sold_date_sk#3 <= 2420133)) OR ((ss_sold_date_sk#3 >= 2420468) AND (ss_sold_date_sk#3 <= 2420498))) OR ((ss_sold_date_sk#3 >= 2420833) AND (ss_sold_date_sk#3 <= 2420863))) OR ((((ss_sold_date_sk#3 >= 2421199) AND (ss_sold_date_sk#3 <= 2421229)) OR ((ss_sold_date_sk#3 >= 2421564) AND (ss_sold_date_sk#3 <= 2421594))) OR ((ss_sold_date_sk#3 >= 2421929) AND (ss_sold_date_sk#3 <= 2421959)))) OR (((((ss_sold_date_sk#3 >= 2422294) AND (ss_sold_date_sk#3 <= 2422324)) OR ((ss_sold_date_sk#3 >= 2422660) AND (ss_sold_date_sk#3 <= 2422690))) OR ((ss_sold_date_sk#3 >= 2423025) AND (ss_sold_date_sk#3 <= 2423055))) OR ((((ss_sold_date_sk#3 >= 2423390) AND (ss_sold_date_sk#3 <= 2423420)) OR ((ss_sold_date_sk#3 >= 2423755) AND (ss_sold_date_sk#3 <= 2423785))) OR ((ss_sold_date_sk#3 >= 2424121) AND (ss_sold_date_sk#3 <= 2424151)))))) OR (((((((ss_sold_date_sk#3 >= 2424486) AND (ss_sold_date_sk#3 <= 2424516)) OR ((ss_sold_date_sk#3 >= 2424851) AND (ss_sold_date_sk#3 <= 2424881))) OR (((ss_sold_date_sk#3 >= 2425216) AND (ss_sold_date_sk#3 <= 2425246)) OR ((ss_sold_date_sk#3 >= 2425582) AND (ss_sold_date_sk#3 <= 2425612)))) OR ((((ss_sold_date_sk#3 >= 2425947) AND (ss_sold_date_sk#3 <= 2425977)) OR ((ss_sold_date_sk#3 >= 2426312) AND (ss_sold_date_sk#3 <= 2426342))) OR ((ss_sold_date_sk#3 >= 2426677) AND (ss_sold_date_sk#3 <= 2426707)))) OR (((((ss_sold_date_sk#3 >= 2427043) AND (ss_sold_date_sk#3 <= 2427073)) OR ((ss_sold_date_sk#3 >= 2427408) AND (ss_sold_date_sk#3 <= 2427438))) OR ((ss_sold_date_sk#3 >= 2427773) AND (ss_sold_date_sk#3 <= 2427803))) OR ((((ss_sold_date_sk#3 >= 2428138) AND (ss_sold_date_sk#3 <= 2428168)) OR ((ss_sold_date_sk#3 >= 2428504) AND (ss_sold_date_sk#3 <= 2428534))) OR ((ss_sold_date_sk#3 >= 2428869) AND (ss_sold_date_sk#3 <= 2428899))))) OR ((((((ss_sold_date_sk#3 >= 2429234) AND (ss_sold_date_sk#3 <= 2429264)) OR ((ss_sold_date_sk#3 >= 2429599) AND (ss_sold_date_sk#3 <= 2429629))) OR ((ss_sold_date_sk#3 >= 2429965) AND (ss_sold_date_sk#3 <= 2429995))) OR ((((ss_sold_date_sk#3 >= 2430330) AND (ss_sold_date_sk#3 <= 2430360)) OR ((ss_sold_date_sk#3 >= 2430695) AND (ss_sold_date_sk#3 <= 2430725))) OR ((ss_sold_date_sk#3 >= 2431060) AND (ss_sold_date_sk#3 <= 2431090)))) OR (((((ss_sold_date_sk#3 >= 2431426) AND (ss_sold_date_sk#3 <= 2431456)) OR ((ss_sold_date_sk#3 >= 2431791) AND (ss_sold_date_sk#3 <= 2431821))) OR ((ss_sold_date_sk#3 >= 2432156) AND (ss_sold_date_sk#3 <= 2432186))) OR ((((ss_sold_date_sk#3 >= 2432521) AND (ss_sold_date_sk#3 <= 2432551)) OR ((ss_sold_date_sk#3 >= 2432887) AND (ss_sold_date_sk#3 <= 2432917))) OR ((ss_sold_date_sk#3 >= 2433252) AND (ss_sold_date_sk#3 <= 2433282))))))) OR ((((((((ss_sold_date_sk#3 >= 2433617) AND (ss_sold_date_sk#3 <= 2433647)) OR ((ss_sold_date_sk#3 >= 2433982) AND (ss_sold_date_sk#3 <= 2434012))) OR (((ss_sold_date_sk#3 >= 2434348) AND (ss_sold_date_sk#3 <= 2434378)) OR ((ss_sold_date_sk#3 >= 2434713) AND (ss_sold_date_sk#3 <= 2434743)))) OR ((((ss_sold_date_sk#3 >= 2435078) AND (ss_sold_date_sk#3 <= 2435108)) OR ((ss_sold_date_sk#3 >= 2435443) AND (ss_sold_date_sk#3 <= 2435473))) OR ((ss_sold_date_sk#3 >= 2435809) AND (ss_sold_date_sk#3 <= 2435839)))) OR (((((ss_sold_date_sk#3 >= 2436174) AND (ss_sold_date_sk#3 <= 2436204)) OR ((ss_sold_date_sk#3 >= 2436539) AND (ss_sold_date_sk#3 <= 2436569))) OR ((ss_sold_date_sk#3 >= 2436904) AND (ss_sold_date_sk#3 <= 2436934))) OR ((((ss_sold_date_sk#3 >= 2437270) AND (ss_sold_date_sk#3 <= 2437300)) OR ((ss_sold_date_sk#3 >= 2437635) AND (ss_sold_date_sk#3 <= 2437665))) OR ((ss_sold_date_sk#3 >= 2438000) AND (ss_sold_date_sk#3 <= 2438030))))) OR ((((((ss_sold_date_sk#3 >= 2438365) AND (ss_sold_date_sk#3 <= 2438395)) OR ((ss_sold_date_sk#3 >= 2438731) AND (ss_sold_date_sk#3 <= 2438761))) OR ((ss_sold_date_sk#3 >= 2439096) AND (ss_sold_date_sk#3 <= 2439126))) OR ((((ss_sold_date_sk#3 >= 2439461) AND (ss_sold_date_sk#3 <= 2439491)) OR ((ss_sold_date_sk#3 >= 2439826) AND (ss_sold_date_sk#3 <= 2439856))) OR ((ss_sold_date_sk#3 >= 2440192) AND (ss_sold_date_sk#3 <= 2440222)))) OR (((((ss_sold_date_sk#3 >= 2440557) AND (ss_sold_date_sk#3 <= 2440587)) OR ((ss_sold_date_sk#3 >= 2440922) AND (ss_sold_date_sk#3 <= 2440952))) OR ((ss_sold_date_sk#3 >= 2441287) AND (ss_sold_date_sk#3 <= 2441317))) OR ((((ss_sold_date_sk#3 >= 2441653) AND (ss_sold_date_sk#3 <= 2441683)) OR ((ss_sold_date_sk#3 >= 2442018) AND (ss_sold_date_sk#3 <= 2442048))) OR ((ss_sold_date_sk#3 >= 2442383) AND (ss_sold_date_sk#3 <= 2442413)))))) OR (((((((ss_sold_date_sk#3 >= 2442748) AND (ss_sold_date_sk#3 <= 2442778)) OR ((ss_sold_date_sk#3 >= 2443114) AND (ss_sold_date_sk#3 <= 2443144))) OR (((ss_sold_date_sk#3 >= 2443479) AND (ss_sold_date_sk#3 <= 2443509)) OR ((ss_sold_date_sk#3 >= 2443844) AND (ss_sold_date_sk#3 <= 2443874)))) OR ((((ss_sold_date_sk#3 >= 2444209) AND (ss_sold_date_sk#3 <= 2444239)) OR ((ss_sold_date_sk#3 >= 2444575) AND (ss_sold_date_sk#3 <= 2444605))) OR ((ss_sold_date_sk#3 >= 2444940) AND (ss_sold_date_sk#3 <= 2444970)))) OR (((((ss_sold_date_sk#3 >= 2445305) AND (ss_sold_date_sk#3 <= 2445335)) OR ((ss_sold_date_sk#3 >= 2445670) AND (ss_sold_date_sk#3 <= 2445700))) OR ((ss_sold_date_sk#3 >= 2446036) AND (ss_sold_date_sk#3 <= 2446066))) OR ((((ss_sold_date_sk#3 >= 2446401) AND (ss_sold_date_sk#3 <= 2446431)) OR ((ss_sold_date_sk#3 >= 2446766) AND (ss_sold_date_sk#3 <= 2446796))) OR ((ss_sold_date_sk#3 >= 2447131) AND (ss_sold_date_sk#3 <= 2447161))))) OR ((((((ss_sold_date_sk#3 >= 2447497) AND (ss_sold_date_sk#3 <= 2447527)) OR ((ss_sold_date_sk#3 >= 2447862) AND (ss_sold_date_sk#3 <= 2447892))) OR ((ss_sold_date_sk#3 >= 2448227) AND (ss_sold_date_sk#3 <= 2448257))) OR ((((ss_sold_date_sk#3 >= 2448592) AND (ss_sold_date_sk#3 <= 2448622)) OR ((ss_sold_date_sk#3 >= 2448958) AND (ss_sold_date_sk#3 <= 2448988))) OR ((ss_sold_date_sk#3 >= 2449323) AND (ss_sold_date_sk#3 <= 2449353)))) OR (((((ss_sold_date_sk#3 >= 2449688) AND (ss_sold_date_sk#3 <= 2449718)) OR ((ss_sold_date_sk#3 >= 2450053) AND (ss_sold_date_sk#3 <= 2450083))) OR ((ss_sold_date_sk#3 >= 2450419) AND (ss_sold_date_sk#3 <= 2450449))) OR ((((ss_sold_date_sk#3 >= 2450784) AND (ss_sold_date_sk#3 <= 2450814)) OR ((ss_sold_date_sk#3 >= 2451149) AND (ss_sold_date_sk#3 <= 2451179))) OR ((ss_sold_date_sk#3 >= 2451514) AND (ss_sold_date_sk#3 <= 2451544)))))))) OR (((((((((ss_sold_date_sk#3 >= 2451880) AND (ss_sold_date_sk#3 <= 2451910)) OR ((ss_sold_date_sk#3 >= 2452245) AND (ss_sold_date_sk#3 <= 2452275))) OR (((ss_sold_date_sk#3 >= 2452610) AND (ss_sold_date_sk#3 <= 2452640)) OR ((ss_sold_date_sk#3 >= 2452975) AND (ss_sold_date_sk#3 <= 2453005)))) OR ((((ss_sold_date_sk#3 >= 2453341) AND (ss_sold_date_sk#3 <= 2453371)) OR ((ss_sold_date_sk#3 >= 2453706) AND (ss_sold_date_sk#3 <= 2453736))) OR ((ss_sold_date_sk#3 >= 2454071) AND (ss_sold_date_sk#3 <= 2454101)))) OR (((((ss_sold_date_sk#3 >= 2454436) AND (ss_sold_date_sk#3 <= 2454466)) OR ((ss_sold_date_sk#3 >= 2454802) AND (ss_sold_date_sk#3 <= 2454832))) OR ((ss_sold_date_sk#3 >= 2455167) AND (ss_sold_date_sk#3 <= 2455197))) OR ((((ss_sold_date_sk#3 >= 2455532) AND (ss_sold_date_sk#3 <= 2455562)) OR ((ss_sold_date_sk#3 >= 2455897) AND (ss_sold_date_sk#3 <= 2455927))) OR ((ss_sold_date_sk#3 >= 2456263) AND (ss_sold_date_sk#3 <= 2456293))))) OR ((((((ss_sold_date_sk#3 >= 2456628) AND (ss_sold_date_sk#3 <= 2456658)) OR ((ss_sold_date_sk#3 >= 2456993) AND (ss_sold_date_sk#3 <= 2457023))) OR ((ss_sold_date_sk#3 >= 2457358) AND (ss_sold_date_sk#3 <= 2457388))) OR ((((ss_sold_date_sk#3 >= 2457724) AND (ss_sold_date_sk#3 <= 2457754)) OR ((ss_sold_date_sk#3 >= 2458089) AND (ss_sold_date_sk#3 <= 2458119))) OR ((ss_sold_date_sk#3 >= 2458454) AND (ss_sold_date_sk#3 <= 2458484)))) OR (((((ss_sold_date_sk#3 >= 2458819) AND (ss_sold_date_sk#3 <= 2458849)) OR ((ss_sold_date_sk#3 >= 2459185) AND (ss_sold_date_sk#3 <= 2459215))) OR ((ss_sold_date_sk#3 >= 2459550) AND (ss_sold_date_sk#3 <= 2459580))) OR ((((ss_sold_date_sk#3 >= 2459915) AND (ss_sold_date_sk#3 <= 2459945)) OR ((ss_sold_date_sk#3 >= 2460280) AND (ss_sold_date_sk#3 <= 2460310))) OR ((ss_sold_date_sk#3 >= 2460646) AND (ss_sold_date_sk#3 <= 2460676)))))) OR (((((((ss_sold_date_sk#3 >= 2461011) AND (ss_sold_date_sk#3 <= 2461041)) OR ((ss_sold_date_sk#3 >= 2461376) AND (ss_sold_date_sk#3 <= 2461406))) OR (((ss_sold_date_sk#3 >= 2461741) AND (ss_sold_date_sk#3 <= 2461771)) OR ((ss_sold_date_sk#3 >= 2462107) AND (ss_sold_date_sk#3 <= 2462137)))) OR ((((ss_sold_date_sk#3 >= 2462472) AND (ss_sold_date_sk#3 <= 2462502)) OR ((ss_sold_date_sk#3 >= 2462837) AND (ss_sold_date_sk#3 <= 2462867))) OR ((ss_sold_date_sk#3 >= 2463202) AND (ss_sold_date_sk#3 <= 2463232)))) OR (((((ss_sold_date_sk#3 >= 2463568) AND (ss_sold_date_sk#3 <= 2463598)) OR ((ss_sold_date_sk#3 >= 2463933) AND (ss_sold_date_sk#3 <= 2463963))) OR ((ss_sold_date_sk#3 >= 2464298) AND (ss_sold_date_sk#3 <= 2464328))) OR ((((ss_sold_date_sk#3 >= 2464663) AND (ss_sold_date_sk#3 <= 2464693)) OR ((ss_sold_date_sk#3 >= 2465029) AND (ss_sold_date_sk#3 <= 2465059))) OR ((ss_sold_date_sk#3 >= 2465394) AND (ss_sold_date_sk#3 <= 2465424))))) OR ((((((ss_sold_date_sk#3 >= 2465759) AND (ss_sold_date_sk#3 <= 2465789)) OR ((ss_sold_date_sk#3 >= 2466124) AND (ss_sold_date_sk#3 <= 2466154))) OR ((ss_sold_date_sk#3 >= 2466490) AND (ss_sold_date_sk#3 <= 2466520))) OR ((((ss_sold_date_sk#3 >= 2466855) AND (ss_sold_date_sk#3 <= 2466885)) OR ((ss_sold_date_sk#3 >= 2467220) AND (ss_sold_date_sk#3 <= 2467250))) OR ((ss_sold_date_sk#3 >= 2467585) AND (ss_sold_date_sk#3 <= 2467615)))) OR (((((ss_sold_date_sk#3 >= 2467951) AND (ss_sold_date_sk#3 <= 2467981)) OR ((ss_sold_date_sk#3 >= 2468316) AND (ss_sold_date_sk#3 <= 2468346))) OR ((ss_sold_date_sk#3 >= 2468681) AND (ss_sold_date_sk#3 <= 2468711))) OR ((((ss_sold_date_sk#3 >= 2469046) AND (ss_sold_date_sk#3 <= 2469076)) OR ((ss_sold_date_sk#3 >= 2469412) AND (ss_sold_date_sk#3 <= 2469442))) OR ((ss_sold_date_sk#3 >= 2469777) AND (ss_sold_date_sk#3 <= 2469807))))))) OR ((((((((ss_sold_date_sk#3 >= 2470142) AND (ss_sold_date_sk#3 <= 2470172)) OR ((ss_sold_date_sk#3 >= 2470507) AND (ss_sold_date_sk#3 <= 2470537))) OR (((ss_sold_date_sk#3 >= 2470873) AND (ss_sold_date_sk#3 <= 2470903)) OR ((ss_sold_date_sk#3 >= 2471238) AND (ss_sold_date_sk#3 <= 2471268)))) OR ((((ss_sold_date_sk#3 >= 2471603) AND (ss_sold_date_sk#3 <= 2471633)) OR ((ss_sold_date_sk#3 >= 2471968) AND (ss_sold_date_sk#3 <= 2471998))) OR ((ss_sold_date_sk#3 >= 2472334) AND (ss_sold_date_sk#3 <= 2472364)))) OR (((((ss_sold_date_sk#3 >= 2472699) AND (ss_sold_date_sk#3 <= 2472729)) OR ((ss_sold_date_sk#3 >= 2473064) AND (ss_sold_date_sk#3 <= 2473094))) OR ((ss_sold_date_sk#3 >= 2473429) AND (ss_sold_date_sk#3 <= 2473459))) OR ((((ss_sold_date_sk#3 >= 2473795) AND (ss_sold_date_sk#3 <= 2473825)) OR ((ss_sold_date_sk#3 >= 2474160) AND (ss_sold_date_sk#3 <= 2474190))) OR ((ss_sold_date_sk#3 >= 2474525) AND (ss_sold_date_sk#3 <= 2474555))))) OR ((((((ss_sold_date_sk#3 >= 2474890) AND (ss_sold_date_sk#3 <= 2474920)) OR ((ss_sold_date_sk#3 >= 2475256) AND (ss_sold_date_sk#3 <= 2475286))) OR ((ss_sold_date_sk#3 >= 2475621) AND (ss_sold_date_sk#3 <= 2475651))) OR ((((ss_sold_date_sk#3 >= 2475986) AND (ss_sold_date_sk#3 <= 2476016)) OR ((ss_sold_date_sk#3 >= 2476351) AND (ss_sold_date_sk#3 <= 2476381))) OR ((ss_sold_date_sk#3 >= 2476717) AND (ss_sold_date_sk#3 <= 2476747)))) OR (((((ss_sold_date_sk#3 >= 2477082) AND (ss_sold_date_sk#3 <= 2477112)) OR ((ss_sold_date_sk#3 >= 2477447) AND (ss_sold_date_sk#3 <= 2477477))) OR ((ss_sold_date_sk#3 >= 2477812) AND (ss_sold_date_sk#3 <= 2477842))) OR ((((ss_sold_date_sk#3 >= 2478178) AND (ss_sold_date_sk#3 <= 2478208)) OR ((ss_sold_date_sk#3 >= 2478543) AND (ss_sold_date_sk#3 <= 2478573))) OR ((ss_sold_date_sk#3 >= 2478908) AND (ss_sold_date_sk#3 <= 2478938)))))) OR (((((((ss_sold_date_sk#3 >= 2479273) AND (ss_sold_date_sk#3 <= 2479303)) OR ((ss_sold_date_sk#3 >= 2479639) AND (ss_sold_date_sk#3 <= 2479669))) OR (((ss_sold_date_sk#3 >= 2480004) AND (ss_sold_date_sk#3 <= 2480034)) OR ((ss_sold_date_sk#3 >= 2480369) AND (ss_sold_date_sk#3 <= 2480399)))) OR ((((ss_sold_date_sk#3 >= 2480734) AND (ss_sold_date_sk#3 <= 2480764)) OR ((ss_sold_date_sk#3 >= 2481100) AND (ss_sold_date_sk#3 <= 2481130))) OR ((ss_sold_date_sk#3 >= 2481465) AND (ss_sold_date_sk#3 <= 2481495)))) OR (((((ss_sold_date_sk#3 >= 2481830) AND (ss_sold_date_sk#3 <= 2481860)) OR ((ss_sold_date_sk#3 >= 2482195) AND (ss_sold_date_sk#3 <= 2482225))) OR ((ss_sold_date_sk#3 >= 2482561) AND (ss_sold_date_sk#3 <= 2482591))) OR ((((ss_sold_date_sk#3 >= 2482926) AND (ss_sold_date_sk#3 <= 2482956)) OR ((ss_sold_date_sk#3 >= 2483291) AND (ss_sold_date_sk#3 <= 2483321))) OR ((ss_sold_date_sk#3 >= 2483656) AND (ss_sold_date_sk#3 <= 2483686))))) OR ((((((ss_sold_date_sk#3 >= 2484022) AND (ss_sold_date_sk#3 <= 2484052)) OR ((ss_sold_date_sk#3 >= 2484387) AND (ss_sold_date_sk#3 <= 2484417))) OR ((ss_sold_date_sk#3 >= 2484752) AND (ss_sold_date_sk#3 <= 2484782))) OR ((((ss_sold_date_sk#3 >= 2485117) AND (ss_sold_date_sk#3 <= 2485147)) OR ((ss_sold_date_sk#3 >= 2485483) AND (ss_sold_date_sk#3 <= 2485513))) OR ((ss_sold_date_sk#3 >= 2485848) AND (ss_sold_date_sk#3 <= 2485878)))) OR (((((ss_sold_date_sk#3 >= 2486213) AND (ss_sold_date_sk#3 <= 2486243)) OR ((ss_sold_date_sk#3 >= 2486578) AND (ss_sold_date_sk#3 <= 2486608))) OR ((ss_sold_date_sk#3 >= 2486944) AND (ss_sold_date_sk#3 <= 2486974))) OR ((((ss_sold_date_sk#3 >= 2487309) AND (ss_sold_date_sk#3 <= 2487339)) OR ((ss_sold_date_sk#3 >= 2487674) AND (ss_sold_date_sk#3 <= 2487704))) OR ((ss_sold_date_sk#3 >= 2488039) AND (ss_sold_date_sk#3 <= 2488069))))))))), isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -39,7 +39,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#5, i_brand_id#6, i_brand#7, i_manufact_id#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,436), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,436), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -156,7 +156,7 @@ ColumnarBroadcastExchange (33) Output [3]: [d_date_sk#9, d_year#10, d_moy#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), EqualTo(d_moy,12), Or(Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2415355),LessThanOrEqual(d_date_sk,2415385)),And(GreaterThanOrEqual(d_date_sk,2415720),LessThanOrEqual(d_date_sk,2415750))),Or(And(GreaterThanOrEqual(d_date_sk,2416085),LessThanOrEqual(d_date_sk,2416115)),And(GreaterThanOrEqual(d_date_sk,2416450),LessThanOrEqual(d_date_sk,2416480)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2416816),LessThanOrEqual(d_date_sk,2416846)),And(GreaterThanOrEqual(d_date_sk,2417181),LessThanOrEqual(d_date_sk,2417211))),And(GreaterThanOrEqual(d_date_sk,2417546),LessThanOrEqual(d_date_sk,2417576)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2417911),LessThanOrEqual(d_date_sk,2417941)),And(GreaterThanOrEqual(d_date_sk,2418277),LessThanOrEqual(d_date_sk,2418307))),And(GreaterThanOrEqual(d_date_sk,2418642),LessThanOrEqual(d_date_sk,2418672))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2419007),LessThanOrEqual(d_date_sk,2419037)),And(GreaterThanOrEqual(d_date_sk,2419372),LessThanOrEqual(d_date_sk,2419402))),And(GreaterThanOrEqual(d_date_sk,2419738),LessThanOrEqual(d_date_sk,2419768))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2420103),LessThanOrEqual(d_date_sk,2420133)),And(GreaterThanOrEqual(d_date_sk,2420468),LessThanOrEqual(d_date_sk,2420498))),And(GreaterThanOrEqual(d_date_sk,2420833),LessThanOrEqual(d_date_sk,2420863))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2421199),LessThanOrEqual(d_date_sk,2421229)),And(GreaterThanOrEqual(d_date_sk,2421564),LessThanOrEqual(d_date_sk,2421594))),And(GreaterThanOrEqual(d_date_sk,2421929),LessThanOrEqual(d_date_sk,2421959)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2422294),LessThanOrEqual(d_date_sk,2422324)),And(GreaterThanOrEqual(d_date_sk,2422660),LessThanOrEqual(d_date_sk,2422690))),And(GreaterThanOrEqual(d_date_sk,2423025),LessThanOrEqual(d_date_sk,2423055))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2423390),LessThanOrEqual(d_date_sk,2423420)),And(GreaterThanOrEqual(d_date_sk,2423755),LessThanOrEqual(d_date_sk,2423785))),And(GreaterThanOrEqual(d_date_sk,2424121),LessThanOrEqual(d_date_sk,2424151)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2424486),LessThanOrEqual(d_date_sk,2424516)),And(GreaterThanOrEqual(d_date_sk,2424851),LessThanOrEqual(d_date_sk,2424881))),Or(And(GreaterThanOrEqual(d_date_sk,2425216),LessThanOrEqual(d_date_sk,2425246)),And(GreaterThanOrEqual(d_date_sk,2425582),LessThanOrEqual(d_date_sk,2425612)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2425947),LessThanOrEqual(d_date_sk,2425977)),And(GreaterThanOrEqual(d_date_sk,2426312),LessThanOrEqual(d_date_sk,2426342))),And(GreaterThanOrEqual(d_date_sk,2426677),LessThanOrEqual(d_date_sk,2426707)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2427043),LessThanOrEqual(d_date_sk,2427073)),And(GreaterThanOrEqual(d_date_sk,2427408),LessThanOrEqual(d_date_sk,2427438))),And(GreaterThanOrEqual(d_date_sk,2427773),LessThanOrEqual(d_date_sk,2427803))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2428138),LessThanOrEqual(d_date_sk,2428168)),And(GreaterThanOrEqual(d_date_sk,2428504),LessThanOrEqual(d_date_sk,2428534))),And(GreaterThanOrEqual(d_date_sk,2428869),LessThanOrEqual(d_date_sk,2428899))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2429234),LessThanOrEqual(d_date_sk,2429264)),And(GreaterThanOrEqual(d_date_sk,2429599),LessThanOrEqual(d_date_sk,2429629))),And(GreaterThanOrEqual(d_date_sk,2429965),LessThanOrEqual(d_date_sk,2429995))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2430330),LessThanOrEqual(d_date_sk,2430360)),And(GreaterThanOrEqual(d_date_sk,2430695),LessThanOrEqual(d_date_sk,2430725))),And(GreaterThanOrEqual(d_date_sk,2431060),LessThanOrEqual(d_date_sk,2431090)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2431426),LessThanOrEqual(d_date_sk,2431456)),And(GreaterThanOrEqual(d_date_sk,2431791),LessThanOrEqual(d_date_sk,2431821))),And(GreaterThanOrEqual(d_date_sk,2432156),LessThanOrEqual(d_date_sk,2432186))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2432521),LessThanOrEqual(d_date_sk,2432551)),And(GreaterThanOrEqual(d_date_sk,2432887),LessThanOrEqual(d_date_sk,2432917))),And(GreaterThanOrEqual(d_date_sk,2433252),LessThanOrEqual(d_date_sk,2433282))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2433617),LessThanOrEqual(d_date_sk,2433647)),And(GreaterThanOrEqual(d_date_sk,2433982),LessThanOrEqual(d_date_sk,2434012))),Or(And(GreaterThanOrEqual(d_date_sk,2434348),LessThanOrEqual(d_date_sk,2434378)),And(GreaterThanOrEqual(d_date_sk,2434713),LessThanOrEqual(d_date_sk,2434743)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2435078),LessThanOrEqual(d_date_sk,2435108)),And(GreaterThanOrEqual(d_date_sk,2435443),LessThanOrEqual(d_date_sk,2435473))),And(GreaterThanOrEqual(d_date_sk,2435809),LessThanOrEqual(d_date_sk,2435839)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2436174),LessThanOrEqual(d_date_sk,2436204)),And(GreaterThanOrEqual(d_date_sk,2436539),LessThanOrEqual(d_date_sk,2436569))),And(GreaterThanOrEqual(d_date_sk,2436904),LessThanOrEqual(d_date_sk,2436934))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2437270),LessThanOrEqual(d_date_sk,2437300)),And(GreaterThanOrEqual(d_date_sk,2437635),LessThanOrEqual(d_date_sk,2437665))),And(GreaterThanOrEqual(d_date_sk,2438000),LessThanOrEqual(d_date_sk,2438030))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2438365),LessThanOrEqual(d_date_sk,2438395)),And(GreaterThanOrEqual(d_date_sk,2438731),LessThanOrEqual(d_date_sk,2438761))),And(GreaterThanOrEqual(d_date_sk,2439096),LessThanOrEqual(d_date_sk,2439126))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2439461),LessThanOrEqual(d_date_sk,2439491)),And(GreaterThanOrEqual(d_date_sk,2439826),LessThanOrEqual(d_date_sk,2439856))),And(GreaterThanOrEqual(d_date_sk,2440192),LessThanOrEqual(d_date_sk,2440222)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2440557),LessThanOrEqual(d_date_sk,2440587)),And(GreaterThanOrEqual(d_date_sk,2440922),LessThanOrEqual(d_date_sk,2440952))),And(GreaterThanOrEqual(d_date_sk,2441287),LessThanOrEqual(d_date_sk,2441317))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2441653),LessThanOrEqual(d_date_sk,2441683)),And(GreaterThanOrEqual(d_date_sk,2442018),LessThanOrEqual(d_date_sk,2442048))),And(GreaterThanOrEqual(d_date_sk,2442383),LessThanOrEqual(d_date_sk,2442413)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2442748),LessThanOrEqual(d_date_sk,2442778)),And(GreaterThanOrEqual(d_date_sk,2443114),LessThanOrEqual(d_date_sk,2443144))),Or(And(GreaterThanOrEqual(d_date_sk,2443479),LessThanOrEqual(d_date_sk,2443509)),And(GreaterThanOrEqual(d_date_sk,2443844),LessThanOrEqual(d_date_sk,2443874)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2444209),LessThanOrEqual(d_date_sk,2444239)),And(GreaterThanOrEqual(d_date_sk,2444575),LessThanOrEqual(d_date_sk,2444605))),And(GreaterThanOrEqual(d_date_sk,2444940),LessThanOrEqual(d_date_sk,2444970)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2445305),LessThanOrEqual(d_date_sk,2445335)),And(GreaterThanOrEqual(d_date_sk,2445670),LessThanOrEqual(d_date_sk,2445700))),And(GreaterThanOrEqual(d_date_sk,2446036),LessThanOrEqual(d_date_sk,2446066))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2446401),LessThanOrEqual(d_date_sk,2446431)),And(GreaterThanOrEqual(d_date_sk,2446766),LessThanOrEqual(d_date_sk,2446796))),And(GreaterThanOrEqual(d_date_sk,2447131),LessThanOrEqual(d_date_sk,2447161))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2447497),LessThanOrEqual(d_date_sk,2447527)),And(GreaterThanOrEqual(d_date_sk,2447862),LessThanOrEqual(d_date_sk,2447892))),And(GreaterThanOrEqual(d_date_sk,2448227),LessThanOrEqual(d_date_sk,2448257))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2448592),LessThanOrEqual(d_date_sk,2448622)),And(GreaterThanOrEqual(d_date_sk,2448958),LessThanOrEqual(d_date_sk,2448988))),And(GreaterThanOrEqual(d_date_sk,2449323),LessThanOrEqual(d_date_sk,2449353)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2449688),LessThanOrEqual(d_date_sk,2449718)),And(GreaterThanOrEqual(d_date_sk,2450053),LessThanOrEqual(d_date_sk,2450083))),And(GreaterThanOrEqual(d_date_sk,2450419),LessThanOrEqual(d_date_sk,2450449))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2450784),LessThanOrEqual(d_date_sk,2450814)),And(GreaterThanOrEqual(d_date_sk,2451149),LessThanOrEqual(d_date_sk,2451179))),And(GreaterThanOrEqual(d_date_sk,2451514),LessThanOrEqual(d_date_sk,2451544)))))))),Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2451880),LessThanOrEqual(d_date_sk,2451910)),And(GreaterThanOrEqual(d_date_sk,2452245),LessThanOrEqual(d_date_sk,2452275))),Or(And(GreaterThanOrEqual(d_date_sk,2452610),LessThanOrEqual(d_date_sk,2452640)),And(GreaterThanOrEqual(d_date_sk,2452975),LessThanOrEqual(d_date_sk,2453005)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2453341),LessThanOrEqual(d_date_sk,2453371)),And(GreaterThanOrEqual(d_date_sk,2453706),LessThanOrEqual(d_date_sk,2453736))),And(GreaterThanOrEqual(d_date_sk,2454071),LessThanOrEqual(d_date_sk,2454101)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2454436),LessThanOrEqual(d_date_sk,2454466)),And(GreaterThanOrEqual(d_date_sk,2454802),LessThanOrEqual(d_date_sk,2454832))),And(GreaterThanOrEqual(d_date_sk,2455167),LessThanOrEqual(d_date_sk,2455197))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2455532),LessThanOrEqual(d_date_sk,2455562)),And(GreaterThanOrEqual(d_date_sk,2455897),LessThanOrEqual(d_date_sk,2455927))),And(GreaterThanOrEqual(d_date_sk,2456263),LessThanOrEqual(d_date_sk,2456293))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2456628),LessThanOrEqual(d_date_sk,2456658)),And(GreaterThanOrEqual(d_date_sk,2456993),LessThanOrEqual(d_date_sk,2457023))),And(GreaterThanOrEqual(d_date_sk,2457358),LessThanOrEqual(d_date_sk,2457388))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2457724),LessThanOrEqual(d_date_sk,2457754)),And(GreaterThanOrEqual(d_date_sk,2458089),LessThanOrEqual(d_date_sk,2458119))),And(GreaterThanOrEqual(d_date_sk,2458454),LessThanOrEqual(d_date_sk,2458484)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2458819),LessThanOrEqual(d_date_sk,2458849)),And(GreaterThanOrEqual(d_date_sk,2459185),LessThanOrEqual(d_date_sk,2459215))),And(GreaterThanOrEqual(d_date_sk,2459550),LessThanOrEqual(d_date_sk,2459580))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2459915),LessThanOrEqual(d_date_sk,2459945)),And(GreaterThanOrEqual(d_date_sk,2460280),LessThanOrEqual(d_date_sk,2460310))),And(GreaterThanOrEqual(d_date_sk,2460646),LessThanOrEqual(d_date_sk,2460676)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2461011),LessThanOrEqual(d_date_sk,2461041)),And(GreaterThanOrEqual(d_date_sk,2461376),LessThanOrEqual(d_date_sk,2461406))),Or(And(GreaterThanOrEqual(d_date_sk,2461741),LessThanOrEqual(d_date_sk,2461771)),And(GreaterThanOrEqual(d_date_sk,2462107),LessThanOrEqual(d_date_sk,2462137)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2462472),LessThanOrEqual(d_date_sk,2462502)),And(GreaterThanOrEqual(d_date_sk,2462837),LessThanOrEqual(d_date_sk,2462867))),And(GreaterThanOrEqual(d_date_sk,2463202),LessThanOrEqual(d_date_sk,2463232)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2463568),LessThanOrEqual(d_date_sk,2463598)),And(GreaterThanOrEqual(d_date_sk,2463933),LessThanOrEqual(d_date_sk,2463963))),And(GreaterThanOrEqual(d_date_sk,2464298),LessThanOrEqual(d_date_sk,2464328))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2464663),LessThanOrEqual(d_date_sk,2464693)),And(GreaterThanOrEqual(d_date_sk,2465029),LessThanOrEqual(d_date_sk,2465059))),And(GreaterThanOrEqual(d_date_sk,2465394),LessThanOrEqual(d_date_sk,2465424))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2465759),LessThanOrEqual(d_date_sk,2465789)),And(GreaterThanOrEqual(d_date_sk,2466124),LessThanOrEqual(d_date_sk,2466154))),And(GreaterThanOrEqual(d_date_sk,2466490),LessThanOrEqual(d_date_sk,2466520))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2466855),LessThanOrEqual(d_date_sk,2466885)),And(GreaterThanOrEqual(d_date_sk,2467220),LessThanOrEqual(d_date_sk,2467250))),And(GreaterThanOrEqual(d_date_sk,2467585),LessThanOrEqual(d_date_sk,2467615)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2467951),LessThanOrEqual(d_date_sk,2467981)),And(GreaterThanOrEqual(d_date_sk,2468316),LessThanOrEqual(d_date_sk,2468346))),And(GreaterThanOrEqual(d_date_sk,2468681),LessThanOrEqual(d_date_sk,2468711))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2469046),LessThanOrEqual(d_date_sk,2469076)),And(GreaterThanOrEqual(d_date_sk,2469412),LessThanOrEqual(d_date_sk,2469442))),And(GreaterThanOrEqual(d_date_sk,2469777),LessThanOrEqual(d_date_sk,2469807))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2470142),LessThanOrEqual(d_date_sk,2470172)),And(GreaterThanOrEqual(d_date_sk,2470507),LessThanOrEqual(d_date_sk,2470537))),Or(And(GreaterThanOrEqual(d_date_sk,2470873),LessThanOrEqual(d_date_sk,2470903)),And(GreaterThanOrEqual(d_date_sk,2471238),LessThanOrEqual(d_date_sk,2471268)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2471603),LessThanOrEqual(d_date_sk,2471633)),And(GreaterThanOrEqual(d_date_sk,2471968),LessThanOrEqual(d_date_sk,2471998))),And(GreaterThanOrEqual(d_date_sk,2472334),LessThanOrEqual(d_date_sk,2472364)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2472699),LessThanOrEqual(d_date_sk,2472729)),And(GreaterThanOrEqual(d_date_sk,2473064),LessThanOrEqual(d_date_sk,2473094))),And(GreaterThanOrEqual(d_date_sk,2473429),LessThanOrEqual(d_date_sk,2473459))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2473795),LessThanOrEqual(d_date_sk,2473825)),And(GreaterThanOrEqual(d_date_sk,2474160),LessThanOrEqual(d_date_sk,2474190))),And(GreaterThanOrEqual(d_date_sk,2474525),LessThanOrEqual(d_date_sk,2474555))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2474890),LessThanOrEqual(d_date_sk,2474920)),And(GreaterThanOrEqual(d_date_sk,2475256),LessThanOrEqual(d_date_sk,2475286))),And(GreaterThanOrEqual(d_date_sk,2475621),LessThanOrEqual(d_date_sk,2475651))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2475986),LessThanOrEqual(d_date_sk,2476016)),And(GreaterThanOrEqual(d_date_sk,2476351),LessThanOrEqual(d_date_sk,2476381))),And(GreaterThanOrEqual(d_date_sk,2476717),LessThanOrEqual(d_date_sk,2476747)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2477082),LessThanOrEqual(d_date_sk,2477112)),And(GreaterThanOrEqual(d_date_sk,2477447),LessThanOrEqual(d_date_sk,2477477))),And(GreaterThanOrEqual(d_date_sk,2477812),LessThanOrEqual(d_date_sk,2477842))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2478178),LessThanOrEqual(d_date_sk,2478208)),And(GreaterThanOrEqual(d_date_sk,2478543),LessThanOrEqual(d_date_sk,2478573))),And(GreaterThanOrEqual(d_date_sk,2478908),LessThanOrEqual(d_date_sk,2478938)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2479273),LessThanOrEqual(d_date_sk,2479303)),And(GreaterThanOrEqual(d_date_sk,2479639),LessThanOrEqual(d_date_sk,2479669))),Or(And(GreaterThanOrEqual(d_date_sk,2480004),LessThanOrEqual(d_date_sk,2480034)),And(GreaterThanOrEqual(d_date_sk,2480369),LessThanOrEqual(d_date_sk,2480399)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2480734),LessThanOrEqual(d_date_sk,2480764)),And(GreaterThanOrEqual(d_date_sk,2481100),LessThanOrEqual(d_date_sk,2481130))),And(GreaterThanOrEqual(d_date_sk,2481465),LessThanOrEqual(d_date_sk,2481495)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2481830),LessThanOrEqual(d_date_sk,2481860)),And(GreaterThanOrEqual(d_date_sk,2482195),LessThanOrEqual(d_date_sk,2482225))),And(GreaterThanOrEqual(d_date_sk,2482561),LessThanOrEqual(d_date_sk,2482591))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2482926),LessThanOrEqual(d_date_sk,2482956)),And(GreaterThanOrEqual(d_date_sk,2483291),LessThanOrEqual(d_date_sk,2483321))),And(GreaterThanOrEqual(d_date_sk,2483656),LessThanOrEqual(d_date_sk,2483686))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2484022),LessThanOrEqual(d_date_sk,2484052)),And(GreaterThanOrEqual(d_date_sk,2484387),LessThanOrEqual(d_date_sk,2484417))),And(GreaterThanOrEqual(d_date_sk,2484752),LessThanOrEqual(d_date_sk,2484782))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2485117),LessThanOrEqual(d_date_sk,2485147)),And(GreaterThanOrEqual(d_date_sk,2485483),LessThanOrEqual(d_date_sk,2485513))),And(GreaterThanOrEqual(d_date_sk,2485848),LessThanOrEqual(d_date_sk,2485878)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2486213),LessThanOrEqual(d_date_sk,2486243)),And(GreaterThanOrEqual(d_date_sk,2486578),LessThanOrEqual(d_date_sk,2486608))),And(GreaterThanOrEqual(d_date_sk,2486944),LessThanOrEqual(d_date_sk,2486974))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2487309),LessThanOrEqual(d_date_sk,2487339)),And(GreaterThanOrEqual(d_date_sk,2487674),LessThanOrEqual(d_date_sk,2487704))),And(GreaterThanOrEqual(d_date_sk,2488039),LessThanOrEqual(d_date_sk,2488069))))))))), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *EqualTo(d_moy,12), *Or(Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2415355),LessThanOrEqual(d_date_sk,2415385)),And(GreaterThanOrEqual(d_date_sk,2415720),LessThanOrEqual(d_date_sk,2415750))),Or(And(GreaterThanOrEqual(d_date_sk,2416085),LessThanOrEqual(d_date_sk,2416115)),And(GreaterThanOrEqual(d_date_sk,2416450),LessThanOrEqual(d_date_sk,2416480)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2416816),LessThanOrEqual(d_date_sk,2416846)),And(GreaterThanOrEqual(d_date_sk,2417181),LessThanOrEqual(d_date_sk,2417211))),And(GreaterThanOrEqual(d_date_sk,2417546),LessThanOrEqual(d_date_sk,2417576)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2417911),LessThanOrEqual(d_date_sk,2417941)),And(GreaterThanOrEqual(d_date_sk,2418277),LessThanOrEqual(d_date_sk,2418307))),And(GreaterThanOrEqual(d_date_sk,2418642),LessThanOrEqual(d_date_sk,2418672))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2419007),LessThanOrEqual(d_date_sk,2419037)),And(GreaterThanOrEqual(d_date_sk,2419372),LessThanOrEqual(d_date_sk,2419402))),And(GreaterThanOrEqual(d_date_sk,2419738),LessThanOrEqual(d_date_sk,2419768))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2420103),LessThanOrEqual(d_date_sk,2420133)),And(GreaterThanOrEqual(d_date_sk,2420468),LessThanOrEqual(d_date_sk,2420498))),And(GreaterThanOrEqual(d_date_sk,2420833),LessThanOrEqual(d_date_sk,2420863))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2421199),LessThanOrEqual(d_date_sk,2421229)),And(GreaterThanOrEqual(d_date_sk,2421564),LessThanOrEqual(d_date_sk,2421594))),And(GreaterThanOrEqual(d_date_sk,2421929),LessThanOrEqual(d_date_sk,2421959)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2422294),LessThanOrEqual(d_date_sk,2422324)),And(GreaterThanOrEqual(d_date_sk,2422660),LessThanOrEqual(d_date_sk,2422690))),And(GreaterThanOrEqual(d_date_sk,2423025),LessThanOrEqual(d_date_sk,2423055))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2423390),LessThanOrEqual(d_date_sk,2423420)),And(GreaterThanOrEqual(d_date_sk,2423755),LessThanOrEqual(d_date_sk,2423785))),And(GreaterThanOrEqual(d_date_sk,2424121),LessThanOrEqual(d_date_sk,2424151)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2424486),LessThanOrEqual(d_date_sk,2424516)),And(GreaterThanOrEqual(d_date_sk,2424851),LessThanOrEqual(d_date_sk,2424881))),Or(And(GreaterThanOrEqual(d_date_sk,2425216),LessThanOrEqual(d_date_sk,2425246)),And(GreaterThanOrEqual(d_date_sk,2425582),LessThanOrEqual(d_date_sk,2425612)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2425947),LessThanOrEqual(d_date_sk,2425977)),And(GreaterThanOrEqual(d_date_sk,2426312),LessThanOrEqual(d_date_sk,2426342))),And(GreaterThanOrEqual(d_date_sk,2426677),LessThanOrEqual(d_date_sk,2426707)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2427043),LessThanOrEqual(d_date_sk,2427073)),And(GreaterThanOrEqual(d_date_sk,2427408),LessThanOrEqual(d_date_sk,2427438))),And(GreaterThanOrEqual(d_date_sk,2427773),LessThanOrEqual(d_date_sk,2427803))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2428138),LessThanOrEqual(d_date_sk,2428168)),And(GreaterThanOrEqual(d_date_sk,2428504),LessThanOrEqual(d_date_sk,2428534))),And(GreaterThanOrEqual(d_date_sk,2428869),LessThanOrEqual(d_date_sk,2428899))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2429234),LessThanOrEqual(d_date_sk,2429264)),And(GreaterThanOrEqual(d_date_sk,2429599),LessThanOrEqual(d_date_sk,2429629))),And(GreaterThanOrEqual(d_date_sk,2429965),LessThanOrEqual(d_date_sk,2429995))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2430330),LessThanOrEqual(d_date_sk,2430360)),And(GreaterThanOrEqual(d_date_sk,2430695),LessThanOrEqual(d_date_sk,2430725))),And(GreaterThanOrEqual(d_date_sk,2431060),LessThanOrEqual(d_date_sk,2431090)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2431426),LessThanOrEqual(d_date_sk,2431456)),And(GreaterThanOrEqual(d_date_sk,2431791),LessThanOrEqual(d_date_sk,2431821))),And(GreaterThanOrEqual(d_date_sk,2432156),LessThanOrEqual(d_date_sk,2432186))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2432521),LessThanOrEqual(d_date_sk,2432551)),And(GreaterThanOrEqual(d_date_sk,2432887),LessThanOrEqual(d_date_sk,2432917))),And(GreaterThanOrEqual(d_date_sk,2433252),LessThanOrEqual(d_date_sk,2433282))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2433617),LessThanOrEqual(d_date_sk,2433647)),And(GreaterThanOrEqual(d_date_sk,2433982),LessThanOrEqual(d_date_sk,2434012))),Or(And(GreaterThanOrEqual(d_date_sk,2434348),LessThanOrEqual(d_date_sk,2434378)),And(GreaterThanOrEqual(d_date_sk,2434713),LessThanOrEqual(d_date_sk,2434743)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2435078),LessThanOrEqual(d_date_sk,2435108)),And(GreaterThanOrEqual(d_date_sk,2435443),LessThanOrEqual(d_date_sk,2435473))),And(GreaterThanOrEqual(d_date_sk,2435809),LessThanOrEqual(d_date_sk,2435839)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2436174),LessThanOrEqual(d_date_sk,2436204)),And(GreaterThanOrEqual(d_date_sk,2436539),LessThanOrEqual(d_date_sk,2436569))),And(GreaterThanOrEqual(d_date_sk,2436904),LessThanOrEqual(d_date_sk,2436934))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2437270),LessThanOrEqual(d_date_sk,2437300)),And(GreaterThanOrEqual(d_date_sk,2437635),LessThanOrEqual(d_date_sk,2437665))),And(GreaterThanOrEqual(d_date_sk,2438000),LessThanOrEqual(d_date_sk,2438030))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2438365),LessThanOrEqual(d_date_sk,2438395)),And(GreaterThanOrEqual(d_date_sk,2438731),LessThanOrEqual(d_date_sk,2438761))),And(GreaterThanOrEqual(d_date_sk,2439096),LessThanOrEqual(d_date_sk,2439126))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2439461),LessThanOrEqual(d_date_sk,2439491)),And(GreaterThanOrEqual(d_date_sk,2439826),LessThanOrEqual(d_date_sk,2439856))),And(GreaterThanOrEqual(d_date_sk,2440192),LessThanOrEqual(d_date_sk,2440222)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2440557),LessThanOrEqual(d_date_sk,2440587)),And(GreaterThanOrEqual(d_date_sk,2440922),LessThanOrEqual(d_date_sk,2440952))),And(GreaterThanOrEqual(d_date_sk,2441287),LessThanOrEqual(d_date_sk,2441317))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2441653),LessThanOrEqual(d_date_sk,2441683)),And(GreaterThanOrEqual(d_date_sk,2442018),LessThanOrEqual(d_date_sk,2442048))),And(GreaterThanOrEqual(d_date_sk,2442383),LessThanOrEqual(d_date_sk,2442413)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2442748),LessThanOrEqual(d_date_sk,2442778)),And(GreaterThanOrEqual(d_date_sk,2443114),LessThanOrEqual(d_date_sk,2443144))),Or(And(GreaterThanOrEqual(d_date_sk,2443479),LessThanOrEqual(d_date_sk,2443509)),And(GreaterThanOrEqual(d_date_sk,2443844),LessThanOrEqual(d_date_sk,2443874)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2444209),LessThanOrEqual(d_date_sk,2444239)),And(GreaterThanOrEqual(d_date_sk,2444575),LessThanOrEqual(d_date_sk,2444605))),And(GreaterThanOrEqual(d_date_sk,2444940),LessThanOrEqual(d_date_sk,2444970)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2445305),LessThanOrEqual(d_date_sk,2445335)),And(GreaterThanOrEqual(d_date_sk,2445670),LessThanOrEqual(d_date_sk,2445700))),And(GreaterThanOrEqual(d_date_sk,2446036),LessThanOrEqual(d_date_sk,2446066))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2446401),LessThanOrEqual(d_date_sk,2446431)),And(GreaterThanOrEqual(d_date_sk,2446766),LessThanOrEqual(d_date_sk,2446796))),And(GreaterThanOrEqual(d_date_sk,2447131),LessThanOrEqual(d_date_sk,2447161))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2447497),LessThanOrEqual(d_date_sk,2447527)),And(GreaterThanOrEqual(d_date_sk,2447862),LessThanOrEqual(d_date_sk,2447892))),And(GreaterThanOrEqual(d_date_sk,2448227),LessThanOrEqual(d_date_sk,2448257))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2448592),LessThanOrEqual(d_date_sk,2448622)),And(GreaterThanOrEqual(d_date_sk,2448958),LessThanOrEqual(d_date_sk,2448988))),And(GreaterThanOrEqual(d_date_sk,2449323),LessThanOrEqual(d_date_sk,2449353)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2449688),LessThanOrEqual(d_date_sk,2449718)),And(GreaterThanOrEqual(d_date_sk,2450053),LessThanOrEqual(d_date_sk,2450083))),And(GreaterThanOrEqual(d_date_sk,2450419),LessThanOrEqual(d_date_sk,2450449))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2450784),LessThanOrEqual(d_date_sk,2450814)),And(GreaterThanOrEqual(d_date_sk,2451149),LessThanOrEqual(d_date_sk,2451179))),And(GreaterThanOrEqual(d_date_sk,2451514),LessThanOrEqual(d_date_sk,2451544)))))))),Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2451880),LessThanOrEqual(d_date_sk,2451910)),And(GreaterThanOrEqual(d_date_sk,2452245),LessThanOrEqual(d_date_sk,2452275))),Or(And(GreaterThanOrEqual(d_date_sk,2452610),LessThanOrEqual(d_date_sk,2452640)),And(GreaterThanOrEqual(d_date_sk,2452975),LessThanOrEqual(d_date_sk,2453005)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2453341),LessThanOrEqual(d_date_sk,2453371)),And(GreaterThanOrEqual(d_date_sk,2453706),LessThanOrEqual(d_date_sk,2453736))),And(GreaterThanOrEqual(d_date_sk,2454071),LessThanOrEqual(d_date_sk,2454101)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2454436),LessThanOrEqual(d_date_sk,2454466)),And(GreaterThanOrEqual(d_date_sk,2454802),LessThanOrEqual(d_date_sk,2454832))),And(GreaterThanOrEqual(d_date_sk,2455167),LessThanOrEqual(d_date_sk,2455197))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2455532),LessThanOrEqual(d_date_sk,2455562)),And(GreaterThanOrEqual(d_date_sk,2455897),LessThanOrEqual(d_date_sk,2455927))),And(GreaterThanOrEqual(d_date_sk,2456263),LessThanOrEqual(d_date_sk,2456293))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2456628),LessThanOrEqual(d_date_sk,2456658)),And(GreaterThanOrEqual(d_date_sk,2456993),LessThanOrEqual(d_date_sk,2457023))),And(GreaterThanOrEqual(d_date_sk,2457358),LessThanOrEqual(d_date_sk,2457388))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2457724),LessThanOrEqual(d_date_sk,2457754)),And(GreaterThanOrEqual(d_date_sk,2458089),LessThanOrEqual(d_date_sk,2458119))),And(GreaterThanOrEqual(d_date_sk,2458454),LessThanOrEqual(d_date_sk,2458484)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2458819),LessThanOrEqual(d_date_sk,2458849)),And(GreaterThanOrEqual(d_date_sk,2459185),LessThanOrEqual(d_date_sk,2459215))),And(GreaterThanOrEqual(d_date_sk,2459550),LessThanOrEqual(d_date_sk,2459580))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2459915),LessThanOrEqual(d_date_sk,2459945)),And(GreaterThanOrEqual(d_date_sk,2460280),LessThanOrEqual(d_date_sk,2460310))),And(GreaterThanOrEqual(d_date_sk,2460646),LessThanOrEqual(d_date_sk,2460676)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2461011),LessThanOrEqual(d_date_sk,2461041)),And(GreaterThanOrEqual(d_date_sk,2461376),LessThanOrEqual(d_date_sk,2461406))),Or(And(GreaterThanOrEqual(d_date_sk,2461741),LessThanOrEqual(d_date_sk,2461771)),And(GreaterThanOrEqual(d_date_sk,2462107),LessThanOrEqual(d_date_sk,2462137)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2462472),LessThanOrEqual(d_date_sk,2462502)),And(GreaterThanOrEqual(d_date_sk,2462837),LessThanOrEqual(d_date_sk,2462867))),And(GreaterThanOrEqual(d_date_sk,2463202),LessThanOrEqual(d_date_sk,2463232)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2463568),LessThanOrEqual(d_date_sk,2463598)),And(GreaterThanOrEqual(d_date_sk,2463933),LessThanOrEqual(d_date_sk,2463963))),And(GreaterThanOrEqual(d_date_sk,2464298),LessThanOrEqual(d_date_sk,2464328))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2464663),LessThanOrEqual(d_date_sk,2464693)),And(GreaterThanOrEqual(d_date_sk,2465029),LessThanOrEqual(d_date_sk,2465059))),And(GreaterThanOrEqual(d_date_sk,2465394),LessThanOrEqual(d_date_sk,2465424))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2465759),LessThanOrEqual(d_date_sk,2465789)),And(GreaterThanOrEqual(d_date_sk,2466124),LessThanOrEqual(d_date_sk,2466154))),And(GreaterThanOrEqual(d_date_sk,2466490),LessThanOrEqual(d_date_sk,2466520))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2466855),LessThanOrEqual(d_date_sk,2466885)),And(GreaterThanOrEqual(d_date_sk,2467220),LessThanOrEqual(d_date_sk,2467250))),And(GreaterThanOrEqual(d_date_sk,2467585),LessThanOrEqual(d_date_sk,2467615)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2467951),LessThanOrEqual(d_date_sk,2467981)),And(GreaterThanOrEqual(d_date_sk,2468316),LessThanOrEqual(d_date_sk,2468346))),And(GreaterThanOrEqual(d_date_sk,2468681),LessThanOrEqual(d_date_sk,2468711))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2469046),LessThanOrEqual(d_date_sk,2469076)),And(GreaterThanOrEqual(d_date_sk,2469412),LessThanOrEqual(d_date_sk,2469442))),And(GreaterThanOrEqual(d_date_sk,2469777),LessThanOrEqual(d_date_sk,2469807))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2470142),LessThanOrEqual(d_date_sk,2470172)),And(GreaterThanOrEqual(d_date_sk,2470507),LessThanOrEqual(d_date_sk,2470537))),Or(And(GreaterThanOrEqual(d_date_sk,2470873),LessThanOrEqual(d_date_sk,2470903)),And(GreaterThanOrEqual(d_date_sk,2471238),LessThanOrEqual(d_date_sk,2471268)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2471603),LessThanOrEqual(d_date_sk,2471633)),And(GreaterThanOrEqual(d_date_sk,2471968),LessThanOrEqual(d_date_sk,2471998))),And(GreaterThanOrEqual(d_date_sk,2472334),LessThanOrEqual(d_date_sk,2472364)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2472699),LessThanOrEqual(d_date_sk,2472729)),And(GreaterThanOrEqual(d_date_sk,2473064),LessThanOrEqual(d_date_sk,2473094))),And(GreaterThanOrEqual(d_date_sk,2473429),LessThanOrEqual(d_date_sk,2473459))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2473795),LessThanOrEqual(d_date_sk,2473825)),And(GreaterThanOrEqual(d_date_sk,2474160),LessThanOrEqual(d_date_sk,2474190))),And(GreaterThanOrEqual(d_date_sk,2474525),LessThanOrEqual(d_date_sk,2474555))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2474890),LessThanOrEqual(d_date_sk,2474920)),And(GreaterThanOrEqual(d_date_sk,2475256),LessThanOrEqual(d_date_sk,2475286))),And(GreaterThanOrEqual(d_date_sk,2475621),LessThanOrEqual(d_date_sk,2475651))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2475986),LessThanOrEqual(d_date_sk,2476016)),And(GreaterThanOrEqual(d_date_sk,2476351),LessThanOrEqual(d_date_sk,2476381))),And(GreaterThanOrEqual(d_date_sk,2476717),LessThanOrEqual(d_date_sk,2476747)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2477082),LessThanOrEqual(d_date_sk,2477112)),And(GreaterThanOrEqual(d_date_sk,2477447),LessThanOrEqual(d_date_sk,2477477))),And(GreaterThanOrEqual(d_date_sk,2477812),LessThanOrEqual(d_date_sk,2477842))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2478178),LessThanOrEqual(d_date_sk,2478208)),And(GreaterThanOrEqual(d_date_sk,2478543),LessThanOrEqual(d_date_sk,2478573))),And(GreaterThanOrEqual(d_date_sk,2478908),LessThanOrEqual(d_date_sk,2478938)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2479273),LessThanOrEqual(d_date_sk,2479303)),And(GreaterThanOrEqual(d_date_sk,2479639),LessThanOrEqual(d_date_sk,2479669))),Or(And(GreaterThanOrEqual(d_date_sk,2480004),LessThanOrEqual(d_date_sk,2480034)),And(GreaterThanOrEqual(d_date_sk,2480369),LessThanOrEqual(d_date_sk,2480399)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2480734),LessThanOrEqual(d_date_sk,2480764)),And(GreaterThanOrEqual(d_date_sk,2481100),LessThanOrEqual(d_date_sk,2481130))),And(GreaterThanOrEqual(d_date_sk,2481465),LessThanOrEqual(d_date_sk,2481495)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2481830),LessThanOrEqual(d_date_sk,2481860)),And(GreaterThanOrEqual(d_date_sk,2482195),LessThanOrEqual(d_date_sk,2482225))),And(GreaterThanOrEqual(d_date_sk,2482561),LessThanOrEqual(d_date_sk,2482591))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2482926),LessThanOrEqual(d_date_sk,2482956)),And(GreaterThanOrEqual(d_date_sk,2483291),LessThanOrEqual(d_date_sk,2483321))),And(GreaterThanOrEqual(d_date_sk,2483656),LessThanOrEqual(d_date_sk,2483686))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2484022),LessThanOrEqual(d_date_sk,2484052)),And(GreaterThanOrEqual(d_date_sk,2484387),LessThanOrEqual(d_date_sk,2484417))),And(GreaterThanOrEqual(d_date_sk,2484752),LessThanOrEqual(d_date_sk,2484782))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2485117),LessThanOrEqual(d_date_sk,2485147)),And(GreaterThanOrEqual(d_date_sk,2485483),LessThanOrEqual(d_date_sk,2485513))),And(GreaterThanOrEqual(d_date_sk,2485848),LessThanOrEqual(d_date_sk,2485878)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2486213),LessThanOrEqual(d_date_sk,2486243)),And(GreaterThanOrEqual(d_date_sk,2486578),LessThanOrEqual(d_date_sk,2486608))),And(GreaterThanOrEqual(d_date_sk,2486944),LessThanOrEqual(d_date_sk,2486974))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2487309),LessThanOrEqual(d_date_sk,2487339)),And(GreaterThanOrEqual(d_date_sk,2487674),LessThanOrEqual(d_date_sk,2487704))),And(GreaterThanOrEqual(d_date_sk,2488039),LessThanOrEqual(d_date_sk,2488069))))))))), *IsNotNull(d_date_sk)] ReadSchema: struct (30) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3/explain.txt index ef99f35c68f..d2023d3ec13 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), EqualTo(d_moy,12), Or(Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2415355),LessThanOrEqual(d_date_sk,2415385)),And(GreaterThanOrEqual(d_date_sk,2415720),LessThanOrEqual(d_date_sk,2415750))),Or(And(GreaterThanOrEqual(d_date_sk,2416085),LessThanOrEqual(d_date_sk,2416115)),And(GreaterThanOrEqual(d_date_sk,2416450),LessThanOrEqual(d_date_sk,2416480)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2416816),LessThanOrEqual(d_date_sk,2416846)),And(GreaterThanOrEqual(d_date_sk,2417181),LessThanOrEqual(d_date_sk,2417211))),And(GreaterThanOrEqual(d_date_sk,2417546),LessThanOrEqual(d_date_sk,2417576)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2417911),LessThanOrEqual(d_date_sk,2417941)),And(GreaterThanOrEqual(d_date_sk,2418277),LessThanOrEqual(d_date_sk,2418307))),And(GreaterThanOrEqual(d_date_sk,2418642),LessThanOrEqual(d_date_sk,2418672))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2419007),LessThanOrEqual(d_date_sk,2419037)),And(GreaterThanOrEqual(d_date_sk,2419372),LessThanOrEqual(d_date_sk,2419402))),And(GreaterThanOrEqual(d_date_sk,2419738),LessThanOrEqual(d_date_sk,2419768))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2420103),LessThanOrEqual(d_date_sk,2420133)),And(GreaterThanOrEqual(d_date_sk,2420468),LessThanOrEqual(d_date_sk,2420498))),And(GreaterThanOrEqual(d_date_sk,2420833),LessThanOrEqual(d_date_sk,2420863))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2421199),LessThanOrEqual(d_date_sk,2421229)),And(GreaterThanOrEqual(d_date_sk,2421564),LessThanOrEqual(d_date_sk,2421594))),And(GreaterThanOrEqual(d_date_sk,2421929),LessThanOrEqual(d_date_sk,2421959)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2422294),LessThanOrEqual(d_date_sk,2422324)),And(GreaterThanOrEqual(d_date_sk,2422660),LessThanOrEqual(d_date_sk,2422690))),And(GreaterThanOrEqual(d_date_sk,2423025),LessThanOrEqual(d_date_sk,2423055))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2423390),LessThanOrEqual(d_date_sk,2423420)),And(GreaterThanOrEqual(d_date_sk,2423755),LessThanOrEqual(d_date_sk,2423785))),And(GreaterThanOrEqual(d_date_sk,2424121),LessThanOrEqual(d_date_sk,2424151)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2424486),LessThanOrEqual(d_date_sk,2424516)),And(GreaterThanOrEqual(d_date_sk,2424851),LessThanOrEqual(d_date_sk,2424881))),Or(And(GreaterThanOrEqual(d_date_sk,2425216),LessThanOrEqual(d_date_sk,2425246)),And(GreaterThanOrEqual(d_date_sk,2425582),LessThanOrEqual(d_date_sk,2425612)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2425947),LessThanOrEqual(d_date_sk,2425977)),And(GreaterThanOrEqual(d_date_sk,2426312),LessThanOrEqual(d_date_sk,2426342))),And(GreaterThanOrEqual(d_date_sk,2426677),LessThanOrEqual(d_date_sk,2426707)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2427043),LessThanOrEqual(d_date_sk,2427073)),And(GreaterThanOrEqual(d_date_sk,2427408),LessThanOrEqual(d_date_sk,2427438))),And(GreaterThanOrEqual(d_date_sk,2427773),LessThanOrEqual(d_date_sk,2427803))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2428138),LessThanOrEqual(d_date_sk,2428168)),And(GreaterThanOrEqual(d_date_sk,2428504),LessThanOrEqual(d_date_sk,2428534))),And(GreaterThanOrEqual(d_date_sk,2428869),LessThanOrEqual(d_date_sk,2428899))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2429234),LessThanOrEqual(d_date_sk,2429264)),And(GreaterThanOrEqual(d_date_sk,2429599),LessThanOrEqual(d_date_sk,2429629))),And(GreaterThanOrEqual(d_date_sk,2429965),LessThanOrEqual(d_date_sk,2429995))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2430330),LessThanOrEqual(d_date_sk,2430360)),And(GreaterThanOrEqual(d_date_sk,2430695),LessThanOrEqual(d_date_sk,2430725))),And(GreaterThanOrEqual(d_date_sk,2431060),LessThanOrEqual(d_date_sk,2431090)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2431426),LessThanOrEqual(d_date_sk,2431456)),And(GreaterThanOrEqual(d_date_sk,2431791),LessThanOrEqual(d_date_sk,2431821))),And(GreaterThanOrEqual(d_date_sk,2432156),LessThanOrEqual(d_date_sk,2432186))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2432521),LessThanOrEqual(d_date_sk,2432551)),And(GreaterThanOrEqual(d_date_sk,2432887),LessThanOrEqual(d_date_sk,2432917))),And(GreaterThanOrEqual(d_date_sk,2433252),LessThanOrEqual(d_date_sk,2433282))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2433617),LessThanOrEqual(d_date_sk,2433647)),And(GreaterThanOrEqual(d_date_sk,2433982),LessThanOrEqual(d_date_sk,2434012))),Or(And(GreaterThanOrEqual(d_date_sk,2434348),LessThanOrEqual(d_date_sk,2434378)),And(GreaterThanOrEqual(d_date_sk,2434713),LessThanOrEqual(d_date_sk,2434743)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2435078),LessThanOrEqual(d_date_sk,2435108)),And(GreaterThanOrEqual(d_date_sk,2435443),LessThanOrEqual(d_date_sk,2435473))),And(GreaterThanOrEqual(d_date_sk,2435809),LessThanOrEqual(d_date_sk,2435839)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2436174),LessThanOrEqual(d_date_sk,2436204)),And(GreaterThanOrEqual(d_date_sk,2436539),LessThanOrEqual(d_date_sk,2436569))),And(GreaterThanOrEqual(d_date_sk,2436904),LessThanOrEqual(d_date_sk,2436934))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2437270),LessThanOrEqual(d_date_sk,2437300)),And(GreaterThanOrEqual(d_date_sk,2437635),LessThanOrEqual(d_date_sk,2437665))),And(GreaterThanOrEqual(d_date_sk,2438000),LessThanOrEqual(d_date_sk,2438030))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2438365),LessThanOrEqual(d_date_sk,2438395)),And(GreaterThanOrEqual(d_date_sk,2438731),LessThanOrEqual(d_date_sk,2438761))),And(GreaterThanOrEqual(d_date_sk,2439096),LessThanOrEqual(d_date_sk,2439126))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2439461),LessThanOrEqual(d_date_sk,2439491)),And(GreaterThanOrEqual(d_date_sk,2439826),LessThanOrEqual(d_date_sk,2439856))),And(GreaterThanOrEqual(d_date_sk,2440192),LessThanOrEqual(d_date_sk,2440222)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2440557),LessThanOrEqual(d_date_sk,2440587)),And(GreaterThanOrEqual(d_date_sk,2440922),LessThanOrEqual(d_date_sk,2440952))),And(GreaterThanOrEqual(d_date_sk,2441287),LessThanOrEqual(d_date_sk,2441317))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2441653),LessThanOrEqual(d_date_sk,2441683)),And(GreaterThanOrEqual(d_date_sk,2442018),LessThanOrEqual(d_date_sk,2442048))),And(GreaterThanOrEqual(d_date_sk,2442383),LessThanOrEqual(d_date_sk,2442413)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2442748),LessThanOrEqual(d_date_sk,2442778)),And(GreaterThanOrEqual(d_date_sk,2443114),LessThanOrEqual(d_date_sk,2443144))),Or(And(GreaterThanOrEqual(d_date_sk,2443479),LessThanOrEqual(d_date_sk,2443509)),And(GreaterThanOrEqual(d_date_sk,2443844),LessThanOrEqual(d_date_sk,2443874)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2444209),LessThanOrEqual(d_date_sk,2444239)),And(GreaterThanOrEqual(d_date_sk,2444575),LessThanOrEqual(d_date_sk,2444605))),And(GreaterThanOrEqual(d_date_sk,2444940),LessThanOrEqual(d_date_sk,2444970)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2445305),LessThanOrEqual(d_date_sk,2445335)),And(GreaterThanOrEqual(d_date_sk,2445670),LessThanOrEqual(d_date_sk,2445700))),And(GreaterThanOrEqual(d_date_sk,2446036),LessThanOrEqual(d_date_sk,2446066))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2446401),LessThanOrEqual(d_date_sk,2446431)),And(GreaterThanOrEqual(d_date_sk,2446766),LessThanOrEqual(d_date_sk,2446796))),And(GreaterThanOrEqual(d_date_sk,2447131),LessThanOrEqual(d_date_sk,2447161))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2447497),LessThanOrEqual(d_date_sk,2447527)),And(GreaterThanOrEqual(d_date_sk,2447862),LessThanOrEqual(d_date_sk,2447892))),And(GreaterThanOrEqual(d_date_sk,2448227),LessThanOrEqual(d_date_sk,2448257))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2448592),LessThanOrEqual(d_date_sk,2448622)),And(GreaterThanOrEqual(d_date_sk,2448958),LessThanOrEqual(d_date_sk,2448988))),And(GreaterThanOrEqual(d_date_sk,2449323),LessThanOrEqual(d_date_sk,2449353)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2449688),LessThanOrEqual(d_date_sk,2449718)),And(GreaterThanOrEqual(d_date_sk,2450053),LessThanOrEqual(d_date_sk,2450083))),And(GreaterThanOrEqual(d_date_sk,2450419),LessThanOrEqual(d_date_sk,2450449))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2450784),LessThanOrEqual(d_date_sk,2450814)),And(GreaterThanOrEqual(d_date_sk,2451149),LessThanOrEqual(d_date_sk,2451179))),And(GreaterThanOrEqual(d_date_sk,2451514),LessThanOrEqual(d_date_sk,2451544)))))))),Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2451880),LessThanOrEqual(d_date_sk,2451910)),And(GreaterThanOrEqual(d_date_sk,2452245),LessThanOrEqual(d_date_sk,2452275))),Or(And(GreaterThanOrEqual(d_date_sk,2452610),LessThanOrEqual(d_date_sk,2452640)),And(GreaterThanOrEqual(d_date_sk,2452975),LessThanOrEqual(d_date_sk,2453005)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2453341),LessThanOrEqual(d_date_sk,2453371)),And(GreaterThanOrEqual(d_date_sk,2453706),LessThanOrEqual(d_date_sk,2453736))),And(GreaterThanOrEqual(d_date_sk,2454071),LessThanOrEqual(d_date_sk,2454101)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2454436),LessThanOrEqual(d_date_sk,2454466)),And(GreaterThanOrEqual(d_date_sk,2454802),LessThanOrEqual(d_date_sk,2454832))),And(GreaterThanOrEqual(d_date_sk,2455167),LessThanOrEqual(d_date_sk,2455197))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2455532),LessThanOrEqual(d_date_sk,2455562)),And(GreaterThanOrEqual(d_date_sk,2455897),LessThanOrEqual(d_date_sk,2455927))),And(GreaterThanOrEqual(d_date_sk,2456263),LessThanOrEqual(d_date_sk,2456293))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2456628),LessThanOrEqual(d_date_sk,2456658)),And(GreaterThanOrEqual(d_date_sk,2456993),LessThanOrEqual(d_date_sk,2457023))),And(GreaterThanOrEqual(d_date_sk,2457358),LessThanOrEqual(d_date_sk,2457388))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2457724),LessThanOrEqual(d_date_sk,2457754)),And(GreaterThanOrEqual(d_date_sk,2458089),LessThanOrEqual(d_date_sk,2458119))),And(GreaterThanOrEqual(d_date_sk,2458454),LessThanOrEqual(d_date_sk,2458484)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2458819),LessThanOrEqual(d_date_sk,2458849)),And(GreaterThanOrEqual(d_date_sk,2459185),LessThanOrEqual(d_date_sk,2459215))),And(GreaterThanOrEqual(d_date_sk,2459550),LessThanOrEqual(d_date_sk,2459580))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2459915),LessThanOrEqual(d_date_sk,2459945)),And(GreaterThanOrEqual(d_date_sk,2460280),LessThanOrEqual(d_date_sk,2460310))),And(GreaterThanOrEqual(d_date_sk,2460646),LessThanOrEqual(d_date_sk,2460676)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2461011),LessThanOrEqual(d_date_sk,2461041)),And(GreaterThanOrEqual(d_date_sk,2461376),LessThanOrEqual(d_date_sk,2461406))),Or(And(GreaterThanOrEqual(d_date_sk,2461741),LessThanOrEqual(d_date_sk,2461771)),And(GreaterThanOrEqual(d_date_sk,2462107),LessThanOrEqual(d_date_sk,2462137)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2462472),LessThanOrEqual(d_date_sk,2462502)),And(GreaterThanOrEqual(d_date_sk,2462837),LessThanOrEqual(d_date_sk,2462867))),And(GreaterThanOrEqual(d_date_sk,2463202),LessThanOrEqual(d_date_sk,2463232)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2463568),LessThanOrEqual(d_date_sk,2463598)),And(GreaterThanOrEqual(d_date_sk,2463933),LessThanOrEqual(d_date_sk,2463963))),And(GreaterThanOrEqual(d_date_sk,2464298),LessThanOrEqual(d_date_sk,2464328))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2464663),LessThanOrEqual(d_date_sk,2464693)),And(GreaterThanOrEqual(d_date_sk,2465029),LessThanOrEqual(d_date_sk,2465059))),And(GreaterThanOrEqual(d_date_sk,2465394),LessThanOrEqual(d_date_sk,2465424))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2465759),LessThanOrEqual(d_date_sk,2465789)),And(GreaterThanOrEqual(d_date_sk,2466124),LessThanOrEqual(d_date_sk,2466154))),And(GreaterThanOrEqual(d_date_sk,2466490),LessThanOrEqual(d_date_sk,2466520))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2466855),LessThanOrEqual(d_date_sk,2466885)),And(GreaterThanOrEqual(d_date_sk,2467220),LessThanOrEqual(d_date_sk,2467250))),And(GreaterThanOrEqual(d_date_sk,2467585),LessThanOrEqual(d_date_sk,2467615)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2467951),LessThanOrEqual(d_date_sk,2467981)),And(GreaterThanOrEqual(d_date_sk,2468316),LessThanOrEqual(d_date_sk,2468346))),And(GreaterThanOrEqual(d_date_sk,2468681),LessThanOrEqual(d_date_sk,2468711))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2469046),LessThanOrEqual(d_date_sk,2469076)),And(GreaterThanOrEqual(d_date_sk,2469412),LessThanOrEqual(d_date_sk,2469442))),And(GreaterThanOrEqual(d_date_sk,2469777),LessThanOrEqual(d_date_sk,2469807))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2470142),LessThanOrEqual(d_date_sk,2470172)),And(GreaterThanOrEqual(d_date_sk,2470507),LessThanOrEqual(d_date_sk,2470537))),Or(And(GreaterThanOrEqual(d_date_sk,2470873),LessThanOrEqual(d_date_sk,2470903)),And(GreaterThanOrEqual(d_date_sk,2471238),LessThanOrEqual(d_date_sk,2471268)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2471603),LessThanOrEqual(d_date_sk,2471633)),And(GreaterThanOrEqual(d_date_sk,2471968),LessThanOrEqual(d_date_sk,2471998))),And(GreaterThanOrEqual(d_date_sk,2472334),LessThanOrEqual(d_date_sk,2472364)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2472699),LessThanOrEqual(d_date_sk,2472729)),And(GreaterThanOrEqual(d_date_sk,2473064),LessThanOrEqual(d_date_sk,2473094))),And(GreaterThanOrEqual(d_date_sk,2473429),LessThanOrEqual(d_date_sk,2473459))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2473795),LessThanOrEqual(d_date_sk,2473825)),And(GreaterThanOrEqual(d_date_sk,2474160),LessThanOrEqual(d_date_sk,2474190))),And(GreaterThanOrEqual(d_date_sk,2474525),LessThanOrEqual(d_date_sk,2474555))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2474890),LessThanOrEqual(d_date_sk,2474920)),And(GreaterThanOrEqual(d_date_sk,2475256),LessThanOrEqual(d_date_sk,2475286))),And(GreaterThanOrEqual(d_date_sk,2475621),LessThanOrEqual(d_date_sk,2475651))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2475986),LessThanOrEqual(d_date_sk,2476016)),And(GreaterThanOrEqual(d_date_sk,2476351),LessThanOrEqual(d_date_sk,2476381))),And(GreaterThanOrEqual(d_date_sk,2476717),LessThanOrEqual(d_date_sk,2476747)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2477082),LessThanOrEqual(d_date_sk,2477112)),And(GreaterThanOrEqual(d_date_sk,2477447),LessThanOrEqual(d_date_sk,2477477))),And(GreaterThanOrEqual(d_date_sk,2477812),LessThanOrEqual(d_date_sk,2477842))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2478178),LessThanOrEqual(d_date_sk,2478208)),And(GreaterThanOrEqual(d_date_sk,2478543),LessThanOrEqual(d_date_sk,2478573))),And(GreaterThanOrEqual(d_date_sk,2478908),LessThanOrEqual(d_date_sk,2478938)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2479273),LessThanOrEqual(d_date_sk,2479303)),And(GreaterThanOrEqual(d_date_sk,2479639),LessThanOrEqual(d_date_sk,2479669))),Or(And(GreaterThanOrEqual(d_date_sk,2480004),LessThanOrEqual(d_date_sk,2480034)),And(GreaterThanOrEqual(d_date_sk,2480369),LessThanOrEqual(d_date_sk,2480399)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2480734),LessThanOrEqual(d_date_sk,2480764)),And(GreaterThanOrEqual(d_date_sk,2481100),LessThanOrEqual(d_date_sk,2481130))),And(GreaterThanOrEqual(d_date_sk,2481465),LessThanOrEqual(d_date_sk,2481495)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2481830),LessThanOrEqual(d_date_sk,2481860)),And(GreaterThanOrEqual(d_date_sk,2482195),LessThanOrEqual(d_date_sk,2482225))),And(GreaterThanOrEqual(d_date_sk,2482561),LessThanOrEqual(d_date_sk,2482591))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2482926),LessThanOrEqual(d_date_sk,2482956)),And(GreaterThanOrEqual(d_date_sk,2483291),LessThanOrEqual(d_date_sk,2483321))),And(GreaterThanOrEqual(d_date_sk,2483656),LessThanOrEqual(d_date_sk,2483686))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2484022),LessThanOrEqual(d_date_sk,2484052)),And(GreaterThanOrEqual(d_date_sk,2484387),LessThanOrEqual(d_date_sk,2484417))),And(GreaterThanOrEqual(d_date_sk,2484752),LessThanOrEqual(d_date_sk,2484782))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2485117),LessThanOrEqual(d_date_sk,2485147)),And(GreaterThanOrEqual(d_date_sk,2485483),LessThanOrEqual(d_date_sk,2485513))),And(GreaterThanOrEqual(d_date_sk,2485848),LessThanOrEqual(d_date_sk,2485878)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2486213),LessThanOrEqual(d_date_sk,2486243)),And(GreaterThanOrEqual(d_date_sk,2486578),LessThanOrEqual(d_date_sk,2486608))),And(GreaterThanOrEqual(d_date_sk,2486944),LessThanOrEqual(d_date_sk,2486974))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2487309),LessThanOrEqual(d_date_sk,2487339)),And(GreaterThanOrEqual(d_date_sk,2487674),LessThanOrEqual(d_date_sk,2487704))),And(GreaterThanOrEqual(d_date_sk,2488039),LessThanOrEqual(d_date_sk,2488069))))))))), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *EqualTo(d_moy,12), *Or(Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2415355),LessThanOrEqual(d_date_sk,2415385)),And(GreaterThanOrEqual(d_date_sk,2415720),LessThanOrEqual(d_date_sk,2415750))),Or(And(GreaterThanOrEqual(d_date_sk,2416085),LessThanOrEqual(d_date_sk,2416115)),And(GreaterThanOrEqual(d_date_sk,2416450),LessThanOrEqual(d_date_sk,2416480)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2416816),LessThanOrEqual(d_date_sk,2416846)),And(GreaterThanOrEqual(d_date_sk,2417181),LessThanOrEqual(d_date_sk,2417211))),And(GreaterThanOrEqual(d_date_sk,2417546),LessThanOrEqual(d_date_sk,2417576)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2417911),LessThanOrEqual(d_date_sk,2417941)),And(GreaterThanOrEqual(d_date_sk,2418277),LessThanOrEqual(d_date_sk,2418307))),And(GreaterThanOrEqual(d_date_sk,2418642),LessThanOrEqual(d_date_sk,2418672))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2419007),LessThanOrEqual(d_date_sk,2419037)),And(GreaterThanOrEqual(d_date_sk,2419372),LessThanOrEqual(d_date_sk,2419402))),And(GreaterThanOrEqual(d_date_sk,2419738),LessThanOrEqual(d_date_sk,2419768))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2420103),LessThanOrEqual(d_date_sk,2420133)),And(GreaterThanOrEqual(d_date_sk,2420468),LessThanOrEqual(d_date_sk,2420498))),And(GreaterThanOrEqual(d_date_sk,2420833),LessThanOrEqual(d_date_sk,2420863))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2421199),LessThanOrEqual(d_date_sk,2421229)),And(GreaterThanOrEqual(d_date_sk,2421564),LessThanOrEqual(d_date_sk,2421594))),And(GreaterThanOrEqual(d_date_sk,2421929),LessThanOrEqual(d_date_sk,2421959)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2422294),LessThanOrEqual(d_date_sk,2422324)),And(GreaterThanOrEqual(d_date_sk,2422660),LessThanOrEqual(d_date_sk,2422690))),And(GreaterThanOrEqual(d_date_sk,2423025),LessThanOrEqual(d_date_sk,2423055))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2423390),LessThanOrEqual(d_date_sk,2423420)),And(GreaterThanOrEqual(d_date_sk,2423755),LessThanOrEqual(d_date_sk,2423785))),And(GreaterThanOrEqual(d_date_sk,2424121),LessThanOrEqual(d_date_sk,2424151)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2424486),LessThanOrEqual(d_date_sk,2424516)),And(GreaterThanOrEqual(d_date_sk,2424851),LessThanOrEqual(d_date_sk,2424881))),Or(And(GreaterThanOrEqual(d_date_sk,2425216),LessThanOrEqual(d_date_sk,2425246)),And(GreaterThanOrEqual(d_date_sk,2425582),LessThanOrEqual(d_date_sk,2425612)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2425947),LessThanOrEqual(d_date_sk,2425977)),And(GreaterThanOrEqual(d_date_sk,2426312),LessThanOrEqual(d_date_sk,2426342))),And(GreaterThanOrEqual(d_date_sk,2426677),LessThanOrEqual(d_date_sk,2426707)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2427043),LessThanOrEqual(d_date_sk,2427073)),And(GreaterThanOrEqual(d_date_sk,2427408),LessThanOrEqual(d_date_sk,2427438))),And(GreaterThanOrEqual(d_date_sk,2427773),LessThanOrEqual(d_date_sk,2427803))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2428138),LessThanOrEqual(d_date_sk,2428168)),And(GreaterThanOrEqual(d_date_sk,2428504),LessThanOrEqual(d_date_sk,2428534))),And(GreaterThanOrEqual(d_date_sk,2428869),LessThanOrEqual(d_date_sk,2428899))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2429234),LessThanOrEqual(d_date_sk,2429264)),And(GreaterThanOrEqual(d_date_sk,2429599),LessThanOrEqual(d_date_sk,2429629))),And(GreaterThanOrEqual(d_date_sk,2429965),LessThanOrEqual(d_date_sk,2429995))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2430330),LessThanOrEqual(d_date_sk,2430360)),And(GreaterThanOrEqual(d_date_sk,2430695),LessThanOrEqual(d_date_sk,2430725))),And(GreaterThanOrEqual(d_date_sk,2431060),LessThanOrEqual(d_date_sk,2431090)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2431426),LessThanOrEqual(d_date_sk,2431456)),And(GreaterThanOrEqual(d_date_sk,2431791),LessThanOrEqual(d_date_sk,2431821))),And(GreaterThanOrEqual(d_date_sk,2432156),LessThanOrEqual(d_date_sk,2432186))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2432521),LessThanOrEqual(d_date_sk,2432551)),And(GreaterThanOrEqual(d_date_sk,2432887),LessThanOrEqual(d_date_sk,2432917))),And(GreaterThanOrEqual(d_date_sk,2433252),LessThanOrEqual(d_date_sk,2433282))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2433617),LessThanOrEqual(d_date_sk,2433647)),And(GreaterThanOrEqual(d_date_sk,2433982),LessThanOrEqual(d_date_sk,2434012))),Or(And(GreaterThanOrEqual(d_date_sk,2434348),LessThanOrEqual(d_date_sk,2434378)),And(GreaterThanOrEqual(d_date_sk,2434713),LessThanOrEqual(d_date_sk,2434743)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2435078),LessThanOrEqual(d_date_sk,2435108)),And(GreaterThanOrEqual(d_date_sk,2435443),LessThanOrEqual(d_date_sk,2435473))),And(GreaterThanOrEqual(d_date_sk,2435809),LessThanOrEqual(d_date_sk,2435839)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2436174),LessThanOrEqual(d_date_sk,2436204)),And(GreaterThanOrEqual(d_date_sk,2436539),LessThanOrEqual(d_date_sk,2436569))),And(GreaterThanOrEqual(d_date_sk,2436904),LessThanOrEqual(d_date_sk,2436934))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2437270),LessThanOrEqual(d_date_sk,2437300)),And(GreaterThanOrEqual(d_date_sk,2437635),LessThanOrEqual(d_date_sk,2437665))),And(GreaterThanOrEqual(d_date_sk,2438000),LessThanOrEqual(d_date_sk,2438030))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2438365),LessThanOrEqual(d_date_sk,2438395)),And(GreaterThanOrEqual(d_date_sk,2438731),LessThanOrEqual(d_date_sk,2438761))),And(GreaterThanOrEqual(d_date_sk,2439096),LessThanOrEqual(d_date_sk,2439126))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2439461),LessThanOrEqual(d_date_sk,2439491)),And(GreaterThanOrEqual(d_date_sk,2439826),LessThanOrEqual(d_date_sk,2439856))),And(GreaterThanOrEqual(d_date_sk,2440192),LessThanOrEqual(d_date_sk,2440222)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2440557),LessThanOrEqual(d_date_sk,2440587)),And(GreaterThanOrEqual(d_date_sk,2440922),LessThanOrEqual(d_date_sk,2440952))),And(GreaterThanOrEqual(d_date_sk,2441287),LessThanOrEqual(d_date_sk,2441317))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2441653),LessThanOrEqual(d_date_sk,2441683)),And(GreaterThanOrEqual(d_date_sk,2442018),LessThanOrEqual(d_date_sk,2442048))),And(GreaterThanOrEqual(d_date_sk,2442383),LessThanOrEqual(d_date_sk,2442413)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2442748),LessThanOrEqual(d_date_sk,2442778)),And(GreaterThanOrEqual(d_date_sk,2443114),LessThanOrEqual(d_date_sk,2443144))),Or(And(GreaterThanOrEqual(d_date_sk,2443479),LessThanOrEqual(d_date_sk,2443509)),And(GreaterThanOrEqual(d_date_sk,2443844),LessThanOrEqual(d_date_sk,2443874)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2444209),LessThanOrEqual(d_date_sk,2444239)),And(GreaterThanOrEqual(d_date_sk,2444575),LessThanOrEqual(d_date_sk,2444605))),And(GreaterThanOrEqual(d_date_sk,2444940),LessThanOrEqual(d_date_sk,2444970)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2445305),LessThanOrEqual(d_date_sk,2445335)),And(GreaterThanOrEqual(d_date_sk,2445670),LessThanOrEqual(d_date_sk,2445700))),And(GreaterThanOrEqual(d_date_sk,2446036),LessThanOrEqual(d_date_sk,2446066))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2446401),LessThanOrEqual(d_date_sk,2446431)),And(GreaterThanOrEqual(d_date_sk,2446766),LessThanOrEqual(d_date_sk,2446796))),And(GreaterThanOrEqual(d_date_sk,2447131),LessThanOrEqual(d_date_sk,2447161))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2447497),LessThanOrEqual(d_date_sk,2447527)),And(GreaterThanOrEqual(d_date_sk,2447862),LessThanOrEqual(d_date_sk,2447892))),And(GreaterThanOrEqual(d_date_sk,2448227),LessThanOrEqual(d_date_sk,2448257))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2448592),LessThanOrEqual(d_date_sk,2448622)),And(GreaterThanOrEqual(d_date_sk,2448958),LessThanOrEqual(d_date_sk,2448988))),And(GreaterThanOrEqual(d_date_sk,2449323),LessThanOrEqual(d_date_sk,2449353)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2449688),LessThanOrEqual(d_date_sk,2449718)),And(GreaterThanOrEqual(d_date_sk,2450053),LessThanOrEqual(d_date_sk,2450083))),And(GreaterThanOrEqual(d_date_sk,2450419),LessThanOrEqual(d_date_sk,2450449))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2450784),LessThanOrEqual(d_date_sk,2450814)),And(GreaterThanOrEqual(d_date_sk,2451149),LessThanOrEqual(d_date_sk,2451179))),And(GreaterThanOrEqual(d_date_sk,2451514),LessThanOrEqual(d_date_sk,2451544)))))))),Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2451880),LessThanOrEqual(d_date_sk,2451910)),And(GreaterThanOrEqual(d_date_sk,2452245),LessThanOrEqual(d_date_sk,2452275))),Or(And(GreaterThanOrEqual(d_date_sk,2452610),LessThanOrEqual(d_date_sk,2452640)),And(GreaterThanOrEqual(d_date_sk,2452975),LessThanOrEqual(d_date_sk,2453005)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2453341),LessThanOrEqual(d_date_sk,2453371)),And(GreaterThanOrEqual(d_date_sk,2453706),LessThanOrEqual(d_date_sk,2453736))),And(GreaterThanOrEqual(d_date_sk,2454071),LessThanOrEqual(d_date_sk,2454101)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2454436),LessThanOrEqual(d_date_sk,2454466)),And(GreaterThanOrEqual(d_date_sk,2454802),LessThanOrEqual(d_date_sk,2454832))),And(GreaterThanOrEqual(d_date_sk,2455167),LessThanOrEqual(d_date_sk,2455197))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2455532),LessThanOrEqual(d_date_sk,2455562)),And(GreaterThanOrEqual(d_date_sk,2455897),LessThanOrEqual(d_date_sk,2455927))),And(GreaterThanOrEqual(d_date_sk,2456263),LessThanOrEqual(d_date_sk,2456293))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2456628),LessThanOrEqual(d_date_sk,2456658)),And(GreaterThanOrEqual(d_date_sk,2456993),LessThanOrEqual(d_date_sk,2457023))),And(GreaterThanOrEqual(d_date_sk,2457358),LessThanOrEqual(d_date_sk,2457388))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2457724),LessThanOrEqual(d_date_sk,2457754)),And(GreaterThanOrEqual(d_date_sk,2458089),LessThanOrEqual(d_date_sk,2458119))),And(GreaterThanOrEqual(d_date_sk,2458454),LessThanOrEqual(d_date_sk,2458484)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2458819),LessThanOrEqual(d_date_sk,2458849)),And(GreaterThanOrEqual(d_date_sk,2459185),LessThanOrEqual(d_date_sk,2459215))),And(GreaterThanOrEqual(d_date_sk,2459550),LessThanOrEqual(d_date_sk,2459580))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2459915),LessThanOrEqual(d_date_sk,2459945)),And(GreaterThanOrEqual(d_date_sk,2460280),LessThanOrEqual(d_date_sk,2460310))),And(GreaterThanOrEqual(d_date_sk,2460646),LessThanOrEqual(d_date_sk,2460676)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2461011),LessThanOrEqual(d_date_sk,2461041)),And(GreaterThanOrEqual(d_date_sk,2461376),LessThanOrEqual(d_date_sk,2461406))),Or(And(GreaterThanOrEqual(d_date_sk,2461741),LessThanOrEqual(d_date_sk,2461771)),And(GreaterThanOrEqual(d_date_sk,2462107),LessThanOrEqual(d_date_sk,2462137)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2462472),LessThanOrEqual(d_date_sk,2462502)),And(GreaterThanOrEqual(d_date_sk,2462837),LessThanOrEqual(d_date_sk,2462867))),And(GreaterThanOrEqual(d_date_sk,2463202),LessThanOrEqual(d_date_sk,2463232)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2463568),LessThanOrEqual(d_date_sk,2463598)),And(GreaterThanOrEqual(d_date_sk,2463933),LessThanOrEqual(d_date_sk,2463963))),And(GreaterThanOrEqual(d_date_sk,2464298),LessThanOrEqual(d_date_sk,2464328))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2464663),LessThanOrEqual(d_date_sk,2464693)),And(GreaterThanOrEqual(d_date_sk,2465029),LessThanOrEqual(d_date_sk,2465059))),And(GreaterThanOrEqual(d_date_sk,2465394),LessThanOrEqual(d_date_sk,2465424))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2465759),LessThanOrEqual(d_date_sk,2465789)),And(GreaterThanOrEqual(d_date_sk,2466124),LessThanOrEqual(d_date_sk,2466154))),And(GreaterThanOrEqual(d_date_sk,2466490),LessThanOrEqual(d_date_sk,2466520))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2466855),LessThanOrEqual(d_date_sk,2466885)),And(GreaterThanOrEqual(d_date_sk,2467220),LessThanOrEqual(d_date_sk,2467250))),And(GreaterThanOrEqual(d_date_sk,2467585),LessThanOrEqual(d_date_sk,2467615)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2467951),LessThanOrEqual(d_date_sk,2467981)),And(GreaterThanOrEqual(d_date_sk,2468316),LessThanOrEqual(d_date_sk,2468346))),And(GreaterThanOrEqual(d_date_sk,2468681),LessThanOrEqual(d_date_sk,2468711))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2469046),LessThanOrEqual(d_date_sk,2469076)),And(GreaterThanOrEqual(d_date_sk,2469412),LessThanOrEqual(d_date_sk,2469442))),And(GreaterThanOrEqual(d_date_sk,2469777),LessThanOrEqual(d_date_sk,2469807))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2470142),LessThanOrEqual(d_date_sk,2470172)),And(GreaterThanOrEqual(d_date_sk,2470507),LessThanOrEqual(d_date_sk,2470537))),Or(And(GreaterThanOrEqual(d_date_sk,2470873),LessThanOrEqual(d_date_sk,2470903)),And(GreaterThanOrEqual(d_date_sk,2471238),LessThanOrEqual(d_date_sk,2471268)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2471603),LessThanOrEqual(d_date_sk,2471633)),And(GreaterThanOrEqual(d_date_sk,2471968),LessThanOrEqual(d_date_sk,2471998))),And(GreaterThanOrEqual(d_date_sk,2472334),LessThanOrEqual(d_date_sk,2472364)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2472699),LessThanOrEqual(d_date_sk,2472729)),And(GreaterThanOrEqual(d_date_sk,2473064),LessThanOrEqual(d_date_sk,2473094))),And(GreaterThanOrEqual(d_date_sk,2473429),LessThanOrEqual(d_date_sk,2473459))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2473795),LessThanOrEqual(d_date_sk,2473825)),And(GreaterThanOrEqual(d_date_sk,2474160),LessThanOrEqual(d_date_sk,2474190))),And(GreaterThanOrEqual(d_date_sk,2474525),LessThanOrEqual(d_date_sk,2474555))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2474890),LessThanOrEqual(d_date_sk,2474920)),And(GreaterThanOrEqual(d_date_sk,2475256),LessThanOrEqual(d_date_sk,2475286))),And(GreaterThanOrEqual(d_date_sk,2475621),LessThanOrEqual(d_date_sk,2475651))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2475986),LessThanOrEqual(d_date_sk,2476016)),And(GreaterThanOrEqual(d_date_sk,2476351),LessThanOrEqual(d_date_sk,2476381))),And(GreaterThanOrEqual(d_date_sk,2476717),LessThanOrEqual(d_date_sk,2476747)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2477082),LessThanOrEqual(d_date_sk,2477112)),And(GreaterThanOrEqual(d_date_sk,2477447),LessThanOrEqual(d_date_sk,2477477))),And(GreaterThanOrEqual(d_date_sk,2477812),LessThanOrEqual(d_date_sk,2477842))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2478178),LessThanOrEqual(d_date_sk,2478208)),And(GreaterThanOrEqual(d_date_sk,2478543),LessThanOrEqual(d_date_sk,2478573))),And(GreaterThanOrEqual(d_date_sk,2478908),LessThanOrEqual(d_date_sk,2478938)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2479273),LessThanOrEqual(d_date_sk,2479303)),And(GreaterThanOrEqual(d_date_sk,2479639),LessThanOrEqual(d_date_sk,2479669))),Or(And(GreaterThanOrEqual(d_date_sk,2480004),LessThanOrEqual(d_date_sk,2480034)),And(GreaterThanOrEqual(d_date_sk,2480369),LessThanOrEqual(d_date_sk,2480399)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2480734),LessThanOrEqual(d_date_sk,2480764)),And(GreaterThanOrEqual(d_date_sk,2481100),LessThanOrEqual(d_date_sk,2481130))),And(GreaterThanOrEqual(d_date_sk,2481465),LessThanOrEqual(d_date_sk,2481495)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2481830),LessThanOrEqual(d_date_sk,2481860)),And(GreaterThanOrEqual(d_date_sk,2482195),LessThanOrEqual(d_date_sk,2482225))),And(GreaterThanOrEqual(d_date_sk,2482561),LessThanOrEqual(d_date_sk,2482591))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2482926),LessThanOrEqual(d_date_sk,2482956)),And(GreaterThanOrEqual(d_date_sk,2483291),LessThanOrEqual(d_date_sk,2483321))),And(GreaterThanOrEqual(d_date_sk,2483656),LessThanOrEqual(d_date_sk,2483686))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2484022),LessThanOrEqual(d_date_sk,2484052)),And(GreaterThanOrEqual(d_date_sk,2484387),LessThanOrEqual(d_date_sk,2484417))),And(GreaterThanOrEqual(d_date_sk,2484752),LessThanOrEqual(d_date_sk,2484782))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2485117),LessThanOrEqual(d_date_sk,2485147)),And(GreaterThanOrEqual(d_date_sk,2485483),LessThanOrEqual(d_date_sk,2485513))),And(GreaterThanOrEqual(d_date_sk,2485848),LessThanOrEqual(d_date_sk,2485878)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2486213),LessThanOrEqual(d_date_sk,2486243)),And(GreaterThanOrEqual(d_date_sk,2486578),LessThanOrEqual(d_date_sk,2486608))),And(GreaterThanOrEqual(d_date_sk,2486944),LessThanOrEqual(d_date_sk,2486974))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2487309),LessThanOrEqual(d_date_sk,2487339)),And(GreaterThanOrEqual(d_date_sk,2487674),LessThanOrEqual(d_date_sk,2487704))),And(GreaterThanOrEqual(d_date_sk,2488039),LessThanOrEqual(d_date_sk,2488069))))))))), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_net_profit#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [((((((((((ss_sold_date_sk#6 >= 2415355) AND (ss_sold_date_sk#6 <= 2415385)) OR ((ss_sold_date_sk#6 >= 2415720) AND (ss_sold_date_sk#6 <= 2415750))) OR (((ss_sold_date_sk#6 >= 2416085) AND (ss_sold_date_sk#6 <= 2416115)) OR ((ss_sold_date_sk#6 >= 2416450) AND (ss_sold_date_sk#6 <= 2416480)))) OR ((((ss_sold_date_sk#6 >= 2416816) AND (ss_sold_date_sk#6 <= 2416846)) OR ((ss_sold_date_sk#6 >= 2417181) AND (ss_sold_date_sk#6 <= 2417211))) OR ((ss_sold_date_sk#6 >= 2417546) AND (ss_sold_date_sk#6 <= 2417576)))) OR (((((ss_sold_date_sk#6 >= 2417911) AND (ss_sold_date_sk#6 <= 2417941)) OR ((ss_sold_date_sk#6 >= 2418277) AND (ss_sold_date_sk#6 <= 2418307))) OR ((ss_sold_date_sk#6 >= 2418642) AND (ss_sold_date_sk#6 <= 2418672))) OR ((((ss_sold_date_sk#6 >= 2419007) AND (ss_sold_date_sk#6 <= 2419037)) OR ((ss_sold_date_sk#6 >= 2419372) AND (ss_sold_date_sk#6 <= 2419402))) OR ((ss_sold_date_sk#6 >= 2419738) AND (ss_sold_date_sk#6 <= 2419768))))) OR ((((((ss_sold_date_sk#6 >= 2420103) AND (ss_sold_date_sk#6 <= 2420133)) OR ((ss_sold_date_sk#6 >= 2420468) AND (ss_sold_date_sk#6 <= 2420498))) OR ((ss_sold_date_sk#6 >= 2420833) AND (ss_sold_date_sk#6 <= 2420863))) OR ((((ss_sold_date_sk#6 >= 2421199) AND (ss_sold_date_sk#6 <= 2421229)) OR ((ss_sold_date_sk#6 >= 2421564) AND (ss_sold_date_sk#6 <= 2421594))) OR ((ss_sold_date_sk#6 >= 2421929) AND (ss_sold_date_sk#6 <= 2421959)))) OR (((((ss_sold_date_sk#6 >= 2422294) AND (ss_sold_date_sk#6 <= 2422324)) OR ((ss_sold_date_sk#6 >= 2422660) AND (ss_sold_date_sk#6 <= 2422690))) OR ((ss_sold_date_sk#6 >= 2423025) AND (ss_sold_date_sk#6 <= 2423055))) OR ((((ss_sold_date_sk#6 >= 2423390) AND (ss_sold_date_sk#6 <= 2423420)) OR ((ss_sold_date_sk#6 >= 2423755) AND (ss_sold_date_sk#6 <= 2423785))) OR ((ss_sold_date_sk#6 >= 2424121) AND (ss_sold_date_sk#6 <= 2424151)))))) OR (((((((ss_sold_date_sk#6 >= 2424486) AND (ss_sold_date_sk#6 <= 2424516)) OR ((ss_sold_date_sk#6 >= 2424851) AND (ss_sold_date_sk#6 <= 2424881))) OR (((ss_sold_date_sk#6 >= 2425216) AND (ss_sold_date_sk#6 <= 2425246)) OR ((ss_sold_date_sk#6 >= 2425582) AND (ss_sold_date_sk#6 <= 2425612)))) OR ((((ss_sold_date_sk#6 >= 2425947) AND (ss_sold_date_sk#6 <= 2425977)) OR ((ss_sold_date_sk#6 >= 2426312) AND (ss_sold_date_sk#6 <= 2426342))) OR ((ss_sold_date_sk#6 >= 2426677) AND (ss_sold_date_sk#6 <= 2426707)))) OR (((((ss_sold_date_sk#6 >= 2427043) AND (ss_sold_date_sk#6 <= 2427073)) OR ((ss_sold_date_sk#6 >= 2427408) AND (ss_sold_date_sk#6 <= 2427438))) OR ((ss_sold_date_sk#6 >= 2427773) AND (ss_sold_date_sk#6 <= 2427803))) OR ((((ss_sold_date_sk#6 >= 2428138) AND (ss_sold_date_sk#6 <= 2428168)) OR ((ss_sold_date_sk#6 >= 2428504) AND (ss_sold_date_sk#6 <= 2428534))) OR ((ss_sold_date_sk#6 >= 2428869) AND (ss_sold_date_sk#6 <= 2428899))))) OR ((((((ss_sold_date_sk#6 >= 2429234) AND (ss_sold_date_sk#6 <= 2429264)) OR ((ss_sold_date_sk#6 >= 2429599) AND (ss_sold_date_sk#6 <= 2429629))) OR ((ss_sold_date_sk#6 >= 2429965) AND (ss_sold_date_sk#6 <= 2429995))) OR ((((ss_sold_date_sk#6 >= 2430330) AND (ss_sold_date_sk#6 <= 2430360)) OR ((ss_sold_date_sk#6 >= 2430695) AND (ss_sold_date_sk#6 <= 2430725))) OR ((ss_sold_date_sk#6 >= 2431060) AND (ss_sold_date_sk#6 <= 2431090)))) OR (((((ss_sold_date_sk#6 >= 2431426) AND (ss_sold_date_sk#6 <= 2431456)) OR ((ss_sold_date_sk#6 >= 2431791) AND (ss_sold_date_sk#6 <= 2431821))) OR ((ss_sold_date_sk#6 >= 2432156) AND (ss_sold_date_sk#6 <= 2432186))) OR ((((ss_sold_date_sk#6 >= 2432521) AND (ss_sold_date_sk#6 <= 2432551)) OR ((ss_sold_date_sk#6 >= 2432887) AND (ss_sold_date_sk#6 <= 2432917))) OR ((ss_sold_date_sk#6 >= 2433252) AND (ss_sold_date_sk#6 <= 2433282))))))) OR ((((((((ss_sold_date_sk#6 >= 2433617) AND (ss_sold_date_sk#6 <= 2433647)) OR ((ss_sold_date_sk#6 >= 2433982) AND (ss_sold_date_sk#6 <= 2434012))) OR (((ss_sold_date_sk#6 >= 2434348) AND (ss_sold_date_sk#6 <= 2434378)) OR ((ss_sold_date_sk#6 >= 2434713) AND (ss_sold_date_sk#6 <= 2434743)))) OR ((((ss_sold_date_sk#6 >= 2435078) AND (ss_sold_date_sk#6 <= 2435108)) OR ((ss_sold_date_sk#6 >= 2435443) AND (ss_sold_date_sk#6 <= 2435473))) OR ((ss_sold_date_sk#6 >= 2435809) AND (ss_sold_date_sk#6 <= 2435839)))) OR (((((ss_sold_date_sk#6 >= 2436174) AND (ss_sold_date_sk#6 <= 2436204)) OR ((ss_sold_date_sk#6 >= 2436539) AND (ss_sold_date_sk#6 <= 2436569))) OR ((ss_sold_date_sk#6 >= 2436904) AND (ss_sold_date_sk#6 <= 2436934))) OR ((((ss_sold_date_sk#6 >= 2437270) AND (ss_sold_date_sk#6 <= 2437300)) OR ((ss_sold_date_sk#6 >= 2437635) AND (ss_sold_date_sk#6 <= 2437665))) OR ((ss_sold_date_sk#6 >= 2438000) AND (ss_sold_date_sk#6 <= 2438030))))) OR ((((((ss_sold_date_sk#6 >= 2438365) AND (ss_sold_date_sk#6 <= 2438395)) OR ((ss_sold_date_sk#6 >= 2438731) AND (ss_sold_date_sk#6 <= 2438761))) OR ((ss_sold_date_sk#6 >= 2439096) AND (ss_sold_date_sk#6 <= 2439126))) OR ((((ss_sold_date_sk#6 >= 2439461) AND (ss_sold_date_sk#6 <= 2439491)) OR ((ss_sold_date_sk#6 >= 2439826) AND (ss_sold_date_sk#6 <= 2439856))) OR ((ss_sold_date_sk#6 >= 2440192) AND (ss_sold_date_sk#6 <= 2440222)))) OR (((((ss_sold_date_sk#6 >= 2440557) AND (ss_sold_date_sk#6 <= 2440587)) OR ((ss_sold_date_sk#6 >= 2440922) AND (ss_sold_date_sk#6 <= 2440952))) OR ((ss_sold_date_sk#6 >= 2441287) AND (ss_sold_date_sk#6 <= 2441317))) OR ((((ss_sold_date_sk#6 >= 2441653) AND (ss_sold_date_sk#6 <= 2441683)) OR ((ss_sold_date_sk#6 >= 2442018) AND (ss_sold_date_sk#6 <= 2442048))) OR ((ss_sold_date_sk#6 >= 2442383) AND (ss_sold_date_sk#6 <= 2442413)))))) OR (((((((ss_sold_date_sk#6 >= 2442748) AND (ss_sold_date_sk#6 <= 2442778)) OR ((ss_sold_date_sk#6 >= 2443114) AND (ss_sold_date_sk#6 <= 2443144))) OR (((ss_sold_date_sk#6 >= 2443479) AND (ss_sold_date_sk#6 <= 2443509)) OR ((ss_sold_date_sk#6 >= 2443844) AND (ss_sold_date_sk#6 <= 2443874)))) OR ((((ss_sold_date_sk#6 >= 2444209) AND (ss_sold_date_sk#6 <= 2444239)) OR ((ss_sold_date_sk#6 >= 2444575) AND (ss_sold_date_sk#6 <= 2444605))) OR ((ss_sold_date_sk#6 >= 2444940) AND (ss_sold_date_sk#6 <= 2444970)))) OR (((((ss_sold_date_sk#6 >= 2445305) AND (ss_sold_date_sk#6 <= 2445335)) OR ((ss_sold_date_sk#6 >= 2445670) AND (ss_sold_date_sk#6 <= 2445700))) OR ((ss_sold_date_sk#6 >= 2446036) AND (ss_sold_date_sk#6 <= 2446066))) OR ((((ss_sold_date_sk#6 >= 2446401) AND (ss_sold_date_sk#6 <= 2446431)) OR ((ss_sold_date_sk#6 >= 2446766) AND (ss_sold_date_sk#6 <= 2446796))) OR ((ss_sold_date_sk#6 >= 2447131) AND (ss_sold_date_sk#6 <= 2447161))))) OR ((((((ss_sold_date_sk#6 >= 2447497) AND (ss_sold_date_sk#6 <= 2447527)) OR ((ss_sold_date_sk#6 >= 2447862) AND (ss_sold_date_sk#6 <= 2447892))) OR ((ss_sold_date_sk#6 >= 2448227) AND (ss_sold_date_sk#6 <= 2448257))) OR ((((ss_sold_date_sk#6 >= 2448592) AND (ss_sold_date_sk#6 <= 2448622)) OR ((ss_sold_date_sk#6 >= 2448958) AND (ss_sold_date_sk#6 <= 2448988))) OR ((ss_sold_date_sk#6 >= 2449323) AND (ss_sold_date_sk#6 <= 2449353)))) OR (((((ss_sold_date_sk#6 >= 2449688) AND (ss_sold_date_sk#6 <= 2449718)) OR ((ss_sold_date_sk#6 >= 2450053) AND (ss_sold_date_sk#6 <= 2450083))) OR ((ss_sold_date_sk#6 >= 2450419) AND (ss_sold_date_sk#6 <= 2450449))) OR ((((ss_sold_date_sk#6 >= 2450784) AND (ss_sold_date_sk#6 <= 2450814)) OR ((ss_sold_date_sk#6 >= 2451149) AND (ss_sold_date_sk#6 <= 2451179))) OR ((ss_sold_date_sk#6 >= 2451514) AND (ss_sold_date_sk#6 <= 2451544)))))))) OR (((((((((ss_sold_date_sk#6 >= 2451880) AND (ss_sold_date_sk#6 <= 2451910)) OR ((ss_sold_date_sk#6 >= 2452245) AND (ss_sold_date_sk#6 <= 2452275))) OR (((ss_sold_date_sk#6 >= 2452610) AND (ss_sold_date_sk#6 <= 2452640)) OR ((ss_sold_date_sk#6 >= 2452975) AND (ss_sold_date_sk#6 <= 2453005)))) OR ((((ss_sold_date_sk#6 >= 2453341) AND (ss_sold_date_sk#6 <= 2453371)) OR ((ss_sold_date_sk#6 >= 2453706) AND (ss_sold_date_sk#6 <= 2453736))) OR ((ss_sold_date_sk#6 >= 2454071) AND (ss_sold_date_sk#6 <= 2454101)))) OR (((((ss_sold_date_sk#6 >= 2454436) AND (ss_sold_date_sk#6 <= 2454466)) OR ((ss_sold_date_sk#6 >= 2454802) AND (ss_sold_date_sk#6 <= 2454832))) OR ((ss_sold_date_sk#6 >= 2455167) AND (ss_sold_date_sk#6 <= 2455197))) OR ((((ss_sold_date_sk#6 >= 2455532) AND (ss_sold_date_sk#6 <= 2455562)) OR ((ss_sold_date_sk#6 >= 2455897) AND (ss_sold_date_sk#6 <= 2455927))) OR ((ss_sold_date_sk#6 >= 2456263) AND (ss_sold_date_sk#6 <= 2456293))))) OR ((((((ss_sold_date_sk#6 >= 2456628) AND (ss_sold_date_sk#6 <= 2456658)) OR ((ss_sold_date_sk#6 >= 2456993) AND (ss_sold_date_sk#6 <= 2457023))) OR ((ss_sold_date_sk#6 >= 2457358) AND (ss_sold_date_sk#6 <= 2457388))) OR ((((ss_sold_date_sk#6 >= 2457724) AND (ss_sold_date_sk#6 <= 2457754)) OR ((ss_sold_date_sk#6 >= 2458089) AND (ss_sold_date_sk#6 <= 2458119))) OR ((ss_sold_date_sk#6 >= 2458454) AND (ss_sold_date_sk#6 <= 2458484)))) OR (((((ss_sold_date_sk#6 >= 2458819) AND (ss_sold_date_sk#6 <= 2458849)) OR ((ss_sold_date_sk#6 >= 2459185) AND (ss_sold_date_sk#6 <= 2459215))) OR ((ss_sold_date_sk#6 >= 2459550) AND (ss_sold_date_sk#6 <= 2459580))) OR ((((ss_sold_date_sk#6 >= 2459915) AND (ss_sold_date_sk#6 <= 2459945)) OR ((ss_sold_date_sk#6 >= 2460280) AND (ss_sold_date_sk#6 <= 2460310))) OR ((ss_sold_date_sk#6 >= 2460646) AND (ss_sold_date_sk#6 <= 2460676)))))) OR (((((((ss_sold_date_sk#6 >= 2461011) AND (ss_sold_date_sk#6 <= 2461041)) OR ((ss_sold_date_sk#6 >= 2461376) AND (ss_sold_date_sk#6 <= 2461406))) OR (((ss_sold_date_sk#6 >= 2461741) AND (ss_sold_date_sk#6 <= 2461771)) OR ((ss_sold_date_sk#6 >= 2462107) AND (ss_sold_date_sk#6 <= 2462137)))) OR ((((ss_sold_date_sk#6 >= 2462472) AND (ss_sold_date_sk#6 <= 2462502)) OR ((ss_sold_date_sk#6 >= 2462837) AND (ss_sold_date_sk#6 <= 2462867))) OR ((ss_sold_date_sk#6 >= 2463202) AND (ss_sold_date_sk#6 <= 2463232)))) OR (((((ss_sold_date_sk#6 >= 2463568) AND (ss_sold_date_sk#6 <= 2463598)) OR ((ss_sold_date_sk#6 >= 2463933) AND (ss_sold_date_sk#6 <= 2463963))) OR ((ss_sold_date_sk#6 >= 2464298) AND (ss_sold_date_sk#6 <= 2464328))) OR ((((ss_sold_date_sk#6 >= 2464663) AND (ss_sold_date_sk#6 <= 2464693)) OR ((ss_sold_date_sk#6 >= 2465029) AND (ss_sold_date_sk#6 <= 2465059))) OR ((ss_sold_date_sk#6 >= 2465394) AND (ss_sold_date_sk#6 <= 2465424))))) OR ((((((ss_sold_date_sk#6 >= 2465759) AND (ss_sold_date_sk#6 <= 2465789)) OR ((ss_sold_date_sk#6 >= 2466124) AND (ss_sold_date_sk#6 <= 2466154))) OR ((ss_sold_date_sk#6 >= 2466490) AND (ss_sold_date_sk#6 <= 2466520))) OR ((((ss_sold_date_sk#6 >= 2466855) AND (ss_sold_date_sk#6 <= 2466885)) OR ((ss_sold_date_sk#6 >= 2467220) AND (ss_sold_date_sk#6 <= 2467250))) OR ((ss_sold_date_sk#6 >= 2467585) AND (ss_sold_date_sk#6 <= 2467615)))) OR (((((ss_sold_date_sk#6 >= 2467951) AND (ss_sold_date_sk#6 <= 2467981)) OR ((ss_sold_date_sk#6 >= 2468316) AND (ss_sold_date_sk#6 <= 2468346))) OR ((ss_sold_date_sk#6 >= 2468681) AND (ss_sold_date_sk#6 <= 2468711))) OR ((((ss_sold_date_sk#6 >= 2469046) AND (ss_sold_date_sk#6 <= 2469076)) OR ((ss_sold_date_sk#6 >= 2469412) AND (ss_sold_date_sk#6 <= 2469442))) OR ((ss_sold_date_sk#6 >= 2469777) AND (ss_sold_date_sk#6 <= 2469807))))))) OR ((((((((ss_sold_date_sk#6 >= 2470142) AND (ss_sold_date_sk#6 <= 2470172)) OR ((ss_sold_date_sk#6 >= 2470507) AND (ss_sold_date_sk#6 <= 2470537))) OR (((ss_sold_date_sk#6 >= 2470873) AND (ss_sold_date_sk#6 <= 2470903)) OR ((ss_sold_date_sk#6 >= 2471238) AND (ss_sold_date_sk#6 <= 2471268)))) OR ((((ss_sold_date_sk#6 >= 2471603) AND (ss_sold_date_sk#6 <= 2471633)) OR ((ss_sold_date_sk#6 >= 2471968) AND (ss_sold_date_sk#6 <= 2471998))) OR ((ss_sold_date_sk#6 >= 2472334) AND (ss_sold_date_sk#6 <= 2472364)))) OR (((((ss_sold_date_sk#6 >= 2472699) AND (ss_sold_date_sk#6 <= 2472729)) OR ((ss_sold_date_sk#6 >= 2473064) AND (ss_sold_date_sk#6 <= 2473094))) OR ((ss_sold_date_sk#6 >= 2473429) AND (ss_sold_date_sk#6 <= 2473459))) OR ((((ss_sold_date_sk#6 >= 2473795) AND (ss_sold_date_sk#6 <= 2473825)) OR ((ss_sold_date_sk#6 >= 2474160) AND (ss_sold_date_sk#6 <= 2474190))) OR ((ss_sold_date_sk#6 >= 2474525) AND (ss_sold_date_sk#6 <= 2474555))))) OR ((((((ss_sold_date_sk#6 >= 2474890) AND (ss_sold_date_sk#6 <= 2474920)) OR ((ss_sold_date_sk#6 >= 2475256) AND (ss_sold_date_sk#6 <= 2475286))) OR ((ss_sold_date_sk#6 >= 2475621) AND (ss_sold_date_sk#6 <= 2475651))) OR ((((ss_sold_date_sk#6 >= 2475986) AND (ss_sold_date_sk#6 <= 2476016)) OR ((ss_sold_date_sk#6 >= 2476351) AND (ss_sold_date_sk#6 <= 2476381))) OR ((ss_sold_date_sk#6 >= 2476717) AND (ss_sold_date_sk#6 <= 2476747)))) OR (((((ss_sold_date_sk#6 >= 2477082) AND (ss_sold_date_sk#6 <= 2477112)) OR ((ss_sold_date_sk#6 >= 2477447) AND (ss_sold_date_sk#6 <= 2477477))) OR ((ss_sold_date_sk#6 >= 2477812) AND (ss_sold_date_sk#6 <= 2477842))) OR ((((ss_sold_date_sk#6 >= 2478178) AND (ss_sold_date_sk#6 <= 2478208)) OR ((ss_sold_date_sk#6 >= 2478543) AND (ss_sold_date_sk#6 <= 2478573))) OR ((ss_sold_date_sk#6 >= 2478908) AND (ss_sold_date_sk#6 <= 2478938)))))) OR (((((((ss_sold_date_sk#6 >= 2479273) AND (ss_sold_date_sk#6 <= 2479303)) OR ((ss_sold_date_sk#6 >= 2479639) AND (ss_sold_date_sk#6 <= 2479669))) OR (((ss_sold_date_sk#6 >= 2480004) AND (ss_sold_date_sk#6 <= 2480034)) OR ((ss_sold_date_sk#6 >= 2480369) AND (ss_sold_date_sk#6 <= 2480399)))) OR ((((ss_sold_date_sk#6 >= 2480734) AND (ss_sold_date_sk#6 <= 2480764)) OR ((ss_sold_date_sk#6 >= 2481100) AND (ss_sold_date_sk#6 <= 2481130))) OR ((ss_sold_date_sk#6 >= 2481465) AND (ss_sold_date_sk#6 <= 2481495)))) OR (((((ss_sold_date_sk#6 >= 2481830) AND (ss_sold_date_sk#6 <= 2481860)) OR ((ss_sold_date_sk#6 >= 2482195) AND (ss_sold_date_sk#6 <= 2482225))) OR ((ss_sold_date_sk#6 >= 2482561) AND (ss_sold_date_sk#6 <= 2482591))) OR ((((ss_sold_date_sk#6 >= 2482926) AND (ss_sold_date_sk#6 <= 2482956)) OR ((ss_sold_date_sk#6 >= 2483291) AND (ss_sold_date_sk#6 <= 2483321))) OR ((ss_sold_date_sk#6 >= 2483656) AND (ss_sold_date_sk#6 <= 2483686))))) OR ((((((ss_sold_date_sk#6 >= 2484022) AND (ss_sold_date_sk#6 <= 2484052)) OR ((ss_sold_date_sk#6 >= 2484387) AND (ss_sold_date_sk#6 <= 2484417))) OR ((ss_sold_date_sk#6 >= 2484752) AND (ss_sold_date_sk#6 <= 2484782))) OR ((((ss_sold_date_sk#6 >= 2485117) AND (ss_sold_date_sk#6 <= 2485147)) OR ((ss_sold_date_sk#6 >= 2485483) AND (ss_sold_date_sk#6 <= 2485513))) OR ((ss_sold_date_sk#6 >= 2485848) AND (ss_sold_date_sk#6 <= 2485878)))) OR (((((ss_sold_date_sk#6 >= 2486213) AND (ss_sold_date_sk#6 <= 2486243)) OR ((ss_sold_date_sk#6 >= 2486578) AND (ss_sold_date_sk#6 <= 2486608))) OR ((ss_sold_date_sk#6 >= 2486944) AND (ss_sold_date_sk#6 <= 2486974))) OR ((((ss_sold_date_sk#6 >= 2487309) AND (ss_sold_date_sk#6 <= 2487339)) OR ((ss_sold_date_sk#6 >= 2487674) AND (ss_sold_date_sk#6 <= 2487704))) OR ((ss_sold_date_sk#6 >= 2488039) AND (ss_sold_date_sk#6 <= 2488069))))))))), isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_net_profit#5, ss_sold_date_s Output [4]: [i_item_sk#7, i_brand_id#8, i_brand#9, i_manufact_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,436), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,436), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34.sf100/explain.txt index 70c0057ae08..b180b4bb98f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34.sf100/explain.txt @@ -50,7 +50,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), (ss_sold_date_sk#5 >= 2450816), (ss_sold_date_sk#5 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -80,7 +80,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_county, [Appanoose County,Daviess County,Fairfield County,Raleigh County,Saginaw County,Sumner County,Williamson County,Ziebach County]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_county, [Appanoose County,Daviess County,Fairfield County,Raleigh County,Saginaw County,Sumner County,Williamson County,Ziebach County]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -119,7 +119,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -218,7 +218,7 @@ Input [3]: [ss_ticket_number#4, ss_customer_sk#1, cnt#18] Output [5]: [c_customer_sk#20, c_salutation#21, c_first_name#22, c_last_name#23, c_preferred_cust_flag#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -297,7 +297,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#7, d_year#26, d_dom#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), In(d_year, [1998,1999,2000]), GreaterThanOrEqual(d_date_sk,2450816), LessThanOrEqual(d_date_sk,2451910), IsNotNull(d_date_sk)] +PushedFilters: [*Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), *In(d_year, [1998,1999,2000]), *GreaterThanOrEqual(d_date_sk,2450816), *LessThanOrEqual(d_date_sk,2451910), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34/explain.txt index 4871ea6321b..618a063a1dd 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34/explain.txt @@ -44,7 +44,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), (ss_sold_date_sk#5 >= 2450816), (ss_sold_date_sk#5 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_county, [Appanoose County,Daviess County,Fairfield County,Raleigh County,Saginaw County,Sumner County,Williamson County,Ziebach County]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_county, [Appanoose County,Daviess County,Fairfield County,Raleigh County,Saginaw County,Sumner County,Williamson County,Ziebach County]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -113,7 +113,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -191,7 +191,7 @@ Arguments: ((cnt#18 >= 15) AND (cnt#18 <= 20)) Output [5]: [c_customer_sk#19, c_salutation#20, c_first_name#21, c_last_name#22, c_preferred_cust_flag#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -263,7 +263,7 @@ ColumnarBroadcastExchange (55) Output [3]: [d_date_sk#7, d_year#24, d_dom#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), In(d_year, [1998,1999,2000]), GreaterThanOrEqual(d_date_sk,2450816), LessThanOrEqual(d_date_sk,2451910), IsNotNull(d_date_sk)] +PushedFilters: [*Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), *In(d_year, [1998,1999,2000]), *GreaterThanOrEqual(d_date_sk,2450816), *LessThanOrEqual(d_date_sk,2451910), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42.sf100/explain.txt index 08902ced6db..831b379f097 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42.sf100/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,12), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2451149), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,12), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2451149), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -60,7 +60,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2451149), (ss_sold_date_sk#6 <= 2451179), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_d Output [4]: [i_item_sk#8, i_category_id#9, i_category#10, i_manager_id#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42/explain.txt index c5b98996d80..7c16ac40d22 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,12), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2451149), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,12), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2451149), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2451149), (ss_sold_date_sk#6 <= 2451179), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_d Output [4]: [i_item_sk#7, i_category_id#8, i_category#9, i_manager_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43.sf100/explain.txt index 68231046b75..71028897caf 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43.sf100/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_day_name#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2450816), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2450816), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -60,7 +60,7 @@ Output [3]: [ss_store_sk#4, ss_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2450816), (ss_sold_date_sk#6 <= 2451179), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_day_name#3, ss_store_sk#4, ss_sales_price#5, ss_sold_ Output [4]: [s_store_sk#8, s_store_id#9, s_store_name#10, s_gmt_offset#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_gmt_offset), EqualTo(s_gmt_offset,-5.00), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_gmt_offset), *EqualTo(s_gmt_offset,-5.00), *IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43/explain.txt index ffdb13574ec..f29c8728dfa 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_day_name#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2450816), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2450816), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_store_sk#4, ss_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2450816), (ss_sold_date_sk#6 <= 2451179), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_day_name#3, ss_store_sk#4, ss_sales_price#5, ss_sold_ Output [4]: [s_store_sk#7, s_store_id#8, s_store_name#9, s_gmt_offset#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_gmt_offset), EqualTo(s_gmt_offset,-5.00), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_gmt_offset), *EqualTo(s_gmt_offset,-5.00), *IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46.sf100/explain.txt index 2dc39df6b55..f329db0a794 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46.sf100/explain.txt @@ -59,7 +59,7 @@ Output [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [ss_sold_date_sk#8 INSET 2451181, 2451182, 2451188, 2451189, 2451195, 2451196, 2451202, 2451203, 2451209, 2451210, 2451216, 2451217, 2451223, 2451224, 2451230, 2451231, 2451237, 2451238, 2451244, 2451245, 2451251, 2451252, 2451258, 2451259, 2451265, 2451266, 2451272, 2451273, 2451279, 2451280, 2451286, 2451287, 2451293, 2451294, 2451300, 2451301, 2451307, 2451308, 2451314, 2451315, 2451321, 2451322, 2451328, 2451329, 2451335, 2451336, 2451342, 2451343, 2451349, 2451350, 2451356, 2451357, 2451363, 2451364, 2451370, 2451371, 2451377, 2451378, 2451384, 2451385, 2451391, 2451392, 2451398, 2451399, 2451405, 2451406, 2451412, 2451413, 2451419, 2451420, 2451426, 2451427, 2451433, 2451434, 2451440, 2451441, 2451447, 2451448, 2451454, 2451455, 2451461, 2451462, 2451468, 2451469, 2451475, 2451476, 2451482, 2451483, 2451489, 2451490, 2451496, 2451497, 2451503, 2451504, 2451510, 2451511, 2451517, 2451518, 2451524, 2451525, 2451531, 2451532, 2451538, 2451539, 2451545, 2451546, 2451552, 2451553, 2451559, 2451560, 2451566, 2451567, 2451573, 2451574, 2451580, 2451581, 2451587, 2451588, 2451594, 2451595, 2451601, 2451602, 2451608, 2451609, 2451615, 2451616, 2451622, 2451623, 2451629, 2451630, 2451636, 2451637, 2451643, 2451644, 2451650, 2451651, 2451657, 2451658, 2451664, 2451665, 2451671, 2451672, 2451678, 2451679, 2451685, 2451686, 2451692, 2451693, 2451699, 2451700, 2451706, 2451707, 2451713, 2451714, 2451720, 2451721, 2451727, 2451728, 2451734, 2451735, 2451741, 2451742, 2451748, 2451749, 2451755, 2451756, 2451762, 2451763, 2451769, 2451770, 2451776, 2451777, 2451783, 2451784, 2451790, 2451791, 2451797, 2451798, 2451804, 2451805, 2451811, 2451812, 2451818, 2451819, 2451825, 2451826, 2451832, 2451833, 2451839, 2451840, 2451846, 2451847, 2451853, 2451854, 2451860, 2451861, 2451867, 2451868, 2451874, 2451875, 2451881, 2451882, 2451888, 2451889, 2451895, 2451896, 2451902, 2451903, 2451909, 2451910, 2451916, 2451917, 2451923, 2451924, 2451930, 2451931, 2451937, 2451938, 2451944, 2451945, 2451951, 2451952, 2451958, 2451959, 2451965, 2451966, 2451972, 2451973, 2451979, 2451980, 2451986, 2451987, 2451993, 2451994, 2452000, 2452001, 2452007, 2452008, 2452014, 2452015, 2452021, 2452022, 2452028, 2452029, 2452035, 2452036, 2452042, 2452043, 2452049, 2452050, 2452056, 2452057, 2452063, 2452064, 2452070, 2452071, 2452077, 2452078, 2452084, 2452085, 2452091, 2452092, 2452098, 2452099, 2452105, 2452106, 2452112, 2452113, 2452119, 2452120, 2452126, 2452127, 2452133, 2452134, 2452140, 2452141, 2452147, 2452148, 2452154, 2452155, 2452161, 2452162, 2452168, 2452169, 2452175, 2452176, 2452182, 2452183, 2452189, 2452190, 2452196, 2452197, 2452203, 2452204, 2452210, 2452211, 2452217, 2452218, 2452224, 2452225, 2452231, 2452232, 2452238, 2452239, 2452245, 2452246, 2452252, 2452253, 2452259, 2452260, 2452266, 2452267, 2452273, 2452274, isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -89,7 +89,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [2]: [s_store_sk#11, s_city#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Brownsville,Concord,Greenville,Midway,Spring Hill]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Brownsville,Concord,Greenville,Midway,Spring Hill]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -128,7 +128,7 @@ Input [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#13, hd_dep_count#14, hd_vehicle_count#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -184,7 +184,7 @@ Input [5]: [ss_customer_sk#1, ss_addr_sk#3, ss_ticket_number#5, ss_coupon_amt#6, Output [2]: [ca_address_sk#17, ca_city#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (32) FilterExecTransformer @@ -254,7 +254,7 @@ Input [5]: [ss_ticket_number#5, ss_customer_sk#1, bought_city#25, amt#26, profit Output [4]: [c_customer_sk#28, c_current_addr_sk#29, c_first_name#30, c_last_name#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (49) FilterExecTransformer @@ -352,7 +352,7 @@ ColumnarBroadcastExchange (75) Output [3]: [d_date_sk#10, d_year#36, d_dow#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_dow, [0,6]), In(d_year, [1999,2000,2001]), In(d_date_sk, [2451181,2451182,2451188,2451189,2451195,2451196,2451202,2451203,2451209,2451210,2451216,2451217,2451223,2451224,2451230,2451231,2451237,2451238,2451244,2451245,2451251,2451252,2451258,2451259,2451265,2451266,2451272,2451273,2451279,2451280,2451286,2451287,2451293,2451294,2451300,2451301,2451307,2451308,2451314,2451315,2451321,2451322,2451328,2451329,2451335,2451336,2451342,2451343,2451349,2451350,2451356,2451357,2451363,2451364,2451370,2451371,2451377,2451378,2451384,2451385,2451391,2451392,2451398,2451399,2451405,2451406,2451412,2451413,2451419,2451420,2451426,2451427,2451433,2451434,2451440,2451441,2451447,2451448,2451454,2451455,2451461,2451462,2451468,2451469,2451475,2451476,2451482,2451483,2451489,2451490,2451496,2451497,2451503,2451504,2451510,2451511,2451517,2451518,2451524,2451525,2451531,2451532,2451538,2451539,2451545,2451546,2451552,2451553,2451559,2451560,2451566,2451567,2451573,2451574,2451580,2451581,2451587,2451588,2451594,2451595,2451601,2451602,2451608,2451609,2451615,2451616,2451622,2451623,2451629,2451630,2451636,2451637,2451643,2451644,2451650,2451651,2451657,2451658,2451664,2451665,2451671,2451672,2451678,2451679,2451685,2451686,2451692,2451693,2451699,2451700,2451706,2451707,2451713,2451714,2451720,2451721,2451727,2451728,2451734,2451735,2451741,2451742,2451748,2451749,2451755,2451756,2451762,2451763,2451769,2451770,2451776,2451777,2451783,2451784,2451790,2451791,2451797,2451798,2451804,2451805,2451811,2451812,2451818,2451819,2451825,2451826,2451832,2451833,2451839,2451840,2451846,2451847,2451853,2451854,2451860,2451861,2451867,2451868,2451874,2451875,2451881,2451882,2451888,2451889,2451895,2451896,2451902,2451903,2451909,2451910,2451916,2451917,2451923,2451924,2451930,2451931,2451937,2451938,2451944,2451945,2451951,2451952,2451958,2451959,2451965,2451966,2451972,2451973,2451979,2451980,2451986,2451987,2451993,2451994,2452000,2452001,2452007,2452008,2452014,2452015,2452021,2452022,2452028,2452029,2452035,2452036,2452042,2452043,2452049,2452050,2452056,2452057,2452063,2452064,2452070,2452071,2452077,2452078,2452084,2452085,2452091,2452092,2452098,2452099,2452105,2452106,2452112,2452113,2452119,2452120,2452126,2452127,2452133,2452134,2452140,2452141,2452147,2452148,2452154,2452155,2452161,2452162,2452168,2452169,2452175,2452176,2452182,2452183,2452189,2452190,2452196,2452197,2452203,2452204,2452210,2452211,2452217,2452218,2452224,2452225,2452231,2452232,2452238,2452239,2452245,2452246,2452252,2452253,2452259,2452260,2452266,2452267,2452273,2452274]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_dow, [0,6]), *In(d_year, [1999,2000,2001]), *In(d_date_sk, [2451181,2451182,2451188,2451189,2451195,2451196,2451202,2451203,2451209,2451210,2451216,2451217,2451223,2451224,2451230,2451231,2451237,2451238,2451244,2451245,2451251,2451252,2451258,2451259,2451265,2451266,2451272,2451273,2451279,2451280,2451286,2451287,2451293,2451294,2451300,2451301,2451307,2451308,2451314,2451315,2451321,2451322,2451328,2451329,2451335,2451336,2451342,2451343,2451349,2451350,2451356,2451357,2451363,2451364,2451370,2451371,2451377,2451378,2451384,2451385,2451391,2451392,2451398,2451399,2451405,2451406,2451412,2451413,2451419,2451420,2451426,2451427,2451433,2451434,2451440,2451441,2451447,2451448,2451454,2451455,2451461,2451462,2451468,2451469,2451475,2451476,2451482,2451483,2451489,2451490,2451496,2451497,2451503,2451504,2451510,2451511,2451517,2451518,2451524,2451525,2451531,2451532,2451538,2451539,2451545,2451546,2451552,2451553,2451559,2451560,2451566,2451567,2451573,2451574,2451580,2451581,2451587,2451588,2451594,2451595,2451601,2451602,2451608,2451609,2451615,2451616,2451622,2451623,2451629,2451630,2451636,2451637,2451643,2451644,2451650,2451651,2451657,2451658,2451664,2451665,2451671,2451672,2451678,2451679,2451685,2451686,2451692,2451693,2451699,2451700,2451706,2451707,2451713,2451714,2451720,2451721,2451727,2451728,2451734,2451735,2451741,2451742,2451748,2451749,2451755,2451756,2451762,2451763,2451769,2451770,2451776,2451777,2451783,2451784,2451790,2451791,2451797,2451798,2451804,2451805,2451811,2451812,2451818,2451819,2451825,2451826,2451832,2451833,2451839,2451840,2451846,2451847,2451853,2451854,2451860,2451861,2451867,2451868,2451874,2451875,2451881,2451882,2451888,2451889,2451895,2451896,2451902,2451903,2451909,2451910,2451916,2451917,2451923,2451924,2451930,2451931,2451937,2451938,2451944,2451945,2451951,2451952,2451958,2451959,2451965,2451966,2451972,2451973,2451979,2451980,2451986,2451987,2451993,2451994,2452000,2452001,2452007,2452008,2452014,2452015,2452021,2452022,2452028,2452029,2452035,2452036,2452042,2452043,2452049,2452050,2452056,2452057,2452063,2452064,2452070,2452071,2452077,2452078,2452084,2452085,2452091,2452092,2452098,2452099,2452105,2452106,2452112,2452113,2452119,2452120,2452126,2452127,2452133,2452134,2452140,2452141,2452147,2452148,2452154,2452155,2452161,2452162,2452168,2452169,2452175,2452176,2452182,2452183,2452189,2452190,2452196,2452197,2452203,2452204,2452210,2452211,2452217,2452218,2452224,2452225,2452231,2452232,2452238,2452239,2452245,2452246,2452252,2452253,2452259,2452260,2452266,2452267,2452273,2452274]), *IsNotNull(d_date_sk)] ReadSchema: struct (72) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46/explain.txt index 8c7abf2d9ea..39f5413cf05 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46/explain.txt @@ -51,7 +51,7 @@ Output [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [ss_sold_date_sk#8 INSET 2451181, 2451182, 2451188, 2451189, 2451195, 2451196, 2451202, 2451203, 2451209, 2451210, 2451216, 2451217, 2451223, 2451224, 2451230, 2451231, 2451237, 2451238, 2451244, 2451245, 2451251, 2451252, 2451258, 2451259, 2451265, 2451266, 2451272, 2451273, 2451279, 2451280, 2451286, 2451287, 2451293, 2451294, 2451300, 2451301, 2451307, 2451308, 2451314, 2451315, 2451321, 2451322, 2451328, 2451329, 2451335, 2451336, 2451342, 2451343, 2451349, 2451350, 2451356, 2451357, 2451363, 2451364, 2451370, 2451371, 2451377, 2451378, 2451384, 2451385, 2451391, 2451392, 2451398, 2451399, 2451405, 2451406, 2451412, 2451413, 2451419, 2451420, 2451426, 2451427, 2451433, 2451434, 2451440, 2451441, 2451447, 2451448, 2451454, 2451455, 2451461, 2451462, 2451468, 2451469, 2451475, 2451476, 2451482, 2451483, 2451489, 2451490, 2451496, 2451497, 2451503, 2451504, 2451510, 2451511, 2451517, 2451518, 2451524, 2451525, 2451531, 2451532, 2451538, 2451539, 2451545, 2451546, 2451552, 2451553, 2451559, 2451560, 2451566, 2451567, 2451573, 2451574, 2451580, 2451581, 2451587, 2451588, 2451594, 2451595, 2451601, 2451602, 2451608, 2451609, 2451615, 2451616, 2451622, 2451623, 2451629, 2451630, 2451636, 2451637, 2451643, 2451644, 2451650, 2451651, 2451657, 2451658, 2451664, 2451665, 2451671, 2451672, 2451678, 2451679, 2451685, 2451686, 2451692, 2451693, 2451699, 2451700, 2451706, 2451707, 2451713, 2451714, 2451720, 2451721, 2451727, 2451728, 2451734, 2451735, 2451741, 2451742, 2451748, 2451749, 2451755, 2451756, 2451762, 2451763, 2451769, 2451770, 2451776, 2451777, 2451783, 2451784, 2451790, 2451791, 2451797, 2451798, 2451804, 2451805, 2451811, 2451812, 2451818, 2451819, 2451825, 2451826, 2451832, 2451833, 2451839, 2451840, 2451846, 2451847, 2451853, 2451854, 2451860, 2451861, 2451867, 2451868, 2451874, 2451875, 2451881, 2451882, 2451888, 2451889, 2451895, 2451896, 2451902, 2451903, 2451909, 2451910, 2451916, 2451917, 2451923, 2451924, 2451930, 2451931, 2451937, 2451938, 2451944, 2451945, 2451951, 2451952, 2451958, 2451959, 2451965, 2451966, 2451972, 2451973, 2451979, 2451980, 2451986, 2451987, 2451993, 2451994, 2452000, 2452001, 2452007, 2452008, 2452014, 2452015, 2452021, 2452022, 2452028, 2452029, 2452035, 2452036, 2452042, 2452043, 2452049, 2452050, 2452056, 2452057, 2452063, 2452064, 2452070, 2452071, 2452077, 2452078, 2452084, 2452085, 2452091, 2452092, 2452098, 2452099, 2452105, 2452106, 2452112, 2452113, 2452119, 2452120, 2452126, 2452127, 2452133, 2452134, 2452140, 2452141, 2452147, 2452148, 2452154, 2452155, 2452161, 2452162, 2452168, 2452169, 2452175, 2452176, 2452182, 2452183, 2452189, 2452190, 2452196, 2452197, 2452203, 2452204, 2452210, 2452211, 2452217, 2452218, 2452224, 2452225, 2452231, 2452232, 2452238, 2452239, 2452245, 2452246, 2452252, 2452253, 2452259, 2452260, 2452266, 2452267, 2452273, 2452274, isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [2]: [s_store_sk#11, s_city#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Brownsville,Concord,Greenville,Midway,Spring Hill]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Brownsville,Concord,Greenville,Midway,Spring Hill]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -120,7 +120,7 @@ Input [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#13, hd_dep_count#14, hd_vehicle_count#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -159,7 +159,7 @@ Input [7]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_ticket_number#5, s Output [2]: [ca_address_sk#16, ca_city#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (27) FilterExecTransformer @@ -233,7 +233,7 @@ Input [6]: [ss_ticket_number#5, ss_customer_sk#1, ss_addr_sk#3, ca_city#17, sum( Output [4]: [c_customer_sk#30, c_current_addr_sk#31, c_first_name#32, c_last_name#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -307,7 +307,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#10, d_year#36, d_dow#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_dow, [0,6]), In(d_year, [1999,2000,2001]), In(d_date_sk, [2451181,2451182,2451188,2451189,2451195,2451196,2451202,2451203,2451209,2451210,2451216,2451217,2451223,2451224,2451230,2451231,2451237,2451238,2451244,2451245,2451251,2451252,2451258,2451259,2451265,2451266,2451272,2451273,2451279,2451280,2451286,2451287,2451293,2451294,2451300,2451301,2451307,2451308,2451314,2451315,2451321,2451322,2451328,2451329,2451335,2451336,2451342,2451343,2451349,2451350,2451356,2451357,2451363,2451364,2451370,2451371,2451377,2451378,2451384,2451385,2451391,2451392,2451398,2451399,2451405,2451406,2451412,2451413,2451419,2451420,2451426,2451427,2451433,2451434,2451440,2451441,2451447,2451448,2451454,2451455,2451461,2451462,2451468,2451469,2451475,2451476,2451482,2451483,2451489,2451490,2451496,2451497,2451503,2451504,2451510,2451511,2451517,2451518,2451524,2451525,2451531,2451532,2451538,2451539,2451545,2451546,2451552,2451553,2451559,2451560,2451566,2451567,2451573,2451574,2451580,2451581,2451587,2451588,2451594,2451595,2451601,2451602,2451608,2451609,2451615,2451616,2451622,2451623,2451629,2451630,2451636,2451637,2451643,2451644,2451650,2451651,2451657,2451658,2451664,2451665,2451671,2451672,2451678,2451679,2451685,2451686,2451692,2451693,2451699,2451700,2451706,2451707,2451713,2451714,2451720,2451721,2451727,2451728,2451734,2451735,2451741,2451742,2451748,2451749,2451755,2451756,2451762,2451763,2451769,2451770,2451776,2451777,2451783,2451784,2451790,2451791,2451797,2451798,2451804,2451805,2451811,2451812,2451818,2451819,2451825,2451826,2451832,2451833,2451839,2451840,2451846,2451847,2451853,2451854,2451860,2451861,2451867,2451868,2451874,2451875,2451881,2451882,2451888,2451889,2451895,2451896,2451902,2451903,2451909,2451910,2451916,2451917,2451923,2451924,2451930,2451931,2451937,2451938,2451944,2451945,2451951,2451952,2451958,2451959,2451965,2451966,2451972,2451973,2451979,2451980,2451986,2451987,2451993,2451994,2452000,2452001,2452007,2452008,2452014,2452015,2452021,2452022,2452028,2452029,2452035,2452036,2452042,2452043,2452049,2452050,2452056,2452057,2452063,2452064,2452070,2452071,2452077,2452078,2452084,2452085,2452091,2452092,2452098,2452099,2452105,2452106,2452112,2452113,2452119,2452120,2452126,2452127,2452133,2452134,2452140,2452141,2452147,2452148,2452154,2452155,2452161,2452162,2452168,2452169,2452175,2452176,2452182,2452183,2452189,2452190,2452196,2452197,2452203,2452204,2452210,2452211,2452217,2452218,2452224,2452225,2452231,2452232,2452238,2452239,2452245,2452246,2452252,2452253,2452259,2452260,2452266,2452267,2452273,2452274]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_dow, [0,6]), *In(d_year, [1999,2000,2001]), *In(d_date_sk, [2451181,2451182,2451188,2451189,2451195,2451196,2451202,2451203,2451209,2451210,2451216,2451217,2451223,2451224,2451230,2451231,2451237,2451238,2451244,2451245,2451251,2451252,2451258,2451259,2451265,2451266,2451272,2451273,2451279,2451280,2451286,2451287,2451293,2451294,2451300,2451301,2451307,2451308,2451314,2451315,2451321,2451322,2451328,2451329,2451335,2451336,2451342,2451343,2451349,2451350,2451356,2451357,2451363,2451364,2451370,2451371,2451377,2451378,2451384,2451385,2451391,2451392,2451398,2451399,2451405,2451406,2451412,2451413,2451419,2451420,2451426,2451427,2451433,2451434,2451440,2451441,2451447,2451448,2451454,2451455,2451461,2451462,2451468,2451469,2451475,2451476,2451482,2451483,2451489,2451490,2451496,2451497,2451503,2451504,2451510,2451511,2451517,2451518,2451524,2451525,2451531,2451532,2451538,2451539,2451545,2451546,2451552,2451553,2451559,2451560,2451566,2451567,2451573,2451574,2451580,2451581,2451587,2451588,2451594,2451595,2451601,2451602,2451608,2451609,2451615,2451616,2451622,2451623,2451629,2451630,2451636,2451637,2451643,2451644,2451650,2451651,2451657,2451658,2451664,2451665,2451671,2451672,2451678,2451679,2451685,2451686,2451692,2451693,2451699,2451700,2451706,2451707,2451713,2451714,2451720,2451721,2451727,2451728,2451734,2451735,2451741,2451742,2451748,2451749,2451755,2451756,2451762,2451763,2451769,2451770,2451776,2451777,2451783,2451784,2451790,2451791,2451797,2451798,2451804,2451805,2451811,2451812,2451818,2451819,2451825,2451826,2451832,2451833,2451839,2451840,2451846,2451847,2451853,2451854,2451860,2451861,2451867,2451868,2451874,2451875,2451881,2451882,2451888,2451889,2451895,2451896,2451902,2451903,2451909,2451910,2451916,2451917,2451923,2451924,2451930,2451931,2451937,2451938,2451944,2451945,2451951,2451952,2451958,2451959,2451965,2451966,2451972,2451973,2451979,2451980,2451986,2451987,2451993,2451994,2452000,2452001,2452007,2452008,2452014,2452015,2452021,2452022,2452028,2452029,2452035,2452036,2452042,2452043,2452049,2452050,2452056,2452057,2452063,2452064,2452070,2452071,2452077,2452078,2452084,2452085,2452091,2452092,2452098,2452099,2452105,2452106,2452112,2452113,2452119,2452120,2452126,2452127,2452133,2452134,2452140,2452141,2452147,2452148,2452154,2452155,2452161,2452162,2452168,2452169,2452175,2452176,2452182,2452183,2452189,2452190,2452196,2452197,2452203,2452204,2452210,2452211,2452217,2452218,2452224,2452225,2452231,2452232,2452238,2452239,2452245,2452246,2452252,2452253,2452259,2452260,2452266,2452267,2452273,2452274]), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52.sf100/explain.txt index ac165d0f384..eb3c695c21e 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52.sf100/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,12), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2451149), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,12), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2451149), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -60,7 +60,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2451149), (ss_sold_date_sk#6 <= 2451179), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_d Output [4]: [i_item_sk#8, i_brand_id#9, i_brand#10, i_manager_id#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52/explain.txt index fc87d04c0b2..f28ff1a80f5 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,12), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2451149), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,12), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2451149), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2451149), (ss_sold_date_sk#6 <= 2451179), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_d Output [4]: [i_item_sk#7, i_brand_id#8, i_brand#9, i_manager_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53.sf100/explain.txt index 31163ade363..4ff89c899fe 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53.sf100/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -70,7 +70,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), (ss_sold_date_sk#13 >= 2451911), (ss_sold_date_sk#13 <= 2452275), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -91,7 +91,7 @@ Input [6]: [i_item_sk#1, i_manufact_id#5, ss_item_sk#10, ss_store_sk#11, ss_sale Output [1]: [s_store_sk#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#16, d_month_seq#27, d_qoy#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223]), GreaterThanOrEqual(d_date_sk,2451911), LessThanOrEqual(d_date_sk,2452275), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223]), *GreaterThanOrEqual(d_date_sk,2451911), *LessThanOrEqual(d_date_sk,2452275), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53/explain.txt index b1eb038080c..8fdab480e23 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -56,7 +56,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), (ss_sold_date_sk#13 >= 2451911), (ss_sold_date_sk#13 <= 2452275), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -110,7 +110,7 @@ Input [6]: [i_manufact_id#5, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk# Output [1]: [s_store_sk#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#15, d_month_seq#27, d_qoy#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223]), GreaterThanOrEqual(d_date_sk,2451911), LessThanOrEqual(d_date_sk,2452275), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223]), *GreaterThanOrEqual(d_date_sk,2451911), *LessThanOrEqual(d_date_sk,2452275), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55.sf100/explain.txt index 3dd1459a56b..14f4b45d4ba 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55.sf100/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,2001), GreaterThanOrEqual(d_date_sk,2452215), LessThanOrEqual(d_date_sk,2452244), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,2001), *GreaterThanOrEqual(d_date_sk,2452215), *LessThanOrEqual(d_date_sk,2452244), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -60,7 +60,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2452215), (ss_sold_date_sk#6 <= 2452244), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -81,7 +81,7 @@ Input [4]: [d_date_sk#1, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Output [4]: [i_item_sk#8, i_brand_id#9, i_brand#10, i_manager_id#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,48), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,48), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55/explain.txt index 8c0bd7efaf4..69918d58da3 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,2001), GreaterThanOrEqual(d_date_sk,2452215), LessThanOrEqual(d_date_sk,2452244), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,2001), *GreaterThanOrEqual(d_date_sk,2452215), *LessThanOrEqual(d_date_sk,2452244), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2452215), (ss_sold_date_sk#6 <= 2452244), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [4]: [d_date_sk#1, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Output [4]: [i_item_sk#7, i_brand_id#8, i_brand#9, i_manager_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,48), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,48), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59.sf100/explain.txt index fafd756172b..9a1e375908f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59.sf100/explain.txt @@ -68,7 +68,7 @@ Output [3]: [ss_store_sk#1, ss_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -79,7 +79,7 @@ Arguments: isnotnull(ss_store_sk#1) Output [3]: [d_date_sk#4, d_week_seq#5, d_day_name#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (4) FilterExecTransformer @@ -153,7 +153,7 @@ Input [9]: [d_week_seq#5, ss_store_sk#1, sum(UnscaledValue(CASE WHEN (d_day_name Output [3]: [s_store_sk#44, s_store_id#45, s_store_name#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (21) FilterExecTransformer @@ -188,7 +188,7 @@ Input [12]: [d_week_seq#5, ss_store_sk#1, sun_sales#37, mon_sales#38, tue_sales# Output [2]: [d_month_seq#47, d_week_seq#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1185), LessThanOrEqual(d_month_seq,1196), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1185), *LessThanOrEqual(d_month_seq,1196), *IsNotNull(d_week_seq)] ReadSchema: struct (29) FilterExecTransformer @@ -228,7 +228,7 @@ Output [3]: [ss_store_sk#59, ss_sales_price#60, ss_sold_date_sk#61] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#61)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -239,7 +239,7 @@ Arguments: isnotnull(ss_store_sk#59) Output [3]: [d_date_sk#62, d_week_seq#63, d_day_name#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (40) FilterExecTransformer @@ -313,7 +313,7 @@ Input [8]: [d_week_seq#63, ss_store_sk#59, sum(UnscaledValue(CASE WHEN (d_day_na Output [2]: [s_store_sk#91, s_store_id#92] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (57) FilterExecTransformer @@ -348,7 +348,7 @@ Input [10]: [d_week_seq#63, ss_store_sk#59, sun_sales#85, mon_sales#86, wed_sale Output [2]: [d_month_seq#93, d_week_seq#94] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1197), LessThanOrEqual(d_month_seq,1208), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1197), *LessThanOrEqual(d_month_seq,1208), *IsNotNull(d_week_seq)] ReadSchema: struct (65) FilterExecTransformer @@ -436,7 +436,7 @@ VeloxColumnarToRow (93) Output [2]: [d_month_seq#47, d_week_seq#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1185), LessThanOrEqual(d_month_seq,1196), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1185), *LessThanOrEqual(d_month_seq,1196), *IsNotNull(d_week_seq)] ReadSchema: struct (83) FilterExecTransformer @@ -513,7 +513,7 @@ VeloxColumnarToRow (105) Output [2]: [d_month_seq#93, d_week_seq#94] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1197), LessThanOrEqual(d_month_seq,1208), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1197), *LessThanOrEqual(d_month_seq,1208), *IsNotNull(d_week_seq)] ReadSchema: struct (95) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59/explain.txt index e9e67d1faee..9b437066b94 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59/explain.txt @@ -66,7 +66,7 @@ Output [3]: [ss_store_sk#1, ss_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Arguments: isnotnull(ss_store_sk#1) Output [3]: [d_date_sk#4, d_week_seq#5, d_day_name#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (4) FilterExecTransformer @@ -151,7 +151,7 @@ Input [9]: [d_week_seq#5, ss_store_sk#1, sum(UnscaledValue(CASE WHEN (d_day_name Output [3]: [s_store_sk#43, s_store_id#44, s_store_name#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (21) FilterExecTransformer @@ -186,7 +186,7 @@ Input [12]: [d_week_seq#5, ss_store_sk#1, sun_sales#36, mon_sales#37, tue_sales# Output [2]: [d_month_seq#46, d_week_seq#47] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1185), LessThanOrEqual(d_month_seq,1196), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1185), *LessThanOrEqual(d_month_seq,1196), *IsNotNull(d_week_seq)] ReadSchema: struct (29) FilterExecTransformer @@ -226,7 +226,7 @@ Output [3]: [ss_store_sk#58, ss_sales_price#59, ss_sold_date_sk#60] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#60)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -295,7 +295,7 @@ Input [8]: [d_week_seq#62, ss_store_sk#58, sum(UnscaledValue(CASE WHEN (d_day_na Output [2]: [s_store_sk#89, s_store_id#90] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (54) FilterExecTransformer @@ -330,7 +330,7 @@ Input [10]: [d_week_seq#62, ss_store_sk#58, sun_sales#83, mon_sales#84, wed_sale Output [2]: [d_month_seq#91, d_week_seq#92] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1197), LessThanOrEqual(d_month_seq,1208), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1197), *LessThanOrEqual(d_month_seq,1208), *IsNotNull(d_week_seq)] ReadSchema: struct (62) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63.sf100/explain.txt index 225fe78e4ff..72259564905 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63.sf100/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manager_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -70,7 +70,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), (ss_sold_date_sk#13 >= 2452123), (ss_sold_date_sk#13 <= 2452487), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -91,7 +91,7 @@ Input [6]: [i_item_sk#1, i_manager_id#5, ss_item_sk#10, ss_store_sk#11, ss_sales Output [1]: [s_store_sk#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#16, d_month_seq#27, d_moy#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230]), GreaterThanOrEqual(d_date_sk,2452123), LessThanOrEqual(d_date_sk,2452487), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230]), *GreaterThanOrEqual(d_date_sk,2452123), *LessThanOrEqual(d_date_sk,2452487), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63/explain.txt index 75fc059a59f..b56b4d77722 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manager_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -56,7 +56,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), (ss_sold_date_sk#13 >= 2452123), (ss_sold_date_sk#13 <= 2452487), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -110,7 +110,7 @@ Input [6]: [i_manager_id#5, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Output [1]: [s_store_sk#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#15, d_month_seq#27, d_moy#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230]), GreaterThanOrEqual(d_date_sk,2452123), LessThanOrEqual(d_date_sk,2452487), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230]), *GreaterThanOrEqual(d_date_sk,2452123), *LessThanOrEqual(d_date_sk,2452487), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65.sf100/explain.txt index 116863bd01c..61555f167ec 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65.sf100/explain.txt @@ -58,7 +58,7 @@ Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), (ss_sold_date_sk#4 >= 2451911), (ss_sold_date_sk#4 <= 2452275), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -132,7 +132,7 @@ Output [4]: [ss_item_sk#13, ss_store_sk#14, ss_sales_price#15, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#16), (ss_sold_date_sk#16 >= 2451911), (ss_sold_date_sk#16 <= 2452275), dynamicpruningexpression(ss_sold_date_sk#16 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (19) FilterExecTransformer @@ -278,7 +278,7 @@ Input [3]: [ss_store_sk#2, ss_item_sk#1, revenue#12] Output [2]: [s_store_sk#31, s_store_name#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (54) FilterExecTransformer @@ -313,7 +313,7 @@ Input [3]: [ss_item_sk#1, revenue#12, s_store_name#32] Output [5]: [i_item_sk#33, i_item_desc#34, i_current_price#35, i_wholesale_cost#36, i_brand#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -354,7 +354,7 @@ ColumnarBroadcastExchange (72) Output [2]: [d_date_sk#6, d_month_seq#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), GreaterThanOrEqual(d_date_sk,2451911), LessThanOrEqual(d_date_sk,2452275), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *GreaterThanOrEqual(d_date_sk,2451911), *LessThanOrEqual(d_date_sk,2452275), *IsNotNull(d_date_sk)] ReadSchema: struct (69) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65/explain.txt index 5d9458fba36..fbdbb4dd088 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65/explain.txt @@ -57,7 +57,7 @@ VeloxColumnarToRow (67) Output [2]: [s_store_sk#1, s_store_name#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -69,7 +69,7 @@ Output [4]: [ss_item_sk#3, ss_store_sk#4, ss_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2451911), (ss_sold_date_sk#6 <= 2452275), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -166,7 +166,7 @@ Input [5]: [s_store_sk#1, s_store_name#2, ss_store_sk#4, ss_item_sk#3, revenue#1 Output [5]: [i_item_sk#15, i_item_desc#16, i_current_price#17, i_wholesale_cost#18, i_brand#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -202,7 +202,7 @@ Output [4]: [ss_item_sk#20, ss_store_sk#21, ss_sales_price#22, ss_sold_date_sk#2 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#23), (ss_sold_date_sk#23 >= 2451911), (ss_sold_date_sk#23 <= 2452275), dynamicpruningexpression(ss_sold_date_sk#23 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -354,7 +354,7 @@ ColumnarBroadcastExchange (72) Output [2]: [d_date_sk#8, d_month_seq#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), GreaterThanOrEqual(d_date_sk,2451911), LessThanOrEqual(d_date_sk,2452275), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *GreaterThanOrEqual(d_date_sk,2451911), *LessThanOrEqual(d_date_sk,2452275), *IsNotNull(d_date_sk)] ReadSchema: struct (69) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68.sf100/explain.txt index 77edc9fea3e..08f3ad5ff75 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68.sf100/explain.txt @@ -58,7 +58,7 @@ Output [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [ss_sold_date_sk#9 INSET 2451180, 2451181, 2451211, 2451212, 2451239, 2451240, 2451270, 2451271, 2451300, 2451301, 2451331, 2451332, 2451361, 2451362, 2451392, 2451393, 2451423, 2451424, 2451453, 2451454, 2451484, 2451485, 2451514, 2451515, 2451545, 2451546, 2451576, 2451577, 2451605, 2451606, 2451636, 2451637, 2451666, 2451667, 2451697, 2451698, 2451727, 2451728, 2451758, 2451759, 2451789, 2451790, 2451819, 2451820, 2451850, 2451851, 2451880, 2451881, 2451911, 2451912, 2451942, 2451943, 2451970, 2451971, 2452001, 2452002, 2452031, 2452032, 2452062, 2452063, 2452092, 2452093, 2452123, 2452124, 2452154, 2452155, 2452184, 2452185, 2452215, 2452216, 2452245, 2452246, isnotnull(ss_sold_date_sk#9), dynamicpruningexpression(ss_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -88,7 +88,7 @@ Input [10]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Output [2]: [s_store_sk#12, s_city#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Fairview,Midway]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Fairview,Midway]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -127,7 +127,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#14, hd_dep_count#15, hd_vehicle_count#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -180,7 +180,7 @@ Input [6]: [ss_customer_sk#1, ss_addr_sk#3, ss_ticket_number#5, ss_ext_sales_pri Output [2]: [ca_address_sk#17, ca_city#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (31) FilterExecTransformer @@ -254,7 +254,7 @@ Input [6]: [ss_ticket_number#5, ss_customer_sk#1, bought_city#32, extended_price Output [4]: [c_customer_sk#36, c_current_addr_sk#37, c_first_name#38, c_last_name#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (48) FilterExecTransformer @@ -292,7 +292,7 @@ Input [8]: [ss_ticket_number#5, bought_city#32, extended_price#33, list_price#34 Output [2]: [ca_address_sk#41, ca_city#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (57) FilterExecTransformer @@ -354,7 +354,7 @@ ColumnarBroadcastExchange (73) Output [3]: [d_date_sk#11, d_year#44, d_dom#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1999,2000,2001]), In(d_date_sk, [2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881,2451911,2451912,2451942,2451943,2451970,2451971,2452001,2452002,2452031,2452032,2452062,2452063,2452092,2452093,2452123,2452124,2452154,2452155,2452184,2452185,2452215,2452216,2452245,2452246]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1999,2000,2001]), *In(d_date_sk, [2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881,2451911,2451912,2451942,2451943,2451970,2451971,2452001,2452002,2452031,2452032,2452062,2452063,2452092,2452093,2452123,2452124,2452154,2452155,2452184,2452185,2452215,2452216,2452245,2452246]), *IsNotNull(d_date_sk)] ReadSchema: struct (70) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68/explain.txt index c63591aef0e..05f20a07e60 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68/explain.txt @@ -51,7 +51,7 @@ Output [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [ss_sold_date_sk#9 INSET 2451180, 2451181, 2451211, 2451212, 2451239, 2451240, 2451270, 2451271, 2451300, 2451301, 2451331, 2451332, 2451361, 2451362, 2451392, 2451393, 2451423, 2451424, 2451453, 2451454, 2451484, 2451485, 2451514, 2451515, 2451545, 2451546, 2451576, 2451577, 2451605, 2451606, 2451636, 2451637, 2451666, 2451667, 2451697, 2451698, 2451727, 2451728, 2451758, 2451759, 2451789, 2451790, 2451819, 2451820, 2451850, 2451851, 2451880, 2451881, 2451911, 2451912, 2451942, 2451943, 2451970, 2451971, 2452001, 2452002, 2452031, 2452032, 2452062, 2452063, 2452092, 2452093, 2452123, 2452124, 2452154, 2452155, 2452184, 2452185, 2452215, 2452216, 2452245, 2452246, isnotnull(ss_sold_date_sk#9), dynamicpruningexpression(ss_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Input [10]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Output [2]: [s_store_sk#12, s_city#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Fairview,Midway]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Fairview,Midway]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -120,7 +120,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#14, hd_dep_count#15, hd_vehicle_count#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -159,7 +159,7 @@ Input [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_ticket_number#5, s Output [2]: [ca_address_sk#17, ca_city#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (27) FilterExecTransformer @@ -233,7 +233,7 @@ Input [7]: [ss_ticket_number#5, ss_customer_sk#1, ss_addr_sk#3, ca_city#18, sum( Output [4]: [c_customer_sk#36, c_current_addr_sk#37, c_first_name#38, c_last_name#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -307,7 +307,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#11, d_year#42, d_dom#43] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1999,2000,2001]), In(d_date_sk, [2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881,2451911,2451912,2451942,2451943,2451970,2451971,2452001,2452002,2452031,2452032,2452062,2452063,2452092,2452093,2452123,2452124,2452154,2452155,2452184,2452185,2452215,2452216,2452245,2452246]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1999,2000,2001]), *In(d_date_sk, [2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881,2451911,2451912,2451942,2451943,2451970,2451971,2452001,2452002,2452031,2452032,2452062,2452063,2452092,2452093,2452123,2452124,2452154,2452155,2452184,2452185,2452215,2452216,2452245,2452246]), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7.sf100/explain.txt index 0cab4449984..1d83279edd6 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7.sf100/explain.txt @@ -41,7 +41,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_promo_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2450815), (ss_sold_date_sk#8 <= 2451179), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -71,7 +71,7 @@ Input [9]: [ss_item_sk#1, ss_cdemo_sk#2, ss_promo_sk#3, ss_quantity#4, ss_list_p Output [3]: [p_promo_sk#11, p_channel_email#12, p_channel_event#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), *IsNotNull(p_promo_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -110,7 +110,7 @@ Input [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_promo_sk#3, ss_quantity#4, ss_list_p Output [4]: [cd_demo_sk#14, cd_gender#15, cd_marital_status#16, cd_education_status#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_marital_status,W), EqualTo(cd_education_status,Primary ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_marital_status,W), *EqualTo(cd_education_status,Primary ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -149,7 +149,7 @@ Input [7]: [ss_item_sk#1, ss_cdemo_sk#2, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#18, i_item_id#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [2]: [d_date_sk#10, d_year#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2450815), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2450815), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7/explain.txt index b5e742a205f..601332220fc 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7/explain.txt @@ -41,7 +41,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_promo_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2450815), (ss_sold_date_sk#8 <= 2451179), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_item_sk#1)) AND isnotnull Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_marital_status,W), EqualTo(cd_education_status,Primary ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_marital_status,W), *EqualTo(cd_education_status,Primary ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -110,7 +110,7 @@ Input [8]: [ss_item_sk#1, ss_promo_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#15, i_item_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -145,7 +145,7 @@ Input [8]: [ss_item_sk#1, ss_promo_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [3]: [p_promo_sk#17, p_channel_email#18, p_channel_event#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), *IsNotNull(p_promo_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [2]: [d_date_sk#14, d_year#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2450815), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2450815), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73.sf100/explain.txt index 54dc5bd0c7c..891004fd4b1 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73.sf100/explain.txt @@ -44,7 +44,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [ss_sold_date_sk#5 INSET 2450815, 2450816, 2450846, 2450847, 2450874, 2450875, 2450905, 2450906, 2450935, 2450936, 2450966, 2450967, 2450996, 2450997, 2451027, 2451028, 2451058, 2451059, 2451088, 2451089, 2451119, 2451120, 2451149, 2451150, 2451180, 2451181, 2451211, 2451212, 2451239, 2451240, 2451270, 2451271, 2451300, 2451301, 2451331, 2451332, 2451361, 2451362, 2451392, 2451393, 2451423, 2451424, 2451453, 2451454, 2451484, 2451485, 2451514, 2451515, 2451545, 2451546, 2451576, 2451577, 2451605, 2451606, 2451636, 2451637, 2451666, 2451667, 2451697, 2451698, 2451727, 2451728, 2451758, 2451759, 2451789, 2451790, 2451819, 2451820, 2451850, 2451851, 2451880, 2451881, isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_county, [Barrow County,Bronx County,Fairfield County,Ziebach County]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_county, [Barrow County,Bronx County,Fairfield County,Ziebach County]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -113,7 +113,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -205,7 +205,7 @@ Input [3]: [ss_ticket_number#4, ss_customer_sk#1, cnt#18] Output [5]: [c_customer_sk#19, c_salutation#20, c_first_name#21, c_last_name#22, c_preferred_cust_flag#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -263,7 +263,7 @@ ColumnarBroadcastExchange (55) Output [3]: [d_date_sk#7, d_year#24, d_dom#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1998,1999,2000]), In(d_date_sk, [2450815,2450816,2450846,2450847,2450874,2450875,2450905,2450906,2450935,2450936,2450966,2450967,2450996,2450997,2451027,2451028,2451058,2451059,2451088,2451089,2451119,2451120,2451149,2451150,2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1998,1999,2000]), *In(d_date_sk, [2450815,2450816,2450846,2450847,2450874,2450875,2450905,2450906,2450935,2450936,2450966,2450967,2450996,2450997,2451027,2451028,2451058,2451059,2451088,2451089,2451119,2451120,2451149,2451150,2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881]), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73/explain.txt index fb70c406e75..f0fa098fb1c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73/explain.txt @@ -44,7 +44,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [ss_sold_date_sk#5 INSET 2450815, 2450816, 2450846, 2450847, 2450874, 2450875, 2450905, 2450906, 2450935, 2450936, 2450966, 2450967, 2450996, 2450997, 2451027, 2451028, 2451058, 2451059, 2451088, 2451089, 2451119, 2451120, 2451149, 2451150, 2451180, 2451181, 2451211, 2451212, 2451239, 2451240, 2451270, 2451271, 2451300, 2451301, 2451331, 2451332, 2451361, 2451362, 2451392, 2451393, 2451423, 2451424, 2451453, 2451454, 2451484, 2451485, 2451514, 2451515, 2451545, 2451546, 2451576, 2451577, 2451605, 2451606, 2451636, 2451637, 2451666, 2451667, 2451697, 2451698, 2451727, 2451728, 2451758, 2451759, 2451789, 2451790, 2451819, 2451820, 2451850, 2451851, 2451880, 2451881, isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_county, [Barrow County,Bronx County,Fairfield County,Ziebach County]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_county, [Barrow County,Bronx County,Fairfield County,Ziebach County]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -113,7 +113,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -191,7 +191,7 @@ Arguments: ((cnt#18 >= 1) AND (cnt#18 <= 5)) Output [5]: [c_customer_sk#19, c_salutation#20, c_first_name#21, c_last_name#22, c_preferred_cust_flag#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -263,7 +263,7 @@ ColumnarBroadcastExchange (55) Output [3]: [d_date_sk#7, d_year#24, d_dom#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1998,1999,2000]), In(d_date_sk, [2450815,2450816,2450846,2450847,2450874,2450875,2450905,2450906,2450935,2450936,2450966,2450967,2450996,2450997,2451027,2451028,2451058,2451059,2451088,2451089,2451119,2451120,2451149,2451150,2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1998,1999,2000]), *In(d_date_sk, [2450815,2450816,2450846,2450847,2450874,2450875,2450905,2450906,2450935,2450936,2450966,2450967,2450996,2450997,2451027,2451028,2451058,2451059,2451088,2451089,2451119,2451120,2451149,2451150,2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881]), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79.sf100/explain.txt index ca7e41d5356..83ee516cb93 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79.sf100/explain.txt @@ -46,7 +46,7 @@ Output [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2450819), (ss_sold_date_sk#8 <= 2451904), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,8),GreaterThan(hd_vehicle_count,0)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,8),GreaterThan(hd_vehicle_count,0)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -115,7 +115,7 @@ Input [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [s_store_sk#14, s_number_employees#15, s_city#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_number_employees), GreaterThanOrEqual(s_number_employees,200), LessThanOrEqual(s_number_employees,295), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_number_employees), *GreaterThanOrEqual(s_number_employees,200), *LessThanOrEqual(s_number_employees,295), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -210,7 +210,7 @@ Input [5]: [ss_ticket_number#5, ss_customer_sk#1, s_city#16, amt#27, profit#28] Output [3]: [c_customer_sk#29, c_first_name#30, c_last_name#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -272,7 +272,7 @@ ColumnarBroadcastExchange (57) Output [3]: [d_date_sk#10, d_year#35, d_dow#36] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dow), EqualTo(d_dow,1), In(d_year, [1998,1999,2000]), GreaterThanOrEqual(d_date_sk,2450819), LessThanOrEqual(d_date_sk,2451904), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dow), *EqualTo(d_dow,1), *In(d_year, [1998,1999,2000]), *GreaterThanOrEqual(d_date_sk,2450819), *LessThanOrEqual(d_date_sk,2451904), *IsNotNull(d_date_sk)] ReadSchema: struct (54) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79/explain.txt index e9a633ea04e..b59caf8beba 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79/explain.txt @@ -41,7 +41,7 @@ Output [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2450819), (ss_sold_date_sk#8 <= 2451904), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -71,7 +71,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [s_store_sk#11, s_number_employees#12, s_city#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_number_employees), GreaterThanOrEqual(s_number_employees,200), LessThanOrEqual(s_number_employees,295), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_number_employees), *GreaterThanOrEqual(s_number_employees,200), *LessThanOrEqual(s_number_employees,295), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -110,7 +110,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#14, hd_dep_count#15, hd_vehicle_count#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,8),GreaterThan(hd_vehicle_count,0)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,8),GreaterThan(hd_vehicle_count,0)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -188,7 +188,7 @@ Input [6]: [ss_ticket_number#5, ss_customer_sk#1, ss_addr_sk#3, s_city#13, sum(U Output [3]: [c_customer_sk#28, c_first_name#29, c_last_name#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#10, d_year#33, d_dow#34] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dow), EqualTo(d_dow,1), In(d_year, [1998,1999,2000]), GreaterThanOrEqual(d_date_sk,2450819), LessThanOrEqual(d_date_sk,2451904), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dow), *EqualTo(d_dow,1), *In(d_year, [1998,1999,2000]), *GreaterThanOrEqual(d_date_sk,2450819), *LessThanOrEqual(d_date_sk,2451904), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89.sf100/explain.txt index c3ffdcaa96f..d80a9638c17 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89.sf100/explain.txt @@ -40,7 +40,7 @@ Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), (ss_sold_date_sk#4 >= 2451545), (ss_sold_date_sk#4 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -70,7 +70,7 @@ Input [6]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4, d_ Output [3]: [s_store_sk#8, s_store_name#9, s_company_name#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -105,7 +105,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, d_moy#7, s_store_sk#8 Output [4]: [i_item_sk#11, i_brand#12, i_class#13, i_category#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(In(i_category, [Books ,Electronics ,Home ]),In(i_class, [musical ,parenting ,wallpaper ])),And(In(i_category, [Jewelry ,Men ,Shoes ]),In(i_class, [birdal ,pants ,womens ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(In(i_category, [Books ,Electronics ,Home ]),In(i_class, [musical ,parenting ,wallpaper ])),And(In(i_category, [Jewelry ,Men ,Shoes ]),In(i_class, [birdal ,pants ,womens ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -232,7 +232,7 @@ ColumnarBroadcastExchange (49) Output [3]: [d_date_sk#6, d_year#25, d_moy#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), GreaterThanOrEqual(d_date_sk,2451545), LessThanOrEqual(d_date_sk,2451910), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *GreaterThanOrEqual(d_date_sk,2451545), *LessThanOrEqual(d_date_sk,2451910), *IsNotNull(d_date_sk)] ReadSchema: struct (46) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89/explain.txt index cea8453e072..8dc1a2f4536 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89/explain.txt @@ -39,7 +39,7 @@ VeloxColumnarToRow (44) Output [4]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(In(i_category, [Books ,Electronics ,Home ]),In(i_class, [musical ,parenting ,wallpaper ])),And(In(i_category, [Jewelry ,Men ,Shoes ]),In(i_class, [birdal ,pants ,womens ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(In(i_category, [Books ,Electronics ,Home ]),In(i_class, [musical ,parenting ,wallpaper ])),And(In(i_category, [Jewelry ,Men ,Shoes ]),In(i_class, [birdal ,pants ,womens ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Output [4]: [ss_item_sk#5, ss_store_sk#6, ss_sales_price#7, ss_sold_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2451545), (ss_sold_date_sk#8 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -105,7 +105,7 @@ Input [8]: [i_brand#2, i_class#3, i_category#4, ss_store_sk#6, ss_sales_price#7, Output [3]: [s_store_sk#12, s_store_name#13, s_company_name#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -232,7 +232,7 @@ ColumnarBroadcastExchange (49) Output [3]: [d_date_sk#10, d_year#25, d_moy#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), GreaterThanOrEqual(d_date_sk,2451545), LessThanOrEqual(d_date_sk,2451910), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *GreaterThanOrEqual(d_date_sk,2451545), *LessThanOrEqual(d_date_sk,2451910), *IsNotNull(d_date_sk)] ReadSchema: struct (46) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98.sf100/explain.txt index a204e0d5c53..38d472bf347 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98.sf100/explain.txt @@ -42,7 +42,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), (ss_sold_date_sk#3 >= 2451911), (ss_sold_date_sk#3 <= 2451941), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -89,7 +89,7 @@ Input [2]: [ss_item_sk#1, ss_ext_sales_price#2] Output [6]: [i_item_sk#7, i_item_id#8, i_item_desc#9, i_current_price#10, i_class#11, i_category#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Jewelry ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Jewelry ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -240,7 +240,7 @@ ColumnarBroadcastExchange (53) Output [2]: [d_date_sk#5, d_date#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2001-01-01), LessThanOrEqual(d_date,2001-01-31), GreaterThanOrEqual(d_date_sk,2451911), LessThanOrEqual(d_date_sk,2451941), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2001-01-01), *LessThanOrEqual(d_date,2001-01-31), *GreaterThanOrEqual(d_date_sk,2451911), *LessThanOrEqual(d_date_sk,2451941), *IsNotNull(d_date_sk)] ReadSchema: struct (50) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98/explain.txt index 52969542a64..e0cdcfd2e8d 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98/explain.txt @@ -37,7 +37,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), (ss_sold_date_sk#3 >= 2451911), (ss_sold_date_sk#3 <= 2451941), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -48,7 +48,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [6]: [i_item_sk#5, i_item_id#6, i_item_desc#7, i_current_price#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Jewelry ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Jewelry ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -211,7 +211,7 @@ ColumnarBroadcastExchange (46) Output [2]: [d_date_sk#11, d_date#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2001-01-01), LessThanOrEqual(d_date,2001-01-31), GreaterThanOrEqual(d_date_sk,2451911), LessThanOrEqual(d_date_sk,2451941), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2001-01-01), *LessThanOrEqual(d_date,2001-01-31), *GreaterThanOrEqual(d_date_sk,2451911), *LessThanOrEqual(d_date_sk,2451941), *IsNotNull(d_date_sk)] ReadSchema: struct (43) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1.sf100/explain.txt index ea016333ab6..0c35981f589 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1.sf100/explain.txt @@ -65,7 +65,7 @@ Output [4]: [sr_customer_sk#1, sr_store_sk#2, sr_return_amt#3, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#4), dynamicpruningexpression(sr_returned_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk), IsNotNull(sr_customer_sk)] +PushedFilters: [*IsNotNull(sr_store_sk), *IsNotNull(sr_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -139,7 +139,7 @@ Output [4]: [sr_customer_sk#15, sr_store_sk#16, sr_return_amt#17, sr_returned_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#18), dynamicpruningexpression(sr_returned_date_sk#18 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (19) FilterExecTransformer @@ -275,7 +275,7 @@ Input [5]: [ctr_customer_sk#12, ctr_store_sk#13, ctr_total_return#14, (avg(ctr_t Output [2]: [s_store_sk#33, s_state#34] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -331,7 +331,7 @@ Input [1]: [ctr_customer_sk#12] Output [2]: [c_customer_sk#36, c_customer_id#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (65) FilterExecTransformer @@ -393,7 +393,7 @@ ColumnarBroadcastExchange (81) Output [2]: [d_date_sk#6, d_year#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (78) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1/explain.txt index 3a95b0dda6e..88261ac4d7b 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1/explain.txt @@ -60,7 +60,7 @@ Output [4]: [sr_customer_sk#1, sr_store_sk#2, sr_return_amt#3, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#4), dynamicpruningexpression(sr_returned_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk), IsNotNull(sr_customer_sk)] +PushedFilters: [*IsNotNull(sr_store_sk), *IsNotNull(sr_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -134,7 +134,7 @@ Output [4]: [sr_customer_sk#15, sr_store_sk#16, sr_return_amt#17, sr_returned_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#18), dynamicpruningexpression(sr_returned_date_sk#18 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (19) FilterExecTransformer @@ -270,7 +270,7 @@ Input [5]: [ctr_customer_sk#12, ctr_store_sk#13, ctr_total_return#14, (avg(ctr_t Output [2]: [s_store_sk#33, s_state#34] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -309,7 +309,7 @@ Input [3]: [ctr_customer_sk#12, ctr_store_sk#13, s_store_sk#33] Output [2]: [c_customer_sk#35, c_customer_id#36] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (60) FilterExecTransformer @@ -364,7 +364,7 @@ ColumnarBroadcastExchange (74) Output [2]: [d_date_sk#6, d_year#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (71) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10.sf100/explain.txt index c17a6c29abc..fe2c59303de 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10.sf100/explain.txt @@ -67,7 +67,7 @@ VeloxColumnarToRow (82) Output [3]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -254,7 +254,7 @@ Input [5]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5, exists#2 Output [2]: [ca_address_sk#21, ca_county#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Jefferson County,La Porte County,Rush County,Toole County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Jefferson County,La Porte County,Rush County,Toole County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (48) FilterExecTransformer @@ -310,7 +310,7 @@ Input [1]: [c_current_cdemo_sk#4] Output [9]: [cd_demo_sk#24, cd_gender#25, cd_marital_status#26, cd_education_status#27, cd_purchase_estimate#28, cd_credit_rating#29, cd_dep_count#30, cd_dep_employed_count#31, cd_dep_college_count#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -416,7 +416,7 @@ VeloxColumnarToRow (94) Output [2]: [ca_address_sk#21, ca_county#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Jefferson County,La Porte County,Rush County,Toole County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Jefferson County,La Porte County,Rush County,Toole County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (84) FilterExecTransformer @@ -488,7 +488,7 @@ ColumnarBroadcastExchange (99) Output [3]: [d_date_sk#11, d_year#49, d_moy#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2002), GreaterThanOrEqual(d_moy,1), LessThanOrEqual(d_moy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2002), *GreaterThanOrEqual(d_moy,1), *LessThanOrEqual(d_moy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (96) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10/explain.txt index 89c6a5525aa..22013e08f49 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10/explain.txt @@ -55,7 +55,7 @@ VeloxColumnarToRow (66) Output [3]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -212,7 +212,7 @@ Input [5]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5, exists#2 Output [2]: [ca_address_sk#16, ca_county#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Jefferson County,La Porte County,Rush County,Toole County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Jefferson County,La Porte County,Rush County,Toole County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (39) FilterExecTransformer @@ -251,7 +251,7 @@ Input [3]: [c_current_cdemo_sk#4, c_current_addr_sk#5, ca_address_sk#16] Output [9]: [cd_demo_sk#18, cd_gender#19, cd_marital_status#20, cd_education_status#21, cd_purchase_estimate#22, cd_credit_rating#23, cd_dep_count#24, cd_dep_employed_count#25, cd_dep_college_count#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (48) FilterExecTransformer @@ -345,7 +345,7 @@ ColumnarBroadcastExchange (71) Output [3]: [d_date_sk#9, d_year#37, d_moy#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2002), GreaterThanOrEqual(d_moy,1), LessThanOrEqual(d_moy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2002), *GreaterThanOrEqual(d_moy,1), *LessThanOrEqual(d_moy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (68) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11.sf100/explain.txt index 2af9c0db7b3..a4c42206283 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11.sf100/explain.txt @@ -114,7 +114,7 @@ Output [4]: [ss_customer_sk#1, ss_ext_discount_amt#2, ss_ext_list_price#3, ss_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -161,7 +161,7 @@ Input [4]: [ss_customer_sk#1, ss_ext_discount_amt#2, ss_ext_list_price#3, d_year Output [8]: [c_customer_sk#9, c_customer_id#10, c_first_name#11, c_last_name#12, c_preferred_cust_flag#13, c_birth_country#14, c_login#15, c_email_address#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (14) FilterExecTransformer @@ -268,7 +268,7 @@ Output [4]: [ss_customer_sk#26, ss_ext_discount_amt#27, ss_ext_list_price#28, ss Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#29), dynamicpruningexpression(ss_sold_date_sk#29 IN dynamicpruning#30)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -401,7 +401,7 @@ Output [4]: [ws_bill_customer_sk#50, ws_ext_discount_amt#51, ws_ext_list_price#5 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#53), dynamicpruningexpression(ws_sold_date_sk#53 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (73) FilterExecTransformer @@ -542,7 +542,7 @@ Output [4]: [ws_bill_customer_sk#73, ws_ext_discount_amt#74, ws_ext_list_price#7 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#76), dynamicpruningexpression(ws_sold_date_sk#76 IN dynamicpruning#30)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (108) FilterExecTransformer @@ -693,7 +693,7 @@ ColumnarBroadcastExchange (146) Output [2]: [d_date_sk#6, d_year#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (144) FilterExecTransformer @@ -718,7 +718,7 @@ ColumnarBroadcastExchange (150) Output [2]: [d_date_sk#31, d_year#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (148) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11/explain.txt index 7d5de9c5764..2f1a8da4868 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11/explain.txt @@ -97,7 +97,7 @@ VeloxColumnarToRow (119) Output [8]: [c_customer_sk#1, c_customer_id#2, c_first_name#3, c_last_name#4, c_preferred_cust_flag#5, c_birth_country#6, c_login#7, c_email_address#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (2) FilterExecTransformer @@ -109,7 +109,7 @@ Output [4]: [ss_customer_sk#9, ss_ext_discount_amt#10, ss_ext_list_price#11, ss_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#12), dynamicpruningexpression(ss_sold_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -206,7 +206,7 @@ Arguments: (isnotnull(year_total#22) AND (year_total#22 > 0.00)) Output [8]: [c_customer_sk#23, c_customer_id#24, c_first_name#25, c_last_name#26, c_preferred_cust_flag#27, c_birth_country#28, c_login#29, c_email_address#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (27) FilterExecTransformer @@ -218,7 +218,7 @@ Output [4]: [ss_customer_sk#31, ss_ext_discount_amt#32, ss_ext_list_price#33, ss Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#34), dynamicpruningexpression(ss_sold_date_sk#34 IN dynamicpruning#35)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -335,7 +335,7 @@ Input [5]: [customer_id#21, year_total#22, customer_id#42, customer_preferred_cu Output [8]: [c_customer_sk#45, c_customer_id#46, c_first_name#47, c_last_name#48, c_preferred_cust_flag#49, c_birth_country#50, c_login#51, c_email_address#52] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (57) FilterExecTransformer @@ -347,7 +347,7 @@ Output [4]: [ws_bill_customer_sk#53, ws_ext_discount_amt#54, ws_ext_list_price#5 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#56), dynamicpruningexpression(ws_sold_date_sk#56 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (59) FilterExecTransformer @@ -468,7 +468,7 @@ Input [6]: [customer_id#21, year_total#22, customer_preferred_cust_flag#43, year Output [8]: [c_customer_sk#66, c_customer_id#67, c_first_name#68, c_last_name#69, c_preferred_cust_flag#70, c_birth_country#71, c_login#72, c_email_address#73] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (88) FilterExecTransformer @@ -480,7 +480,7 @@ Output [4]: [ws_bill_customer_sk#74, ws_ext_discount_amt#75, ws_ext_list_price#7 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#77), dynamicpruningexpression(ws_sold_date_sk#77 IN dynamicpruning#35)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (90) FilterExecTransformer @@ -616,7 +616,7 @@ ColumnarBroadcastExchange (123) Output [2]: [d_date_sk#14, d_year#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (121) FilterExecTransformer @@ -641,7 +641,7 @@ ColumnarBroadcastExchange (127) Output [2]: [d_date_sk#36, d_year#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (125) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12.sf100/explain.txt index e8ee4d56213..107f0663e15 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12.sf100/explain.txt @@ -39,7 +39,7 @@ Output [3]: [ws_item_sk#1, ws_ext_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -71,7 +71,7 @@ Input [3]: [ws_item_sk#1, ws_ext_sales_price#2, ws_sold_date_sk#3] Output [6]: [i_item_sk#6, i_item_id#7, i_item_desc#8, i_current_price#9, i_class#10, i_category#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -220,7 +220,7 @@ ColumnarBroadcastExchange (48) Output [2]: [d_date_sk#13, d_date#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12/explain.txt index 805ffbb71d7..0a0d9449358 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12/explain.txt @@ -33,7 +33,7 @@ Output [3]: [ws_item_sk#1, ws_ext_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -44,7 +44,7 @@ Arguments: isnotnull(ws_item_sk#1) Output [6]: [i_item_sk#5, i_item_id#6, i_item_desc#7, i_current_price#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -186,7 +186,7 @@ ColumnarBroadcastExchange (40) Output [2]: [d_date_sk#11, d_date#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13.sf100/explain.txt index 15528b5a54c..e5822eba1d5 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13.sf100/explain.txt @@ -44,7 +44,7 @@ Output [10]: [ss_cdemo_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_quan Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#10), dynamicpruningexpression(ss_sold_date_sk#10 IN dynamicpruning#11)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_hdemo_sk), Or(Or(And(GreaterThanOrEqual(ss_net_profit,100.00),LessThanOrEqual(ss_net_profit,200.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,300.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,250.00))), Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00)))] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_hdemo_sk), *Or(Or(And(GreaterThanOrEqual(ss_net_profit,100.00),LessThanOrEqual(ss_net_profit,200.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,300.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,250.00))), *Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -55,7 +55,7 @@ Arguments: (((((isnotnull(ss_store_sk#4) AND isnotnull(ss_addr_sk#3)) AND isnotn Output [3]: [cd_demo_sk#12, cd_marital_status#13, cd_education_status#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] +PushedFilters: [*IsNotNull(cd_demo_sk), *Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] ReadSchema: struct (4) FilterExecTransformer @@ -90,7 +90,7 @@ Input [13]: [ss_cdemo_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_quant Output [2]: [hd_demo_sk#15, hd_dep_count#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), Or(EqualTo(hd_dep_count,3),EqualTo(hd_dep_count,1))] +PushedFilters: [*IsNotNull(hd_demo_sk), *Or(EqualTo(hd_dep_count,3),EqualTo(hd_dep_count,1))] ReadSchema: struct (12) FilterExecTransformer @@ -144,7 +144,7 @@ Input [8]: [ss_addr_sk#3, ss_store_sk#4, ss_quantity#5, ss_ext_sales_price#7, ss Output [1]: [s_store_sk#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -179,7 +179,7 @@ Input [7]: [ss_addr_sk#3, ss_store_sk#4, ss_quantity#5, ss_ext_sales_price#7, ss Output [3]: [ca_address_sk#19, ca_state#20, ca_country#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), EqualTo(ca_country,United States), IsNotNull(ca_address_sk), Or(Or(In(ca_state, [OH,TX]),In(ca_state, [KY,NM,OR])),In(ca_state, [MS,TX,VA]))] +PushedFilters: [*IsNotNull(ca_country), *EqualTo(ca_country,United States), *IsNotNull(ca_address_sk), *Or(Or(In(ca_state, [OH,TX]),In(ca_state, [KY,NM,OR])),In(ca_state, [MS,TX,VA]))] ReadSchema: struct (33) FilterExecTransformer @@ -269,7 +269,7 @@ ColumnarBroadcastExchange (55) Output [2]: [d_date_sk#17, d_year#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13/explain.txt index e1e75565abd..76487f2a459 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13/explain.txt @@ -44,7 +44,7 @@ Output [10]: [ss_cdemo_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_quan Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#10), dynamicpruningexpression(ss_sold_date_sk#10 IN dynamicpruning#11)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_hdemo_sk), Or(Or(And(GreaterThanOrEqual(ss_net_profit,100.00),LessThanOrEqual(ss_net_profit,200.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,300.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,250.00))), Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00)))] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_hdemo_sk), *Or(Or(And(GreaterThanOrEqual(ss_net_profit,100.00),LessThanOrEqual(ss_net_profit,200.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,300.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,250.00))), *Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -55,7 +55,7 @@ Arguments: (((((isnotnull(ss_store_sk#4) AND isnotnull(ss_addr_sk#3)) AND isnotn Output [1]: [s_store_sk#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -90,7 +90,7 @@ Input [11]: [ss_cdemo_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_quant Output [3]: [ca_address_sk#13, ca_state#14, ca_country#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), EqualTo(ca_country,United States), IsNotNull(ca_address_sk), Or(Or(In(ca_state, [OH,TX]),In(ca_state, [KY,NM,OR])),In(ca_state, [MS,TX,VA]))] +PushedFilters: [*IsNotNull(ca_country), *EqualTo(ca_country,United States), *IsNotNull(ca_address_sk), *Or(Or(In(ca_state, [OH,TX]),In(ca_state, [KY,NM,OR])),In(ca_state, [MS,TX,VA]))] ReadSchema: struct (12) FilterExecTransformer @@ -148,7 +148,7 @@ Input [8]: [ss_cdemo_sk#1, ss_hdemo_sk#2, ss_quantity#5, ss_sales_price#6, ss_ex Output [3]: [cd_demo_sk#17, cd_marital_status#18, cd_education_status#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] +PushedFilters: [*IsNotNull(cd_demo_sk), *Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] ReadSchema: struct (26) FilterExecTransformer @@ -183,7 +183,7 @@ Input [9]: [ss_cdemo_sk#1, ss_hdemo_sk#2, ss_quantity#5, ss_sales_price#6, ss_ex Output [2]: [hd_demo_sk#20, hd_dep_count#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), Or(EqualTo(hd_dep_count,3),EqualTo(hd_dep_count,1))] +PushedFilters: [*IsNotNull(hd_demo_sk), *Or(EqualTo(hd_dep_count,3),EqualTo(hd_dep_count,1))] ReadSchema: struct (34) FilterExecTransformer @@ -269,7 +269,7 @@ ColumnarBroadcastExchange (55) Output [2]: [d_date_sk#16, d_year#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a.sf100/explain.txt index 586e64b4a55..ce8ce14b79b 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a.sf100/explain.txt @@ -148,7 +148,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -159,7 +159,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -171,7 +171,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -201,7 +201,7 @@ Input [3]: [ss_item_sk#10, ss_sold_date_sk#11, d_date_sk#13] Output [4]: [i_item_sk#14, i_brand_id#15, i_class_id#16, i_category_id#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (13) FilterExecTransformer @@ -234,7 +234,7 @@ Output [2]: [cs_item_sk#19, cs_sold_date_sk#20] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#20), dynamicpruningexpression(cs_sold_date_sk#20 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -264,7 +264,7 @@ Input [3]: [cs_item_sk#19, cs_sold_date_sk#20, d_date_sk#21] Output [4]: [i_item_sk#22, i_brand_id#23, i_class_id#24, i_category_id#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (28) FilterExecTransformer @@ -403,7 +403,7 @@ Output [2]: [ws_item_sk#32, ws_sold_date_sk#33] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#33), dynamicpruningexpression(ws_sold_date_sk#33 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -538,7 +538,7 @@ Input [5]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4, d_d Output [4]: [i_item_sk#42, i_brand_id#43, i_class_id#44, i_category_id#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (96) FilterExecTransformer @@ -636,7 +636,7 @@ Output [4]: [cs_item_sk#63, cs_quantity#64, cs_list_price#65, cs_sold_date_sk#66 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#66), dynamicpruningexpression(cs_sold_date_sk#66 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (119) FilterExecTransformer @@ -748,7 +748,7 @@ Output [4]: [ws_item_sk#86, ws_quantity#87, ws_list_price#88, ws_sold_date_sk#89 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#89), dynamicpruningexpression(ws_sold_date_sk#89 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (146) FilterExecTransformer @@ -1105,7 +1105,7 @@ ColumnarBroadcastExchange (226) Output [3]: [d_date_sk#41, d_year#150, d_moy#151] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (223) FilterExecTransformer @@ -1135,7 +1135,7 @@ ColumnarBroadcastExchange (231) Output [2]: [d_date_sk#13, d_year#152] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1999), LessThanOrEqual(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1999), *LessThanOrEqual(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (228) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a/explain.txt index d21db5edff0..80e2ad0ae13 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a/explain.txt @@ -138,7 +138,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -149,7 +149,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -161,7 +161,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -172,7 +172,7 @@ Arguments: isnotnull(ss_item_sk#10) Output [4]: [i_item_sk#13, i_brand_id#14, i_class_id#15, i_category_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (8) FilterExecTransformer @@ -184,7 +184,7 @@ Output [2]: [cs_item_sk#17, cs_sold_date_sk#18] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#18), dynamicpruningexpression(cs_sold_date_sk#18 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -195,7 +195,7 @@ Arguments: isnotnull(cs_item_sk#17) Output [4]: [i_item_sk#19, i_brand_id#20, i_class_id#21, i_category_id#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -348,7 +348,7 @@ Output [2]: [ws_item_sk#29, ws_sold_date_sk#30] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#30), dynamicpruningexpression(ws_sold_date_sk#30 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (49) FilterExecTransformer @@ -461,7 +461,7 @@ Join condition: None Output [4]: [i_item_sk#37, i_brand_id#38, i_class_id#39, i_category_id#40] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (77) FilterExecTransformer @@ -578,7 +578,7 @@ Output [4]: [cs_item_sk#59, cs_quantity#60, cs_list_price#61, cs_sold_date_sk#62 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#62), dynamicpruningexpression(cs_sold_date_sk#62 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (105) FilterExecTransformer @@ -690,7 +690,7 @@ Output [4]: [ws_item_sk#82, ws_quantity#83, ws_list_price#84, ws_sold_date_sk#85 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#85), dynamicpruningexpression(ws_sold_date_sk#85 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (132) FilterExecTransformer @@ -1047,7 +1047,7 @@ ColumnarBroadcastExchange (212) Output [3]: [d_date_sk#41, d_year#146, d_moy#147] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (209) FilterExecTransformer @@ -1077,7 +1077,7 @@ ColumnarBroadcastExchange (217) Output [2]: [d_date_sk#24, d_year#148] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1999), LessThanOrEqual(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1999), *LessThanOrEqual(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (214) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b.sf100/explain.txt index 3947d7b1bb3..7367c41856f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b.sf100/explain.txt @@ -120,7 +120,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -131,7 +131,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -143,7 +143,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -173,7 +173,7 @@ Input [3]: [ss_item_sk#10, ss_sold_date_sk#11, d_date_sk#13] Output [4]: [i_item_sk#14, i_brand_id#15, i_class_id#16, i_category_id#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (13) FilterExecTransformer @@ -206,7 +206,7 @@ Output [2]: [cs_item_sk#19, cs_sold_date_sk#20] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#20), dynamicpruningexpression(cs_sold_date_sk#20 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -236,7 +236,7 @@ Input [3]: [cs_item_sk#19, cs_sold_date_sk#20, d_date_sk#21] Output [4]: [i_item_sk#22, i_brand_id#23, i_class_id#24, i_category_id#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (28) FilterExecTransformer @@ -375,7 +375,7 @@ Output [2]: [ws_item_sk#32, ws_sold_date_sk#33] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#33), dynamicpruningexpression(ws_sold_date_sk#33 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -510,7 +510,7 @@ Input [5]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4, d_d Output [4]: [i_item_sk#42, i_brand_id#43, i_class_id#44, i_category_id#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (96) FilterExecTransformer @@ -604,7 +604,7 @@ Output [4]: [ss_item_sk#60, ss_quantity#61, ss_list_price#62, ss_sold_date_sk#63 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#63), dynamicpruningexpression(ss_sold_date_sk#63 IN dynamicpruning#64)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (118) FilterExecTransformer @@ -925,7 +925,7 @@ ColumnarBroadcastExchange (189) Output [2]: [d_date_sk#41, d_week_seq#109] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#110), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#110), *IsNotNull(d_date_sk)] ReadSchema: struct (186) FilterExecTransformer @@ -957,7 +957,7 @@ VeloxColumnarToRow (194) Output [4]: [d_week_seq#111, d_year#112, d_moy#113, d_dom#114] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,2000), EqualTo(d_moy,12), EqualTo(d_dom,11)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,2000), *EqualTo(d_moy,12), *EqualTo(d_dom,11)] ReadSchema: struct (191) FilterExecTransformer @@ -988,7 +988,7 @@ ColumnarBroadcastExchange (199) Output [2]: [d_date_sk#13, d_year#115] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1999), LessThanOrEqual(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1999), *LessThanOrEqual(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (196) FilterExecTransformer @@ -1024,7 +1024,7 @@ ColumnarBroadcastExchange (204) Output [2]: [d_date_sk#66, d_week_seq#116] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#117), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#117), *IsNotNull(d_date_sk)] ReadSchema: struct (201) FilterExecTransformer @@ -1056,7 +1056,7 @@ VeloxColumnarToRow (209) Output [4]: [d_week_seq#118, d_year#119, d_moy#120, d_dom#121] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,1999), EqualTo(d_moy,12), EqualTo(d_dom,11)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,1999), *EqualTo(d_moy,12), *EqualTo(d_dom,11)] ReadSchema: struct (206) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b/explain.txt index a3f78bd5150..83c88654806 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b/explain.txt @@ -110,7 +110,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -121,7 +121,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -133,7 +133,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -144,7 +144,7 @@ Arguments: isnotnull(ss_item_sk#10) Output [4]: [i_item_sk#13, i_brand_id#14, i_class_id#15, i_category_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (8) FilterExecTransformer @@ -156,7 +156,7 @@ Output [2]: [cs_item_sk#17, cs_sold_date_sk#18] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#18), dynamicpruningexpression(cs_sold_date_sk#18 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -167,7 +167,7 @@ Arguments: isnotnull(cs_item_sk#17) Output [4]: [i_item_sk#19, i_brand_id#20, i_class_id#21, i_category_id#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -320,7 +320,7 @@ Output [2]: [ws_item_sk#29, ws_sold_date_sk#30] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#30), dynamicpruningexpression(ws_sold_date_sk#30 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (49) FilterExecTransformer @@ -433,7 +433,7 @@ Join condition: None Output [4]: [i_item_sk#37, i_brand_id#38, i_class_id#39, i_category_id#40] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (77) FilterExecTransformer @@ -546,7 +546,7 @@ Output [4]: [ss_item_sk#56, ss_quantity#57, ss_list_price#58, ss_sold_date_sk#59 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#59), dynamicpruningexpression(ss_sold_date_sk#59 IN dynamicpruning#60)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (104) FilterExecTransformer @@ -867,7 +867,7 @@ ColumnarBroadcastExchange (175) Output [2]: [d_date_sk#41, d_week_seq#105] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#106), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#106), *IsNotNull(d_date_sk)] ReadSchema: struct (172) FilterExecTransformer @@ -899,7 +899,7 @@ VeloxColumnarToRow (180) Output [4]: [d_week_seq#107, d_year#108, d_moy#109, d_dom#110] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,2000), EqualTo(d_moy,12), EqualTo(d_dom,11)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,2000), *EqualTo(d_moy,12), *EqualTo(d_dom,11)] ReadSchema: struct (177) FilterExecTransformer @@ -930,7 +930,7 @@ ColumnarBroadcastExchange (185) Output [2]: [d_date_sk#24, d_year#111] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1999), LessThanOrEqual(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1999), *LessThanOrEqual(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (182) FilterExecTransformer @@ -966,7 +966,7 @@ ColumnarBroadcastExchange (190) Output [2]: [d_date_sk#66, d_week_seq#112] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#113), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#113), *IsNotNull(d_date_sk)] ReadSchema: struct (187) FilterExecTransformer @@ -998,7 +998,7 @@ VeloxColumnarToRow (195) Output [4]: [d_week_seq#114, d_year#115, d_moy#116, d_dom#117] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,1999), EqualTo(d_moy,12), EqualTo(d_dom,11)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,1999), *EqualTo(d_moy,12), *EqualTo(d_dom,11)] ReadSchema: struct (192) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15.sf100/explain.txt index 58c0b2f3e9d..59fdedf6452 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15.sf100/explain.txt @@ -43,7 +43,7 @@ Output [3]: [cs_bill_customer_sk#1, cs_sales_price#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [2]: [cs_bill_customer_sk#1, cs_sales_price#2] Output [2]: [c_customer_sk#7, c_current_addr_sk#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -122,7 +122,7 @@ Input [2]: [c_customer_sk#7, c_current_addr_sk#8] Output [3]: [ca_address_sk#10, ca_state#11, ca_zip#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -250,7 +250,7 @@ ColumnarBroadcastExchange (54) Output [3]: [d_date_sk#5, d_year#21, d_qoy#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (51) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15/explain.txt index 6eb128c620d..c8b094eb78e 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15/explain.txt @@ -33,7 +33,7 @@ Output [3]: [cs_bill_customer_sk#1, cs_sales_price#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -44,7 +44,7 @@ Arguments: isnotnull(cs_bill_customer_sk#1) Output [2]: [c_customer_sk#5, c_current_addr_sk#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -79,7 +79,7 @@ Input [5]: [cs_bill_customer_sk#1, cs_sales_price#2, cs_sold_date_sk#3, c_custom Output [3]: [ca_address_sk#7, ca_state#8, ca_zip#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -192,7 +192,7 @@ ColumnarBroadcastExchange (40) Output [3]: [d_date_sk#10, d_year#17, d_qoy#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16.sf100/explain.txt index e61e86016cf..1bf6c4547cd 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16.sf100/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (59) Output [8]: [cs_ship_date_sk#1, cs_ship_addr_sk#2, cs_call_center_sk#3, cs_warehouse_sk#4, cs_order_number#5, cs_ext_ship_cost#6, cs_net_profit#7, cs_sold_date_sk#8] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_ship_date_sk), IsNotNull(cs_ship_addr_sk), IsNotNull(cs_call_center_sk)] +PushedFilters: [*IsNotNull(cs_ship_date_sk), *IsNotNull(cs_ship_addr_sk), *IsNotNull(cs_call_center_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -153,7 +153,7 @@ Join condition: None Output [2]: [ca_address_sk#20, ca_state#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,GA), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,GA), *IsNotNull(ca_address_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -192,7 +192,7 @@ Input [7]: [cs_ship_date_sk#1, cs_ship_addr_sk#2, cs_call_center_sk#3, cs_order_ Output [2]: [cc_call_center_sk#22, cc_county#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_county), EqualTo(cc_county,Williamson County), IsNotNull(cc_call_center_sk)] +PushedFilters: [*IsNotNull(cc_county), *EqualTo(cc_county,Williamson County), *IsNotNull(cc_call_center_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -231,7 +231,7 @@ Input [6]: [cs_ship_date_sk#1, cs_call_center_sk#3, cs_order_number#5, cs_ext_sh Output [2]: [d_date_sk#24, d_date#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2002-02-01), LessThanOrEqual(d_date,2002-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2002-02-01), *LessThanOrEqual(d_date,2002-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer @@ -323,7 +323,7 @@ VeloxColumnarToRow (71) Output [2]: [ca_address_sk#20, ca_state#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,GA), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,GA), *IsNotNull(ca_address_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -388,7 +388,7 @@ VeloxColumnarToRow (83) Output [2]: [cc_call_center_sk#22, cc_county#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_county), EqualTo(cc_county,Williamson County), IsNotNull(cc_call_center_sk)] +PushedFilters: [*IsNotNull(cc_county), *EqualTo(cc_county,Williamson County), *IsNotNull(cc_call_center_sk)] ReadSchema: struct (73) FilterExecTransformer @@ -453,7 +453,7 @@ VeloxColumnarToRow (95) Output [2]: [d_date_sk#24, d_date#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2002-02-01), LessThanOrEqual(d_date,2002-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2002-02-01), *LessThanOrEqual(d_date,2002-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (85) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16/explain.txt index 94729a38495..23d4bc34f3c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (59) Output [8]: [cs_ship_date_sk#1, cs_ship_addr_sk#2, cs_call_center_sk#3, cs_warehouse_sk#4, cs_order_number#5, cs_ext_ship_cost#6, cs_net_profit#7, cs_sold_date_sk#8] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_ship_date_sk), IsNotNull(cs_ship_addr_sk), IsNotNull(cs_call_center_sk)] +PushedFilters: [*IsNotNull(cs_ship_date_sk), *IsNotNull(cs_ship_addr_sk), *IsNotNull(cs_call_center_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -153,7 +153,7 @@ Join condition: None Output [2]: [d_date_sk#17, d_date#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2002-02-01), LessThanOrEqual(d_date,2002-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2002-02-01), *LessThanOrEqual(d_date,2002-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -192,7 +192,7 @@ Input [7]: [cs_ship_date_sk#1, cs_ship_addr_sk#2, cs_call_center_sk#3, cs_order_ Output [2]: [ca_address_sk#19, ca_state#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,GA), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,GA), *IsNotNull(ca_address_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -231,7 +231,7 @@ Input [6]: [cs_ship_addr_sk#2, cs_call_center_sk#3, cs_order_number#5, cs_ext_sh Output [2]: [cc_call_center_sk#21, cc_county#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_county), EqualTo(cc_county,Williamson County), IsNotNull(cc_call_center_sk)] +PushedFilters: [*IsNotNull(cc_county), *EqualTo(cc_county,Williamson County), *IsNotNull(cc_call_center_sk)] ReadSchema: struct (45) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17.sf100/explain.txt index 531c2089c04..c790da13fb9 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17.sf100/explain.txt @@ -66,7 +66,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [2]: [s_store_sk#9, s_state#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -148,7 +148,7 @@ Input [5]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#4, ss_quantity#5, s Output [3]: [i_item_sk#12, i_item_id#13, i_item_desc#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -208,7 +208,7 @@ Output [5]: [sr_item_sk#17, sr_customer_sk#18, sr_ticket_number#19, sr_return_qu Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#21), dynamicpruningexpression(sr_returned_date_sk#21 IN dynamicpruning#22)] -PushedFilters: [IsNotNull(sr_customer_sk), IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_customer_sk), *IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (37) FilterExecTransformer @@ -283,7 +283,7 @@ Output [4]: [cs_bill_customer_sk#26, cs_item_sk#27, cs_quantity#28, cs_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#29), dynamicpruningexpression(cs_sold_date_sk#29 IN dynamicpruning#22)] -PushedFilters: [IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (56) FilterExecTransformer @@ -399,7 +399,7 @@ ColumnarBroadcastExchange (85) Output [2]: [d_date_sk#8, d_quarter_name#93] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_quarter_name), EqualTo(d_quarter_name,2001Q1), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_quarter_name), *EqualTo(d_quarter_name,2001Q1), *IsNotNull(d_date_sk)] ReadSchema: struct (82) FilterExecTransformer @@ -429,7 +429,7 @@ ColumnarBroadcastExchange (90) Output [2]: [d_date_sk#23, d_quarter_name#94] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_quarter_name, [2001Q1,2001Q2,2001Q3]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_quarter_name, [2001Q1,2001Q2,2001Q3]), *IsNotNull(d_date_sk)] ReadSchema: struct (87) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17/explain.txt index 84ec479748b..cba2acd94e4 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17/explain.txt @@ -53,7 +53,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -65,7 +65,7 @@ Output [5]: [sr_item_sk#8, sr_customer_sk#9, sr_ticket_number#10, sr_return_quan Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#12), dynamicpruningexpression(sr_returned_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(sr_customer_sk), IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_customer_sk), *IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (4) FilterExecTransformer @@ -101,7 +101,7 @@ Output [4]: [cs_bill_customer_sk#14, cs_item_sk#15, cs_quantity#16, cs_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#17), dynamicpruningexpression(cs_sold_date_sk#17 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -193,7 +193,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#5, sr_return_quantity#11, c Output [2]: [s_store_sk#21, s_state#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -228,7 +228,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#5, sr_return_quantity#11, c Output [3]: [i_item_sk#23, i_item_id#24, i_item_desc#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -322,7 +322,7 @@ ColumnarBroadcastExchange (66) Output [2]: [d_date_sk#18, d_quarter_name#87] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_quarter_name), EqualTo(d_quarter_name,2001Q1), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_quarter_name), *EqualTo(d_quarter_name,2001Q1), *IsNotNull(d_date_sk)] ReadSchema: struct (63) FilterExecTransformer @@ -352,7 +352,7 @@ ColumnarBroadcastExchange (71) Output [2]: [d_date_sk#19, d_quarter_name#88] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_quarter_name, [2001Q1,2001Q2,2001Q3]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_quarter_name, [2001Q1,2001Q2,2001Q3]), *IsNotNull(d_date_sk)] ReadSchema: struct (68) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18.sf100/explain.txt index 896ccd37c51..9880f7b238c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18.sf100/explain.txt @@ -64,7 +64,7 @@ Output [9]: [cs_bill_customer_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#3, cs_quantit Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#9), dynamicpruningexpression(cs_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -75,7 +75,7 @@ Arguments: ((isnotnull(cs_bill_cdemo_sk#2) AND isnotnull(cs_bill_customer_sk#1)) Output [4]: [cd_demo_sk#11, cd_gender#12, cd_education_status#13, cd_dep_count#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_education_status,Unknown ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_education_status,Unknown ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -133,7 +133,7 @@ Input [10]: [cs_bill_customer_sk#1, cs_item_sk#3, cs_quantity#4, cs_list_price#5 Output [2]: [i_item_sk#16, i_item_id#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -185,7 +185,7 @@ Input [8]: [cs_bill_customer_sk#1, cs_quantity#4, cs_list_price#5, cs_sales_pric Output [5]: [c_customer_sk#19, c_current_cdemo_sk#20, c_current_addr_sk#21, c_birth_month#22, c_birth_year#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [In(c_birth_month, [1,12,2,6,8,9]), IsNotNull(c_customer_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*In(c_birth_month, [1,12,2,6,8,9]), *IsNotNull(c_customer_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (31) FilterExecTransformer @@ -200,7 +200,7 @@ Input [5]: [c_customer_sk#19, c_current_cdemo_sk#20, c_current_addr_sk#21, c_bir Output [4]: [ca_address_sk#24, ca_county#25, ca_state#26, ca_country#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [IN,MS,ND,NM,OK,VA]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [IN,MS,ND,NM,OK,VA]), *IsNotNull(ca_address_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -252,7 +252,7 @@ Input [6]: [c_customer_sk#19, c_current_cdemo_sk#20, c_birth_year#23, ca_county# Output [1]: [cd_demo_sk#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -388,7 +388,7 @@ ColumnarBroadcastExchange (81) Output [2]: [d_date_sk#15, d_year#87] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (78) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18/explain.txt index 579075497d5..732739e9549 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18/explain.txt @@ -55,7 +55,7 @@ Output [9]: [cs_bill_customer_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#3, cs_quantit Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#9), dynamicpruningexpression(cs_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -66,7 +66,7 @@ Arguments: ((isnotnull(cs_bill_cdemo_sk#2) AND isnotnull(cs_bill_customer_sk#1)) Output [4]: [cd_demo_sk#11, cd_gender#12, cd_education_status#13, cd_dep_count#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_education_status,Unknown ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_education_status,Unknown ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -105,7 +105,7 @@ Input [11]: [cs_bill_customer_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#3, cs_quantit Output [5]: [c_customer_sk#15, c_current_cdemo_sk#16, c_current_addr_sk#17, c_birth_month#18, c_birth_year#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [In(c_birth_month, [1,12,2,6,8,9]), IsNotNull(c_customer_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*In(c_birth_month, [1,12,2,6,8,9]), *IsNotNull(c_customer_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -144,7 +144,7 @@ Input [13]: [cs_bill_customer_sk#1, cs_item_sk#3, cs_quantity#4, cs_list_price#5 Output [1]: [cd_demo_sk#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -179,7 +179,7 @@ Input [12]: [cs_item_sk#3, cs_quantity#4, cs_list_price#5, cs_sales_price#6, cs_ Output [4]: [ca_address_sk#21, ca_county#22, ca_state#23, ca_country#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [IN,MS,ND,NM,OK,VA]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [IN,MS,ND,NM,OK,VA]), *IsNotNull(ca_address_sk)] ReadSchema: struct (30) FilterExecTransformer @@ -233,7 +233,7 @@ Input [13]: [cs_item_sk#3, cs_quantity#4, cs_list_price#5, cs_sales_price#6, cs_ Output [2]: [i_item_sk#26, i_item_id#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -335,7 +335,7 @@ ColumnarBroadcastExchange (68) Output [2]: [d_date_sk#25, d_year#83] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (65) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19.sf100/explain.txt index 4673eaea70a..030a1506ccf 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19.sf100/explain.txt @@ -56,7 +56,7 @@ Output [5]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ext_sales_price#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -67,7 +67,7 @@ Arguments: ((isnotnull(ss_item_sk#1) AND isnotnull(ss_customer_sk#2)) AND isnotn Output [6]: [i_item_sk#7, i_brand_id#8, i_brand#9, i_manufact_id#10, i_manufact#11, i_manager_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,8), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,8), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -125,7 +125,7 @@ Input [9]: [ss_customer_sk#2, ss_store_sk#3, ss_ext_sales_price#4, ss_sold_date_ Output [2]: [s_store_sk#14, s_zip#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_zip), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_zip), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -177,7 +177,7 @@ Input [7]: [ss_customer_sk#2, ss_ext_sales_price#4, i_brand_id#8, i_brand#9, i_m Output [2]: [c_customer_sk#17, c_current_addr_sk#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (31) FilterExecTransformer @@ -209,7 +209,7 @@ Input [2]: [c_customer_sk#17, c_current_addr_sk#18] Output [2]: [ca_address_sk#20, ca_zip#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_zip)] ReadSchema: struct (39) FilterExecTransformer @@ -337,7 +337,7 @@ ColumnarBroadcastExchange (71) Output [3]: [d_date_sk#13, d_year#32, d_moy#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (68) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19/explain.txt index a353f1da3c6..17b2b736a15 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19/explain.txt @@ -48,7 +48,7 @@ VeloxColumnarToRow (56) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -64,7 +64,7 @@ Output [5]: [ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -99,7 +99,7 @@ Input [6]: [d_date_sk#1, ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_s Output [6]: [i_item_sk#9, i_brand_id#10, i_brand#11, i_manufact_id#12, i_manufact#13, i_manager_id#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,8), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,8), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -138,7 +138,7 @@ Input [9]: [ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7, Output [2]: [c_customer_sk#15, c_current_addr_sk#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -173,7 +173,7 @@ Input [9]: [ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7, i_brand_id#10 Output [2]: [ca_address_sk#17, ca_zip#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_zip)] ReadSchema: struct (30) FilterExecTransformer @@ -208,7 +208,7 @@ Input [9]: [ss_store_sk#6, ss_ext_sales_price#7, i_brand_id#10, i_brand#11, i_ma Output [2]: [s_store_sk#19, s_zip#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_zip), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_zip), *IsNotNull(s_store_sk)] ReadSchema: struct (38) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2.sf100/explain.txt index ab0b2aee1cb..36424bc8262 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2.sf100/explain.txt @@ -105,7 +105,7 @@ Input [2]: [sold_date_sk#3, sales_price#4] Output [3]: [d_date_sk#9, d_week_seq#10, d_day_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (11) FilterExecTransformer @@ -179,7 +179,7 @@ Input [8]: [d_week_seq#10, sum(UnscaledValue(CASE WHEN (d_day_name#11 = Sunday Output [2]: [d_week_seq#49, d_year#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_week_seq)] ReadSchema: struct (28) FilterExecTransformer @@ -257,7 +257,7 @@ Input [2]: [sold_date_sk#61, sales_price#62] Output [3]: [d_date_sk#67, d_week_seq#68, d_day_name#69] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (46) FilterExecTransformer @@ -331,7 +331,7 @@ Input [8]: [d_week_seq#68, sum(UnscaledValue(CASE WHEN (d_day_name#69 = Sunday Output [2]: [d_week_seq#100, d_year#101] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_week_seq)] ReadSchema: struct (63) FilterExecTransformer @@ -436,7 +436,7 @@ VeloxColumnarToRow (96) Output [2]: [d_week_seq#49, d_year#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_week_seq)] ReadSchema: struct (86) FilterExecTransformer @@ -513,7 +513,7 @@ VeloxColumnarToRow (108) Output [2]: [d_week_seq#100, d_year#101] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_week_seq)] ReadSchema: struct (98) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2/explain.txt index ea03354f0b3..4a4a6454d75 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2/explain.txt @@ -90,7 +90,7 @@ Input [2]: [sold_date_sk#3, sales_price#4] Output [3]: [d_date_sk#9, d_week_seq#10, d_day_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (11) FilterExecTransformer @@ -164,7 +164,7 @@ Input [8]: [d_week_seq#10, sum(UnscaledValue(CASE WHEN (d_day_name#11 = Sunday Output [2]: [d_week_seq#48, d_year#49] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_week_seq)] ReadSchema: struct (28) FilterExecTransformer @@ -223,7 +223,7 @@ Input [8]: [d_week_seq#58, sum(UnscaledValue(CASE WHEN (d_day_name#66 = Sunday Output [2]: [d_week_seq#75, d_year#76] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_week_seq)] ReadSchema: struct (42) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20.sf100/explain.txt index 54ebf55bafe..4248430677e 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20.sf100/explain.txt @@ -39,7 +39,7 @@ Output [3]: [cs_item_sk#1, cs_ext_sales_price#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -71,7 +71,7 @@ Input [3]: [cs_item_sk#1, cs_ext_sales_price#2, cs_sold_date_sk#3] Output [6]: [i_item_sk#6, i_item_id#7, i_item_desc#8, i_current_price#9, i_class#10, i_category#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -220,7 +220,7 @@ ColumnarBroadcastExchange (48) Output [2]: [d_date_sk#13, d_date#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20/explain.txt index bfd93ff7496..45a5f800090 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20/explain.txt @@ -33,7 +33,7 @@ Output [3]: [cs_item_sk#1, cs_ext_sales_price#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -44,7 +44,7 @@ Arguments: isnotnull(cs_item_sk#1) Output [6]: [i_item_sk#5, i_item_id#6, i_item_desc#7, i_current_price#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -186,7 +186,7 @@ ColumnarBroadcastExchange (40) Output [2]: [d_date_sk#11, d_date#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21.sf100/explain.txt index 71c83398d7f..de4f5114344 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21.sf100/explain.txt @@ -34,7 +34,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_warehouse_sk), IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_warehouse_sk), *IsNotNull(inv_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -45,7 +45,7 @@ Arguments: (isnotnull(inv_warehouse_sk#2) AND isnotnull(inv_item_sk#1)) Output [3]: [i_item_sk#6, i_item_id#7, i_current_price#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,0.99), LessThanOrEqual(i_current_price,1.49), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,0.99), *LessThanOrEqual(i_current_price,1.49), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -103,7 +103,7 @@ Input [6]: [inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_sk#4, i_item_id Output [2]: [w_warehouse_sk#11, w_warehouse_name#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -196,7 +196,7 @@ ColumnarBroadcastExchange (40) Output [2]: [d_date_sk#9, d_date#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-02-10), LessThanOrEqual(d_date,2000-04-10), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-02-10), *LessThanOrEqual(d_date,2000-04-10), *IsNotNull(d_date_sk)] ReadSchema: struct (38) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21/explain.txt index 38dd09f2385..f7dccaf7a0f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21/explain.txt @@ -34,7 +34,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_warehouse_sk), IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_warehouse_sk), *IsNotNull(inv_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -45,7 +45,7 @@ Arguments: (isnotnull(inv_warehouse_sk#2) AND isnotnull(inv_item_sk#1)) Output [2]: [w_warehouse_sk#6, w_warehouse_name#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -80,7 +80,7 @@ Input [6]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_ Output [3]: [i_item_sk#8, i_item_id#9, i_current_price#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,0.99), LessThanOrEqual(i_current_price,1.49), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,0.99), *LessThanOrEqual(i_current_price,1.49), *IsNotNull(i_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -196,7 +196,7 @@ ColumnarBroadcastExchange (40) Output [2]: [d_date_sk#11, d_date#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-02-10), LessThanOrEqual(d_date,2000-04-10), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-02-10), *LessThanOrEqual(d_date,2000-04-10), *IsNotNull(d_date_sk)] ReadSchema: struct (38) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22.sf100/explain.txt index cf37f5c23cf..d774c422fd3 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22.sf100/explain.txt @@ -39,7 +39,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -50,7 +50,7 @@ Arguments: (isnotnull(inv_item_sk#1) AND isnotnull(inv_warehouse_sk#2)) Output [1]: [w_warehouse_sk#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -121,7 +121,7 @@ Input [2]: [inv_item_sk#1, inv_quantity_on_hand#3] Output [5]: [i_item_sk#9, i_brand#10, i_class#11, i_category#12, i_product_name#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -226,7 +226,7 @@ ColumnarBroadcastExchange (48) Output [2]: [d_date_sk#7, d_month_seq#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22/explain.txt index cf82cb487dd..ee99f05d2e1 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22/explain.txt @@ -34,7 +34,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -64,7 +64,7 @@ Input [5]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_ Output [5]: [i_item_sk#7, i_brand#8, i_class#9, i_category#10, i_product_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -99,7 +99,7 @@ Input [8]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, i_item_sk Output [1]: [w_warehouse_sk#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -197,7 +197,7 @@ ColumnarBroadcastExchange (41) Output [2]: [d_date_sk#6, d_month_seq#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (38) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a.sf100/explain.txt index 7c93a1fc9f8..d059943baf7 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a.sf100/explain.txt @@ -131,7 +131,7 @@ Output [2]: [ss_item_sk#8, ss_sold_date_sk#9] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#9), dynamicpruningexpression(ss_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -178,7 +178,7 @@ Input [2]: [ss_item_sk#8, d_date#12] Output [2]: [i_item_sk#14, i_item_desc#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -266,7 +266,7 @@ Input [4]: [cs_bill_customer_sk#1, cs_quantity#3, cs_list_price#4, cs_sold_date_ Output [4]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24, ss_sold_date_sk#25] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -298,7 +298,7 @@ Input [3]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24] Output [1]: [c_customer_sk#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (50) FilterExecTransformer @@ -622,7 +622,7 @@ ColumnarBroadcastExchange (131) Output [3]: [d_date_sk#33, d_year#63, d_moy#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (128) FilterExecTransformer @@ -652,7 +652,7 @@ ColumnarBroadcastExchange (136) Output [3]: [d_date_sk#11, d_date#12, d_year#65] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (133) FilterExecTransformer @@ -696,7 +696,7 @@ Output [4]: [ss_customer_sk#66, ss_quantity#67, ss_sales_price#68, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#69), dynamicpruningexpression(ss_sold_date_sk#69 IN dynamicpruning#70)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (138) FilterExecTransformer @@ -794,7 +794,7 @@ ColumnarBroadcastExchange (163) Output [2]: [d_date_sk#71, d_year#79] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (160) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a/explain.txt index e12754e423c..242874dd3c0 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a/explain.txt @@ -92,7 +92,7 @@ Output [2]: [ss_item_sk#7, ss_sold_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (3) FilterExecTransformer @@ -122,7 +122,7 @@ Input [4]: [ss_item_sk#7, ss_sold_date_sk#8, d_date_sk#10, d_date#11] Output [2]: [i_item_sk#12, i_item_desc#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -245,7 +245,7 @@ Input [4]: [cs_bill_customer_sk#1, cs_quantity#3, cs_list_price#4, cs_sold_date_ Output [4]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24, ss_sold_date_sk#25] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -260,7 +260,7 @@ Input [4]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24, ss_sold_date_s Output [1]: [c_customer_sk#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -527,7 +527,7 @@ ColumnarBroadcastExchange (109) Output [3]: [d_date_sk#36, d_year#59, d_moy#60] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (106) FilterExecTransformer @@ -557,7 +557,7 @@ ColumnarBroadcastExchange (114) Output [3]: [d_date_sk#10, d_date#11, d_year#61] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (111) FilterExecTransformer @@ -603,7 +603,7 @@ Output [4]: [ss_customer_sk#62, ss_quantity#63, ss_sales_price#64, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#65), dynamicpruningexpression(ss_sold_date_sk#65 IN dynamicpruning#66)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (116) FilterExecTransformer @@ -712,7 +712,7 @@ ColumnarBroadcastExchange (143) Output [2]: [d_date_sk#68, d_year#79] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (140) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b.sf100/explain.txt index a8b7f9cd241..896b4d7f9f7 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b.sf100/explain.txt @@ -142,7 +142,7 @@ Output [5]: [cs_bill_customer_sk#1, cs_item_sk#2, cs_quantity#3, cs_list_price#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -175,7 +175,7 @@ Output [2]: [ss_item_sk#8, ss_sold_date_sk#9] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#9), dynamicpruningexpression(ss_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -222,7 +222,7 @@ Input [2]: [ss_item_sk#8, d_date#12] Output [2]: [i_item_sk#14, i_item_desc#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -310,7 +310,7 @@ Input [4]: [cs_bill_customer_sk#1, cs_quantity#3, cs_list_price#4, cs_sold_date_ Output [4]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24, ss_sold_date_sk#25] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -342,7 +342,7 @@ Input [3]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24] Output [1]: [c_customer_sk#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -424,7 +424,7 @@ Input [5]: [cs_bill_customer_sk#1, cs_quantity#3, cs_list_price#4, cs_sold_date_ Output [3]: [c_customer_sk#34, c_first_name#35, c_last_name#36] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -555,7 +555,7 @@ Output [5]: [ws_item_sk#47, ws_bill_customer_sk#48, ws_quantity#49, ws_list_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#51), dynamicpruningexpression(ws_sold_date_sk#51 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (101) FilterExecTransformer @@ -855,7 +855,7 @@ ColumnarBroadcastExchange (177) Output [3]: [d_date_sk#33, d_year#80, d_moy#81] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (174) FilterExecTransformer @@ -885,7 +885,7 @@ ColumnarBroadcastExchange (182) Output [3]: [d_date_sk#11, d_date#12, d_year#82] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (179) FilterExecTransformer @@ -929,7 +929,7 @@ Output [4]: [ss_customer_sk#83, ss_quantity#84, ss_sales_price#85, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#86), dynamicpruningexpression(ss_sold_date_sk#86 IN dynamicpruning#87)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (184) FilterExecTransformer @@ -1027,7 +1027,7 @@ ColumnarBroadcastExchange (209) Output [2]: [d_date_sk#88, d_year#96] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (206) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b/explain.txt index 2c2f7405caa..e3f8cbb6b9c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b/explain.txt @@ -112,7 +112,7 @@ Output [5]: [cs_bill_customer_sk#1, cs_item_sk#2, cs_quantity#3, cs_list_price#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -124,7 +124,7 @@ Output [2]: [ss_item_sk#7, ss_sold_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -154,7 +154,7 @@ Input [4]: [ss_item_sk#7, ss_sold_date_sk#8, d_date_sk#10, d_date#11] Output [2]: [i_item_sk#12, i_item_desc#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (11) FilterExecTransformer @@ -277,7 +277,7 @@ Input [4]: [cs_bill_customer_sk#1, cs_quantity#3, cs_list_price#4, cs_sold_date_ Output [4]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24, ss_sold_date_sk#25] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -292,7 +292,7 @@ Input [4]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24, ss_sold_date_s Output [1]: [c_customer_sk#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -376,7 +376,7 @@ Join condition: None Output [3]: [c_customer_sk#36, c_first_name#37, c_last_name#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (63) FilterExecTransformer @@ -521,7 +521,7 @@ Output [5]: [ws_item_sk#49, ws_bill_customer_sk#50, ws_quantity#51, ws_list_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#53), dynamicpruningexpression(ws_sold_date_sk#53 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (98) FilterExecTransformer @@ -694,7 +694,7 @@ ColumnarBroadcastExchange (142) Output [3]: [d_date_sk#40, d_year#74, d_moy#75] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (139) FilterExecTransformer @@ -724,7 +724,7 @@ ColumnarBroadcastExchange (147) Output [3]: [d_date_sk#10, d_date#11, d_year#76] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (144) FilterExecTransformer @@ -770,7 +770,7 @@ Output [4]: [ss_customer_sk#77, ss_quantity#78, ss_sales_price#79, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#80), dynamicpruningexpression(ss_sold_date_sk#80 IN dynamicpruning#81)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (149) FilterExecTransformer @@ -879,7 +879,7 @@ ColumnarBroadcastExchange (176) Output [2]: [d_date_sk#83, d_year#94] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (173) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a.sf100/explain.txt index fe7d345292d..e9c4054ee8a 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a.sf100/explain.txt @@ -64,7 +64,7 @@ VeloxColumnarToRow (78) Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, ss_sold_date_sk#6] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -79,7 +79,7 @@ Input [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [6]: [i_item_sk#8, i_current_price#9, i_size#10, i_color#11, i_units#12, i_manager_id#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_color), EqualTo(i_color,pale ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_color), *EqualTo(i_color,pale ), *IsNotNull(i_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -131,7 +131,7 @@ Input [10]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [c_customer_sk#15, c_first_name#16, c_last_name#17, c_birth_country#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_birth_country)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_birth_country)] ReadSchema: struct (18) FilterExecTransformer @@ -190,7 +190,7 @@ Input [12]: [ss_item_sk#1, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, i_c Output [3]: [sr_item_sk#21, sr_ticket_number#22, sr_returned_date_sk#23] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (33) FilterExecTransformer @@ -232,7 +232,7 @@ Input [14]: [ss_item_sk#1, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, i_c Output [5]: [s_store_sk#25, s_store_name#26, s_market_id#27, s_state#28, s_zip#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (43) FilterExecTransformer @@ -261,7 +261,7 @@ Input [4]: [s_store_sk#25, s_store_name#26, s_state#28, s_zip#29] Output [3]: [ca_state#30, ca_zip#31, ca_country#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (50) FilterExecTransformer @@ -452,7 +452,7 @@ VeloxColumnarToRow (153) Output [6]: [ss_item_sk#47, ss_customer_sk#48, ss_store_sk#49, ss_ticket_number#50, ss_net_paid#51, ss_sold_date_sk#52] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -467,7 +467,7 @@ Input [6]: [ss_item_sk#47, ss_customer_sk#48, ss_store_sk#49, ss_ticket_number#5 Output [5]: [s_store_sk#53, s_store_name#54, s_market_id#55, s_state#56, s_zip#57] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (83) FilterExecTransformer @@ -523,7 +523,7 @@ Input [7]: [ss_item_sk#47, ss_customer_sk#48, ss_ticket_number#50, ss_net_paid#5 Output [6]: [i_item_sk#59, i_current_price#60, i_size#61, i_color#62, i_units#63, i_manager_id#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -654,7 +654,7 @@ Input [12]: [ss_net_paid#51, s_store_name#54, s_state#56, s_zip#57, i_current_pr Output [3]: [ca_state#75, ca_zip#76, ca_country#77] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (132) FilterExecTransformer @@ -765,7 +765,7 @@ VeloxColumnarToRow (165) Output [3]: [s_store_sk#25, s_market_id#27, s_zip#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (155) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a/explain.txt index 12a255a5773..b04425ad17c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a/explain.txt @@ -59,7 +59,7 @@ VeloxColumnarToRow (71) Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, ss_sold_date_sk#6] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -91,7 +91,7 @@ Input [5]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [3]: [sr_item_sk#8, sr_ticket_number#9, sr_returned_date_sk#10] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -133,7 +133,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [5]: [s_store_sk#12, s_store_name#13, s_market_id#14, s_state#15, s_zip#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (20) FilterExecTransformer @@ -172,7 +172,7 @@ Input [8]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_net_paid#5, s_stor Output [6]: [i_item_sk#17, i_current_price#18, i_size#19, i_color#20, i_units#21, i_manager_id#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_color), EqualTo(i_color,pale ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_color), *EqualTo(i_color,pale ), *IsNotNull(i_item_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -207,7 +207,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_net_paid#5, s_store_name#13, s_s Output [4]: [c_customer_sk#23, c_first_name#24, c_last_name#25, c_birth_country#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_birth_country)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_birth_country)] ReadSchema: struct (37) FilterExecTransformer @@ -242,7 +242,7 @@ Input [14]: [ss_customer_sk#2, ss_net_paid#5, s_store_name#13, s_state#15, s_zip Output [3]: [ca_state#27, ca_zip#28, ca_country#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (45) FilterExecTransformer @@ -448,7 +448,7 @@ Input [8]: [ss_item_sk#44, ss_customer_sk#45, ss_store_sk#46, ss_net_paid#48, s_ Output [6]: [i_item_sk#55, i_current_price#56, i_size#57, i_color#58, i_units#59, i_manager_id#60] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (86) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b.sf100/explain.txt index 08005c5d689..d7bbd8afe04 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b.sf100/explain.txt @@ -64,7 +64,7 @@ VeloxColumnarToRow (78) Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, ss_sold_date_sk#6] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -79,7 +79,7 @@ Input [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [6]: [i_item_sk#8, i_current_price#9, i_size#10, i_color#11, i_units#12, i_manager_id#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_color), EqualTo(i_color,chiffon ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_color), *EqualTo(i_color,chiffon ), *IsNotNull(i_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -131,7 +131,7 @@ Input [10]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [c_customer_sk#15, c_first_name#16, c_last_name#17, c_birth_country#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_birth_country)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_birth_country)] ReadSchema: struct (18) FilterExecTransformer @@ -190,7 +190,7 @@ Input [12]: [ss_item_sk#1, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, i_c Output [3]: [sr_item_sk#21, sr_ticket_number#22, sr_returned_date_sk#23] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (33) FilterExecTransformer @@ -232,7 +232,7 @@ Input [14]: [ss_item_sk#1, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, i_c Output [5]: [s_store_sk#25, s_store_name#26, s_market_id#27, s_state#28, s_zip#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (43) FilterExecTransformer @@ -261,7 +261,7 @@ Input [4]: [s_store_sk#25, s_store_name#26, s_state#28, s_zip#29] Output [3]: [ca_state#30, ca_zip#31, ca_country#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (50) FilterExecTransformer @@ -452,7 +452,7 @@ VeloxColumnarToRow (153) Output [6]: [ss_item_sk#47, ss_customer_sk#48, ss_store_sk#49, ss_ticket_number#50, ss_net_paid#51, ss_sold_date_sk#52] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -467,7 +467,7 @@ Input [6]: [ss_item_sk#47, ss_customer_sk#48, ss_store_sk#49, ss_ticket_number#5 Output [5]: [s_store_sk#53, s_store_name#54, s_market_id#55, s_state#56, s_zip#57] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (83) FilterExecTransformer @@ -523,7 +523,7 @@ Input [7]: [ss_item_sk#47, ss_customer_sk#48, ss_ticket_number#50, ss_net_paid#5 Output [6]: [i_item_sk#59, i_current_price#60, i_size#61, i_color#62, i_units#63, i_manager_id#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -654,7 +654,7 @@ Input [12]: [ss_net_paid#51, s_store_name#54, s_state#56, s_zip#57, i_current_pr Output [3]: [ca_state#75, ca_zip#76, ca_country#77] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (132) FilterExecTransformer @@ -765,7 +765,7 @@ VeloxColumnarToRow (165) Output [3]: [s_store_sk#25, s_market_id#27, s_zip#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (155) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b/explain.txt index a290e3613d4..87f98514f12 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b/explain.txt @@ -59,7 +59,7 @@ VeloxColumnarToRow (71) Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, ss_sold_date_sk#6] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -91,7 +91,7 @@ Input [5]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [3]: [sr_item_sk#8, sr_ticket_number#9, sr_returned_date_sk#10] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -133,7 +133,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [5]: [s_store_sk#12, s_store_name#13, s_market_id#14, s_state#15, s_zip#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (20) FilterExecTransformer @@ -172,7 +172,7 @@ Input [8]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_net_paid#5, s_stor Output [6]: [i_item_sk#17, i_current_price#18, i_size#19, i_color#20, i_units#21, i_manager_id#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_color), EqualTo(i_color,chiffon ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_color), *EqualTo(i_color,chiffon ), *IsNotNull(i_item_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -207,7 +207,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_net_paid#5, s_store_name#13, s_s Output [4]: [c_customer_sk#23, c_first_name#24, c_last_name#25, c_birth_country#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_birth_country)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_birth_country)] ReadSchema: struct (37) FilterExecTransformer @@ -242,7 +242,7 @@ Input [14]: [ss_customer_sk#2, ss_net_paid#5, s_store_name#13, s_state#15, s_zip Output [3]: [ca_state#27, ca_zip#28, ca_country#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (45) FilterExecTransformer @@ -448,7 +448,7 @@ Input [8]: [ss_item_sk#44, ss_customer_sk#45, ss_store_sk#46, ss_net_paid#48, s_ Output [6]: [i_item_sk#55, i_current_price#56, i_size#57, i_color#58, i_units#59, i_manager_id#60] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (86) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25.sf100/explain.txt index 82a034d75d4..49ac71dbe11 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25.sf100/explain.txt @@ -66,7 +66,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [3]: [s_store_sk#9, s_store_id#10, s_store_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -148,7 +148,7 @@ Input [6]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#4, ss_net_profit#5, Output [3]: [i_item_sk#13, i_item_id#14, i_item_desc#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -208,7 +208,7 @@ Output [5]: [sr_item_sk#18, sr_customer_sk#19, sr_ticket_number#20, sr_net_loss# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#22), dynamicpruningexpression(sr_returned_date_sk#22 IN dynamicpruning#23)] -PushedFilters: [IsNotNull(sr_customer_sk), IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_customer_sk), *IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (37) FilterExecTransformer @@ -283,7 +283,7 @@ Output [4]: [cs_bill_customer_sk#27, cs_item_sk#28, cs_net_profit#29, cs_sold_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#30), dynamicpruningexpression(cs_sold_date_sk#30 IN dynamicpruning#23)] -PushedFilters: [IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (56) FilterExecTransformer @@ -399,7 +399,7 @@ ColumnarBroadcastExchange (85) Output [3]: [d_date_sk#8, d_year#49, d_moy#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,4), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,4), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (82) FilterExecTransformer @@ -429,7 +429,7 @@ ColumnarBroadcastExchange (90) Output [3]: [d_date_sk#24, d_year#51, d_moy#52] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,10), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,10), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (87) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25/explain.txt index e0485a9f6e6..f0ce913ec59 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25/explain.txt @@ -53,7 +53,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -65,7 +65,7 @@ Output [5]: [sr_item_sk#8, sr_customer_sk#9, sr_ticket_number#10, sr_net_loss#11 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#12), dynamicpruningexpression(sr_returned_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(sr_customer_sk), IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_customer_sk), *IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (4) FilterExecTransformer @@ -101,7 +101,7 @@ Output [4]: [cs_bill_customer_sk#14, cs_item_sk#15, cs_net_profit#16, cs_sold_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#17), dynamicpruningexpression(cs_sold_date_sk#17 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -193,7 +193,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#3, ss_net_profit#5, sr_net_loss#11, cs_net Output [3]: [s_store_sk#21, s_store_id#22, s_store_name#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -228,7 +228,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_net_profit#5, sr_net_loss#11, cs_net Output [3]: [i_item_sk#24, i_item_id#25, i_item_desc#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -322,7 +322,7 @@ ColumnarBroadcastExchange (66) Output [3]: [d_date_sk#18, d_year#43, d_moy#44] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,4), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,4), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (63) FilterExecTransformer @@ -352,7 +352,7 @@ ColumnarBroadcastExchange (71) Output [3]: [d_date_sk#19, d_year#45, d_moy#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,10), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,10), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (68) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26.sf100/explain.txt index ce654053e95..3896a4f89b2 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26.sf100/explain.txt @@ -41,7 +41,7 @@ Output [8]: [cs_bill_cdemo_sk#1, cs_item_sk#2, cs_promo_sk#3, cs_quantity#4, cs_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#8), dynamicpruningexpression(cs_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_item_sk), IsNotNull(cs_promo_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_item_sk), *IsNotNull(cs_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Arguments: ((isnotnull(cs_bill_cdemo_sk#1) AND isnotnull(cs_item_sk#2)) AND isno Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_marital_status,S), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_marital_status,S), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -91,7 +91,7 @@ Input [9]: [cs_bill_cdemo_sk#1, cs_item_sk#2, cs_promo_sk#3, cs_quantity#4, cs_l Output [3]: [p_promo_sk#14, p_channel_email#15, p_channel_event#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), *IsNotNull(p_promo_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -149,7 +149,7 @@ Input [7]: [cs_item_sk#2, cs_quantity#4, cs_list_price#5, cs_sales_price#6, cs_c Output [2]: [i_item_sk#18, i_item_id#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [2]: [d_date_sk#17, d_year#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26/explain.txt index 772a3b705c3..01bcfbe67cc 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26/explain.txt @@ -41,7 +41,7 @@ Output [8]: [cs_bill_cdemo_sk#1, cs_item_sk#2, cs_promo_sk#3, cs_quantity#4, cs_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#8), dynamicpruningexpression(cs_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_item_sk), IsNotNull(cs_promo_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_item_sk), *IsNotNull(cs_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Arguments: ((isnotnull(cs_bill_cdemo_sk#1) AND isnotnull(cs_item_sk#2)) AND isno Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_marital_status,S), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_marital_status,S), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -110,7 +110,7 @@ Input [8]: [cs_item_sk#2, cs_promo_sk#3, cs_quantity#4, cs_list_price#5, cs_sale Output [2]: [i_item_sk#15, i_item_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -145,7 +145,7 @@ Input [8]: [cs_item_sk#2, cs_promo_sk#3, cs_quantity#4, cs_list_price#5, cs_sale Output [3]: [p_promo_sk#17, p_channel_email#18, p_channel_event#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), *IsNotNull(p_promo_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [2]: [d_date_sk#14, d_year#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27.sf100/explain.txt index ef56730396d..26e1b5d249c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27.sf100/explain.txt @@ -42,7 +42,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -53,7 +53,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_store_sk#3)) AND isnotnul Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_marital_status,S), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_marital_status,S), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -111,7 +111,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [s_store_sk#15, s_state#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -146,7 +146,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#17, i_item_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -248,7 +248,7 @@ ColumnarBroadcastExchange (51) Output [2]: [d_date_sk#14, d_year#51] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (48) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27/explain.txt index ef56730396d..26e1b5d249c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27/explain.txt @@ -42,7 +42,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -53,7 +53,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_store_sk#3)) AND isnotnul Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_marital_status,S), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_marital_status,S), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -111,7 +111,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [s_store_sk#15, s_state#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -146,7 +146,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#17, i_item_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -248,7 +248,7 @@ ColumnarBroadcastExchange (51) Output [2]: [d_date_sk#14, d_year#51] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (48) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28.sf100/explain.txt index 01e6d6b8fad..d837e954810 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28.sf100/explain.txt @@ -93,7 +93,7 @@ VeloxColumnarToRow (111) Output [5]: [ss_quantity#1, ss_wholesale_cost#2, ss_list_price#3, ss_coupon_amt#4, ss_sold_date_sk#5] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,0), LessThanOrEqual(ss_quantity,5), Or(Or(And(GreaterThanOrEqual(ss_list_price,8.00),LessThanOrEqual(ss_list_price,18.00)),And(GreaterThanOrEqual(ss_coupon_amt,459.00),LessThanOrEqual(ss_coupon_amt,1459.00))),And(GreaterThanOrEqual(ss_wholesale_cost,57.00),LessThanOrEqual(ss_wholesale_cost,77.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,0), *LessThanOrEqual(ss_quantity,5), *Or(Or(And(GreaterThanOrEqual(ss_list_price,8.00),LessThanOrEqual(ss_list_price,18.00)),And(GreaterThanOrEqual(ss_coupon_amt,459.00),LessThanOrEqual(ss_coupon_amt,1459.00))),And(GreaterThanOrEqual(ss_wholesale_cost,57.00),LessThanOrEqual(ss_wholesale_cost,77.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -161,7 +161,7 @@ Input [3]: [avg(UnscaledValue(ss_list_price#3))#7, count(ss_list_price#3)#8, cou Output [5]: [ss_quantity#18, ss_wholesale_cost#19, ss_list_price#20, ss_coupon_amt#21, ss_sold_date_sk#22] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,6), LessThanOrEqual(ss_quantity,10), Or(Or(And(GreaterThanOrEqual(ss_list_price,90.00),LessThanOrEqual(ss_list_price,100.00)),And(GreaterThanOrEqual(ss_coupon_amt,2323.00),LessThanOrEqual(ss_coupon_amt,3323.00))),And(GreaterThanOrEqual(ss_wholesale_cost,31.00),LessThanOrEqual(ss_wholesale_cost,51.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,6), *LessThanOrEqual(ss_quantity,10), *Or(Or(And(GreaterThanOrEqual(ss_list_price,90.00),LessThanOrEqual(ss_list_price,100.00)),And(GreaterThanOrEqual(ss_coupon_amt,2323.00),LessThanOrEqual(ss_coupon_amt,3323.00))),And(GreaterThanOrEqual(ss_wholesale_cost,31.00),LessThanOrEqual(ss_wholesale_cost,51.00)))] ReadSchema: struct (16) FilterExecTransformer @@ -247,7 +247,7 @@ Join condition: None Output [5]: [ss_quantity#35, ss_wholesale_cost#36, ss_list_price#37, ss_coupon_amt#38, ss_sold_date_sk#39] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,11), LessThanOrEqual(ss_quantity,15), Or(Or(And(GreaterThanOrEqual(ss_list_price,142.00),LessThanOrEqual(ss_list_price,152.00)),And(GreaterThanOrEqual(ss_coupon_amt,12214.00),LessThanOrEqual(ss_coupon_amt,13214.00))),And(GreaterThanOrEqual(ss_wholesale_cost,79.00),LessThanOrEqual(ss_wholesale_cost,99.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,11), *LessThanOrEqual(ss_quantity,15), *Or(Or(And(GreaterThanOrEqual(ss_list_price,142.00),LessThanOrEqual(ss_list_price,152.00)),And(GreaterThanOrEqual(ss_coupon_amt,12214.00),LessThanOrEqual(ss_coupon_amt,13214.00))),And(GreaterThanOrEqual(ss_wholesale_cost,79.00),LessThanOrEqual(ss_wholesale_cost,99.00)))] ReadSchema: struct (35) FilterExecTransformer @@ -333,7 +333,7 @@ Join condition: None Output [5]: [ss_quantity#52, ss_wholesale_cost#53, ss_list_price#54, ss_coupon_amt#55, ss_sold_date_sk#56] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,16), LessThanOrEqual(ss_quantity,20), Or(Or(And(GreaterThanOrEqual(ss_list_price,135.00),LessThanOrEqual(ss_list_price,145.00)),And(GreaterThanOrEqual(ss_coupon_amt,6071.00),LessThanOrEqual(ss_coupon_amt,7071.00))),And(GreaterThanOrEqual(ss_wholesale_cost,38.00),LessThanOrEqual(ss_wholesale_cost,58.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,16), *LessThanOrEqual(ss_quantity,20), *Or(Or(And(GreaterThanOrEqual(ss_list_price,135.00),LessThanOrEqual(ss_list_price,145.00)),And(GreaterThanOrEqual(ss_coupon_amt,6071.00),LessThanOrEqual(ss_coupon_amt,7071.00))),And(GreaterThanOrEqual(ss_wholesale_cost,38.00),LessThanOrEqual(ss_wholesale_cost,58.00)))] ReadSchema: struct (54) FilterExecTransformer @@ -419,7 +419,7 @@ Join condition: None Output [5]: [ss_quantity#69, ss_wholesale_cost#70, ss_list_price#71, ss_coupon_amt#72, ss_sold_date_sk#73] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,21), LessThanOrEqual(ss_quantity,25), Or(Or(And(GreaterThanOrEqual(ss_list_price,122.00),LessThanOrEqual(ss_list_price,132.00)),And(GreaterThanOrEqual(ss_coupon_amt,836.00),LessThanOrEqual(ss_coupon_amt,1836.00))),And(GreaterThanOrEqual(ss_wholesale_cost,17.00),LessThanOrEqual(ss_wholesale_cost,37.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,21), *LessThanOrEqual(ss_quantity,25), *Or(Or(And(GreaterThanOrEqual(ss_list_price,122.00),LessThanOrEqual(ss_list_price,132.00)),And(GreaterThanOrEqual(ss_coupon_amt,836.00),LessThanOrEqual(ss_coupon_amt,1836.00))),And(GreaterThanOrEqual(ss_wholesale_cost,17.00),LessThanOrEqual(ss_wholesale_cost,37.00)))] ReadSchema: struct (73) FilterExecTransformer @@ -505,7 +505,7 @@ Join condition: None Output [5]: [ss_quantity#86, ss_wholesale_cost#87, ss_list_price#88, ss_coupon_amt#89, ss_sold_date_sk#90] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,26), LessThanOrEqual(ss_quantity,30), Or(Or(And(GreaterThanOrEqual(ss_list_price,154.00),LessThanOrEqual(ss_list_price,164.00)),And(GreaterThanOrEqual(ss_coupon_amt,7326.00),LessThanOrEqual(ss_coupon_amt,8326.00))),And(GreaterThanOrEqual(ss_wholesale_cost,7.00),LessThanOrEqual(ss_wholesale_cost,27.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,26), *LessThanOrEqual(ss_quantity,30), *Or(Or(And(GreaterThanOrEqual(ss_list_price,154.00),LessThanOrEqual(ss_list_price,164.00)),And(GreaterThanOrEqual(ss_coupon_amt,7326.00),LessThanOrEqual(ss_coupon_amt,8326.00))),And(GreaterThanOrEqual(ss_wholesale_cost,7.00),LessThanOrEqual(ss_wholesale_cost,27.00)))] ReadSchema: struct (92) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28/explain.txt index 01e6d6b8fad..d837e954810 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28/explain.txt @@ -93,7 +93,7 @@ VeloxColumnarToRow (111) Output [5]: [ss_quantity#1, ss_wholesale_cost#2, ss_list_price#3, ss_coupon_amt#4, ss_sold_date_sk#5] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,0), LessThanOrEqual(ss_quantity,5), Or(Or(And(GreaterThanOrEqual(ss_list_price,8.00),LessThanOrEqual(ss_list_price,18.00)),And(GreaterThanOrEqual(ss_coupon_amt,459.00),LessThanOrEqual(ss_coupon_amt,1459.00))),And(GreaterThanOrEqual(ss_wholesale_cost,57.00),LessThanOrEqual(ss_wholesale_cost,77.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,0), *LessThanOrEqual(ss_quantity,5), *Or(Or(And(GreaterThanOrEqual(ss_list_price,8.00),LessThanOrEqual(ss_list_price,18.00)),And(GreaterThanOrEqual(ss_coupon_amt,459.00),LessThanOrEqual(ss_coupon_amt,1459.00))),And(GreaterThanOrEqual(ss_wholesale_cost,57.00),LessThanOrEqual(ss_wholesale_cost,77.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -161,7 +161,7 @@ Input [3]: [avg(UnscaledValue(ss_list_price#3))#7, count(ss_list_price#3)#8, cou Output [5]: [ss_quantity#18, ss_wholesale_cost#19, ss_list_price#20, ss_coupon_amt#21, ss_sold_date_sk#22] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,6), LessThanOrEqual(ss_quantity,10), Or(Or(And(GreaterThanOrEqual(ss_list_price,90.00),LessThanOrEqual(ss_list_price,100.00)),And(GreaterThanOrEqual(ss_coupon_amt,2323.00),LessThanOrEqual(ss_coupon_amt,3323.00))),And(GreaterThanOrEqual(ss_wholesale_cost,31.00),LessThanOrEqual(ss_wholesale_cost,51.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,6), *LessThanOrEqual(ss_quantity,10), *Or(Or(And(GreaterThanOrEqual(ss_list_price,90.00),LessThanOrEqual(ss_list_price,100.00)),And(GreaterThanOrEqual(ss_coupon_amt,2323.00),LessThanOrEqual(ss_coupon_amt,3323.00))),And(GreaterThanOrEqual(ss_wholesale_cost,31.00),LessThanOrEqual(ss_wholesale_cost,51.00)))] ReadSchema: struct (16) FilterExecTransformer @@ -247,7 +247,7 @@ Join condition: None Output [5]: [ss_quantity#35, ss_wholesale_cost#36, ss_list_price#37, ss_coupon_amt#38, ss_sold_date_sk#39] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,11), LessThanOrEqual(ss_quantity,15), Or(Or(And(GreaterThanOrEqual(ss_list_price,142.00),LessThanOrEqual(ss_list_price,152.00)),And(GreaterThanOrEqual(ss_coupon_amt,12214.00),LessThanOrEqual(ss_coupon_amt,13214.00))),And(GreaterThanOrEqual(ss_wholesale_cost,79.00),LessThanOrEqual(ss_wholesale_cost,99.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,11), *LessThanOrEqual(ss_quantity,15), *Or(Or(And(GreaterThanOrEqual(ss_list_price,142.00),LessThanOrEqual(ss_list_price,152.00)),And(GreaterThanOrEqual(ss_coupon_amt,12214.00),LessThanOrEqual(ss_coupon_amt,13214.00))),And(GreaterThanOrEqual(ss_wholesale_cost,79.00),LessThanOrEqual(ss_wholesale_cost,99.00)))] ReadSchema: struct (35) FilterExecTransformer @@ -333,7 +333,7 @@ Join condition: None Output [5]: [ss_quantity#52, ss_wholesale_cost#53, ss_list_price#54, ss_coupon_amt#55, ss_sold_date_sk#56] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,16), LessThanOrEqual(ss_quantity,20), Or(Or(And(GreaterThanOrEqual(ss_list_price,135.00),LessThanOrEqual(ss_list_price,145.00)),And(GreaterThanOrEqual(ss_coupon_amt,6071.00),LessThanOrEqual(ss_coupon_amt,7071.00))),And(GreaterThanOrEqual(ss_wholesale_cost,38.00),LessThanOrEqual(ss_wholesale_cost,58.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,16), *LessThanOrEqual(ss_quantity,20), *Or(Or(And(GreaterThanOrEqual(ss_list_price,135.00),LessThanOrEqual(ss_list_price,145.00)),And(GreaterThanOrEqual(ss_coupon_amt,6071.00),LessThanOrEqual(ss_coupon_amt,7071.00))),And(GreaterThanOrEqual(ss_wholesale_cost,38.00),LessThanOrEqual(ss_wholesale_cost,58.00)))] ReadSchema: struct (54) FilterExecTransformer @@ -419,7 +419,7 @@ Join condition: None Output [5]: [ss_quantity#69, ss_wholesale_cost#70, ss_list_price#71, ss_coupon_amt#72, ss_sold_date_sk#73] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,21), LessThanOrEqual(ss_quantity,25), Or(Or(And(GreaterThanOrEqual(ss_list_price,122.00),LessThanOrEqual(ss_list_price,132.00)),And(GreaterThanOrEqual(ss_coupon_amt,836.00),LessThanOrEqual(ss_coupon_amt,1836.00))),And(GreaterThanOrEqual(ss_wholesale_cost,17.00),LessThanOrEqual(ss_wholesale_cost,37.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,21), *LessThanOrEqual(ss_quantity,25), *Or(Or(And(GreaterThanOrEqual(ss_list_price,122.00),LessThanOrEqual(ss_list_price,132.00)),And(GreaterThanOrEqual(ss_coupon_amt,836.00),LessThanOrEqual(ss_coupon_amt,1836.00))),And(GreaterThanOrEqual(ss_wholesale_cost,17.00),LessThanOrEqual(ss_wholesale_cost,37.00)))] ReadSchema: struct (73) FilterExecTransformer @@ -505,7 +505,7 @@ Join condition: None Output [5]: [ss_quantity#86, ss_wholesale_cost#87, ss_list_price#88, ss_coupon_amt#89, ss_sold_date_sk#90] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,26), LessThanOrEqual(ss_quantity,30), Or(Or(And(GreaterThanOrEqual(ss_list_price,154.00),LessThanOrEqual(ss_list_price,164.00)),And(GreaterThanOrEqual(ss_coupon_amt,7326.00),LessThanOrEqual(ss_coupon_amt,8326.00))),And(GreaterThanOrEqual(ss_wholesale_cost,7.00),LessThanOrEqual(ss_wholesale_cost,27.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,26), *LessThanOrEqual(ss_quantity,30), *Or(Or(And(GreaterThanOrEqual(ss_list_price,154.00),LessThanOrEqual(ss_list_price,164.00)),And(GreaterThanOrEqual(ss_coupon_amt,7326.00),LessThanOrEqual(ss_coupon_amt,8326.00))),And(GreaterThanOrEqual(ss_wholesale_cost,7.00),LessThanOrEqual(ss_wholesale_cost,27.00)))] ReadSchema: struct (92) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29.sf100/explain.txt index dcdf16b7082..2ef92a6ce6f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29.sf100/explain.txt @@ -65,7 +65,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -95,7 +95,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [3]: [s_store_sk#9, s_store_id#10, s_store_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -147,7 +147,7 @@ Input [6]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#4, ss_quantity#5, s Output [3]: [i_item_sk#13, i_item_id#14, i_item_desc#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -207,7 +207,7 @@ Output [5]: [sr_item_sk#18, sr_customer_sk#19, sr_ticket_number#20, sr_return_qu Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#22), dynamicpruningexpression(sr_returned_date_sk#22 IN dynamicpruning#23)] -PushedFilters: [IsNotNull(sr_customer_sk), IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_customer_sk), *IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (37) FilterExecTransformer @@ -282,7 +282,7 @@ Output [4]: [cs_bill_customer_sk#27, cs_item_sk#28, cs_quantity#29, cs_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#30), dynamicpruningexpression(cs_sold_date_sk#30 IN dynamicpruning#31)] -PushedFilters: [IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (56) FilterExecTransformer @@ -394,7 +394,7 @@ ColumnarBroadcastExchange (84) Output [3]: [d_date_sk#8, d_year#47, d_moy#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,9), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,9), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (81) FilterExecTransformer @@ -424,7 +424,7 @@ ColumnarBroadcastExchange (89) Output [3]: [d_date_sk#24, d_year#49, d_moy#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), GreaterThanOrEqual(d_moy,9), LessThanOrEqual(d_moy,12), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *GreaterThanOrEqual(d_moy,9), *LessThanOrEqual(d_moy,12), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (86) FilterExecTransformer @@ -454,7 +454,7 @@ ColumnarBroadcastExchange (94) Output [2]: [d_date_sk#32, d_year#51] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (91) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29/explain.txt index 23aecdad670..efcf36928d5 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29/explain.txt @@ -52,7 +52,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -64,7 +64,7 @@ Output [5]: [sr_item_sk#8, sr_customer_sk#9, sr_ticket_number#10, sr_return_quan Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#12), dynamicpruningexpression(sr_returned_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(sr_customer_sk), IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_customer_sk), *IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (4) FilterExecTransformer @@ -100,7 +100,7 @@ Output [4]: [cs_bill_customer_sk#14, cs_item_sk#15, cs_quantity#16, cs_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#17), dynamicpruningexpression(cs_sold_date_sk#17 IN dynamicpruning#18)] -PushedFilters: [IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -192,7 +192,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#5, sr_return_quantity#11, c Output [3]: [s_store_sk#22, s_store_id#23, s_store_name#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -227,7 +227,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#5, sr_return_quantity#11, c Output [3]: [i_item_sk#25, i_item_id#26, i_item_desc#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -317,7 +317,7 @@ ColumnarBroadcastExchange (65) Output [3]: [d_date_sk#19, d_year#41, d_moy#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,9), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,9), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -347,7 +347,7 @@ ColumnarBroadcastExchange (70) Output [3]: [d_date_sk#20, d_year#43, d_moy#44] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), GreaterThanOrEqual(d_moy,9), LessThanOrEqual(d_moy,12), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *GreaterThanOrEqual(d_moy,9), *LessThanOrEqual(d_moy,12), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (67) FilterExecTransformer @@ -377,7 +377,7 @@ ColumnarBroadcastExchange (75) Output [2]: [d_date_sk#21, d_year#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (72) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3.sf100/explain.txt index bd7edb84258..d02521ae6de 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3.sf100/explain.txt @@ -28,7 +28,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -39,7 +39,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#5, i_brand_id#6, i_brand#7, i_manufact_id#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,128), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,128), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -156,7 +156,7 @@ ColumnarBroadcastExchange (33) Output [3]: [d_date_sk#9, d_year#10, d_moy#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (30) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3/explain.txt index 86fe7fdc8f3..eb23d8581ac 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_d Output [4]: [i_item_sk#7, i_brand_id#8, i_brand#9, i_manufact_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,128), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,128), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30.sf100/explain.txt index 69b466f0c62..cd02a463dc5 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30.sf100/explain.txt @@ -77,7 +77,7 @@ VeloxColumnarToRow (94) Output [14]: [c_customer_sk#1, c_customer_id#2, c_current_addr_sk#3, c_salutation#4, c_first_name#5, c_last_name#6, c_preferred_cust_flag#7, c_birth_day#8, c_birth_month#9, c_birth_year#10, c_birth_country#11, c_login#12, c_email_address#13, c_last_review_date#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -88,7 +88,7 @@ Arguments: (isnotnull(c_customer_sk#1) AND isnotnull(c_current_addr_sk#3)) Output [2]: [ca_address_sk#15, ca_state#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,GA), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,GA), *IsNotNull(ca_address_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -142,7 +142,7 @@ Output [4]: [wr_returning_customer_sk#17, wr_returning_addr_sk#18, wr_return_amt Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#20), dynamicpruningexpression(wr_returned_date_sk#20 IN dynamicpruning#21)] -PushedFilters: [IsNotNull(wr_returning_addr_sk), IsNotNull(wr_returning_customer_sk)] +PushedFilters: [*IsNotNull(wr_returning_addr_sk), *IsNotNull(wr_returning_customer_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -189,7 +189,7 @@ Input [3]: [wr_returning_customer_sk#17, wr_returning_addr_sk#18, wr_return_amt# Output [2]: [ca_address_sk#24, ca_state#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_state)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_state)] ReadSchema: struct (29) FilterExecTransformer @@ -285,7 +285,7 @@ Output [4]: [wr_returning_customer_sk#35, wr_returning_addr_sk#36, wr_return_amt Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#38), dynamicpruningexpression(wr_returned_date_sk#38 IN dynamicpruning#21)] -PushedFilters: [IsNotNull(wr_returning_addr_sk)] +PushedFilters: [*IsNotNull(wr_returning_addr_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -477,7 +477,7 @@ ColumnarBroadcastExchange (99) Output [2]: [d_date_sk#22, d_year#56] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (96) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30/explain.txt index 5a31f295d41..4323fe4776b 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30/explain.txt @@ -70,7 +70,7 @@ Output [4]: [wr_returning_customer_sk#1, wr_returning_addr_sk#2, wr_return_amt#3 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#4), dynamicpruningexpression(wr_returned_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(wr_returning_addr_sk), IsNotNull(wr_returning_customer_sk)] +PushedFilters: [*IsNotNull(wr_returning_addr_sk), *IsNotNull(wr_returning_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -100,7 +100,7 @@ Input [5]: [wr_returning_customer_sk#1, wr_returning_addr_sk#2, wr_return_amt#3, Output [2]: [ca_address_sk#7, ca_state#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_state)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_state)] ReadSchema: struct (9) FilterExecTransformer @@ -179,7 +179,7 @@ Output [4]: [wr_returning_customer_sk#17, wr_returning_addr_sk#18, wr_return_amt Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#20), dynamicpruningexpression(wr_returned_date_sk#20 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(wr_returning_addr_sk)] +PushedFilters: [*IsNotNull(wr_returning_addr_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -334,7 +334,7 @@ Input [5]: [ctr_customer_sk#14, ctr_state#15, ctr_total_return#16, (avg(ctr_tota Output [14]: [c_customer_sk#37, c_customer_id#38, c_current_addr_sk#39, c_salutation#40, c_first_name#41, c_last_name#42, c_preferred_cust_flag#43, c_birth_day#44, c_birth_month#45, c_birth_year#46, c_birth_country#47, c_login#48, c_email_address#49, c_last_review_date#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (64) FilterExecTransformer @@ -369,7 +369,7 @@ Input [16]: [ctr_customer_sk#14, ctr_total_return#16, c_customer_sk#37, c_custom Output [2]: [ca_address_sk#51, ca_state#52] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,GA), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,GA), *IsNotNull(ca_address_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -428,7 +428,7 @@ ColumnarBroadcastExchange (87) Output [2]: [d_date_sk#6, d_year#53] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (84) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31.sf100/explain.txt index 24adcddb960..b1c3133462e 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31.sf100/explain.txt @@ -155,7 +155,7 @@ Output [3]: [ss_addr_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -202,7 +202,7 @@ Input [4]: [ss_addr_sk#1, ss_ext_sales_price#2, d_year#6, d_qoy#7] Output [2]: [ca_address_sk#9, ca_county#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_county)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_county)] ReadSchema: struct (14) FilterExecTransformer @@ -284,7 +284,7 @@ Output [3]: [ss_addr_sk#18, ss_ext_sales_price#19, ss_sold_date_sk#20] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#20), dynamicpruningexpression(ss_sold_date_sk#20 IN dynamicpruning#21)] -PushedFilters: [IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk)] ReadSchema: struct (33) FilterExecTransformer @@ -414,7 +414,7 @@ Output [3]: [ss_addr_sk#33, ss_ext_sales_price#34, ss_sold_date_sk#35] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#35), dynamicpruningexpression(ss_sold_date_sk#35 IN dynamicpruning#36)] -PushedFilters: [IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk)] ReadSchema: struct (65) FilterExecTransformer @@ -544,7 +544,7 @@ Output [3]: [ws_bill_addr_sk#48, ws_ext_sales_price#49, ws_sold_date_sk#50] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#50), dynamicpruningexpression(ws_sold_date_sk#50 IN dynamicpruning#36)] -PushedFilters: [IsNotNull(ws_bill_addr_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -650,7 +650,7 @@ Output [3]: [ws_bill_addr_sk#63, ws_ext_sales_price#64, ws_sold_date_sk#65] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#65), dynamicpruningexpression(ws_sold_date_sk#65 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_bill_addr_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk)] ReadSchema: struct (123) FilterExecTransformer @@ -780,7 +780,7 @@ Output [3]: [ws_bill_addr_sk#77, ws_ext_sales_price#78, ws_sold_date_sk#79] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#79), dynamicpruningexpression(ws_sold_date_sk#79 IN dynamicpruning#21)] -PushedFilters: [IsNotNull(ws_bill_addr_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk)] ReadSchema: struct (155) FilterExecTransformer @@ -969,7 +969,7 @@ ColumnarBroadcastExchange (203) Output [3]: [d_date_sk#5, d_year#6, d_qoy#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (201) FilterExecTransformer @@ -994,7 +994,7 @@ ColumnarBroadcastExchange (207) Output [3]: [d_date_sk#22, d_year#23, d_qoy#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,3), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,3), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (205) FilterExecTransformer @@ -1019,7 +1019,7 @@ ColumnarBroadcastExchange (211) Output [3]: [d_date_sk#37, d_year#38, d_qoy#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,1), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,1), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (209) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31/explain.txt index 8a4100c4b38..e05f98e7e53 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31/explain.txt @@ -133,7 +133,7 @@ Output [3]: [ss_addr_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -163,7 +163,7 @@ Input [6]: [ss_addr_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3, d_date_sk#5, Output [2]: [ca_address_sk#8, ca_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_county)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_county)] ReadSchema: struct (9) FilterExecTransformer @@ -238,7 +238,7 @@ Output [3]: [ss_addr_sk#16, ss_ext_sales_price#17, ss_sold_date_sk#18] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#18), dynamicpruningexpression(ss_sold_date_sk#18 IN dynamicpruning#19)] -PushedFilters: [IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -347,7 +347,7 @@ Output [3]: [ss_addr_sk#30, ss_ext_sales_price#31, ss_sold_date_sk#32] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#32), dynamicpruningexpression(ss_sold_date_sk#32 IN dynamicpruning#33)] -PushedFilters: [IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk)] ReadSchema: struct (52) FilterExecTransformer @@ -460,7 +460,7 @@ Output [3]: [ws_bill_addr_sk#44, ws_ext_sales_price#45, ws_sold_date_sk#46] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#46), dynamicpruningexpression(ws_sold_date_sk#46 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_bill_addr_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -569,7 +569,7 @@ Output [3]: [ws_bill_addr_sk#58, ws_ext_sales_price#59, ws_sold_date_sk#60] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#60), dynamicpruningexpression(ws_sold_date_sk#60 IN dynamicpruning#19)] -PushedFilters: [IsNotNull(ws_bill_addr_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk)] ReadSchema: struct (105) FilterExecTransformer @@ -682,7 +682,7 @@ Output [3]: [ws_bill_addr_sk#71, ws_ext_sales_price#72, ws_sold_date_sk#73] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#73), dynamicpruningexpression(ws_sold_date_sk#73 IN dynamicpruning#33)] -PushedFilters: [IsNotNull(ws_bill_addr_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk)] ReadSchema: struct (132) FilterExecTransformer @@ -830,7 +830,7 @@ ColumnarBroadcastExchange (169) Output [3]: [d_date_sk#5, d_year#6, d_qoy#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,1), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,1), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (167) FilterExecTransformer @@ -855,7 +855,7 @@ ColumnarBroadcastExchange (173) Output [3]: [d_date_sk#20, d_year#21, d_qoy#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (171) FilterExecTransformer @@ -880,7 +880,7 @@ ColumnarBroadcastExchange (177) Output [3]: [d_date_sk#34, d_year#35, d_qoy#36] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,3), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,3), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (175) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32.sf100/explain.txt index bbef819d481..f13fc0c963e 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32.sf100/explain.txt @@ -43,7 +43,7 @@ VeloxColumnarToRow (49) Output [2]: [i_item_sk#1, i_manufact_id#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,977), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,977), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Output [3]: [cs_item_sk#3, cs_ext_discount_amt#4, cs_sold_date_sk#5] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -171,7 +171,7 @@ Output [3]: [cs_item_sk#17, cs_ext_discount_amt#18, cs_sold_date_sk#19] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#19), dynamicpruningexpression(cs_sold_date_sk#19 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_ext_discount_amt)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_ext_discount_amt)] ReadSchema: struct (32) FilterExecTransformer @@ -267,7 +267,7 @@ VeloxColumnarToRow (61) Output [2]: [i_item_sk#1, i_manufact_id#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,977), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,977), *IsNotNull(i_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -327,7 +327,7 @@ ColumnarBroadcastExchange (66) Output [2]: [d_date_sk#8, d_date#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-01-27), LessThanOrEqual(d_date,2000-04-26), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-01-27), *LessThanOrEqual(d_date,2000-04-26), *IsNotNull(d_date_sk)] ReadSchema: struct (63) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32/explain.txt index 7fe998f6249..2b9a0fbc56c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32/explain.txt @@ -44,7 +44,7 @@ Output [3]: [cs_item_sk#1, cs_ext_discount_amt#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_ext_discount_amt)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_ext_discount_amt)] ReadSchema: struct (2) FilterExecTransformer @@ -55,7 +55,7 @@ Arguments: (isnotnull(cs_item_sk#1) AND isnotnull(cs_ext_discount_amt#2)) Output [2]: [i_item_sk#5, i_manufact_id#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,977), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,977), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -95,7 +95,7 @@ Output [3]: [cs_item_sk#7, cs_ext_discount_amt#8, cs_sold_date_sk#9] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#9), dynamicpruningexpression(cs_sold_date_sk#9 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -262,7 +262,7 @@ ColumnarBroadcastExchange (54) Output [2]: [d_date_sk#19, d_date#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-01-27), LessThanOrEqual(d_date,2000-04-26), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-01-27), *LessThanOrEqual(d_date,2000-04-26), *IsNotNull(d_date_sk)] ReadSchema: struct (51) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33.sf100/explain.txt index c683ab5dbad..70e854ef4c5 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33.sf100/explain.txt @@ -90,7 +90,7 @@ Output [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_addr_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -120,7 +120,7 @@ Input [5]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4, Output [2]: [i_item_sk#7, i_manufact_id#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -131,7 +131,7 @@ Arguments: isnotnull(i_item_sk#7) Output [2]: [i_category#9, i_manufact_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Electronics )] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Electronics )] ReadSchema: struct (11) FilterExecTransformer @@ -190,7 +190,7 @@ Input [5]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, i_item_sk#7, i_man Output [2]: [ca_address_sk#11, ca_gmt_offset#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -273,7 +273,7 @@ Output [4]: [cs_bill_addr_sk#19, cs_item_sk#20, cs_ext_sales_price#21, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#22), dynamicpruningexpression(cs_sold_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_bill_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -385,7 +385,7 @@ Output [4]: [ws_item_sk#33, ws_bill_addr_sk#34, ws_ext_sales_price#35, ws_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#36), dynamicpruningexpression(ws_sold_date_sk#36 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_addr_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -560,7 +560,7 @@ ColumnarBroadcastExchange (115) Output [3]: [d_date_sk#6, d_year#54, d_moy#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,5), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,5), *IsNotNull(d_date_sk)] ReadSchema: struct (112) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33/explain.txt index 1e458f6394d..28468cbd546 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33/explain.txt @@ -90,7 +90,7 @@ Output [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_addr_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -120,7 +120,7 @@ Input [5]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4, Output [2]: [ca_address_sk#7, ca_gmt_offset#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -159,7 +159,7 @@ Input [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ca_address_sk#7] Output [2]: [i_item_sk#9, i_manufact_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -170,7 +170,7 @@ Arguments: isnotnull(i_item_sk#9) Output [2]: [i_category#11, i_manufact_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Electronics )] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Electronics )] ReadSchema: struct (20) FilterExecTransformer @@ -273,7 +273,7 @@ Output [4]: [cs_bill_addr_sk#19, cs_item_sk#20, cs_ext_sales_price#21, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#22), dynamicpruningexpression(cs_sold_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_bill_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -385,7 +385,7 @@ Output [4]: [ws_item_sk#33, ws_bill_addr_sk#34, ws_ext_sales_price#35, ws_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#36), dynamicpruningexpression(ws_sold_date_sk#36 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_addr_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -560,7 +560,7 @@ ColumnarBroadcastExchange (115) Output [3]: [d_date_sk#6, d_year#54, d_moy#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,5), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,5), *IsNotNull(d_date_sk)] ReadSchema: struct (112) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34.sf100/explain.txt index f9ce7fdda22..591c310e502 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34.sf100/explain.txt @@ -50,7 +50,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -80,7 +80,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_county), EqualTo(s_county,Williamson County), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_county), *EqualTo(s_county,Williamson County), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -119,7 +119,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -218,7 +218,7 @@ Input [3]: [ss_ticket_number#4, ss_customer_sk#1, cnt#18] Output [5]: [c_customer_sk#20, c_salutation#21, c_first_name#22, c_last_name#23, c_preferred_cust_flag#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -297,7 +297,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#7, d_year#26, d_dom#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34/explain.txt index 96ff9f88d7b..f831f6ee73d 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34/explain.txt @@ -44,7 +44,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_county), EqualTo(s_county,Williamson County), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_county), *EqualTo(s_county,Williamson County), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -113,7 +113,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -191,7 +191,7 @@ Arguments: ((cnt#18 >= 15) AND (cnt#18 <= 20)) Output [5]: [c_customer_sk#19, c_salutation#20, c_first_name#21, c_last_name#22, c_preferred_cust_flag#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -263,7 +263,7 @@ ColumnarBroadcastExchange (55) Output [3]: [d_date_sk#7, d_year#24, d_dom#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35.sf100/explain.txt index 7a70048c0ba..859b6341902 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35.sf100/explain.txt @@ -71,7 +71,7 @@ VeloxColumnarToRow (88) Output [3]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -275,7 +275,7 @@ Input [2]: [c_current_cdemo_sk#4, c_current_addr_sk#5] Output [2]: [ca_address_sk#21, ca_state#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (53) FilterExecTransformer @@ -334,7 +334,7 @@ Input [2]: [c_current_cdemo_sk#4, ca_state#22] Output [6]: [cd_demo_sk#25, cd_gender#26, cd_marital_status#27, cd_dep_count#28, cd_dep_employed_count#29, cd_dep_college_count#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (68) FilterExecTransformer @@ -435,7 +435,7 @@ ColumnarBroadcastExchange (93) Output [3]: [d_date_sk#10, d_year#81, d_qoy#82] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_qoy), EqualTo(d_year,2002), LessThan(d_qoy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_qoy), *EqualTo(d_year,2002), *LessThan(d_qoy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (90) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35/explain.txt index e7ad21cf4e9..bf2d0c4a028 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35/explain.txt @@ -54,7 +54,7 @@ VeloxColumnarToRow (65) Output [3]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -211,7 +211,7 @@ Input [5]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5, exists#2 Output [2]: [ca_address_sk#16, ca_state#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (39) FilterExecTransformer @@ -246,7 +246,7 @@ Input [4]: [c_current_cdemo_sk#4, c_current_addr_sk#5, ca_address_sk#16, ca_stat Output [6]: [cd_demo_sk#18, cd_gender#19, cd_marital_status#20, cd_dep_count#21, cd_dep_employed_count#22, cd_dep_college_count#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -340,7 +340,7 @@ ColumnarBroadcastExchange (70) Output [3]: [d_date_sk#9, d_year#73, d_qoy#74] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_qoy), EqualTo(d_year,2002), LessThan(d_qoy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_qoy), *EqualTo(d_year,2002), *LessThan(d_qoy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (67) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36.sf100/explain.txt index bc54214d79c..9a94d7e5248 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36.sf100/explain.txt @@ -43,7 +43,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Input [6]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [2]: [s_store_sk#8, s_state#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -112,7 +112,7 @@ Input [5]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [3]: [i_item_sk#10, i_class#11, i_category#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -247,7 +247,7 @@ ColumnarBroadcastExchange (52) Output [2]: [d_date_sk#7, d_year#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (49) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36/explain.txt index 036bd92c8b7..bb92b98667a 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36/explain.txt @@ -43,7 +43,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Input [6]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [3]: [i_item_sk#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -108,7 +108,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [2]: [s_store_sk#11, s_state#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -247,7 +247,7 @@ ColumnarBroadcastExchange (52) Output [2]: [d_date_sk#7, d_year#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (49) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37.sf100/explain.txt index 3904e74fad9..af19ddbbcf0 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37.sf100/explain.txt @@ -38,7 +38,7 @@ VeloxColumnarToRow (43) Output [5]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,68.00), LessThanOrEqual(i_current_price,98.00), In(i_manufact_id, [677,694,808,940]), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,68.00), *LessThanOrEqual(i_current_price,98.00), *In(i_manufact_id, [677,694,808,940]), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -68,7 +68,7 @@ Output [3]: [inv_item_sk#6, inv_quantity_on_hand#7, inv_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#8), dynamicpruningexpression(inv_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), GreaterThanOrEqual(inv_quantity_on_hand,100), LessThanOrEqual(inv_quantity_on_hand,500), IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *GreaterThanOrEqual(inv_quantity_on_hand,100), *LessThanOrEqual(inv_quantity_on_hand,500), *IsNotNull(inv_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -129,7 +129,7 @@ Input [4]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4] Output [2]: [cs_item_sk#12, cs_sold_date_sk#13] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (24) FilterExecTransformer @@ -226,7 +226,7 @@ ColumnarBroadcastExchange (48) Output [2]: [d_date_sk#10, d_date#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-02-01), LessThanOrEqual(d_date,2000-04-01), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-02-01), *LessThanOrEqual(d_date,2000-04-01), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer @@ -261,7 +261,7 @@ VeloxColumnarToRow (60) Output [3]: [i_item_sk#1, i_current_price#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,68.00), LessThanOrEqual(i_current_price,98.00), In(i_manufact_id, [677,694,808,940]), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,68.00), *LessThanOrEqual(i_current_price,98.00), *In(i_manufact_id, [677,694,808,940]), *IsNotNull(i_item_sk)] ReadSchema: struct (50) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37/explain.txt index 2994703eec3..da17b3abbb0 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37/explain.txt @@ -34,7 +34,7 @@ VeloxColumnarToRow (37) Output [5]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,68.00), LessThanOrEqual(i_current_price,98.00), In(i_manufact_id, [677,694,808,940]), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,68.00), *LessThanOrEqual(i_current_price,98.00), *In(i_manufact_id, [677,694,808,940]), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -50,7 +50,7 @@ Output [3]: [inv_item_sk#6, inv_quantity_on_hand#7, inv_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#8), dynamicpruningexpression(inv_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), GreaterThanOrEqual(inv_quantity_on_hand,100), LessThanOrEqual(inv_quantity_on_hand,500), IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *GreaterThanOrEqual(inv_quantity_on_hand,100), *LessThanOrEqual(inv_quantity_on_hand,500), *IsNotNull(inv_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -122,7 +122,7 @@ Input [4]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4] Output [2]: [cs_item_sk#11, cs_sold_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -202,7 +202,7 @@ ColumnarBroadcastExchange (42) Output [2]: [d_date_sk#10, d_date#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-02-01), LessThanOrEqual(d_date,2000-04-01), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-02-01), *LessThanOrEqual(d_date,2000-04-01), *IsNotNull(d_date_sk)] ReadSchema: struct (39) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38.sf100/explain.txt index 45ca6514e70..f7f3d17b0da 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38.sf100/explain.txt @@ -84,7 +84,7 @@ Output [2]: [ss_customer_sk#1, ss_sold_date_sk#2] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#2), dynamicpruningexpression(ss_sold_date_sk#2 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -131,7 +131,7 @@ Input [2]: [ss_customer_sk#1, d_date#5] Output [3]: [c_customer_sk#7, c_first_name#8, c_last_name#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -230,7 +230,7 @@ Output [2]: [cs_bill_customer_sk#13, cs_sold_date_sk#14] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#14), dynamicpruningexpression(cs_sold_date_sk#14 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -359,7 +359,7 @@ Output [2]: [ws_bill_customer_sk#23, ws_sold_date_sk#24] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#24), dynamicpruningexpression(ws_sold_date_sk#24 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -514,7 +514,7 @@ ColumnarBroadcastExchange (109) Output [3]: [d_date_sk#4, d_date#5, d_month_seq#35] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (106) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38/explain.txt index b738ab920dc..f34b790efe9 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38/explain.txt @@ -65,7 +65,7 @@ Output [2]: [ss_customer_sk#1, ss_sold_date_sk#2] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#2), dynamicpruningexpression(ss_sold_date_sk#2 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -95,7 +95,7 @@ Input [4]: [ss_customer_sk#1, ss_sold_date_sk#2, d_date_sk#4, d_date#5] Output [3]: [c_customer_sk#6, c_first_name#7, c_last_name#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -166,7 +166,7 @@ Output [2]: [cs_bill_customer_sk#10, cs_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#11), dynamicpruningexpression(cs_sold_date_sk#11 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -271,7 +271,7 @@ Output [2]: [ws_bill_customer_sk#18, ws_sold_date_sk#19] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#19), dynamicpruningexpression(ws_sold_date_sk#19 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (50) FilterExecTransformer @@ -402,7 +402,7 @@ ColumnarBroadcastExchange (82) Output [3]: [d_date_sk#4, d_date#5, d_month_seq#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (79) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a.sf100/explain.txt index 354bcd33a48..4f08ab36feb 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a.sf100/explain.txt @@ -68,7 +68,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -98,7 +98,7 @@ Input [6]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_ Output [1]: [i_item_sk#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -133,7 +133,7 @@ Input [5]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, d_moy#7, Output [2]: [w_warehouse_sk#9, w_warehouse_name#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -233,7 +233,7 @@ Output [4]: [inv_item_sk#29, inv_warehouse_sk#30, inv_quantity_on_hand#31, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#32), dynamicpruningexpression(inv_date_sk#32 IN dynamicpruning#33)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -408,7 +408,7 @@ ColumnarBroadcastExchange (86) Output [3]: [d_date_sk#6, d_year#55, d_moy#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,1), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,1), *IsNotNull(d_date_sk)] ReadSchema: struct (83) FilterExecTransformer @@ -438,7 +438,7 @@ ColumnarBroadcastExchange (91) Output [3]: [d_date_sk#34, d_year#56, d_moy#35] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (88) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a/explain.txt index 4afa1031f45..f8f2ab3f470 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a/explain.txt @@ -64,7 +64,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -75,7 +75,7 @@ Arguments: (isnotnull(inv_item_sk#1) AND isnotnull(inv_warehouse_sk#2)) Output [1]: [i_item_sk#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -110,7 +110,7 @@ Input [5]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_ Output [2]: [w_warehouse_sk#7, w_warehouse_name#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -212,7 +212,7 @@ Output [4]: [inv_item_sk#28, inv_warehouse_sk#29, inv_quantity_on_hand#30, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#31), dynamicpruningexpression(inv_date_sk#31 IN dynamicpruning#32)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -384,7 +384,7 @@ ColumnarBroadcastExchange (80) Output [3]: [d_date_sk#9, d_year#53, d_moy#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,1), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,1), *IsNotNull(d_date_sk)] ReadSchema: struct (77) FilterExecTransformer @@ -414,7 +414,7 @@ ColumnarBroadcastExchange (85) Output [3]: [d_date_sk#36, d_year#54, d_moy#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (82) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b.sf100/explain.txt index 8b7a5f162bb..f76e1227fce 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b.sf100/explain.txt @@ -68,7 +68,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -98,7 +98,7 @@ Input [6]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_ Output [1]: [i_item_sk#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -133,7 +133,7 @@ Input [5]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, d_moy#7, Output [2]: [w_warehouse_sk#9, w_warehouse_name#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -233,7 +233,7 @@ Output [4]: [inv_item_sk#29, inv_warehouse_sk#30, inv_quantity_on_hand#31, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#32), dynamicpruningexpression(inv_date_sk#32 IN dynamicpruning#33)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -408,7 +408,7 @@ ColumnarBroadcastExchange (86) Output [3]: [d_date_sk#6, d_year#55, d_moy#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,1), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,1), *IsNotNull(d_date_sk)] ReadSchema: struct (83) FilterExecTransformer @@ -438,7 +438,7 @@ ColumnarBroadcastExchange (91) Output [3]: [d_date_sk#34, d_year#56, d_moy#35] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (88) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b/explain.txt index 7a5a203f9af..73cfee64958 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b/explain.txt @@ -64,7 +64,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -75,7 +75,7 @@ Arguments: (isnotnull(inv_item_sk#1) AND isnotnull(inv_warehouse_sk#2)) Output [1]: [i_item_sk#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -110,7 +110,7 @@ Input [5]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_ Output [2]: [w_warehouse_sk#7, w_warehouse_name#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -212,7 +212,7 @@ Output [4]: [inv_item_sk#28, inv_warehouse_sk#29, inv_quantity_on_hand#30, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#31), dynamicpruningexpression(inv_date_sk#31 IN dynamicpruning#32)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -384,7 +384,7 @@ ColumnarBroadcastExchange (80) Output [3]: [d_date_sk#9, d_year#53, d_moy#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,1), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,1), *IsNotNull(d_date_sk)] ReadSchema: struct (77) FilterExecTransformer @@ -414,7 +414,7 @@ ColumnarBroadcastExchange (85) Output [3]: [d_date_sk#36, d_year#54, d_moy#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (82) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4.sf100/explain.txt index abab4226c6d..0209d6a6910 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4.sf100/explain.txt @@ -165,7 +165,7 @@ Output [6]: [ss_customer_sk#1, ss_ext_discount_amt#2, ss_ext_sales_price#3, ss_e Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -212,7 +212,7 @@ Input [6]: [ss_customer_sk#1, ss_ext_discount_amt#2, ss_ext_sales_price#3, ss_ex Output [8]: [c_customer_sk#11, c_customer_id#12, c_first_name#13, c_last_name#14, c_preferred_cust_flag#15, c_birth_country#16, c_login#17, c_email_address#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (14) FilterExecTransformer @@ -319,7 +319,7 @@ Output [6]: [ss_customer_sk#30, ss_ext_discount_amt#31, ss_ext_sales_price#32, s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#35), dynamicpruningexpression(ss_sold_date_sk#35 IN dynamicpruning#36)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -448,7 +448,7 @@ Output [6]: [cs_bill_customer_sk#63, cs_ext_discount_amt#64, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#68), dynamicpruningexpression(cs_sold_date_sk#68 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -589,7 +589,7 @@ Output [6]: [cs_bill_customer_sk#90, cs_ext_discount_amt#91, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#95), dynamicpruningexpression(cs_sold_date_sk#95 IN dynamicpruning#36)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (107) FilterExecTransformer @@ -722,7 +722,7 @@ Output [6]: [ws_bill_customer_sk#116, ws_ext_discount_amt#117, ws_ext_sales_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#121), dynamicpruningexpression(ws_sold_date_sk#121 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (140) FilterExecTransformer @@ -863,7 +863,7 @@ Output [6]: [ws_bill_customer_sk#143, ws_ext_discount_amt#144, ws_ext_sales_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#148), dynamicpruningexpression(ws_sold_date_sk#148 IN dynamicpruning#36)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (175) FilterExecTransformer @@ -1014,7 +1014,7 @@ ColumnarBroadcastExchange (213) Output [2]: [d_date_sk#8, d_year#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (211) FilterExecTransformer @@ -1039,7 +1039,7 @@ ColumnarBroadcastExchange (217) Output [2]: [d_date_sk#37, d_year#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (215) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4/explain.txt index 7260ff8cf61..7786419b8f3 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4/explain.txt @@ -143,7 +143,7 @@ VeloxColumnarToRow (179) Output [8]: [c_customer_sk#1, c_customer_id#2, c_first_name#3, c_last_name#4, c_preferred_cust_flag#5, c_birth_country#6, c_login#7, c_email_address#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (2) FilterExecTransformer @@ -155,7 +155,7 @@ Output [6]: [ss_customer_sk#9, ss_ext_discount_amt#10, ss_ext_sales_price#11, ss Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#14), dynamicpruningexpression(ss_sold_date_sk#14 IN dynamicpruning#15)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -252,7 +252,7 @@ Arguments: (isnotnull(year_total#26) AND (year_total#26 > 0.000000)) Output [8]: [c_customer_sk#27, c_customer_id#28, c_first_name#29, c_last_name#30, c_preferred_cust_flag#31, c_birth_country#32, c_login#33, c_email_address#34] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (27) FilterExecTransformer @@ -264,7 +264,7 @@ Output [6]: [ss_customer_sk#35, ss_ext_discount_amt#36, ss_ext_sales_price#37, s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#40), dynamicpruningexpression(ss_sold_date_sk#40 IN dynamicpruning#41)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -377,7 +377,7 @@ Join condition: None Output [8]: [c_customer_sk#58, c_customer_id#59, c_first_name#60, c_last_name#61, c_preferred_cust_flag#62, c_birth_country#63, c_login#64, c_email_address#65] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (56) FilterExecTransformer @@ -389,7 +389,7 @@ Output [6]: [cs_bill_customer_sk#66, cs_ext_discount_amt#67, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#71), dynamicpruningexpression(cs_sold_date_sk#71 IN dynamicpruning#15)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (58) FilterExecTransformer @@ -510,7 +510,7 @@ Input [12]: [customer_id#25, year_total#26, customer_id#50, customer_first_name# Output [8]: [c_customer_sk#83, c_customer_id#84, c_first_name#85, c_last_name#86, c_preferred_cust_flag#87, c_birth_country#88, c_login#89, c_email_address#90] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (87) FilterExecTransformer @@ -522,7 +522,7 @@ Output [6]: [cs_bill_customer_sk#91, cs_ext_discount_amt#92, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#96), dynamicpruningexpression(cs_sold_date_sk#96 IN dynamicpruning#41)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (89) FilterExecTransformer @@ -639,7 +639,7 @@ Input [13]: [customer_id#25, year_total#26, customer_id#50, customer_first_name# Output [8]: [c_customer_sk#107, c_customer_id#108, c_first_name#109, c_last_name#110, c_preferred_cust_flag#111, c_birth_country#112, c_login#113, c_email_address#114] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (117) FilterExecTransformer @@ -651,7 +651,7 @@ Output [6]: [ws_bill_customer_sk#115, ws_ext_discount_amt#116, ws_ext_sales_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#120), dynamicpruningexpression(ws_sold_date_sk#120 IN dynamicpruning#15)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (119) FilterExecTransformer @@ -772,7 +772,7 @@ Input [12]: [customer_id#25, customer_id#50, customer_first_name#51, customer_la Output [8]: [c_customer_sk#132, c_customer_id#133, c_first_name#134, c_last_name#135, c_preferred_cust_flag#136, c_birth_country#137, c_login#138, c_email_address#139] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (148) FilterExecTransformer @@ -784,7 +784,7 @@ Output [6]: [ws_bill_customer_sk#140, ws_ext_discount_amt#141, ws_ext_sales_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#145), dynamicpruningexpression(ws_sold_date_sk#145 IN dynamicpruning#41)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (150) FilterExecTransformer @@ -920,7 +920,7 @@ ColumnarBroadcastExchange (183) Output [2]: [d_date_sk#16, d_year#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (181) FilterExecTransformer @@ -945,7 +945,7 @@ ColumnarBroadcastExchange (187) Output [2]: [d_date_sk#42, d_year#43] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (185) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40.sf100/explain.txt index 66fa78dda7d..fa2d5357a23 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40.sf100/explain.txt @@ -45,7 +45,7 @@ Output [5]: [cs_warehouse_sk#1, cs_item_sk#2, cs_order_number#3, cs_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_warehouse_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_warehouse_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Input [5]: [cs_warehouse_sk#1, cs_item_sk#2, cs_order_number#3, cs_sales_price#4 Output [4]: [cr_item_sk#9, cr_order_number#10, cr_refunded_cash#11, cr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -119,7 +119,7 @@ Input [8]: [cs_warehouse_sk#1, cs_item_sk#2, cs_order_number#3, cs_sales_price#4 Output [3]: [i_item_sk#14, i_item_id#15, i_current_price#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,0.99), LessThanOrEqual(i_current_price,1.49), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,0.99), *LessThanOrEqual(i_current_price,1.49), *IsNotNull(i_item_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -177,7 +177,7 @@ Input [7]: [cs_warehouse_sk#1, cs_sales_price#4, cs_sold_date_sk#5, cr_refunded_ Output [2]: [w_warehouse_sk#19, w_state#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -272,7 +272,7 @@ VeloxColumnarToRow (63) Output [2]: [i_item_sk#14, i_current_price#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,0.99), LessThanOrEqual(i_current_price,1.49), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,0.99), *LessThanOrEqual(i_current_price,1.49), *IsNotNull(i_item_sk)] ReadSchema: struct (53) FilterExecTransformer @@ -331,7 +331,7 @@ ColumnarBroadcastExchange (67) Output [2]: [d_date_sk#17, d_date#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-02-10), LessThanOrEqual(d_date,2000-04-10), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-02-10), *LessThanOrEqual(d_date,2000-04-10), *IsNotNull(d_date_sk)] ReadSchema: struct (65) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40/explain.txt index fc6008467be..04a741adf79 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40/explain.txt @@ -45,7 +45,7 @@ Output [5]: [cs_warehouse_sk#1, cs_item_sk#2, cs_order_number#3, cs_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_warehouse_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_warehouse_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Input [5]: [cs_warehouse_sk#1, cs_item_sk#2, cs_order_number#3, cs_sales_price#4 Output [4]: [cr_item_sk#8, cr_order_number#9, cr_refunded_cash#10, cr_returned_date_sk#11] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -119,7 +119,7 @@ Input [8]: [cs_warehouse_sk#1, cs_item_sk#2, cs_order_number#3, cs_sales_price#4 Output [2]: [w_warehouse_sk#13, w_state#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -154,7 +154,7 @@ Input [7]: [cs_warehouse_sk#1, cs_item_sk#2, cs_sales_price#4, cs_sold_date_sk#5 Output [3]: [i_item_sk#15, i_item_id#16, i_current_price#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,0.99), LessThanOrEqual(i_current_price,1.49), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,0.99), *LessThanOrEqual(i_current_price,1.49), *IsNotNull(i_item_sk)] ReadSchema: struct (28) FilterExecTransformer @@ -266,7 +266,7 @@ ColumnarBroadcastExchange (55) Output [2]: [d_date_sk#18, d_date#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-02-10), LessThanOrEqual(d_date,2000-04-10), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-02-10), *LessThanOrEqual(d_date,2000-04-10), *IsNotNull(d_date_sk)] ReadSchema: struct (53) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41.sf100/explain.txt index 3ee9ade24a2..6d7bebb85ec 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41.sf100/explain.txt @@ -32,7 +32,7 @@ VeloxColumnarToRow (34) Output [3]: [i_manufact_id#1, i_manufact#2, i_product_name#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), GreaterThanOrEqual(i_manufact_id,738), LessThanOrEqual(i_manufact_id,778), IsNotNull(i_manufact)] +PushedFilters: [*IsNotNull(i_manufact_id), *GreaterThanOrEqual(i_manufact_id,738), *LessThanOrEqual(i_manufact_id,778), *IsNotNull(i_manufact)] ReadSchema: struct (2) FilterExecTransformer @@ -47,7 +47,7 @@ Input [3]: [i_manufact_id#1, i_manufact#2, i_product_name#3] Output [5]: [i_category#4, i_manufact#5, i_size#6, i_color#7, i_units#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,powder ),EqualTo(i_color,khaki )),Or(EqualTo(i_units,Ounce ),EqualTo(i_units,Oz ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,brown ),EqualTo(i_color,honeydew )),Or(EqualTo(i_units,Bunch ),EqualTo(i_units,Ton ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,floral ),EqualTo(i_color,deep )),Or(EqualTo(i_units,N/A ),EqualTo(i_units,Dozen ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,light ),EqualTo(i_color,cornflower )),Or(EqualTo(i_units,Box ),EqualTo(i_units,Pound ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large )))))),Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,midnight ),EqualTo(i_color,snow )),Or(EqualTo(i_units,Pallet ),EqualTo(i_units,Gross ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,cyan ),EqualTo(i_color,papaya )),Or(EqualTo(i_units,Cup ),EqualTo(i_units,Dram ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,orange ),EqualTo(i_color,frosted )),Or(EqualTo(i_units,Each ),EqualTo(i_units,Tbl ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,forest ),EqualTo(i_color,ghost )),Or(EqualTo(i_units,Lb ),EqualTo(i_units,Bundle ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))))))), IsNotNull(i_manufact)] +PushedFilters: [*Or(Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,powder ),EqualTo(i_color,khaki )),Or(EqualTo(i_units,Ounce ),EqualTo(i_units,Oz ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,brown ),EqualTo(i_color,honeydew )),Or(EqualTo(i_units,Bunch ),EqualTo(i_units,Ton ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,floral ),EqualTo(i_color,deep )),Or(EqualTo(i_units,N/A ),EqualTo(i_units,Dozen ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,light ),EqualTo(i_color,cornflower )),Or(EqualTo(i_units,Box ),EqualTo(i_units,Pound ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large )))))),Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,midnight ),EqualTo(i_color,snow )),Or(EqualTo(i_units,Pallet ),EqualTo(i_units,Gross ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,cyan ),EqualTo(i_color,papaya )),Or(EqualTo(i_units,Cup ),EqualTo(i_units,Dram ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,orange ),EqualTo(i_color,frosted )),Or(EqualTo(i_units,Each ),EqualTo(i_units,Tbl ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,forest ),EqualTo(i_color,ghost )),Or(EqualTo(i_units,Lb ),EqualTo(i_units,Bundle ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))))))), *IsNotNull(i_manufact)] ReadSchema: struct (5) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41/explain.txt index 3ee9ade24a2..6d7bebb85ec 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41/explain.txt @@ -32,7 +32,7 @@ VeloxColumnarToRow (34) Output [3]: [i_manufact_id#1, i_manufact#2, i_product_name#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), GreaterThanOrEqual(i_manufact_id,738), LessThanOrEqual(i_manufact_id,778), IsNotNull(i_manufact)] +PushedFilters: [*IsNotNull(i_manufact_id), *GreaterThanOrEqual(i_manufact_id,738), *LessThanOrEqual(i_manufact_id,778), *IsNotNull(i_manufact)] ReadSchema: struct (2) FilterExecTransformer @@ -47,7 +47,7 @@ Input [3]: [i_manufact_id#1, i_manufact#2, i_product_name#3] Output [5]: [i_category#4, i_manufact#5, i_size#6, i_color#7, i_units#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,powder ),EqualTo(i_color,khaki )),Or(EqualTo(i_units,Ounce ),EqualTo(i_units,Oz ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,brown ),EqualTo(i_color,honeydew )),Or(EqualTo(i_units,Bunch ),EqualTo(i_units,Ton ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,floral ),EqualTo(i_color,deep )),Or(EqualTo(i_units,N/A ),EqualTo(i_units,Dozen ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,light ),EqualTo(i_color,cornflower )),Or(EqualTo(i_units,Box ),EqualTo(i_units,Pound ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large )))))),Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,midnight ),EqualTo(i_color,snow )),Or(EqualTo(i_units,Pallet ),EqualTo(i_units,Gross ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,cyan ),EqualTo(i_color,papaya )),Or(EqualTo(i_units,Cup ),EqualTo(i_units,Dram ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,orange ),EqualTo(i_color,frosted )),Or(EqualTo(i_units,Each ),EqualTo(i_units,Tbl ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,forest ),EqualTo(i_color,ghost )),Or(EqualTo(i_units,Lb ),EqualTo(i_units,Bundle ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))))))), IsNotNull(i_manufact)] +PushedFilters: [*Or(Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,powder ),EqualTo(i_color,khaki )),Or(EqualTo(i_units,Ounce ),EqualTo(i_units,Oz ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,brown ),EqualTo(i_color,honeydew )),Or(EqualTo(i_units,Bunch ),EqualTo(i_units,Ton ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,floral ),EqualTo(i_color,deep )),Or(EqualTo(i_units,N/A ),EqualTo(i_units,Dozen ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,light ),EqualTo(i_color,cornflower )),Or(EqualTo(i_units,Box ),EqualTo(i_units,Pound ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large )))))),Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,midnight ),EqualTo(i_color,snow )),Or(EqualTo(i_units,Pallet ),EqualTo(i_units,Gross ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,cyan ),EqualTo(i_color,papaya )),Or(EqualTo(i_units,Cup ),EqualTo(i_units,Dram ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,orange ),EqualTo(i_color,frosted )),Or(EqualTo(i_units,Each ),EqualTo(i_units,Tbl ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,forest ),EqualTo(i_color,ghost )),Or(EqualTo(i_units,Lb ),EqualTo(i_units,Bundle ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))))))), *IsNotNull(i_manufact)] ReadSchema: struct (5) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42.sf100/explain.txt index 11748f4d6ce..f7698f7ee27 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42.sf100/explain.txt @@ -28,7 +28,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -39,7 +39,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#5, i_category_id#6, i_category#7, i_manager_id#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -156,7 +156,7 @@ ColumnarBroadcastExchange (33) Output [3]: [d_date_sk#9, d_year#10, d_moy#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (30) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42/explain.txt index 0d61710a556..6ee3b47ef1a 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_d Output [4]: [i_item_sk#7, i_category_id#8, i_category#9, i_manager_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43.sf100/explain.txt index db7303e98f8..fa727fe9a91 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43.sf100/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_day_name#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -60,7 +60,7 @@ Output [3]: [ss_store_sk#4, ss_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_day_name#3, ss_store_sk#4, ss_sales_price#5, ss_sold_ Output [4]: [s_store_sk#8, s_store_id#9, s_store_name#10, s_gmt_offset#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_gmt_offset), EqualTo(s_gmt_offset,-5.00), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_gmt_offset), *EqualTo(s_gmt_offset,-5.00), *IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43/explain.txt index e18ae39df70..9f27fd3d602 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_day_name#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_store_sk#4, ss_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_day_name#3, ss_store_sk#4, ss_sales_price#5, ss_sold_ Output [4]: [s_store_sk#7, s_store_id#8, s_store_name#9, s_gmt_offset#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_gmt_offset), EqualTo(s_gmt_offset,-5.00), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_gmt_offset), *EqualTo(s_gmt_offset,-5.00), *IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44.sf100/explain.txt index 485169f3dac..65bb105aaa5 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44.sf100/explain.txt @@ -47,7 +47,7 @@ VeloxColumnarToRow (51) Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_net_profit#3, ss_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_store_sk), EqualTo(ss_store_sk,4)] +PushedFilters: [*IsNotNull(ss_store_sk), *EqualTo(ss_store_sk,4)] ReadSchema: struct (2) FilterExecTransformer @@ -193,7 +193,7 @@ Input [4]: [item_sk#12, rnk#15, item_sk#21, rnk#23] Output [2]: [i_item_sk#24, i_product_name#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (37) FilterExecTransformer @@ -274,7 +274,7 @@ VeloxColumnarToRow (65) Output [4]: [ss_addr_sk#30, ss_store_sk#31, ss_net_profit#32, ss_sold_date_sk#33] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_store_sk), EqualTo(ss_store_sk,4), IsNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *EqualTo(ss_store_sk,4), *IsNull(ss_addr_sk)] ReadSchema: struct (53) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44/explain.txt index cd4eab38f71..6d693d3fa34 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (57) Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_net_profit#3, ss_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_store_sk), EqualTo(ss_store_sk,4)] +PushedFilters: [*IsNotNull(ss_store_sk), *EqualTo(ss_store_sk,4)] ReadSchema: struct (2) FilterExecTransformer @@ -217,7 +217,7 @@ Input [4]: [item_sk#12, rnk#15, item_sk#22, rnk#24] Output [2]: [i_item_sk#26, i_product_name#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -298,7 +298,7 @@ VeloxColumnarToRow (71) Output [4]: [ss_addr_sk#32, ss_store_sk#33, ss_net_profit#34, ss_sold_date_sk#35] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_store_sk), EqualTo(ss_store_sk,4), IsNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *EqualTo(ss_store_sk,4), *IsNull(ss_addr_sk)] ReadSchema: struct (59) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45.sf100/explain.txt index 85e1b889d68..0b2bcc2ccb2 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45.sf100/explain.txt @@ -57,7 +57,7 @@ Output [4]: [ws_item_sk#2, ws_bill_customer_sk#3, ws_sales_price#4, ws_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#5), dynamicpruningexpression(ws_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_bill_customer_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -87,7 +87,7 @@ Input [5]: [ws_item_sk#2, ws_bill_customer_sk#3, ws_sales_price#4, ws_sold_date_ Output [2]: [i_item_sk#8, i_item_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -139,7 +139,7 @@ Input [3]: [ws_bill_customer_sk#3, ws_sales_price#4, i_item_id#9] Output [2]: [c_customer_sk#11, c_current_addr_sk#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -171,7 +171,7 @@ Input [2]: [c_customer_sk#11, c_current_addr_sk#12] Output [3]: [ca_address_sk#14, ca_city#15, ca_zip#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (30) FilterExecTransformer @@ -240,7 +240,7 @@ Input [6]: [ws_bill_customer_sk#3, ws_sales_price#4, i_item_id#9, c_customer_sk# Output [2]: [i_item_sk#19, i_item_id#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_item_sk, [11,13,17,19,2,23,29,3,5,7])] +PushedFilters: [*In(i_item_sk, [11,13,17,19,2,23,29,3,5,7])] ReadSchema: struct (47) FilterExecTransformer @@ -342,7 +342,7 @@ ColumnarBroadcastExchange (72) Output [3]: [d_date_sk#7, d_year#27, d_qoy#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (69) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45/explain.txt index 6870b4692b1..ba770087d57 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45/explain.txt @@ -47,7 +47,7 @@ Output [4]: [ws_item_sk#2, ws_bill_customer_sk#3, ws_sales_price#4, ws_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#5), dynamicpruningexpression(ws_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_bill_customer_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -58,7 +58,7 @@ Arguments: (isnotnull(ws_bill_customer_sk#3) AND isnotnull(ws_item_sk#2)) Output [2]: [c_customer_sk#7, c_current_addr_sk#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -93,7 +93,7 @@ Input [6]: [ws_item_sk#2, ws_bill_customer_sk#3, ws_sales_price#4, ws_sold_date_ Output [3]: [ca_address_sk#9, ca_city#10, ca_zip#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -147,7 +147,7 @@ Input [6]: [ws_item_sk#2, ws_sales_price#4, ws_sold_date_sk#5, ca_city#10, ca_zi Output [2]: [i_item_sk#13, i_item_id#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -182,7 +182,7 @@ Input [6]: [ws_item_sk#2, ws_sales_price#4, ca_city#10, ca_zip#11, i_item_sk#13, Output [2]: [i_item_sk#15, i_item_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_item_sk, [11,13,17,19,2,23,29,3,5,7])] +PushedFilters: [*In(i_item_sk, [11,13,17,19,2,23,29,3,5,7])] ReadSchema: struct (33) FilterExecTransformer @@ -284,7 +284,7 @@ ColumnarBroadcastExchange (58) Output [3]: [d_date_sk#12, d_year#23, d_qoy#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (55) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46.sf100/explain.txt index d910f8b70e4..7244d2b69bc 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46.sf100/explain.txt @@ -58,7 +58,7 @@ VeloxColumnarToRow (70) Output [4]: [c_customer_sk#1, c_current_addr_sk#2, c_first_name#3, c_last_name#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [4]: [c_customer_sk#1, c_current_addr_sk#2, c_first_name#3, c_last_name#4] Output [2]: [ca_address_sk#6, ca_city#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (10) FilterExecTransformer @@ -150,7 +150,7 @@ Output [8]: [ss_customer_sk#10, ss_hdemo_sk#11, ss_addr_sk#12, ss_store_sk#13, s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#17), dynamicpruningexpression(ss_sold_date_sk#17 IN dynamicpruning#18)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -180,7 +180,7 @@ Input [9]: [ss_customer_sk#10, ss_hdemo_sk#11, ss_addr_sk#12, ss_store_sk#13, ss Output [2]: [s_store_sk#20, s_city#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Fairview,Midway]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Fairview,Midway]), *IsNotNull(s_store_sk)] ReadSchema: struct (32) FilterExecTransformer @@ -219,7 +219,7 @@ Input [8]: [ss_customer_sk#10, ss_hdemo_sk#11, ss_addr_sk#12, ss_store_sk#13, ss Output [3]: [hd_demo_sk#22, hd_dep_count#23, hd_vehicle_count#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -352,7 +352,7 @@ ColumnarBroadcastExchange (75) Output [3]: [d_date_sk#19, d_year#36, d_dow#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_dow, [0,6]), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_dow, [0,6]), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (72) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46/explain.txt index 4d3033a5f0f..bb340823b01 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46/explain.txt @@ -51,7 +51,7 @@ Output [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [2]: [s_store_sk#11, s_city#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Fairview,Midway]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Fairview,Midway]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -120,7 +120,7 @@ Input [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#13, hd_dep_count#14, hd_vehicle_count#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -159,7 +159,7 @@ Input [7]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_ticket_number#5, s Output [2]: [ca_address_sk#16, ca_city#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (27) FilterExecTransformer @@ -233,7 +233,7 @@ Input [6]: [ss_ticket_number#5, ss_customer_sk#1, ss_addr_sk#3, ca_city#17, sum( Output [4]: [c_customer_sk#30, c_current_addr_sk#31, c_first_name#32, c_last_name#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -307,7 +307,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#10, d_year#36, d_dow#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_dow, [0,6]), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_dow, [0,6]), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47.sf100/explain.txt index 7155d454bb3..67066ea7c75 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47.sf100/explain.txt @@ -75,7 +75,7 @@ Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -105,7 +105,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4, d_ Output [3]: [s_store_sk#9, s_store_name#10, s_company_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_company_name)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_company_name)] ReadSchema: struct (9) FilterExecTransformer @@ -157,7 +157,7 @@ Input [6]: [ss_item_sk#1, ss_sales_price#3, d_year#7, d_moy#8, s_store_name#10, Output [3]: [i_item_sk#13, i_brand#14, i_category#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (22) FilterExecTransformer @@ -439,7 +439,7 @@ ColumnarBroadcastExchange (95) Output [3]: [d_date_sk#6, d_year#7, d_moy#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (93) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47/explain.txt index ea13e029402..7cd614d0ea8 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47/explain.txt @@ -64,7 +64,7 @@ VeloxColumnarToRow (77) Output [3]: [i_item_sk#1, i_brand#2, i_category#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Output [4]: [ss_item_sk#4, ss_store_sk#5, ss_sales_price#6, ss_sold_date_sk#7] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -130,7 +130,7 @@ Input [8]: [i_brand#2, i_category#3, ss_store_sk#5, ss_sales_price#6, ss_sold_da Output [3]: [s_store_sk#12, s_store_name#13, s_company_name#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_company_name)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_company_name)] ReadSchema: struct (17) FilterExecTransformer @@ -382,7 +382,7 @@ ColumnarBroadcastExchange (81) Output [3]: [d_date_sk#9, d_year#10, d_moy#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (79) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48.sf100/explain.txt index c654e586875..dba42406bad 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48.sf100/explain.txt @@ -37,7 +37,7 @@ Output [7]: [ss_cdemo_sk#1, ss_addr_sk#2, ss_store_sk#3, ss_quantity#4, ss_sales Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_addr_sk), Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00))), Or(Or(And(GreaterThanOrEqual(ss_net_profit,0.00),LessThanOrEqual(ss_net_profit,2000.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,3000.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,25000.00)))] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_addr_sk), *Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00))), *Or(Or(And(GreaterThanOrEqual(ss_net_profit,0.00),LessThanOrEqual(ss_net_profit,2000.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,3000.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,25000.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -48,7 +48,7 @@ Arguments: ((((isnotnull(ss_store_sk#3) AND isnotnull(ss_cdemo_sk#1)) AND isnotn Output [1]: [s_store_sk#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -83,7 +83,7 @@ Input [8]: [ss_cdemo_sk#1, ss_addr_sk#2, ss_store_sk#3, ss_quantity#4, ss_sales_ Output [3]: [cd_demo_sk#10, cd_marital_status#11, cd_education_status#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,4 yr Degree )),And(EqualTo(cd_marital_status,D),EqualTo(cd_education_status,2 yr Degree ))),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College )))] +PushedFilters: [*IsNotNull(cd_demo_sk), *Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,4 yr Degree )),And(EqualTo(cd_marital_status,D),EqualTo(cd_education_status,2 yr Degree ))),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College )))] ReadSchema: struct (12) FilterExecTransformer @@ -118,7 +118,7 @@ Input [9]: [ss_cdemo_sk#1, ss_addr_sk#2, ss_quantity#4, ss_sales_price#5, ss_net Output [3]: [ca_address_sk#13, ca_state#14, ca_country#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), EqualTo(ca_country,United States), IsNotNull(ca_address_sk), Or(Or(In(ca_state, [CO,OH,TX]),In(ca_state, [KY,MN,OR])),In(ca_state, [CA,MS,VA]))] +PushedFilters: [*IsNotNull(ca_country), *EqualTo(ca_country,United States), *IsNotNull(ca_address_sk), *Or(Or(In(ca_state, [CO,OH,TX]),In(ca_state, [KY,MN,OR])),In(ca_state, [CA,MS,VA]))] ReadSchema: struct (20) FilterExecTransformer @@ -223,7 +223,7 @@ ColumnarBroadcastExchange (46) Output [2]: [d_date_sk#16, d_year#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (43) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48/explain.txt index c654e586875..dba42406bad 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48/explain.txt @@ -37,7 +37,7 @@ Output [7]: [ss_cdemo_sk#1, ss_addr_sk#2, ss_store_sk#3, ss_quantity#4, ss_sales Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_addr_sk), Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00))), Or(Or(And(GreaterThanOrEqual(ss_net_profit,0.00),LessThanOrEqual(ss_net_profit,2000.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,3000.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,25000.00)))] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_addr_sk), *Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00))), *Or(Or(And(GreaterThanOrEqual(ss_net_profit,0.00),LessThanOrEqual(ss_net_profit,2000.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,3000.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,25000.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -48,7 +48,7 @@ Arguments: ((((isnotnull(ss_store_sk#3) AND isnotnull(ss_cdemo_sk#1)) AND isnotn Output [1]: [s_store_sk#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -83,7 +83,7 @@ Input [8]: [ss_cdemo_sk#1, ss_addr_sk#2, ss_store_sk#3, ss_quantity#4, ss_sales_ Output [3]: [cd_demo_sk#10, cd_marital_status#11, cd_education_status#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,4 yr Degree )),And(EqualTo(cd_marital_status,D),EqualTo(cd_education_status,2 yr Degree ))),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College )))] +PushedFilters: [*IsNotNull(cd_demo_sk), *Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,4 yr Degree )),And(EqualTo(cd_marital_status,D),EqualTo(cd_education_status,2 yr Degree ))),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College )))] ReadSchema: struct (12) FilterExecTransformer @@ -118,7 +118,7 @@ Input [9]: [ss_cdemo_sk#1, ss_addr_sk#2, ss_quantity#4, ss_sales_price#5, ss_net Output [3]: [ca_address_sk#13, ca_state#14, ca_country#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), EqualTo(ca_country,United States), IsNotNull(ca_address_sk), Or(Or(In(ca_state, [CO,OH,TX]),In(ca_state, [KY,MN,OR])),In(ca_state, [CA,MS,VA]))] +PushedFilters: [*IsNotNull(ca_country), *EqualTo(ca_country,United States), *IsNotNull(ca_address_sk), *Or(Or(In(ca_state, [CO,OH,TX]),In(ca_state, [KY,MN,OR])),In(ca_state, [CA,MS,VA]))] ReadSchema: struct (20) FilterExecTransformer @@ -223,7 +223,7 @@ ColumnarBroadcastExchange (46) Output [2]: [d_date_sk#16, d_year#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (43) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49.sf100/explain.txt index 7b906399879..9942ee8abe7 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49.sf100/explain.txt @@ -109,7 +109,7 @@ Output [6]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4, ws_n Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#6), dynamicpruningexpression(ws_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ws_net_profit), IsNotNull(ws_net_paid), IsNotNull(ws_quantity), GreaterThan(ws_net_profit,1.00), GreaterThan(ws_net_paid,0.00), GreaterThan(ws_quantity,0), IsNotNull(ws_order_number), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_net_profit), *IsNotNull(ws_net_paid), *IsNotNull(ws_quantity), *GreaterThan(ws_net_profit,1.00), *GreaterThan(ws_net_paid,0.00), *GreaterThan(ws_quantity,0), *IsNotNull(ws_order_number), *IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -160,7 +160,7 @@ Input [4]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4] Output [5]: [wr_item_sk#10, wr_order_number#11, wr_return_quantity#12, wr_return_amt#13, wr_returned_date_sk#14] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_return_amt), GreaterThan(wr_return_amt,10000.00), IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_return_amt), *GreaterThan(wr_return_amt,10000.00), *IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (15) FilterExecTransformer @@ -270,7 +270,7 @@ Output [6]: [cs_item_sk#43, cs_order_number#44, cs_quantity#45, cs_net_paid#46, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#48), dynamicpruningexpression(cs_sold_date_sk#48 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(cs_net_profit), IsNotNull(cs_net_paid), IsNotNull(cs_quantity), GreaterThan(cs_net_profit,1.00), GreaterThan(cs_net_paid,0.00), GreaterThan(cs_quantity,0), IsNotNull(cs_order_number), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_net_profit), *IsNotNull(cs_net_paid), *IsNotNull(cs_quantity), *GreaterThan(cs_net_profit,1.00), *GreaterThan(cs_net_paid,0.00), *GreaterThan(cs_quantity,0), *IsNotNull(cs_order_number), *IsNotNull(cs_item_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -321,7 +321,7 @@ Input [4]: [cs_item_sk#43, cs_order_number#44, cs_quantity#45, cs_net_paid#46] Output [5]: [cr_item_sk#51, cr_order_number#52, cr_return_quantity#53, cr_return_amount#54, cr_returned_date_sk#55] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_return_amount), GreaterThan(cr_return_amount,10000.00), IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_return_amount), *GreaterThan(cr_return_amount,10000.00), *IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (54) FilterExecTransformer @@ -431,7 +431,7 @@ Output [6]: [ss_item_sk#84, ss_ticket_number#85, ss_quantity#86, ss_net_paid#87, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#89), dynamicpruningexpression(ss_sold_date_sk#89 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_net_profit), IsNotNull(ss_net_paid), IsNotNull(ss_quantity), GreaterThan(ss_net_profit,1.00), GreaterThan(ss_net_paid,0.00), GreaterThan(ss_quantity,0), IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_net_profit), *IsNotNull(ss_net_paid), *IsNotNull(ss_quantity), *GreaterThan(ss_net_profit,1.00), *GreaterThan(ss_net_paid,0.00), *GreaterThan(ss_quantity,0), *IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -482,7 +482,7 @@ Input [4]: [ss_item_sk#84, ss_ticket_number#85, ss_quantity#86, ss_net_paid#87] Output [5]: [sr_item_sk#92, sr_ticket_number#93, sr_return_quantity#94, sr_return_amt#95, sr_returned_date_sk#96] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_return_amt), GreaterThan(sr_return_amt,10000.00), IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_return_amt), *GreaterThan(sr_return_amt,10000.00), *IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (93) FilterExecTransformer @@ -655,7 +655,7 @@ ColumnarBroadcastExchange (136) Output [3]: [d_date_sk#8, d_year#126, d_moy#127] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,12), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,12), *IsNotNull(d_date_sk)] ReadSchema: struct (133) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49/explain.txt index 656594415cb..85eb363d68f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49/explain.txt @@ -97,7 +97,7 @@ Output [6]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4, ws_n Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#6), dynamicpruningexpression(ws_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ws_net_profit), IsNotNull(ws_net_paid), IsNotNull(ws_quantity), GreaterThan(ws_net_profit,1.00), GreaterThan(ws_net_paid,0.00), GreaterThan(ws_quantity,0), IsNotNull(ws_order_number), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_net_profit), *IsNotNull(ws_net_paid), *IsNotNull(ws_quantity), *GreaterThan(ws_net_profit,1.00), *GreaterThan(ws_net_paid,0.00), *GreaterThan(ws_quantity,0), *IsNotNull(ws_order_number), *IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -126,7 +126,7 @@ Input [5]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4, ws_so Output [5]: [wr_item_sk#8, wr_order_number#9, wr_return_quantity#10, wr_return_amt#11, wr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_return_amt), GreaterThan(wr_return_amt,10000.00), IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_return_amt), *GreaterThan(wr_return_amt,10000.00), *IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -238,7 +238,7 @@ Output [6]: [cs_item_sk#41, cs_order_number#42, cs_quantity#43, cs_net_paid#44, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#46), dynamicpruningexpression(cs_sold_date_sk#46 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(cs_net_profit), IsNotNull(cs_net_paid), IsNotNull(cs_quantity), GreaterThan(cs_net_profit,1.00), GreaterThan(cs_net_paid,0.00), GreaterThan(cs_quantity,0), IsNotNull(cs_order_number), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_net_profit), *IsNotNull(cs_net_paid), *IsNotNull(cs_quantity), *GreaterThan(cs_net_profit,1.00), *GreaterThan(cs_net_paid,0.00), *GreaterThan(cs_quantity,0), *IsNotNull(cs_order_number), *IsNotNull(cs_item_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -267,7 +267,7 @@ Input [5]: [cs_item_sk#41, cs_order_number#42, cs_quantity#43, cs_net_paid#44, c Output [5]: [cr_item_sk#47, cr_order_number#48, cr_return_quantity#49, cr_return_amount#50, cr_returned_date_sk#51] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_return_amount), GreaterThan(cr_return_amount,10000.00), IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_return_amount), *GreaterThan(cr_return_amount,10000.00), *IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -379,7 +379,7 @@ Output [6]: [ss_item_sk#80, ss_ticket_number#81, ss_quantity#82, ss_net_paid#83, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#85), dynamicpruningexpression(ss_sold_date_sk#85 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_net_profit), IsNotNull(ss_net_paid), IsNotNull(ss_quantity), GreaterThan(ss_net_profit,1.00), GreaterThan(ss_net_paid,0.00), GreaterThan(ss_quantity,0), IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_net_profit), *IsNotNull(ss_net_paid), *IsNotNull(ss_quantity), *GreaterThan(ss_net_profit,1.00), *GreaterThan(ss_net_paid,0.00), *GreaterThan(ss_quantity,0), *IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk)] ReadSchema: struct (68) FilterExecTransformer @@ -408,7 +408,7 @@ Input [5]: [ss_item_sk#80, ss_ticket_number#81, ss_quantity#82, ss_net_paid#83, Output [5]: [sr_item_sk#86, sr_ticket_number#87, sr_return_quantity#88, sr_return_amt#89, sr_returned_date_sk#90] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_return_amt), GreaterThan(sr_return_amt,10000.00), IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_return_amt), *GreaterThan(sr_return_amt,10000.00), *IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (75) FilterExecTransformer @@ -583,7 +583,7 @@ ColumnarBroadcastExchange (118) Output [3]: [d_date_sk#13, d_year#120, d_moy#121] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,12), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,12), *IsNotNull(d_date_sk)] ReadSchema: struct (115) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5.sf100/explain.txt index d77313f733a..6a3344e2c6f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5.sf100/explain.txt @@ -103,7 +103,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -123,7 +123,7 @@ Output [4]: [sr_store_sk#12, sr_return_amt#13, sr_net_loss#14, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#15), dynamicpruningexpression(sr_returned_date_sk#15 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -151,7 +151,7 @@ Input [6]: [store_sk#6, date_sk#7, sales_price#8, profit#9, return_amt#10, net_l Output [2]: [s_store_sk#22, s_store_id#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -249,7 +249,7 @@ Output [4]: [cs_catalog_page_sk#47, cs_ext_sales_price#48, cs_net_profit#49, cs_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#50), dynamicpruningexpression(cs_sold_date_sk#50 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_catalog_page_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -269,7 +269,7 @@ Output [4]: [cr_catalog_page_sk#57, cr_return_amount#58, cr_net_loss#59, cr_retu Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#60), dynamicpruningexpression(cr_returned_date_sk#60 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cr_catalog_page_sk)] +PushedFilters: [*IsNotNull(cr_catalog_page_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -297,7 +297,7 @@ Input [6]: [page_sk#51, date_sk#52, sales_price#53, profit#54, return_amt#55, ne Output [2]: [cp_catalog_page_sk#67, cp_catalog_page_id#68] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -395,7 +395,7 @@ Output [4]: [ws_web_site_sk#92, ws_ext_sales_price#93, ws_net_profit#94, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#95), dynamicpruningexpression(ws_sold_date_sk#95 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -442,7 +442,7 @@ Input [5]: [wr_item_sk#102, wr_order_number#103, wr_return_amt#104, wr_net_loss# Output [4]: [ws_item_sk#108, ws_web_site_sk#109, ws_order_number#110, ws_sold_date_sk#111] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_order_number), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_order_number), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (81) FilterExecTransformer @@ -497,7 +497,7 @@ Input [6]: [wsr_web_site_sk#96, date_sk#97, sales_price#98, profit#99, return_am Output [2]: [web_site_sk#119, web_site_id#120] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (95) FilterExecTransformer @@ -666,7 +666,7 @@ ColumnarBroadcastExchange (137) Output [2]: [d_date_sk#24, d_date#166] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-08-23), LessThanOrEqual(d_date,2000-09-06), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-08-23), *LessThanOrEqual(d_date,2000-09-06), *IsNotNull(d_date_sk)] ReadSchema: struct (134) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5/explain.txt index a80d13ddbae..0ae2a7f6f47 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5/explain.txt @@ -98,7 +98,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -118,7 +118,7 @@ Output [4]: [sr_store_sk#12, sr_return_amt#13, sr_net_loss#14, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#15), dynamicpruningexpression(sr_returned_date_sk#15 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -165,7 +165,7 @@ Input [7]: [store_sk#6, date_sk#7, sales_price#8, profit#9, return_amt#10, net_l Output [2]: [s_store_sk#23, s_store_id#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -244,7 +244,7 @@ Output [4]: [cs_catalog_page_sk#47, cs_ext_sales_price#48, cs_net_profit#49, cs_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#50), dynamicpruningexpression(cs_sold_date_sk#50 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_catalog_page_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -264,7 +264,7 @@ Output [4]: [cr_catalog_page_sk#57, cr_return_amount#58, cr_net_loss#59, cr_retu Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#60), dynamicpruningexpression(cr_returned_date_sk#60 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cr_catalog_page_sk)] +PushedFilters: [*IsNotNull(cr_catalog_page_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -311,7 +311,7 @@ Input [7]: [page_sk#51, date_sk#52, sales_price#53, profit#54, return_amt#55, ne Output [2]: [cp_catalog_page_sk#68, cp_catalog_page_id#69] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (52) FilterExecTransformer @@ -390,7 +390,7 @@ Output [4]: [ws_web_site_sk#92, ws_ext_sales_price#93, ws_net_profit#94, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#95), dynamicpruningexpression(ws_sold_date_sk#95 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -430,7 +430,7 @@ Input [5]: [wr_item_sk#102, wr_order_number#103, wr_return_amt#104, wr_net_loss# Output [4]: [ws_item_sk#107, ws_web_site_sk#108, ws_order_number#109, ws_sold_date_sk#110] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_order_number), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_order_number), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -487,7 +487,7 @@ Input [7]: [wsr_web_site_sk#96, date_sk#97, sales_price#98, profit#99, return_am Output [2]: [web_site_sk#118, web_site_id#119] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (93) FilterExecTransformer @@ -637,7 +637,7 @@ ColumnarBroadcastExchange (130) Output [2]: [d_date_sk#22, d_date#164] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-08-23), LessThanOrEqual(d_date,2000-09-06), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-08-23), *LessThanOrEqual(d_date,2000-09-06), *IsNotNull(d_date_sk)] ReadSchema: struct (127) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50.sf100/explain.txt index 5a96d900977..a3cddf4c054 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50.sf100/explain.txt @@ -43,7 +43,7 @@ Output [4]: [sr_item_sk#1, sr_customer_sk#2, sr_ticket_number#3, sr_returned_dat Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#4), dynamicpruningexpression(sr_returned_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk), IsNotNull(sr_customer_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk), *IsNotNull(sr_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -91,7 +91,7 @@ Output [5]: [ss_item_sk#8, ss_customer_sk#9, ss_store_sk#10, ss_ticket_number#11 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#12)] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -133,7 +133,7 @@ Input [9]: [sr_item_sk#1, sr_customer_sk#2, sr_ticket_number#3, sr_returned_date Output [1]: [d_date_sk#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (24) FilterExecTransformer @@ -168,7 +168,7 @@ Input [4]: [sr_returned_date_sk#4, ss_store_sk#10, ss_sold_date_sk#12, d_date_sk Output [11]: [s_store_sk#15, s_store_name#16, s_company_id#17, s_street_number#18, s_street_name#19, s_street_type#20, s_suite_number#21, s_city#22, s_county#23, s_state#24, s_zip#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (32) FilterExecTransformer @@ -258,7 +258,7 @@ ColumnarBroadcastExchange (54) Output [3]: [d_date_sk#6, d_year#52, d_moy#53] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,8), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,8), *IsNotNull(d_date_sk)] ReadSchema: struct (51) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50/explain.txt index 971378d3312..a5fb580d58c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50/explain.txt @@ -38,7 +38,7 @@ Output [5]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5)] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -50,7 +50,7 @@ Output [4]: [sr_item_sk#6, sr_customer_sk#7, sr_ticket_number#8, sr_returned_dat Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#9), dynamicpruningexpression(sr_returned_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk), IsNotNull(sr_customer_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk), *IsNotNull(sr_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -85,7 +85,7 @@ Input [9]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [11]: [s_store_sk#11, s_store_name#12, s_company_id#13, s_street_number#14, s_street_name#15, s_street_type#16, s_suite_number#17, s_city#18, s_county#19, s_state#20, s_zip#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -120,7 +120,7 @@ Input [14]: [ss_store_sk#3, ss_sold_date_sk#5, sr_returned_date_sk#9, s_store_sk Output [1]: [d_date_sk#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -229,7 +229,7 @@ ColumnarBroadcastExchange (47) Output [3]: [d_date_sk#23, d_year#50, d_moy#51] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,8), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,8), *IsNotNull(d_date_sk)] ReadSchema: struct (44) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51.sf100/explain.txt index 58c0bf6439d..ecf59f8c26d 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51.sf100/explain.txt @@ -60,7 +60,7 @@ Output [3]: [ws_item_sk#1, ws_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -176,7 +176,7 @@ Output [3]: [ss_item_sk#17, ss_sales_price#18, ss_sold_date_sk#19] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#19), dynamicpruningexpression(ss_sold_date_sk#19 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (31) FilterExecTransformer @@ -350,7 +350,7 @@ ColumnarBroadcastExchange (76) Output [3]: [d_date_sk#5, d_date#6, d_month_seq#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (73) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51/explain.txt index e6fa6903a6d..3ef5e23d89a 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51/explain.txt @@ -60,7 +60,7 @@ Output [3]: [ws_item_sk#1, ws_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -176,7 +176,7 @@ Output [3]: [ss_item_sk#17, ss_sales_price#18, ss_sold_date_sk#19] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#19), dynamicpruningexpression(ss_sold_date_sk#19 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (31) FilterExecTransformer @@ -350,7 +350,7 @@ ColumnarBroadcastExchange (76) Output [3]: [d_date_sk#5, d_date#6, d_month_seq#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (73) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52.sf100/explain.txt index 823771f885e..6404f39e9df 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52.sf100/explain.txt @@ -28,7 +28,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -39,7 +39,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#5, i_brand_id#6, i_brand#7, i_manager_id#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -156,7 +156,7 @@ ColumnarBroadcastExchange (33) Output [3]: [d_date_sk#9, d_year#10, d_moy#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (30) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52/explain.txt index ea06c1e620e..ce2fd3d1dfa 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_d Output [4]: [i_item_sk#7, i_brand_id#8, i_brand#9, i_manager_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53.sf100/explain.txt index a4a7d50b0ad..9c5759090e5 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53.sf100/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -70,7 +70,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -91,7 +91,7 @@ Input [6]: [i_item_sk#1, i_manufact_id#5, ss_item_sk#10, ss_store_sk#11, ss_sale Output [1]: [s_store_sk#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#16, d_month_seq#27, d_qoy#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53/explain.txt index 5b8469f76d3..329406d2d19 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -56,7 +56,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -110,7 +110,7 @@ Input [6]: [i_manufact_id#5, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk# Output [1]: [s_store_sk#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#15, d_month_seq#27, d_qoy#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54.sf100/explain.txt index 28f1093f49f..9812faf570f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54.sf100/explain.txt @@ -70,7 +70,7 @@ VeloxColumnarToRow (85) Output [3]: [ca_address_sk#1, ca_county#2, ca_state#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_county), IsNotNull(ca_state)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_county), *IsNotNull(ca_state)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Arguments: ((isnotnull(ca_address_sk#1) AND isnotnull(ca_county#2)) AND isnotnul Output [2]: [s_county#4, s_state#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_county), IsNotNull(s_state)] +PushedFilters: [*IsNotNull(s_county), *IsNotNull(s_state)] ReadSchema: struct (4) FilterExecTransformer @@ -131,7 +131,7 @@ Output [3]: [cs_bill_customer_sk#6, cs_item_sk#7, cs_sold_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#8), dynamicpruningexpression(cs_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (16) FilterExecTransformer @@ -151,7 +151,7 @@ Output [3]: [ws_item_sk#13, ws_bill_customer_sk#14, ws_sold_date_sk#15] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#15), dynamicpruningexpression(ws_sold_date_sk#15 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -198,7 +198,7 @@ Input [4]: [sold_date_sk#10, customer_sk#11, item_sk#12, d_date_sk#19] Output [3]: [i_item_sk#20, i_class#21, i_category#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), IsNotNull(i_class), EqualTo(i_category,Women ), EqualTo(i_class,maternity ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_category), *IsNotNull(i_class), *EqualTo(i_category,Women ), *EqualTo(i_class,maternity ), *IsNotNull(i_item_sk)] ReadSchema: struct (32) FilterExecTransformer @@ -254,7 +254,7 @@ Input [1]: [customer_sk#11] Output [2]: [c_customer_sk#24, c_current_addr_sk#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (46) FilterExecTransformer @@ -314,7 +314,7 @@ Output [3]: [ss_customer_sk#27, ss_ext_sales_price#28, ss_sold_date_sk#29] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#29), dynamicpruningexpression(ss_sold_date_sk#29 IN dynamicpruning#30)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (59) FilterExecTransformer @@ -441,7 +441,7 @@ ColumnarBroadcastExchange (90) Output [3]: [d_date_sk#19, d_year#42, d_moy#43] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,12), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,12), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (87) FilterExecTransformer @@ -473,7 +473,7 @@ ColumnarBroadcastExchange (95) Output [2]: [d_date_sk#31, d_month_seq#44] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,ScalarSubquery#45), LessThanOrEqual(d_month_seq,ScalarSubquery#46), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,ScalarSubquery#45), *LessThanOrEqual(d_month_seq,ScalarSubquery#46), *IsNotNull(d_date_sk)] ReadSchema: struct (92) FilterExecTransformer @@ -513,7 +513,7 @@ VeloxColumnarToRow (108) Output [3]: [d_month_seq#47, d_year#48, d_moy#49] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,12)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,12)] ReadSchema: struct (97) FilterExecTransformer @@ -583,7 +583,7 @@ VeloxColumnarToRow (121) Output [3]: [d_month_seq#52, d_year#53, d_moy#54] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,12)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,12)] ReadSchema: struct (110) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54/explain.txt index 6c62d91cbb9..5777b378396 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54/explain.txt @@ -75,7 +75,7 @@ Output [3]: [cs_bill_customer_sk#1, cs_item_sk#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -95,7 +95,7 @@ Output [3]: [ws_item_sk#8, ws_bill_customer_sk#9, ws_sold_date_sk#10] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#10), dynamicpruningexpression(ws_sold_date_sk#10 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -123,7 +123,7 @@ Input [3]: [sold_date_sk#5, customer_sk#6, item_sk#7] Output [3]: [i_item_sk#14, i_class#15, i_category#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), IsNotNull(i_class), EqualTo(i_category,Women ), EqualTo(i_class,maternity ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_category), *IsNotNull(i_class), *EqualTo(i_category,Women ), *EqualTo(i_class,maternity ), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -181,7 +181,7 @@ Input [3]: [sold_date_sk#5, customer_sk#6, d_date_sk#17] Output [2]: [c_customer_sk#18, c_current_addr_sk#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -252,7 +252,7 @@ Output [3]: [ss_customer_sk#21, ss_ext_sales_price#22, ss_sold_date_sk#23] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#23), dynamicpruningexpression(ss_sold_date_sk#23 IN dynamicpruning#24)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -287,7 +287,7 @@ Input [5]: [c_customer_sk#18, c_current_addr_sk#19, ss_customer_sk#21, ss_ext_sa Output [3]: [ca_address_sk#25, ca_county#26, ca_state#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_county), IsNotNull(ca_state)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_county), *IsNotNull(ca_state)] ReadSchema: struct (51) FilterExecTransformer @@ -322,7 +322,7 @@ Input [7]: [c_customer_sk#18, c_current_addr_sk#19, ss_ext_sales_price#22, ss_so Output [2]: [s_county#28, s_state#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_county), IsNotNull(s_state)] +PushedFilters: [*IsNotNull(s_county), *IsNotNull(s_state)] ReadSchema: struct (59) FilterExecTransformer @@ -474,7 +474,7 @@ ColumnarBroadcastExchange (96) Output [3]: [d_date_sk#17, d_year#43, d_moy#44] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,12), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,12), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (93) FilterExecTransformer @@ -506,7 +506,7 @@ ColumnarBroadcastExchange (101) Output [2]: [d_date_sk#30, d_month_seq#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,ScalarSubquery#46), LessThanOrEqual(d_month_seq,ScalarSubquery#47), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,ScalarSubquery#46), *LessThanOrEqual(d_month_seq,ScalarSubquery#47), *IsNotNull(d_date_sk)] ReadSchema: struct (98) FilterExecTransformer @@ -546,7 +546,7 @@ VeloxColumnarToRow (114) Output [3]: [d_month_seq#48, d_year#49, d_moy#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,12)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,12)] ReadSchema: struct (103) FilterExecTransformer @@ -616,7 +616,7 @@ VeloxColumnarToRow (127) Output [3]: [d_month_seq#53, d_year#54, d_moy#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,12)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,12)] ReadSchema: struct (116) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55.sf100/explain.txt index 8f201497e2b..235b668e022 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55.sf100/explain.txt @@ -28,7 +28,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -39,7 +39,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#5, i_brand_id#6, i_brand#7, i_manager_id#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,28), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,28), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -156,7 +156,7 @@ ColumnarBroadcastExchange (33) Output [3]: [d_date_sk#9, d_year#18, d_moy#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (30) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55/explain.txt index f89dc8028a5..53ddf67b279 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [4]: [d_date_sk#1, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Output [4]: [i_item_sk#7, i_brand_id#8, i_brand#9, i_manager_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,28), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,28), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56.sf100/explain.txt index 265e490fc80..fe3cc407da2 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56.sf100/explain.txt @@ -90,7 +90,7 @@ Output [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_addr_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -120,7 +120,7 @@ Input [5]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4, Output [2]: [ca_address_sk#7, ca_gmt_offset#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -159,7 +159,7 @@ Input [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ca_address_sk#7] Output [2]: [i_item_sk#9, i_item_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -170,7 +170,7 @@ Arguments: isnotnull(i_item_sk#9) Output [2]: [i_item_id#11, i_color#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_color, [blanched ,burnished ,slate ])] +PushedFilters: [*In(i_color, [blanched ,burnished ,slate ])] ReadSchema: struct (20) FilterExecTransformer @@ -273,7 +273,7 @@ Output [4]: [cs_bill_addr_sk#19, cs_item_sk#20, cs_ext_sales_price#21, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#22), dynamicpruningexpression(cs_sold_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_bill_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -385,7 +385,7 @@ Output [4]: [ws_item_sk#33, ws_bill_addr_sk#34, ws_ext_sales_price#35, ws_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#36), dynamicpruningexpression(ws_sold_date_sk#36 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_addr_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -560,7 +560,7 @@ ColumnarBroadcastExchange (115) Output [3]: [d_date_sk#6, d_year#54, d_moy#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (112) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56/explain.txt index 265e490fc80..fe3cc407da2 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56/explain.txt @@ -90,7 +90,7 @@ Output [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_addr_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -120,7 +120,7 @@ Input [5]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4, Output [2]: [ca_address_sk#7, ca_gmt_offset#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -159,7 +159,7 @@ Input [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ca_address_sk#7] Output [2]: [i_item_sk#9, i_item_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -170,7 +170,7 @@ Arguments: isnotnull(i_item_sk#9) Output [2]: [i_item_id#11, i_color#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_color, [blanched ,burnished ,slate ])] +PushedFilters: [*In(i_color, [blanched ,burnished ,slate ])] ReadSchema: struct (20) FilterExecTransformer @@ -273,7 +273,7 @@ Output [4]: [cs_bill_addr_sk#19, cs_item_sk#20, cs_ext_sales_price#21, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#22), dynamicpruningexpression(cs_sold_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_bill_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -385,7 +385,7 @@ Output [4]: [ws_item_sk#33, ws_bill_addr_sk#34, ws_ext_sales_price#35, ws_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#36), dynamicpruningexpression(ws_sold_date_sk#36 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_addr_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -560,7 +560,7 @@ ColumnarBroadcastExchange (115) Output [3]: [d_date_sk#6, d_year#54, d_moy#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (112) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57.sf100/explain.txt index f1d9a1e45db..4f4bf5c1812 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57.sf100/explain.txt @@ -75,7 +75,7 @@ Output [4]: [cs_call_center_sk#1, cs_item_sk#2, cs_sales_price#3, cs_sold_date_s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#4), dynamicpruningexpression(cs_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_call_center_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_call_center_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -105,7 +105,7 @@ Input [7]: [cs_call_center_sk#1, cs_item_sk#2, cs_sales_price#3, cs_sold_date_sk Output [2]: [cc_call_center_sk#9, cc_name#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk), IsNotNull(cc_name)] +PushedFilters: [*IsNotNull(cc_call_center_sk), *IsNotNull(cc_name)] ReadSchema: struct (9) FilterExecTransformer @@ -157,7 +157,7 @@ Input [5]: [cs_item_sk#2, cs_sales_price#3, d_year#7, d_moy#8, cc_name#10] Output [3]: [i_item_sk#12, i_brand#13, i_category#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (22) FilterExecTransformer @@ -439,7 +439,7 @@ ColumnarBroadcastExchange (95) Output [3]: [d_date_sk#6, d_year#7, d_moy#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (93) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57/explain.txt index cc92bd87357..fc72d0c1647 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57/explain.txt @@ -64,7 +64,7 @@ VeloxColumnarToRow (77) Output [3]: [i_item_sk#1, i_brand#2, i_category#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Output [4]: [cs_call_center_sk#4, cs_item_sk#5, cs_sales_price#6, cs_sold_date_s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#7), dynamicpruningexpression(cs_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_call_center_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_call_center_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -130,7 +130,7 @@ Input [8]: [i_brand#2, i_category#3, cs_call_center_sk#4, cs_sales_price#6, cs_s Output [2]: [cc_call_center_sk#12, cc_name#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk), IsNotNull(cc_name)] +PushedFilters: [*IsNotNull(cc_call_center_sk), *IsNotNull(cc_name)] ReadSchema: struct (17) FilterExecTransformer @@ -382,7 +382,7 @@ ColumnarBroadcastExchange (81) Output [3]: [d_date_sk#9, d_year#10, d_moy#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (79) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58.sf100/explain.txt index b9dab67cc8c..06516c55b17 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58.sf100/explain.txt @@ -72,7 +72,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -102,7 +102,7 @@ Input [4]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3, d_date_sk#5] Output [2]: [i_item_sk#6, i_item_id#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_item_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_item_id)] ReadSchema: struct (9) FilterExecTransformer @@ -181,7 +181,7 @@ Output [3]: [cs_item_sk#15, cs_ext_sales_price#16, cs_sold_date_sk#17] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#17), dynamicpruningexpression(cs_sold_date_sk#17 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -298,7 +298,7 @@ Output [3]: [ws_item_sk#28, ws_ext_sales_price#29, ws_sold_date_sk#30] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#30), dynamicpruningexpression(ws_sold_date_sk#30 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (55) FilterExecTransformer @@ -440,7 +440,7 @@ ColumnarBroadcastExchange (97) Output [2]: [d_date_sk#5, d_date#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (86) FilterExecTransformer @@ -451,7 +451,7 @@ Arguments: isnotnull(d_date_sk#5) Output [2]: [d_date#46, d_week_seq#47] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#48)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#48)] ReadSchema: struct (88) FilterExecTransformer @@ -507,7 +507,7 @@ VeloxColumnarToRow (102) Output [2]: [d_date#49, d_week_seq#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), EqualTo(d_date,2000-01-03)] +PushedFilters: [*IsNotNull(d_date), *EqualTo(d_date,2000-01-03)] ReadSchema: struct (99) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58/explain.txt index d4ec11b1365..143c700ba75 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58/explain.txt @@ -72,7 +72,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -83,7 +83,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [2]: [i_item_sk#5, i_item_id#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_item_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_item_id)] ReadSchema: struct (4) FilterExecTransformer @@ -181,7 +181,7 @@ Output [3]: [cs_item_sk#15, cs_ext_sales_price#16, cs_sold_date_sk#17] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#17), dynamicpruningexpression(cs_sold_date_sk#17 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -298,7 +298,7 @@ Output [3]: [ws_item_sk#28, ws_ext_sales_price#29, ws_sold_date_sk#30] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#30), dynamicpruningexpression(ws_sold_date_sk#30 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (55) FilterExecTransformer @@ -440,7 +440,7 @@ ColumnarBroadcastExchange (97) Output [2]: [d_date_sk#7, d_date#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (86) FilterExecTransformer @@ -451,7 +451,7 @@ Arguments: isnotnull(d_date_sk#7) Output [2]: [d_date#46, d_week_seq#47] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#48)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#48)] ReadSchema: struct (88) FilterExecTransformer @@ -507,7 +507,7 @@ VeloxColumnarToRow (102) Output [2]: [d_date#49, d_week_seq#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), EqualTo(d_date,2000-01-03)] +PushedFilters: [*IsNotNull(d_date), *EqualTo(d_date,2000-01-03)] ReadSchema: struct (99) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59.sf100/explain.txt index 9cad260d52c..3d3d6abc890 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59.sf100/explain.txt @@ -68,7 +68,7 @@ Output [3]: [ss_store_sk#1, ss_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -79,7 +79,7 @@ Arguments: isnotnull(ss_store_sk#1) Output [3]: [d_date_sk#4, d_week_seq#5, d_day_name#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (4) FilterExecTransformer @@ -153,7 +153,7 @@ Input [9]: [d_week_seq#5, ss_store_sk#1, sum(UnscaledValue(CASE WHEN (d_day_name Output [3]: [s_store_sk#44, s_store_id#45, s_store_name#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (21) FilterExecTransformer @@ -188,7 +188,7 @@ Input [12]: [d_week_seq#5, ss_store_sk#1, sun_sales#37, mon_sales#38, tue_sales# Output [2]: [d_month_seq#47, d_week_seq#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_week_seq)] ReadSchema: struct (29) FilterExecTransformer @@ -228,7 +228,7 @@ Output [3]: [ss_store_sk#59, ss_sales_price#60, ss_sold_date_sk#61] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#61)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -239,7 +239,7 @@ Arguments: isnotnull(ss_store_sk#59) Output [3]: [d_date_sk#62, d_week_seq#63, d_day_name#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (40) FilterExecTransformer @@ -313,7 +313,7 @@ Input [9]: [d_week_seq#63, ss_store_sk#59, sum(UnscaledValue(CASE WHEN (d_day_na Output [2]: [s_store_sk#95, s_store_id#96] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (57) FilterExecTransformer @@ -348,7 +348,7 @@ Input [11]: [d_week_seq#63, ss_store_sk#59, sun_sales#88, mon_sales#89, tue_sale Output [2]: [d_month_seq#97, d_week_seq#98] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1224), LessThanOrEqual(d_month_seq,1235), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1224), *LessThanOrEqual(d_month_seq,1235), *IsNotNull(d_week_seq)] ReadSchema: struct (65) FilterExecTransformer @@ -436,7 +436,7 @@ VeloxColumnarToRow (93) Output [2]: [d_month_seq#47, d_week_seq#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_week_seq)] ReadSchema: struct (83) FilterExecTransformer @@ -513,7 +513,7 @@ VeloxColumnarToRow (105) Output [2]: [d_month_seq#97, d_week_seq#98] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1224), LessThanOrEqual(d_month_seq,1235), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1224), *LessThanOrEqual(d_month_seq,1235), *IsNotNull(d_week_seq)] ReadSchema: struct (95) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59/explain.txt index 5609d4f9746..0eec887c1e7 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59/explain.txt @@ -57,7 +57,7 @@ Output [3]: [ss_store_sk#1, ss_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -68,7 +68,7 @@ Arguments: isnotnull(ss_store_sk#1) Output [3]: [d_date_sk#4, d_week_seq#5, d_day_name#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (4) FilterExecTransformer @@ -142,7 +142,7 @@ Input [9]: [d_week_seq#5, ss_store_sk#1, sum(UnscaledValue(CASE WHEN (d_day_name Output [3]: [s_store_sk#43, s_store_id#44, s_store_name#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (21) FilterExecTransformer @@ -177,7 +177,7 @@ Input [12]: [d_week_seq#5, ss_store_sk#1, sun_sales#36, mon_sales#37, tue_sales# Output [2]: [d_month_seq#46, d_week_seq#47] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_week_seq)] ReadSchema: struct (29) FilterExecTransformer @@ -236,7 +236,7 @@ Input [9]: [d_week_seq#58, ss_store_sk#59, sum(UnscaledValue(CASE WHEN (d_day_na Output [2]: [s_store_sk#76, s_store_id#77] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (43) FilterExecTransformer @@ -271,7 +271,7 @@ Input [11]: [d_week_seq#58, ss_store_sk#59, sun_sales#69, mon_sales#70, tue_sale Output [2]: [d_month_seq#78, d_week_seq#79] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1224), LessThanOrEqual(d_month_seq,1235), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1224), *LessThanOrEqual(d_month_seq,1235), *IsNotNull(d_week_seq)] ReadSchema: struct (51) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6.sf100/explain.txt index b8f55945d98..a37ef74eeb7 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6.sf100/explain.txt @@ -63,7 +63,7 @@ VeloxColumnarToRow (76) Output [3]: [i_item_sk#1, i_current_price#2, i_category#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), IsNotNull(i_category), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *IsNotNull(i_category), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Arguments: ((isnotnull(i_current_price#2) AND isnotnull(i_category#3)) AND isnot Output [2]: [i_current_price#4, i_category#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category)] +PushedFilters: [*IsNotNull(i_category)] ReadSchema: struct (4) FilterExecTransformer @@ -171,7 +171,7 @@ Output [3]: [ss_item_sk#14, ss_customer_sk#15, ss_sold_date_sk#16] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#16), dynamicpruningexpression(ss_sold_date_sk#16 IN dynamicpruning#17)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -228,7 +228,7 @@ Input [1]: [ss_customer_sk#15] Output [2]: [ca_address_sk#20, ca_state#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -260,7 +260,7 @@ Input [2]: [ca_address_sk#20, ca_state#21] Output [2]: [c_customer_sk#23, c_current_addr_sk#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_customer_sk)] ReadSchema: struct (49) FilterExecTransformer @@ -388,7 +388,7 @@ ColumnarBroadcastExchange (81) Output [2]: [d_date_sk#18, d_month_seq#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), EqualTo(d_month_seq,ScalarSubquery#34), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *EqualTo(d_month_seq,ScalarSubquery#34), *IsNotNull(d_date_sk)] ReadSchema: struct (78) FilterExecTransformer @@ -426,7 +426,7 @@ VeloxColumnarToRow (94) Output [3]: [d_month_seq#35, d_year#36, d_moy#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,1)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,1)] ReadSchema: struct (83) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6/explain.txt index 63efc35c30f..9041b82e8f3 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6/explain.txt @@ -53,7 +53,7 @@ VeloxColumnarToRow (62) Output [2]: [ca_address_sk#1, ca_state#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -64,7 +64,7 @@ Arguments: isnotnull(ca_address_sk#1) Output [2]: [c_customer_sk#3, c_current_addr_sk#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -100,7 +100,7 @@ Output [3]: [ss_item_sk#5, ss_customer_sk#6, ss_sold_date_sk#7] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -154,7 +154,7 @@ Input [4]: [ca_state#2, ss_item_sk#5, ss_sold_date_sk#7, d_date_sk#9] Output [3]: [i_item_sk#10, i_current_price#11, i_category#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), IsNotNull(i_category), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *IsNotNull(i_category), *IsNotNull(i_item_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -165,7 +165,7 @@ Arguments: ((isnotnull(i_current_price#11) AND isnotnull(i_category#12)) AND isn Output [2]: [i_current_price#13, i_category#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category)] +PushedFilters: [*IsNotNull(i_category)] ReadSchema: struct (27) FilterExecTransformer @@ -330,7 +330,7 @@ ColumnarBroadcastExchange (67) Output [2]: [d_date_sk#9, d_month_seq#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), EqualTo(d_month_seq,ScalarSubquery#30), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *EqualTo(d_month_seq,ScalarSubquery#30), *IsNotNull(d_date_sk)] ReadSchema: struct (64) FilterExecTransformer @@ -368,7 +368,7 @@ VeloxColumnarToRow (80) Output [3]: [d_month_seq#31, d_year#32, d_moy#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,1)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,1)] ReadSchema: struct (69) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60.sf100/explain.txt index a3876392326..71a27d1b02e 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60.sf100/explain.txt @@ -90,7 +90,7 @@ Output [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_addr_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -120,7 +120,7 @@ Input [5]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4, Output [2]: [ca_address_sk#7, ca_gmt_offset#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -159,7 +159,7 @@ Input [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ca_address_sk#7] Output [2]: [i_item_sk#9, i_item_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -170,7 +170,7 @@ Arguments: isnotnull(i_item_sk#9) Output [2]: [i_item_id#11, i_category#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Music )] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Music )] ReadSchema: struct (20) FilterExecTransformer @@ -273,7 +273,7 @@ Output [4]: [cs_bill_addr_sk#19, cs_item_sk#20, cs_ext_sales_price#21, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#22), dynamicpruningexpression(cs_sold_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_bill_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -385,7 +385,7 @@ Output [4]: [ws_item_sk#33, ws_bill_addr_sk#34, ws_ext_sales_price#35, ws_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#36), dynamicpruningexpression(ws_sold_date_sk#36 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_addr_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -560,7 +560,7 @@ ColumnarBroadcastExchange (115) Output [3]: [d_date_sk#6, d_year#54, d_moy#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,9), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,9), *IsNotNull(d_date_sk)] ReadSchema: struct (112) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60/explain.txt index a3876392326..71a27d1b02e 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60/explain.txt @@ -90,7 +90,7 @@ Output [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_addr_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -120,7 +120,7 @@ Input [5]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4, Output [2]: [ca_address_sk#7, ca_gmt_offset#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -159,7 +159,7 @@ Input [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ca_address_sk#7] Output [2]: [i_item_sk#9, i_item_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -170,7 +170,7 @@ Arguments: isnotnull(i_item_sk#9) Output [2]: [i_item_id#11, i_category#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Music )] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Music )] ReadSchema: struct (20) FilterExecTransformer @@ -273,7 +273,7 @@ Output [4]: [cs_bill_addr_sk#19, cs_item_sk#20, cs_ext_sales_price#21, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#22), dynamicpruningexpression(cs_sold_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_bill_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -385,7 +385,7 @@ Output [4]: [ws_item_sk#33, ws_bill_addr_sk#34, ws_ext_sales_price#35, ws_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#36), dynamicpruningexpression(ws_sold_date_sk#36 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_addr_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -560,7 +560,7 @@ ColumnarBroadcastExchange (115) Output [3]: [d_date_sk#6, d_year#54, d_moy#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,9), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,9), *IsNotNull(d_date_sk)] ReadSchema: struct (112) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61.sf100/explain.txt index 7e035fe8b08..b515b5a80af 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61.sf100/explain.txt @@ -81,7 +81,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_promo_sk#4, ss_ex Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -111,7 +111,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_promo_sk#4, ss_ext Output [2]: [i_item_sk#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Jewelry ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Jewelry ), *IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -150,7 +150,7 @@ Input [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_promo_sk#4, ss_ext Output [4]: [p_promo_sk#11, p_channel_dmail#12, p_channel_email#13, p_channel_tv#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(Or(EqualTo(p_channel_dmail,Y),EqualTo(p_channel_email,Y)),EqualTo(p_channel_tv,Y)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(Or(EqualTo(p_channel_dmail,Y),EqualTo(p_channel_email,Y)),EqualTo(p_channel_tv,Y)), *IsNotNull(p_promo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -189,7 +189,7 @@ Input [5]: [ss_customer_sk#2, ss_store_sk#3, ss_promo_sk#4, ss_ext_sales_price#5 Output [2]: [s_store_sk#15, s_gmt_offset#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_gmt_offset), EqualTo(s_gmt_offset,-5.00), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_gmt_offset), *EqualTo(s_gmt_offset,-5.00), *IsNotNull(s_store_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -228,7 +228,7 @@ Input [4]: [ss_customer_sk#2, ss_store_sk#3, ss_ext_sales_price#5, s_store_sk#15 Output [2]: [c_customer_sk#17, c_current_addr_sk#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -239,7 +239,7 @@ Arguments: (isnotnull(c_customer_sk#17) AND isnotnull(c_current_addr_sk#18)) Output [2]: [ca_address_sk#19, ca_gmt_offset#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -338,7 +338,7 @@ Output [5]: [ss_item_sk#26, ss_customer_sk#27, ss_store_sk#28, ss_ext_sales_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#30), dynamicpruningexpression(ss_sold_date_sk#30 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -498,7 +498,7 @@ ColumnarBroadcastExchange (102) Output [3]: [d_date_sk#8, d_year#41, d_moy#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (99) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61/explain.txt index b63209f801d..4629a700eee 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61/explain.txt @@ -85,7 +85,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_promo_sk#4, ss_ex Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Arguments: (((isnotnull(ss_store_sk#3) AND isnotnull(ss_promo_sk#4)) AND isnotnu Output [2]: [s_store_sk#8, s_gmt_offset#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_gmt_offset), EqualTo(s_gmt_offset,-5.00), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_gmt_offset), *EqualTo(s_gmt_offset,-5.00), *IsNotNull(s_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -135,7 +135,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_promo_sk#4, ss_ext Output [4]: [p_promo_sk#10, p_channel_dmail#11, p_channel_email#12, p_channel_tv#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(Or(EqualTo(p_channel_dmail,Y),EqualTo(p_channel_email,Y)),EqualTo(p_channel_tv,Y)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(Or(EqualTo(p_channel_dmail,Y),EqualTo(p_channel_email,Y)),EqualTo(p_channel_tv,Y)), *IsNotNull(p_promo_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -193,7 +193,7 @@ Input [5]: [ss_item_sk#1, ss_customer_sk#2, ss_ext_sales_price#5, ss_sold_date_s Output [2]: [c_customer_sk#15, c_current_addr_sk#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -228,7 +228,7 @@ Input [5]: [ss_item_sk#1, ss_customer_sk#2, ss_ext_sales_price#5, c_customer_sk# Output [2]: [ca_address_sk#17, ca_gmt_offset#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -267,7 +267,7 @@ Input [4]: [ss_item_sk#1, ss_ext_sales_price#5, c_current_addr_sk#16, ca_address Output [2]: [i_item_sk#19, i_category#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Jewelry ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Jewelry ), *IsNotNull(i_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -342,7 +342,7 @@ Output [5]: [ss_item_sk#26, ss_customer_sk#27, ss_store_sk#28, ss_ext_sales_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#30), dynamicpruningexpression(ss_sold_date_sk#30 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -521,7 +521,7 @@ ColumnarBroadcastExchange (107) Output [3]: [d_date_sk#14, d_year#43, d_moy#44] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (104) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62.sf100/explain.txt index b79120500f7..7b5f9270e15 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62.sf100/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (46) Output [5]: [ws_ship_date_sk#1, ws_web_site_sk#2, ws_ship_mode_sk#3, ws_warehouse_sk#4, ws_sold_date_sk#5] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_warehouse_sk), IsNotNull(ws_ship_mode_sk), IsNotNull(ws_web_site_sk), IsNotNull(ws_ship_date_sk)] +PushedFilters: [*IsNotNull(ws_warehouse_sk), *IsNotNull(ws_ship_mode_sk), *IsNotNull(ws_web_site_sk), *IsNotNull(ws_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Arguments: (((isnotnull(ws_warehouse_sk#4) AND isnotnull(ws_ship_mode_sk#3)) AND Output [2]: [d_date_sk#6, d_month_seq#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -90,7 +90,7 @@ Input [6]: [ws_ship_date_sk#1, ws_web_site_sk#2, ws_ship_mode_sk#3, ws_warehouse Output [2]: [web_site_sk#8, web_name#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -125,7 +125,7 @@ Input [7]: [ws_ship_date_sk#1, ws_web_site_sk#2, ws_ship_mode_sk#3, ws_warehouse Output [2]: [sm_ship_mode_sk#10, sm_type#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/ship_mode] -PushedFilters: [IsNotNull(sm_ship_mode_sk)] +PushedFilters: [*IsNotNull(sm_ship_mode_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -160,7 +160,7 @@ Input [7]: [ws_ship_date_sk#1, ws_ship_mode_sk#3, ws_warehouse_sk#4, ws_sold_dat Output [2]: [w_warehouse_sk#12, w_warehouse_name#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (29) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62/explain.txt index 02661d834bc..7d4ac6a9b8b 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (46) Output [5]: [ws_ship_date_sk#1, ws_web_site_sk#2, ws_ship_mode_sk#3, ws_warehouse_sk#4, ws_sold_date_sk#5] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_warehouse_sk), IsNotNull(ws_ship_mode_sk), IsNotNull(ws_web_site_sk), IsNotNull(ws_ship_date_sk)] +PushedFilters: [*IsNotNull(ws_warehouse_sk), *IsNotNull(ws_ship_mode_sk), *IsNotNull(ws_web_site_sk), *IsNotNull(ws_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Arguments: (((isnotnull(ws_warehouse_sk#4) AND isnotnull(ws_ship_mode_sk#3)) AND Output [2]: [w_warehouse_sk#6, w_warehouse_name#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -86,7 +86,7 @@ Input [7]: [ws_ship_date_sk#1, ws_web_site_sk#2, ws_ship_mode_sk#3, ws_warehouse Output [2]: [sm_ship_mode_sk#8, sm_type#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/ship_mode] -PushedFilters: [IsNotNull(sm_ship_mode_sk)] +PushedFilters: [*IsNotNull(sm_ship_mode_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -121,7 +121,7 @@ Input [7]: [ws_ship_date_sk#1, ws_web_site_sk#2, ws_ship_mode_sk#3, ws_sold_date Output [2]: [web_site_sk#10, web_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -156,7 +156,7 @@ Input [7]: [ws_ship_date_sk#1, ws_web_site_sk#2, ws_sold_date_sk#5, w_warehouse_ Output [2]: [d_date_sk#12, d_month_seq#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (28) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63.sf100/explain.txt index 7f4785f5ac7..fa9958525f1 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63.sf100/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manager_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,refernece ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,refernece ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -70,7 +70,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -91,7 +91,7 @@ Input [6]: [i_item_sk#1, i_manager_id#5, ss_item_sk#10, ss_store_sk#11, ss_sales Output [1]: [s_store_sk#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#16, d_month_seq#27, d_moy#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63/explain.txt index 69d6f64b4a6..98852b39119 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manager_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,refernece ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,refernece ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -56,7 +56,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -110,7 +110,7 @@ Input [6]: [i_manager_id#5, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Output [1]: [s_store_sk#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#15, d_month_seq#27, d_moy#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64.sf100/explain.txt index c5274e2b1e5..590f61e202e 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64.sf100/explain.txt @@ -263,7 +263,7 @@ Output [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_a Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#12), dynamicpruningexpression(ss_sold_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -295,7 +295,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [sr_item_sk#16, sr_ticket_number#17, sr_returned_date_sk#18] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (10) FilterExecTransformer @@ -337,7 +337,7 @@ Input [14]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [4]: [cs_item_sk#20, cs_order_number#21, cs_ext_list_price#22, cs_sold_date_sk#23] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_order_number)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_order_number)] ReadSchema: struct (20) FilterExecTransformer @@ -369,7 +369,7 @@ Input [3]: [cs_item_sk#20, cs_order_number#21, cs_ext_list_price#22] Output [6]: [cr_item_sk#25, cr_order_number#26, cr_refunded_cash#27, cr_reversed_charge#28, cr_store_credit#29, cr_returned_date_sk#30] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (28) FilterExecTransformer @@ -501,7 +501,7 @@ Input [13]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [s_store_sk#47, s_store_name#48, s_zip#49] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_zip)] ReadSchema: struct (60) FilterExecTransformer @@ -553,7 +553,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [6]: [c_customer_sk#51, c_current_cdemo_sk#52, c_current_hdemo_sk#53, c_current_addr_sk#54, c_first_shipto_date_sk#55, c_first_sales_date_sk#56] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_first_sales_date_sk), IsNotNull(c_first_shipto_date_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_first_sales_date_sk), *IsNotNull(c_first_shipto_date_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (73) FilterExecTransformer @@ -595,7 +595,7 @@ Input [18]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [2]: [d_date_sk#58, d_year#59] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (83) FilterExecTransformer @@ -666,7 +666,7 @@ Input [16]: [ss_item_sk#1, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_ Output [2]: [cd_demo_sk#63, cd_marital_status#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status)] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status)] ReadSchema: struct (101) FilterExecTransformer @@ -744,7 +744,7 @@ Input [18]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [1]: [p_promo_sk#69] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (121) FilterExecTransformer @@ -779,7 +779,7 @@ Input [15]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [2]: [hd_demo_sk#70, hd_income_band_sk#71] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)] +PushedFilters: [*IsNotNull(hd_demo_sk), *IsNotNull(hd_income_band_sk)] ReadSchema: struct (129) FilterExecTransformer @@ -850,7 +850,7 @@ Input [13]: [ss_item_sk#1, ss_addr_sk#5, ss_wholesale_cost#9, ss_list_price#10, Output [5]: [ca_address_sk#75, ca_street_number#76, ca_street_name#77, ca_city#78, ca_zip#79] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (147) FilterExecTransformer @@ -928,7 +928,7 @@ Input [21]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [1]: [ib_income_band_sk#87] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/income_band] -PushedFilters: [IsNotNull(ib_income_band_sk)] +PushedFilters: [*IsNotNull(ib_income_band_sk)] ReadSchema: struct (167) FilterExecTransformer @@ -982,7 +982,7 @@ Input [19]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [4]: [i_item_sk#89, i_current_price#90, i_color#91, i_product_name#92] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), *GreaterThanOrEqual(i_current_price,64.00), *LessThanOrEqual(i_current_price,74.00), *GreaterThanOrEqual(i_current_price,65.00), *LessThanOrEqual(i_current_price,79.00), *IsNotNull(i_item_sk)] ReadSchema: struct (180) FilterExecTransformer @@ -1078,7 +1078,7 @@ Output [12]: [ss_item_sk#127, ss_customer_sk#128, ss_cdemo_sk#129, ss_hdemo_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#138), dynamicpruningexpression(ss_sold_date_sk#138 IN dynamicpruning#139)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (203) FilterExecTransformer @@ -1626,7 +1626,7 @@ VeloxColumnarToRow (355) Output [3]: [i_item_sk#89, i_current_price#90, i_color#91] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), *GreaterThanOrEqual(i_current_price,64.00), *LessThanOrEqual(i_current_price,74.00), *GreaterThanOrEqual(i_current_price,65.00), *LessThanOrEqual(i_current_price,79.00), *IsNotNull(i_item_sk)] ReadSchema: struct (345) FilterExecTransformer @@ -1685,7 +1685,7 @@ ColumnarBroadcastExchange (359) Output [2]: [d_date_sk#45, d_year#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (357) FilterExecTransformer @@ -1724,7 +1724,7 @@ ColumnarBroadcastExchange (363) Output [2]: [d_date_sk#144, d_year#145] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (361) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64/explain.txt index 7f52bda6330..e8f6fba5f3f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64/explain.txt @@ -219,7 +219,7 @@ Output [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_a Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#12), dynamicpruningexpression(ss_sold_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -244,7 +244,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [sr_item_sk#14, sr_ticket_number#15, sr_returned_date_sk#16] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (8) FilterExecTransformer @@ -286,7 +286,7 @@ Input [11]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [4]: [cs_item_sk#18, cs_order_number#19, cs_ext_list_price#20, cs_sold_date_sk#21] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_order_number)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_order_number)] ReadSchema: struct (18) FilterExecTransformer @@ -318,7 +318,7 @@ Input [3]: [cs_item_sk#18, cs_order_number#19, cs_ext_list_price#20] Output [6]: [cr_item_sk#23, cr_order_number#24, cr_refunded_cash#25, cr_reversed_charge#26, cr_store_credit#27, cr_returned_date_sk#28] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (26) FilterExecTransformer @@ -436,7 +436,7 @@ Input [13]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [s_store_sk#45, s_store_name#46, s_zip#47] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_zip)] ReadSchema: struct (54) FilterExecTransformer @@ -471,7 +471,7 @@ Input [14]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [6]: [c_customer_sk#48, c_current_cdemo_sk#49, c_current_hdemo_sk#50, c_current_addr_sk#51, c_first_shipto_date_sk#52, c_first_sales_date_sk#53] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_first_sales_date_sk), IsNotNull(c_first_shipto_date_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_first_sales_date_sk), *IsNotNull(c_first_shipto_date_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -506,7 +506,7 @@ Input [18]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [2]: [d_date_sk#54, d_year#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -560,7 +560,7 @@ Input [18]: [ss_item_sk#1, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_ Output [2]: [cd_demo_sk#58, cd_marital_status#59] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status)] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status)] ReadSchema: struct (83) FilterExecTransformer @@ -614,7 +614,7 @@ Input [18]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [1]: [p_promo_sk#62] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (96) FilterExecTransformer @@ -649,7 +649,7 @@ Input [15]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [2]: [hd_demo_sk#63, hd_income_band_sk#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)] +PushedFilters: [*IsNotNull(hd_demo_sk), *IsNotNull(hd_income_band_sk)] ReadSchema: struct (104) FilterExecTransformer @@ -703,7 +703,7 @@ Input [15]: [ss_item_sk#1, ss_addr_sk#5, ss_wholesale_cost#9, ss_list_price#10, Output [5]: [ca_address_sk#67, ca_street_number#68, ca_street_name#69, ca_city#70, ca_zip#71] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (117) FilterExecTransformer @@ -757,7 +757,7 @@ Input [21]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [1]: [ib_income_band_sk#77] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/income_band] -PushedFilters: [IsNotNull(ib_income_band_sk)] +PushedFilters: [*IsNotNull(ib_income_band_sk)] ReadSchema: struct (130) FilterExecTransformer @@ -811,7 +811,7 @@ Input [19]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [4]: [i_item_sk#79, i_current_price#80, i_color#81, i_product_name#82] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), *GreaterThanOrEqual(i_current_price,64.00), *LessThanOrEqual(i_current_price,74.00), *GreaterThanOrEqual(i_current_price,65.00), *LessThanOrEqual(i_current_price,79.00), *IsNotNull(i_item_sk)] ReadSchema: struct (143) FilterExecTransformer @@ -879,7 +879,7 @@ Output [12]: [ss_item_sk#108, ss_customer_sk#109, ss_cdemo_sk#110, ss_hdemo_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#119), dynamicpruningexpression(ss_sold_date_sk#119 IN dynamicpruning#120)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (159) FilterExecTransformer @@ -904,7 +904,7 @@ Input [12]: [ss_item_sk#108, ss_customer_sk#109, ss_cdemo_sk#110, ss_hdemo_sk#11 Output [3]: [sr_item_sk#121, sr_ticket_number#122, sr_returned_date_sk#123] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (165) FilterExecTransformer @@ -1343,7 +1343,7 @@ ColumnarBroadcastExchange (278) Output [2]: [d_date_sk#43, d_year#44] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (276) FilterExecTransformer @@ -1368,7 +1368,7 @@ ColumnarBroadcastExchange (282) Output [2]: [d_date_sk#135, d_year#136] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (280) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65.sf100/explain.txt index 9677c4c4f53..8c04063ff62 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65.sf100/explain.txt @@ -63,7 +63,7 @@ Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -137,7 +137,7 @@ Output [4]: [ss_item_sk#13, ss_store_sk#14, ss_sales_price#15, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#16), dynamicpruningexpression(ss_sold_date_sk#16 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (19) FilterExecTransformer @@ -269,7 +269,7 @@ Input [5]: [ss_store_sk#2, ss_item_sk#1, revenue#12, ss_store_sk#14, ave#30] Output [2]: [s_store_sk#31, s_store_name#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (50) FilterExecTransformer @@ -321,7 +321,7 @@ Input [3]: [ss_item_sk#1, revenue#12, s_store_name#32] Output [5]: [i_item_sk#34, i_item_desc#35, i_current_price#36, i_wholesale_cost#37, i_brand#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (63) FilterExecTransformer @@ -383,7 +383,7 @@ ColumnarBroadcastExchange (79) Output [2]: [d_date_sk#6, d_month_seq#40] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1176), LessThanOrEqual(d_month_seq,1187), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1176), *LessThanOrEqual(d_month_seq,1187), *IsNotNull(d_date_sk)] ReadSchema: struct (76) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65/explain.txt index 660366ed761..9e4446697c5 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65/explain.txt @@ -57,7 +57,7 @@ VeloxColumnarToRow (67) Output [2]: [s_store_sk#1, s_store_name#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -69,7 +69,7 @@ Output [4]: [ss_item_sk#3, ss_store_sk#4, ss_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -166,7 +166,7 @@ Input [5]: [s_store_sk#1, s_store_name#2, ss_store_sk#4, ss_item_sk#3, revenue#1 Output [5]: [i_item_sk#15, i_item_desc#16, i_current_price#17, i_wholesale_cost#18, i_brand#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -202,7 +202,7 @@ Output [4]: [ss_item_sk#20, ss_store_sk#21, ss_sales_price#22, ss_sold_date_sk#2 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#23), dynamicpruningexpression(ss_sold_date_sk#23 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -354,7 +354,7 @@ ColumnarBroadcastExchange (72) Output [2]: [d_date_sk#8, d_month_seq#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1176), LessThanOrEqual(d_month_seq,1187), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1176), *LessThanOrEqual(d_month_seq,1187), *IsNotNull(d_date_sk)] ReadSchema: struct (69) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66.sf100/explain.txt index f4f46946fe9..5a15c0c9683 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66.sf100/explain.txt @@ -75,7 +75,7 @@ Output [7]: [ws_sold_time_sk#1, ws_ship_mode_sk#2, ws_warehouse_sk#3, ws_quantit Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#7), dynamicpruningexpression(ws_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_warehouse_sk), IsNotNull(ws_sold_time_sk), IsNotNull(ws_ship_mode_sk)] +PushedFilters: [*IsNotNull(ws_warehouse_sk), *IsNotNull(ws_sold_time_sk), *IsNotNull(ws_ship_mode_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -86,7 +86,7 @@ Arguments: ((isnotnull(ws_warehouse_sk#3) AND isnotnull(ws_sold_time_sk#1)) AND Output [2]: [sm_ship_mode_sk#9, sm_carrier#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/ship_mode] -PushedFilters: [In(sm_carrier, [BARIAN ,DHL ]), IsNotNull(sm_ship_mode_sk)] +PushedFilters: [*In(sm_carrier, [BARIAN ,DHL ]), *IsNotNull(sm_ship_mode_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -125,7 +125,7 @@ Input [8]: [ws_sold_time_sk#1, ws_ship_mode_sk#2, ws_warehouse_sk#3, ws_quantity Output [2]: [t_time_sk#11, t_time#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_time), GreaterThanOrEqual(t_time,30838), LessThanOrEqual(t_time,59638), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_time), *GreaterThanOrEqual(t_time,30838), *LessThanOrEqual(t_time,59638), *IsNotNull(t_time_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -183,7 +183,7 @@ Input [8]: [ws_warehouse_sk#3, ws_quantity#4, ws_ext_sales_price#5, ws_net_paid# Output [7]: [w_warehouse_sk#16, w_warehouse_name#17, w_warehouse_sq_ft#18, w_city#19, w_county#20, w_state#21, w_country#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -262,7 +262,7 @@ Output [7]: [cs_sold_time_sk#194, cs_ship_mode_sk#195, cs_warehouse_sk#196, cs_q Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#200), dynamicpruningexpression(cs_sold_date_sk#200 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_warehouse_sk), IsNotNull(cs_sold_time_sk), IsNotNull(cs_ship_mode_sk)] +PushedFilters: [*IsNotNull(cs_warehouse_sk), *IsNotNull(cs_sold_time_sk), *IsNotNull(cs_ship_mode_sk)] ReadSchema: struct (45) FilterExecTransformer @@ -459,7 +459,7 @@ ColumnarBroadcastExchange (94) Output [3]: [d_date_sk#13, d_year#14, d_moy#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (92) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66/explain.txt index c36f67a75ea..5d6012e7565 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66/explain.txt @@ -75,7 +75,7 @@ Output [7]: [ws_sold_time_sk#1, ws_ship_mode_sk#2, ws_warehouse_sk#3, ws_quantit Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#7), dynamicpruningexpression(ws_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_warehouse_sk), IsNotNull(ws_sold_time_sk), IsNotNull(ws_ship_mode_sk)] +PushedFilters: [*IsNotNull(ws_warehouse_sk), *IsNotNull(ws_sold_time_sk), *IsNotNull(ws_ship_mode_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -86,7 +86,7 @@ Arguments: ((isnotnull(ws_warehouse_sk#3) AND isnotnull(ws_sold_time_sk#1)) AND Output [7]: [w_warehouse_sk#9, w_warehouse_name#10, w_warehouse_sq_ft#11, w_city#12, w_county#13, w_state#14, w_country#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -140,7 +140,7 @@ Input [15]: [ws_sold_time_sk#1, ws_ship_mode_sk#2, ws_quantity#4, ws_ext_sales_p Output [2]: [t_time_sk#19, t_time#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_time), GreaterThanOrEqual(t_time,30838), LessThanOrEqual(t_time,59638), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_time), *GreaterThanOrEqual(t_time,30838), *LessThanOrEqual(t_time,59638), *IsNotNull(t_time_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -179,7 +179,7 @@ Input [14]: [ws_sold_time_sk#1, ws_ship_mode_sk#2, ws_quantity#4, ws_ext_sales_p Output [2]: [sm_ship_mode_sk#21, sm_carrier#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/ship_mode] -PushedFilters: [In(sm_carrier, [BARIAN ,DHL ]), IsNotNull(sm_ship_mode_sk)] +PushedFilters: [*In(sm_carrier, [BARIAN ,DHL ]), *IsNotNull(sm_ship_mode_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -262,7 +262,7 @@ Output [7]: [cs_sold_time_sk#194, cs_ship_mode_sk#195, cs_warehouse_sk#196, cs_q Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#200), dynamicpruningexpression(cs_sold_date_sk#200 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_warehouse_sk), IsNotNull(cs_sold_time_sk), IsNotNull(cs_ship_mode_sk)] +PushedFilters: [*IsNotNull(cs_warehouse_sk), *IsNotNull(cs_sold_time_sk), *IsNotNull(cs_ship_mode_sk)] ReadSchema: struct (45) FilterExecTransformer @@ -459,7 +459,7 @@ ColumnarBroadcastExchange (94) Output [3]: [d_date_sk#16, d_year#17, d_moy#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (92) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67.sf100/explain.txt index d9f598dde50..f8f1fd66799 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67.sf100/explain.txt @@ -49,7 +49,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -79,7 +79,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_sol Output [2]: [s_store_sk#11, s_store_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -131,7 +131,7 @@ Input [7]: [ss_item_sk#1, ss_quantity#3, ss_sales_price#4, d_year#8, d_moy#9, d_ Output [5]: [i_item_sk#14, i_brand#15, i_class#16, i_category#17, i_product_name#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -281,7 +281,7 @@ ColumnarBroadcastExchange (60) Output [5]: [d_date_sk#7, d_month_seq#39, d_year#8, d_moy#9, d_qoy#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (57) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67/explain.txt index 251bc59c566..e428e69b87f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67/explain.txt @@ -44,7 +44,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_sol Output [2]: [s_store_sk#11, s_store_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -109,7 +109,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, d_year Output [5]: [i_item_sk#13, i_brand#14, i_class#15, i_category#16, i_product_name#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -252,7 +252,7 @@ ColumnarBroadcastExchange (53) Output [5]: [d_date_sk#7, d_month_seq#37, d_year#8, d_moy#9, d_qoy#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (50) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68.sf100/explain.txt index b951a6e7793..e84c21cccbe 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68.sf100/explain.txt @@ -58,7 +58,7 @@ VeloxColumnarToRow (70) Output [4]: [c_customer_sk#1, c_current_addr_sk#2, c_first_name#3, c_last_name#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [4]: [c_customer_sk#1, c_current_addr_sk#2, c_first_name#3, c_last_name#4] Output [2]: [ca_address_sk#6, ca_city#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (10) FilterExecTransformer @@ -150,7 +150,7 @@ Output [9]: [ss_customer_sk#10, ss_hdemo_sk#11, ss_addr_sk#12, ss_store_sk#13, s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#18), dynamicpruningexpression(ss_sold_date_sk#18 IN dynamicpruning#19)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -180,7 +180,7 @@ Input [10]: [ss_customer_sk#10, ss_hdemo_sk#11, ss_addr_sk#12, ss_store_sk#13, s Output [2]: [s_store_sk#21, s_city#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Fairview,Midway]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Fairview,Midway]), *IsNotNull(s_store_sk)] ReadSchema: struct (32) FilterExecTransformer @@ -219,7 +219,7 @@ Input [9]: [ss_customer_sk#10, ss_hdemo_sk#11, ss_addr_sk#12, ss_store_sk#13, ss Output [3]: [hd_demo_sk#23, hd_dep_count#24, hd_vehicle_count#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -352,7 +352,7 @@ ColumnarBroadcastExchange (75) Output [3]: [d_date_sk#20, d_year#40, d_dom#41] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (72) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68/explain.txt index 82654b55b08..ec6c277320a 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68/explain.txt @@ -51,7 +51,7 @@ Output [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#9), dynamicpruningexpression(ss_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Input [10]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Output [2]: [s_store_sk#12, s_city#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Fairview,Midway]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Fairview,Midway]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -120,7 +120,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#14, hd_dep_count#15, hd_vehicle_count#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -159,7 +159,7 @@ Input [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_ticket_number#5, s Output [2]: [ca_address_sk#17, ca_city#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (27) FilterExecTransformer @@ -233,7 +233,7 @@ Input [7]: [ss_ticket_number#5, ss_customer_sk#1, ss_addr_sk#3, ca_city#18, sum( Output [4]: [c_customer_sk#36, c_current_addr_sk#37, c_first_name#38, c_last_name#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -307,7 +307,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#11, d_year#42, d_dom#43] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69.sf100/explain.txt index 3bff9222f5c..9b219acf806 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69.sf100/explain.txt @@ -61,7 +61,7 @@ VeloxColumnarToRow (74) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -244,7 +244,7 @@ Input [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#19, ca_state#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [GA,KY,NM]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [GA,KY,NM]), *IsNotNull(ca_address_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -297,7 +297,7 @@ Input [1]: [c_current_cdemo_sk#2] Output [6]: [cd_demo_sk#21, cd_gender#22, cd_marital_status#23, cd_education_status#24, cd_purchase_estimate#25, cd_credit_rating#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (60) FilterExecTransformer @@ -382,7 +382,7 @@ VeloxColumnarToRow (86) Output [2]: [ca_address_sk#19, ca_state#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [GA,KY,NM]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [GA,KY,NM]), *IsNotNull(ca_address_sk)] ReadSchema: struct (76) FilterExecTransformer @@ -454,7 +454,7 @@ ColumnarBroadcastExchange (91) Output [3]: [d_date_sk#9, d_year#39, d_moy#40] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,6), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,6), *IsNotNull(d_date_sk)] ReadSchema: struct (88) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69/explain.txt index 6eab87393ff..2d670b62cde 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69/explain.txt @@ -54,7 +54,7 @@ VeloxColumnarToRow (65) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -207,7 +207,7 @@ Input [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#14, ca_state#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [GA,KY,NM]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [GA,KY,NM]), *IsNotNull(ca_address_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -246,7 +246,7 @@ Input [3]: [c_current_cdemo_sk#2, c_current_addr_sk#3, ca_address_sk#14] Output [6]: [cd_demo_sk#16, cd_gender#17, cd_marital_status#18, cd_education_status#19, cd_purchase_estimate#20, cd_credit_rating#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -340,7 +340,7 @@ ColumnarBroadcastExchange (70) Output [3]: [d_date_sk#7, d_year#29, d_moy#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,6), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,6), *IsNotNull(d_date_sk)] ReadSchema: struct (67) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7.sf100/explain.txt index 88364517ab3..dca460a5180 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7.sf100/explain.txt @@ -41,7 +41,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_promo_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_item_sk#1)) AND isnotnull Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_marital_status,S), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_marital_status,S), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -91,7 +91,7 @@ Input [9]: [ss_item_sk#1, ss_cdemo_sk#2, ss_promo_sk#3, ss_quantity#4, ss_list_p Output [3]: [p_promo_sk#14, p_channel_email#15, p_channel_event#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), *IsNotNull(p_promo_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -149,7 +149,7 @@ Input [7]: [ss_item_sk#1, ss_quantity#4, ss_list_price#5, ss_sales_price#6, ss_c Output [2]: [i_item_sk#18, i_item_id#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [2]: [d_date_sk#17, d_year#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7/explain.txt index 01f2a7c9c11..09bc135d405 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7/explain.txt @@ -41,7 +41,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_promo_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_item_sk#1)) AND isnotnull Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_marital_status,S), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_marital_status,S), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -110,7 +110,7 @@ Input [8]: [ss_item_sk#1, ss_promo_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#15, i_item_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -145,7 +145,7 @@ Input [8]: [ss_item_sk#1, ss_promo_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [3]: [p_promo_sk#17, p_channel_email#18, p_channel_event#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), *IsNotNull(p_promo_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [2]: [d_date_sk#14, d_year#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70.sf100/explain.txt index fba1f4cc701..67e4ce474ae 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70.sf100/explain.txt @@ -63,7 +63,7 @@ Output [3]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -93,7 +93,7 @@ Input [4]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3, d_date_sk#5] Output [3]: [s_store_sk#6, s_county#7, s_state#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -105,7 +105,7 @@ Output [3]: [ss_store_sk#9, ss_net_profit#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (11) FilterExecTransformer @@ -135,7 +135,7 @@ Input [4]: [ss_store_sk#9, ss_net_profit#10, ss_sold_date_sk#11, d_date_sk#12] Output [2]: [s_store_sk#13, s_state#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -373,7 +373,7 @@ ColumnarBroadcastExchange (77) Output [2]: [d_date_sk#5, d_month_seq#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (74) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70/explain.txt index 366294288fd..070b917501f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70/explain.txt @@ -63,7 +63,7 @@ Output [3]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -93,7 +93,7 @@ Input [4]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3, d_date_sk#5] Output [3]: [s_store_sk#6, s_county#7, s_state#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -105,7 +105,7 @@ Output [3]: [ss_store_sk#9, ss_net_profit#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (11) FilterExecTransformer @@ -116,7 +116,7 @@ Arguments: isnotnull(ss_store_sk#9) Output [2]: [s_store_sk#12, s_state#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -373,7 +373,7 @@ ColumnarBroadcastExchange (77) Output [2]: [d_date_sk#5, d_month_seq#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (74) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71.sf100/explain.txt index 09b87109829..d66a7279464 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71.sf100/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (62) Output [4]: [i_item_sk#1, i_brand_id#2, i_brand#3, i_manager_id#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Output [4]: [ws_sold_time_sk#5, ws_item_sk#6, ws_ext_sales_price#7, ws_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#8), dynamicpruningexpression(ws_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_sold_time_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_sold_time_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -116,7 +116,7 @@ Output [4]: [cs_sold_time_sk#14, cs_item_sk#15, cs_ext_sales_price#16, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#17), dynamicpruningexpression(cs_sold_date_sk#17 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_sold_time_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_sold_time_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -151,7 +151,7 @@ Output [4]: [ss_sold_time_sk#22, ss_item_sk#23, ss_ext_sales_price#24, ss_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#25), dynamicpruningexpression(ss_sold_date_sk#25 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_sold_time_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_sold_time_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -204,7 +204,7 @@ Input [6]: [i_item_sk#1, i_brand_id#2, i_brand#3, ext_price#11, sold_item_sk#12, Output [4]: [t_time_sk#30, t_hour#31, t_minute#32, t_meal_time#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [Or(EqualTo(t_meal_time,breakfast ),EqualTo(t_meal_time,dinner )), IsNotNull(t_time_sk)] +PushedFilters: [*Or(EqualTo(t_meal_time,breakfast ),EqualTo(t_meal_time,dinner )), *IsNotNull(t_time_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -319,7 +319,7 @@ ColumnarBroadcastExchange (67) Output [3]: [d_date_sk#10, d_year#42, d_moy#43] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (64) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71/explain.txt index 09b87109829..d66a7279464 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (62) Output [4]: [i_item_sk#1, i_brand_id#2, i_brand#3, i_manager_id#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Output [4]: [ws_sold_time_sk#5, ws_item_sk#6, ws_ext_sales_price#7, ws_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#8), dynamicpruningexpression(ws_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_sold_time_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_sold_time_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -116,7 +116,7 @@ Output [4]: [cs_sold_time_sk#14, cs_item_sk#15, cs_ext_sales_price#16, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#17), dynamicpruningexpression(cs_sold_date_sk#17 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_sold_time_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_sold_time_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -151,7 +151,7 @@ Output [4]: [ss_sold_time_sk#22, ss_item_sk#23, ss_ext_sales_price#24, ss_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#25), dynamicpruningexpression(ss_sold_date_sk#25 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_sold_time_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_sold_time_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -204,7 +204,7 @@ Input [6]: [i_item_sk#1, i_brand_id#2, i_brand#3, ext_price#11, sold_item_sk#12, Output [4]: [t_time_sk#30, t_hour#31, t_minute#32, t_meal_time#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [Or(EqualTo(t_meal_time,breakfast ),EqualTo(t_meal_time,dinner )), IsNotNull(t_time_sk)] +PushedFilters: [*Or(EqualTo(t_meal_time,breakfast ),EqualTo(t_meal_time,dinner )), *IsNotNull(t_time_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -319,7 +319,7 @@ ColumnarBroadcastExchange (67) Output [3]: [d_date_sk#10, d_year#42, d_moy#43] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (64) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72.sf100/explain.txt index 6cb6a816629..b9f9857a4fc 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72.sf100/explain.txt @@ -85,7 +85,7 @@ Output [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#8), dynamicpruningexpression(cs_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_quantity), IsNotNull(cs_item_sk), IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_hdemo_sk), IsNotNull(cs_ship_date_sk)] +PushedFilters: [*IsNotNull(cs_quantity), *IsNotNull(cs_item_sk), *IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_hdemo_sk), *IsNotNull(cs_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Arguments: ((((isnotnull(cs_quantity#7) AND isnotnull(cs_item_sk#4)) AND isnotnu Output [2]: [hd_demo_sk#10, hd_buy_potential#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_buy_potential), EqualTo(hd_buy_potential,>10000 ), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_buy_potential), *EqualTo(hd_buy_potential,>10000 ), *IsNotNull(hd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -135,7 +135,7 @@ Input [9]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_s Output [2]: [cd_demo_sk#12, cd_marital_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_marital_status), EqualTo(cd_marital_status,D), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_marital_status), *EqualTo(cd_marital_status,D), *IsNotNull(cd_demo_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -174,7 +174,7 @@ Input [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#4, cs_promo_sk#5, Output [2]: [d_date_sk#14, d_date#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *IsNotNull(d_date_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -226,7 +226,7 @@ Input [6]: [cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_quantity#7, cs_so Output [2]: [i_item_sk#17, i_item_desc#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -305,7 +305,7 @@ Output [4]: [inv_item_sk#25, inv_warehouse_sk#26, inv_quantity_on_hand#27, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#28), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (55) FilterExecTransformer @@ -316,7 +316,7 @@ Arguments: ((isnotnull(inv_quantity_on_hand#27) AND isnotnull(inv_item_sk#25)) A Output [2]: [w_warehouse_sk#29, w_warehouse_name#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (57) FilterExecTransformer @@ -378,7 +378,7 @@ Input [11]: [cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_quantity#7, i_it Output [1]: [p_promo_sk#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -430,7 +430,7 @@ Input [5]: [cs_item_sk#4, cs_order_number#6, w_warehouse_name#30, i_item_desc#18 Output [3]: [cr_item_sk#34, cr_order_number#35, cr_returned_date_sk#36] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (85) FilterExecTransformer @@ -537,7 +537,7 @@ ColumnarBroadcastExchange (118) Output [4]: [d_date_sk#20, d_date#21, d_week_seq#22, d_year#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk), IsNotNull(d_week_seq), IsNotNull(d_date)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk), *IsNotNull(d_week_seq), *IsNotNull(d_date)] ReadSchema: struct (107) FilterExecTransformer @@ -566,7 +566,7 @@ Input [3]: [d_date_sk#20, d_date#21, d_week_seq#22] Output [2]: [d_date_sk#23, d_week_seq#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *IsNotNull(d_date_sk)] ReadSchema: struct (114) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72/explain.txt index 3a539d60cf9..664eeee3fb5 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72/explain.txt @@ -82,7 +82,7 @@ Output [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#8), dynamicpruningexpression(cs_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_quantity), IsNotNull(cs_item_sk), IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_hdemo_sk), IsNotNull(cs_ship_date_sk)] +PushedFilters: [*IsNotNull(cs_quantity), *IsNotNull(cs_item_sk), *IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_hdemo_sk), *IsNotNull(cs_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -94,7 +94,7 @@ Output [4]: [inv_item_sk#10, inv_warehouse_sk#11, inv_quantity_on_hand#12, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#13)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -129,7 +129,7 @@ Input [12]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [w_warehouse_sk#14, w_warehouse_name#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -164,7 +164,7 @@ Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [i_item_sk#16, i_item_desc#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -199,7 +199,7 @@ Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [cd_demo_sk#18, cd_marital_status#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_marital_status), EqualTo(cd_marital_status,D), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_marital_status), *EqualTo(cd_marital_status,D), *IsNotNull(cd_demo_sk)] ReadSchema: struct (28) FilterExecTransformer @@ -238,7 +238,7 @@ Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [hd_demo_sk#20, hd_buy_potential#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_buy_potential), EqualTo(hd_buy_potential,>10000 ), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_buy_potential), *EqualTo(hd_buy_potential,>10000 ), *IsNotNull(hd_demo_sk)] ReadSchema: struct (37) FilterExecTransformer @@ -296,7 +296,7 @@ Input [11]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, Output [2]: [d_date_sk#25, d_week_seq#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *IsNotNull(d_date_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -331,7 +331,7 @@ Input [11]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, Output [2]: [d_date_sk#27, d_date#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *IsNotNull(d_date_sk)] ReadSchema: struct (59) FilterExecTransformer @@ -366,7 +366,7 @@ Input [10]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, Output [1]: [p_promo_sk#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (67) FilterExecTransformer @@ -418,7 +418,7 @@ Input [5]: [cs_item_sk#4, cs_order_number#6, w_warehouse_name#15, i_item_desc#17 Output [3]: [cr_item_sk#31, cr_order_number#32, cr_returned_date_sk#33] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (80) FilterExecTransformer @@ -519,7 +519,7 @@ ColumnarBroadcastExchange (105) Output [4]: [d_date_sk#22, d_date#23, d_week_seq#24, d_year#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk), IsNotNull(d_week_seq), IsNotNull(d_date)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk), *IsNotNull(d_week_seq), *IsNotNull(d_date)] ReadSchema: struct (102) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73.sf100/explain.txt index 4f7d5d8a520..c1dcbd3d6a0 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73.sf100/explain.txt @@ -50,7 +50,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -80,7 +80,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_county, [Bronx County,Franklin Parish,Orange County,Williamson County]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_county, [Bronx County,Franklin Parish,Orange County,Williamson County]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -119,7 +119,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -218,7 +218,7 @@ Input [3]: [ss_ticket_number#4, ss_customer_sk#1, cnt#18] Output [5]: [c_customer_sk#20, c_salutation#21, c_first_name#22, c_last_name#23, c_preferred_cust_flag#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -297,7 +297,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#7, d_year#26, d_dom#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73/explain.txt index e7b1d36cd08..72e5c950ea1 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73/explain.txt @@ -44,7 +44,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_county, [Bronx County,Franklin Parish,Orange County,Williamson County]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_county, [Bronx County,Franklin Parish,Orange County,Williamson County]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -113,7 +113,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -191,7 +191,7 @@ Arguments: ((cnt#18 >= 1) AND (cnt#18 <= 5)) Output [5]: [c_customer_sk#19, c_salutation#20, c_first_name#21, c_last_name#22, c_preferred_cust_flag#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -263,7 +263,7 @@ ColumnarBroadcastExchange (55) Output [3]: [d_date_sk#7, d_year#24, d_dom#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74.sf100/explain.txt index 1865baa904e..ea96934b486 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74.sf100/explain.txt @@ -113,7 +113,7 @@ Output [3]: [ss_customer_sk#1, ss_net_paid#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -160,7 +160,7 @@ Input [3]: [ss_customer_sk#1, ss_net_paid#2, d_year#6] Output [4]: [c_customer_sk#8, c_customer_id#9, c_first_name#10, c_last_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (14) FilterExecTransformer @@ -267,7 +267,7 @@ Output [3]: [ss_customer_sk#21, ss_net_paid#22, ss_sold_date_sk#23] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#23), dynamicpruningexpression(ss_sold_date_sk#23 IN dynamicpruning#24)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -396,7 +396,7 @@ Output [3]: [ws_bill_customer_sk#41, ws_net_paid#42, ws_sold_date_sk#43] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#43), dynamicpruningexpression(ws_sold_date_sk#43 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -537,7 +537,7 @@ Output [3]: [ws_bill_customer_sk#59, ws_net_paid#60, ws_sold_date_sk#61] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#61), dynamicpruningexpression(ws_sold_date_sk#61 IN dynamicpruning#24)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (107) FilterExecTransformer @@ -688,7 +688,7 @@ ColumnarBroadcastExchange (145) Output [2]: [d_date_sk#5, d_year#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (143) FilterExecTransformer @@ -713,7 +713,7 @@ ColumnarBroadcastExchange (149) Output [2]: [d_date_sk#25, d_year#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (147) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74/explain.txt index a38b744c0bf..ea087db668d 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74/explain.txt @@ -96,7 +96,7 @@ VeloxColumnarToRow (118) Output [4]: [c_customer_sk#1, c_customer_id#2, c_first_name#3, c_last_name#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (2) FilterExecTransformer @@ -108,7 +108,7 @@ Output [3]: [ss_customer_sk#5, ss_net_paid#6, ss_sold_date_sk#7] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -205,7 +205,7 @@ Arguments: (isnotnull(year_total#17) AND (year_total#17 > 0.00)) Output [4]: [c_customer_sk#18, c_customer_id#19, c_first_name#20, c_last_name#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (27) FilterExecTransformer @@ -217,7 +217,7 @@ Output [3]: [ss_customer_sk#22, ss_net_paid#23, ss_sold_date_sk#24] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#24), dynamicpruningexpression(ss_sold_date_sk#24 IN dynamicpruning#25)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -330,7 +330,7 @@ Join condition: None Output [4]: [c_customer_sk#36, c_customer_id#37, c_first_name#38, c_last_name#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (56) FilterExecTransformer @@ -342,7 +342,7 @@ Output [3]: [ws_bill_customer_sk#40, ws_net_paid#41, ws_sold_date_sk#42] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#42), dynamicpruningexpression(ws_sold_date_sk#42 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (58) FilterExecTransformer @@ -463,7 +463,7 @@ Input [8]: [customer_id#16, year_total#17, customer_id#32, customer_first_name#3 Output [4]: [c_customer_sk#52, c_customer_id#53, c_first_name#54, c_last_name#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (87) FilterExecTransformer @@ -475,7 +475,7 @@ Output [3]: [ws_bill_customer_sk#56, ws_net_paid#57, ws_sold_date_sk#58] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#58), dynamicpruningexpression(ws_sold_date_sk#58 IN dynamicpruning#25)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (89) FilterExecTransformer @@ -611,7 +611,7 @@ ColumnarBroadcastExchange (122) Output [2]: [d_date_sk#9, d_year#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (120) FilterExecTransformer @@ -636,7 +636,7 @@ ColumnarBroadcastExchange (126) Output [2]: [d_date_sk#26, d_year#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (124) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75.sf100/explain.txt index cb552ad62dc..21907aa6177 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75.sf100/explain.txt @@ -169,7 +169,7 @@ Output [5]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -180,7 +180,7 @@ Arguments: isnotnull(cs_item_sk#1) Output [6]: [i_item_sk#7, i_brand_id#8, i_class_id#9, i_category_id#10, i_category#11, i_manufact_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Books ), IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id), IsNotNull(i_manufact_id)] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Books ), *IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id), *IsNotNull(i_manufact_id)] ReadSchema: struct (4) FilterExecTransformer @@ -255,7 +255,7 @@ Input [9]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price#4 Output [5]: [cr_item_sk#16, cr_order_number#17, cr_return_quantity#18, cr_return_amount#19, cr_returned_date_sk#20] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -302,7 +302,7 @@ Output [5]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pr Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#28), dynamicpruningexpression(ss_sold_date_sk#28 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -368,7 +368,7 @@ Input [9]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pri Output [5]: [sr_item_sk#37, sr_ticket_number#38, sr_return_quantity#39, sr_return_amt#40, sr_returned_date_sk#41] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -415,7 +415,7 @@ Output [5]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#49), dynamicpruningexpression(ws_sold_date_sk#49 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -481,7 +481,7 @@ Input [9]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pric Output [5]: [wr_item_sk#58, wr_order_number#59, wr_return_quantity#60, wr_return_amt#61, wr_returned_date_sk#62] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -640,7 +640,7 @@ Output [5]: [cs_item_sk#78, cs_order_number#79, cs_quantity#80, cs_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#82), dynamicpruningexpression(cs_sold_date_sk#82 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (118) FilterExecTransformer @@ -730,7 +730,7 @@ Output [5]: [ss_item_sk#98, ss_ticket_number#99, ss_quantity#100, ss_ext_sales_p Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#102), dynamicpruningexpression(ss_sold_date_sk#102 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (141) FilterExecTransformer @@ -820,7 +820,7 @@ Output [5]: [ws_item_sk#117, ws_order_number#118, ws_quantity#119, ws_ext_sales_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#121), dynamicpruningexpression(ws_sold_date_sk#121 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (164) FilterExecTransformer @@ -1050,7 +1050,7 @@ ColumnarBroadcastExchange (222) Output [2]: [d_date_sk#13, d_year#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (220) FilterExecTransformer @@ -1079,7 +1079,7 @@ ColumnarBroadcastExchange (226) Output [2]: [d_date_sk#89, d_year#90] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (224) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75/explain.txt index 409a4077943..fc6b5b4350c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75/explain.txt @@ -169,7 +169,7 @@ Output [5]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -180,7 +180,7 @@ Arguments: isnotnull(cs_item_sk#1) Output [6]: [i_item_sk#7, i_brand_id#8, i_class_id#9, i_category_id#10, i_category#11, i_manufact_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Books ), IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id), IsNotNull(i_manufact_id)] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Books ), *IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id), *IsNotNull(i_manufact_id)] ReadSchema: struct (4) FilterExecTransformer @@ -255,7 +255,7 @@ Input [9]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price#4 Output [5]: [cr_item_sk#16, cr_order_number#17, cr_return_quantity#18, cr_return_amount#19, cr_returned_date_sk#20] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -302,7 +302,7 @@ Output [5]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pr Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#28), dynamicpruningexpression(ss_sold_date_sk#28 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -368,7 +368,7 @@ Input [9]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pri Output [5]: [sr_item_sk#37, sr_ticket_number#38, sr_return_quantity#39, sr_return_amt#40, sr_returned_date_sk#41] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -415,7 +415,7 @@ Output [5]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#49), dynamicpruningexpression(ws_sold_date_sk#49 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -481,7 +481,7 @@ Input [9]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pric Output [5]: [wr_item_sk#58, wr_order_number#59, wr_return_quantity#60, wr_return_amt#61, wr_returned_date_sk#62] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -640,7 +640,7 @@ Output [5]: [cs_item_sk#78, cs_order_number#79, cs_quantity#80, cs_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#82), dynamicpruningexpression(cs_sold_date_sk#82 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (118) FilterExecTransformer @@ -730,7 +730,7 @@ Output [5]: [ss_item_sk#98, ss_ticket_number#99, ss_quantity#100, ss_ext_sales_p Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#102), dynamicpruningexpression(ss_sold_date_sk#102 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (141) FilterExecTransformer @@ -820,7 +820,7 @@ Output [5]: [ws_item_sk#117, ws_order_number#118, ws_quantity#119, ws_ext_sales_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#121), dynamicpruningexpression(ws_sold_date_sk#121 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (164) FilterExecTransformer @@ -1050,7 +1050,7 @@ ColumnarBroadcastExchange (222) Output [2]: [d_date_sk#13, d_year#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (220) FilterExecTransformer @@ -1079,7 +1079,7 @@ ColumnarBroadcastExchange (226) Output [2]: [d_date_sk#89, d_year#90] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (224) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76.sf100/explain.txt index d577b187932..b31bfb4d196 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76.sf100/explain.txt @@ -56,7 +56,7 @@ Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_sold_date_sk# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4)] -PushedFilters: [IsNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -67,7 +67,7 @@ Arguments: (isnull(ss_store_sk#2) AND isnotnull(ss_item_sk#1)) Output [3]: [d_date_sk#5, d_year#6, d_qoy#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -102,7 +102,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Output [2]: [i_item_sk#8, i_category#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -142,7 +142,7 @@ Output [4]: [ws_item_sk#13, ws_ship_customer_sk#14, ws_ext_sales_price#15, ws_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#16)] -PushedFilters: [IsNull(ws_ship_customer_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNull(ws_ship_customer_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -167,7 +167,7 @@ Input [4]: [ws_item_sk#13, ws_ship_customer_sk#14, ws_ext_sales_price#15, ws_sol Output [3]: [d_date_sk#17, d_year#18, d_qoy#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -202,7 +202,7 @@ Input [5]: [ws_item_sk#13, ws_ship_customer_sk#14, ws_ext_sales_price#15, d_year Output [2]: [i_item_sk#20, i_category#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -228,7 +228,7 @@ Output [4]: [cs_ship_addr_sk#25, cs_item_sk#26, cs_ext_sales_price#27, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#28)] -PushedFilters: [IsNull(cs_ship_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNull(cs_ship_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (40) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76/explain.txt index b789c6023fb..aec8ca1f312 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76/explain.txt @@ -52,7 +52,7 @@ Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_sold_date_sk# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4)] -PushedFilters: [IsNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -63,7 +63,7 @@ Arguments: (isnull(ss_store_sk#2) AND isnotnull(ss_item_sk#1)) Output [2]: [i_item_sk#5, i_category#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -98,7 +98,7 @@ Input [6]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Output [3]: [d_date_sk#7, d_year#8, d_qoy#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -138,7 +138,7 @@ Output [4]: [ws_item_sk#13, ws_ship_customer_sk#14, ws_ext_sales_price#15, ws_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#16)] -PushedFilters: [IsNull(ws_ship_customer_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNull(ws_ship_customer_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -192,7 +192,7 @@ Output [4]: [cs_ship_addr_sk#25, cs_item_sk#26, cs_ext_sales_price#27, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#28)] -PushedFilters: [IsNull(cs_ship_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNull(cs_ship_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (34) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77.sf100/explain.txt index 36a18de3cea..c82d70c1c1f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77.sf100/explain.txt @@ -125,7 +125,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -155,7 +155,7 @@ Input [5]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_s Output [1]: [s_store_sk#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -230,7 +230,7 @@ Output [4]: [sr_store_sk#19, sr_return_amt#20, sr_net_loss#21, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#22), dynamicpruningexpression(sr_returned_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -499,7 +499,7 @@ Output [4]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#76), dynamicpruningexpression(ws_sold_date_sk#76 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_web_page_sk)] ReadSchema: struct (90) FilterExecTransformer @@ -529,7 +529,7 @@ Input [5]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold_ Output [1]: [wp_web_page_sk#78] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_web_page_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -604,7 +604,7 @@ Output [4]: [wr_web_page_sk#90, wr_return_amt#91, wr_net_loss#92, wr_returned_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#93), dynamicpruningexpression(wr_returned_date_sk#93 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(wr_web_page_sk)] +PushedFilters: [*IsNotNull(wr_web_page_sk)] ReadSchema: struct (114) FilterExecTransformer @@ -792,7 +792,7 @@ ColumnarBroadcastExchange (161) Output [2]: [d_date_sk#6, d_date#133] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-08-03), LessThanOrEqual(d_date,2000-09-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-08-03), *LessThanOrEqual(d_date,2000-09-02), *IsNotNull(d_date_sk)] ReadSchema: struct (158) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77/explain.txt index c0b92fca55b..7c1c9f48cc3 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77/explain.txt @@ -125,7 +125,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -155,7 +155,7 @@ Input [5]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_s Output [1]: [s_store_sk#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -230,7 +230,7 @@ Output [4]: [sr_store_sk#19, sr_return_amt#20, sr_net_loss#21, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#22), dynamicpruningexpression(sr_returned_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -499,7 +499,7 @@ Output [4]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#76), dynamicpruningexpression(ws_sold_date_sk#76 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_web_page_sk)] ReadSchema: struct (90) FilterExecTransformer @@ -529,7 +529,7 @@ Input [5]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold_ Output [1]: [wp_web_page_sk#78] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_web_page_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -604,7 +604,7 @@ Output [4]: [wr_web_page_sk#90, wr_return_amt#91, wr_net_loss#92, wr_returned_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#93), dynamicpruningexpression(wr_returned_date_sk#93 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(wr_web_page_sk)] +PushedFilters: [*IsNotNull(wr_web_page_sk)] ReadSchema: struct (114) FilterExecTransformer @@ -792,7 +792,7 @@ ColumnarBroadcastExchange (161) Output [2]: [d_date_sk#6, d_date#133] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-08-03), LessThanOrEqual(d_date,2000-09-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-08-03), *LessThanOrEqual(d_date,2000-09-02), *IsNotNull(d_date_sk)] ReadSchema: struct (158) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78.sf100/explain.txt index 97eae827132..4f95a476fc2 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78.sf100/explain.txt @@ -92,7 +92,7 @@ Output [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -124,7 +124,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, s Output [3]: [sr_item_sk#10, sr_ticket_number#11, sr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -229,7 +229,7 @@ Output [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#38), dynamicpruningexpression(ws_sold_date_sk#38 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -261,7 +261,7 @@ Input [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quanti Output [3]: [wr_item_sk#40, wr_order_number#41, wr_returned_date_sk#42] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -380,7 +380,7 @@ Output [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#69), dynamicpruningexpression(cs_sold_date_sk#69 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -412,7 +412,7 @@ Input [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quanti Output [3]: [cr_item_sk#71, cr_order_number#72, cr_returned_date_sk#73] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -549,7 +549,7 @@ ColumnarBroadcastExchange (112) Output [2]: [d_date_sk#14, d_year#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (110) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78/explain.txt index 74aa39fb359..409080368e9 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78/explain.txt @@ -92,7 +92,7 @@ Output [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -124,7 +124,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, s Output [3]: [sr_item_sk#10, sr_ticket_number#11, sr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -229,7 +229,7 @@ Output [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#38), dynamicpruningexpression(ws_sold_date_sk#38 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -261,7 +261,7 @@ Input [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quanti Output [3]: [wr_item_sk#40, wr_order_number#41, wr_returned_date_sk#42] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -380,7 +380,7 @@ Output [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#69), dynamicpruningexpression(cs_sold_date_sk#69 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -412,7 +412,7 @@ Input [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quanti Output [3]: [cr_item_sk#71, cr_order_number#72, cr_returned_date_sk#73] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -549,7 +549,7 @@ ColumnarBroadcastExchange (112) Output [2]: [d_date_sk#14, d_year#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (110) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79.sf100/explain.txt index 0d6660f1ba3..32ae3d860ea 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79.sf100/explain.txt @@ -46,7 +46,7 @@ Output [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,6),GreaterThan(hd_vehicle_count,2)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,6),GreaterThan(hd_vehicle_count,2)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -115,7 +115,7 @@ Input [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [s_store_sk#14, s_number_employees#15, s_city#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_number_employees), GreaterThanOrEqual(s_number_employees,200), LessThanOrEqual(s_number_employees,295), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_number_employees), *GreaterThanOrEqual(s_number_employees,200), *LessThanOrEqual(s_number_employees,295), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -210,7 +210,7 @@ Input [5]: [ss_ticket_number#5, ss_customer_sk#1, s_city#16, amt#27, profit#28] Output [3]: [c_customer_sk#29, c_first_name#30, c_last_name#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -272,7 +272,7 @@ ColumnarBroadcastExchange (57) Output [3]: [d_date_sk#10, d_year#35, d_dow#36] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dow), EqualTo(d_dow,1), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dow), *EqualTo(d_dow,1), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (54) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79/explain.txt index 5ba24432f05..f260645ddb4 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79/explain.txt @@ -41,7 +41,7 @@ Output [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -71,7 +71,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [s_store_sk#11, s_number_employees#12, s_city#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_number_employees), GreaterThanOrEqual(s_number_employees,200), LessThanOrEqual(s_number_employees,295), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_number_employees), *GreaterThanOrEqual(s_number_employees,200), *LessThanOrEqual(s_number_employees,295), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -110,7 +110,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#14, hd_dep_count#15, hd_vehicle_count#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,6),GreaterThan(hd_vehicle_count,2)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,6),GreaterThan(hd_vehicle_count,2)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -188,7 +188,7 @@ Input [6]: [ss_ticket_number#5, ss_customer_sk#1, ss_addr_sk#3, s_city#13, sum(U Output [3]: [c_customer_sk#28, c_first_name#29, c_last_name#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#10, d_year#33, d_dow#34] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dow), EqualTo(d_dow,1), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dow), *EqualTo(d_dow,1), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8.sf100/explain.txt index 50a9868bc45..c80896b55fb 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8.sf100/explain.txt @@ -71,7 +71,7 @@ Output [3]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -101,7 +101,7 @@ Input [4]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3, d_date_sk#5] Output [3]: [s_store_sk#6, s_store_name#7, s_zip#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (9) FilterExecTransformer @@ -167,7 +167,7 @@ Input [1]: [ca_zip#10] Output [2]: [ca_address_sk#12, ca_zip#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -199,7 +199,7 @@ Input [2]: [ca_address_sk#12, ca_zip#13] Output [2]: [c_current_addr_sk#15, c_preferred_cust_flag#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_preferred_cust_flag), EqualTo(c_preferred_cust_flag,Y), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_preferred_cust_flag), *EqualTo(c_preferred_cust_flag,Y), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (33) FilterExecTransformer @@ -433,7 +433,7 @@ ColumnarBroadcastExchange (90) Output [3]: [d_date_sk#5, d_year#32, d_qoy#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (87) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8/explain.txt index 3a4a6ed582d..886d6b7c3a9 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8/explain.txt @@ -61,7 +61,7 @@ Output [3]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -91,7 +91,7 @@ Input [4]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3, d_date_sk#5] Output [3]: [s_store_sk#6, s_store_name#7, s_zip#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (9) FilterExecTransformer @@ -140,7 +140,7 @@ Input [1]: [ca_zip#9] Output [2]: [ca_address_sk#11, ca_zip#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -151,7 +151,7 @@ Arguments: isnotnull(ca_address_sk#11) Output [2]: [c_current_addr_sk#13, c_preferred_cust_flag#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_preferred_cust_flag), EqualTo(c_preferred_cust_flag,Y), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_preferred_cust_flag), *EqualTo(c_preferred_cust_flag,Y), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -375,7 +375,7 @@ ColumnarBroadcastExchange (76) Output [3]: [d_date_sk#5, d_year#28, d_qoy#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (73) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80.sf100/explain.txt index 50d4f70a590..9b166d10847 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80.sf100/explain.txt @@ -141,7 +141,7 @@ Output [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -173,7 +173,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_e Output [5]: [sr_item_sk#12, sr_ticket_number#13, sr_return_amt#14, sr_net_loss#15, sr_returned_date_sk#16] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (10) FilterExecTransformer @@ -215,7 +215,7 @@ Input [11]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_ Output [2]: [i_item_sk#18, i_current_price#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThan(i_current_price,50.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThan(i_current_price,50.00), *IsNotNull(i_item_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -254,7 +254,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ext_sales_price#5, ss Output [2]: [p_promo_sk#20, p_channel_tv#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_channel_tv), EqualTo(p_channel_tv,N), IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_channel_tv), *EqualTo(p_channel_tv,N), *IsNotNull(p_promo_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -312,7 +312,7 @@ Input [7]: [ss_store_sk#2, ss_ext_sales_price#5, ss_net_profit#6, ss_sold_date_s Output [2]: [s_store_sk#23, s_store_id#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -391,7 +391,7 @@ Output [7]: [cs_catalog_page_sk#47, cs_item_sk#48, cs_promo_sk#49, cs_order_numb Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#53), dynamicpruningexpression(cs_sold_date_sk#53 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_catalog_page_sk), IsNotNull(cs_item_sk), IsNotNull(cs_promo_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk), *IsNotNull(cs_item_sk), *IsNotNull(cs_promo_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -423,7 +423,7 @@ Input [7]: [cs_catalog_page_sk#47, cs_item_sk#48, cs_promo_sk#49, cs_order_numbe Output [5]: [cr_item_sk#55, cr_order_number#56, cr_return_amount#57, cr_net_loss#58, cr_returned_date_sk#59] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (69) FilterExecTransformer @@ -522,7 +522,7 @@ Input [7]: [cs_catalog_page_sk#47, cs_ext_sales_price#51, cs_net_profit#52, cs_s Output [2]: [cp_catalog_page_sk#64, cp_catalog_page_id#65] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (94) FilterExecTransformer @@ -601,7 +601,7 @@ Output [7]: [ws_item_sk#88, ws_web_site_sk#89, ws_promo_sk#90, ws_order_number#9 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#94), dynamicpruningexpression(ws_sold_date_sk#94 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_web_site_sk), IsNotNull(ws_item_sk), IsNotNull(ws_promo_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk), *IsNotNull(ws_item_sk), *IsNotNull(ws_promo_sk)] ReadSchema: struct (112) FilterExecTransformer @@ -633,7 +633,7 @@ Input [7]: [ws_item_sk#88, ws_web_site_sk#89, ws_promo_sk#90, ws_order_number#91 Output [5]: [wr_item_sk#96, wr_order_number#97, wr_return_amt#98, wr_net_loss#99, wr_returned_date_sk#100] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_item_sk), IsNotNull(wr_order_number)] +PushedFilters: [*IsNotNull(wr_item_sk), *IsNotNull(wr_order_number)] ReadSchema: struct (120) FilterExecTransformer @@ -732,7 +732,7 @@ Input [7]: [ws_web_site_sk#89, ws_ext_sales_price#92, ws_net_profit#93, ws_sold_ Output [2]: [web_site_sk#105, web_site_id#106] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (145) FilterExecTransformer @@ -887,7 +887,7 @@ VeloxColumnarToRow (189) Output [2]: [i_item_sk#18, i_current_price#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThan(i_current_price,50.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThan(i_current_price,50.00), *IsNotNull(i_item_sk)] ReadSchema: struct (179) FilterExecTransformer @@ -952,7 +952,7 @@ VeloxColumnarToRow (201) Output [2]: [p_promo_sk#20, p_channel_tv#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_channel_tv), EqualTo(p_channel_tv,N), IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_channel_tv), *EqualTo(p_channel_tv,N), *IsNotNull(p_promo_sk)] ReadSchema: struct (191) FilterExecTransformer @@ -1012,7 +1012,7 @@ ColumnarBroadcastExchange (206) Output [2]: [d_date_sk#22, d_date#161] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-08-23), LessThanOrEqual(d_date,2000-09-22), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-08-23), *LessThanOrEqual(d_date,2000-09-22), *IsNotNull(d_date_sk)] ReadSchema: struct (203) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80/explain.txt index 90554e247cd..37069f4f9af 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80/explain.txt @@ -141,7 +141,7 @@ Output [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -173,7 +173,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_e Output [5]: [sr_item_sk#10, sr_ticket_number#11, sr_return_amt#12, sr_net_loss#13, sr_returned_date_sk#14] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (10) FilterExecTransformer @@ -234,7 +234,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ext_sales_price#5, ss Output [2]: [s_store_sk#17, s_store_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -269,7 +269,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ext_sales_price#5, ss Output [2]: [i_item_sk#19, i_current_price#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThan(i_current_price,50.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThan(i_current_price,50.00), *IsNotNull(i_item_sk)] ReadSchema: struct (33) FilterExecTransformer @@ -308,7 +308,7 @@ Input [8]: [ss_item_sk#1, ss_promo_sk#3, ss_ext_sales_price#5, ss_net_profit#6, Output [2]: [p_promo_sk#21, p_channel_tv#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_channel_tv), EqualTo(p_channel_tv,N), IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_channel_tv), *EqualTo(p_channel_tv,N), *IsNotNull(p_promo_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -391,7 +391,7 @@ Output [7]: [cs_catalog_page_sk#45, cs_item_sk#46, cs_promo_sk#47, cs_order_numb Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#51), dynamicpruningexpression(cs_sold_date_sk#51 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_catalog_page_sk), IsNotNull(cs_item_sk), IsNotNull(cs_promo_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk), *IsNotNull(cs_item_sk), *IsNotNull(cs_promo_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -423,7 +423,7 @@ Input [7]: [cs_catalog_page_sk#45, cs_item_sk#46, cs_promo_sk#47, cs_order_numbe Output [5]: [cr_item_sk#53, cr_order_number#54, cr_return_amount#55, cr_net_loss#56, cr_returned_date_sk#57] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (69) FilterExecTransformer @@ -484,7 +484,7 @@ Input [9]: [cs_catalog_page_sk#45, cs_item_sk#46, cs_promo_sk#47, cs_ext_sales_p Output [2]: [cp_catalog_page_sk#60, cp_catalog_page_id#61] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (84) FilterExecTransformer @@ -601,7 +601,7 @@ Output [7]: [ws_item_sk#86, ws_web_site_sk#87, ws_promo_sk#88, ws_order_number#8 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#92), dynamicpruningexpression(ws_sold_date_sk#92 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_web_site_sk), IsNotNull(ws_item_sk), IsNotNull(ws_promo_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk), *IsNotNull(ws_item_sk), *IsNotNull(ws_promo_sk)] ReadSchema: struct (112) FilterExecTransformer @@ -633,7 +633,7 @@ Input [7]: [ws_item_sk#86, ws_web_site_sk#87, ws_promo_sk#88, ws_order_number#89 Output [5]: [wr_item_sk#94, wr_order_number#95, wr_return_amt#96, wr_net_loss#97, wr_returned_date_sk#98] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_item_sk), IsNotNull(wr_order_number)] +PushedFilters: [*IsNotNull(wr_item_sk), *IsNotNull(wr_order_number)] ReadSchema: struct (120) FilterExecTransformer @@ -694,7 +694,7 @@ Input [9]: [ws_item_sk#86, ws_web_site_sk#87, ws_promo_sk#88, ws_ext_sales_price Output [2]: [web_site_sk#101, web_site_id#102] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (135) FilterExecTransformer @@ -882,7 +882,7 @@ ColumnarBroadcastExchange (182) Output [2]: [d_date_sk#16, d_date#149] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-08-23), LessThanOrEqual(d_date,2000-09-22), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-08-23), *LessThanOrEqual(d_date,2000-09-22), *IsNotNull(d_date_sk)] ReadSchema: struct (179) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81.sf100/explain.txt index fa2fc3862a2..6a177bfda26 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81.sf100/explain.txt @@ -81,7 +81,7 @@ VeloxColumnarToRow (100) Output [6]: [c_customer_sk#1, c_customer_id#2, c_current_addr_sk#3, c_salutation#4, c_first_name#5, c_last_name#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -92,7 +92,7 @@ Arguments: (isnotnull(c_customer_sk#1) AND isnotnull(c_current_addr_sk#3)) Output [12]: [ca_address_sk#7, ca_street_number#8, ca_street_name#9, ca_street_type#10, ca_suite_number#11, ca_city#12, ca_county#13, ca_state#14, ca_zip#15, ca_country#16, ca_gmt_offset#17, ca_location_type#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,GA), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,GA), *IsNotNull(ca_address_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -145,7 +145,7 @@ Output [4]: [cr_returning_customer_sk#20, cr_returning_addr_sk#21, cr_return_amt Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#23), dynamicpruningexpression(cr_returned_date_sk#23 IN dynamicpruning#24)] -PushedFilters: [IsNotNull(cr_returning_addr_sk), IsNotNull(cr_returning_customer_sk)] +PushedFilters: [*IsNotNull(cr_returning_addr_sk), *IsNotNull(cr_returning_customer_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -192,7 +192,7 @@ Input [3]: [cr_returning_customer_sk#20, cr_returning_addr_sk#21, cr_return_amt_ Output [2]: [ca_address_sk#27, ca_state#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_state)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_state)] ReadSchema: struct (29) FilterExecTransformer @@ -309,7 +309,7 @@ Output [4]: [cr_returning_customer_sk#39, cr_returning_addr_sk#40, cr_return_amt Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#42), dynamicpruningexpression(cr_returned_date_sk#42 IN dynamicpruning#24)] -PushedFilters: [IsNotNull(cr_returning_addr_sk)] +PushedFilters: [*IsNotNull(cr_returning_addr_sk)] ReadSchema: struct (57) FilterExecTransformer @@ -501,7 +501,7 @@ ColumnarBroadcastExchange (105) Output [2]: [d_date_sk#25, d_year#60] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (102) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81/explain.txt index 2b411480b16..0d7429002fd 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81/explain.txt @@ -69,7 +69,7 @@ Output [4]: [cr_returning_customer_sk#1, cr_returning_addr_sk#2, cr_return_amt_i Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#4), dynamicpruningexpression(cr_returned_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cr_returning_addr_sk), IsNotNull(cr_returning_customer_sk)] +PushedFilters: [*IsNotNull(cr_returning_addr_sk), *IsNotNull(cr_returning_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -99,7 +99,7 @@ Input [5]: [cr_returning_customer_sk#1, cr_returning_addr_sk#2, cr_return_amt_in Output [2]: [ca_address_sk#7, ca_state#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_state)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_state)] ReadSchema: struct (9) FilterExecTransformer @@ -178,7 +178,7 @@ Output [4]: [cr_returning_customer_sk#17, cr_returning_addr_sk#18, cr_return_amt Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#20), dynamicpruningexpression(cr_returned_date_sk#20 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cr_returning_addr_sk)] +PushedFilters: [*IsNotNull(cr_returning_addr_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -333,7 +333,7 @@ Input [5]: [ctr_customer_sk#14, ctr_state#15, ctr_total_return#16, (avg(ctr_tota Output [6]: [c_customer_sk#37, c_customer_id#38, c_current_addr_sk#39, c_salutation#40, c_first_name#41, c_last_name#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (64) FilterExecTransformer @@ -368,7 +368,7 @@ Input [8]: [ctr_customer_sk#14, ctr_total_return#16, c_customer_sk#37, c_custome Output [12]: [ca_address_sk#43, ca_street_number#44, ca_street_name#45, ca_street_type#46, ca_suite_number#47, ca_city#48, ca_county#49, ca_state#50, ca_zip#51, ca_country#52, ca_gmt_offset#53, ca_location_type#54] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,GA), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,GA), *IsNotNull(ca_address_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -423,7 +423,7 @@ ColumnarBroadcastExchange (86) Output [2]: [d_date_sk#6, d_year#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (83) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82.sf100/explain.txt index 647f0909d54..3a8bc3607f3 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82.sf100/explain.txt @@ -38,7 +38,7 @@ VeloxColumnarToRow (43) Output [5]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,62.00), LessThanOrEqual(i_current_price,92.00), In(i_manufact_id, [129,270,423,821]), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,62.00), *LessThanOrEqual(i_current_price,92.00), *In(i_manufact_id, [129,270,423,821]), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -68,7 +68,7 @@ Output [3]: [inv_item_sk#6, inv_quantity_on_hand#7, inv_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#8), dynamicpruningexpression(inv_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), GreaterThanOrEqual(inv_quantity_on_hand,100), LessThanOrEqual(inv_quantity_on_hand,500), IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *GreaterThanOrEqual(inv_quantity_on_hand,100), *LessThanOrEqual(inv_quantity_on_hand,500), *IsNotNull(inv_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -129,7 +129,7 @@ Input [4]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4] Output [2]: [ss_item_sk#12, ss_sold_date_sk#13] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (24) FilterExecTransformer @@ -226,7 +226,7 @@ ColumnarBroadcastExchange (48) Output [2]: [d_date_sk#10, d_date#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-05-25), LessThanOrEqual(d_date,2000-07-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-05-25), *LessThanOrEqual(d_date,2000-07-24), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer @@ -261,7 +261,7 @@ VeloxColumnarToRow (60) Output [3]: [i_item_sk#1, i_current_price#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,62.00), LessThanOrEqual(i_current_price,92.00), In(i_manufact_id, [129,270,423,821]), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,62.00), *LessThanOrEqual(i_current_price,92.00), *In(i_manufact_id, [129,270,423,821]), *IsNotNull(i_item_sk)] ReadSchema: struct (50) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82/explain.txt index 5a6c95d4363..67eccb02728 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82/explain.txt @@ -34,7 +34,7 @@ VeloxColumnarToRow (37) Output [5]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,62.00), LessThanOrEqual(i_current_price,92.00), In(i_manufact_id, [129,270,423,821]), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,62.00), *LessThanOrEqual(i_current_price,92.00), *In(i_manufact_id, [129,270,423,821]), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -50,7 +50,7 @@ Output [3]: [inv_item_sk#6, inv_quantity_on_hand#7, inv_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#8), dynamicpruningexpression(inv_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), GreaterThanOrEqual(inv_quantity_on_hand,100), LessThanOrEqual(inv_quantity_on_hand,500), IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *GreaterThanOrEqual(inv_quantity_on_hand,100), *LessThanOrEqual(inv_quantity_on_hand,500), *IsNotNull(inv_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -122,7 +122,7 @@ Input [4]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4] Output [2]: [ss_item_sk#11, ss_sold_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -202,7 +202,7 @@ ColumnarBroadcastExchange (42) Output [2]: [d_date_sk#10, d_date#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-05-25), LessThanOrEqual(d_date,2000-07-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-05-25), *LessThanOrEqual(d_date,2000-07-24), *IsNotNull(d_date_sk)] ReadSchema: struct (39) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83.sf100/explain.txt index 96ab49c98bc..1038aebfc2d 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83.sf100/explain.txt @@ -66,7 +66,7 @@ Output [3]: [sr_item_sk#1, sr_return_quantity#2, sr_returned_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#3), dynamicpruningexpression(sr_returned_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Input [4]: [sr_item_sk#1, sr_return_quantity#2, sr_returned_date_sk#3, d_date_sk Output [2]: [i_item_sk#6, i_item_id#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_item_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_item_id)] ReadSchema: struct (9) FilterExecTransformer @@ -167,7 +167,7 @@ Output [3]: [cr_item_sk#14, cr_return_quantity#15, cr_returned_date_sk#16] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#16), dynamicpruningexpression(cr_returned_date_sk#16 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_item_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -276,7 +276,7 @@ Output [3]: [wr_item_sk#26, wr_return_quantity#27, wr_returned_date_sk#28] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#28), dynamicpruningexpression(wr_returned_date_sk#28 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -415,7 +415,7 @@ ColumnarBroadcastExchange (98) Output [2]: [d_date_sk#5, d_date#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (80) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83/explain.txt index a0bb529011c..04df4fdc5a8 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83/explain.txt @@ -66,7 +66,7 @@ Output [3]: [sr_item_sk#1, sr_return_quantity#2, sr_returned_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#3), dynamicpruningexpression(sr_returned_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Arguments: isnotnull(sr_item_sk#1) Output [2]: [i_item_sk#5, i_item_id#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_item_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_item_id)] ReadSchema: struct (4) FilterExecTransformer @@ -167,7 +167,7 @@ Output [3]: [cr_item_sk#14, cr_return_quantity#15, cr_returned_date_sk#16] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#16), dynamicpruningexpression(cr_returned_date_sk#16 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_item_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -276,7 +276,7 @@ Output [3]: [wr_item_sk#26, wr_return_quantity#27, wr_returned_date_sk#28] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#28), dynamicpruningexpression(wr_returned_date_sk#28 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -415,7 +415,7 @@ ColumnarBroadcastExchange (98) Output [2]: [d_date_sk#7, d_date#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (80) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84.sf100/explain.txt index 5fb0c06650d..8a788eab12f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84.sf100/explain.txt @@ -42,7 +42,7 @@ VeloxColumnarToRow (48) Output [6]: [c_customer_id#1, c_current_cdemo_sk#2, c_current_hdemo_sk#3, c_current_addr_sk#4, c_first_name#5, c_last_name#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -53,7 +53,7 @@ Arguments: ((isnotnull(c_current_addr_sk#4) AND isnotnull(c_current_cdemo_sk#2)) Output [2]: [ca_address_sk#7, ca_city#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_city), EqualTo(ca_city,Edgewood), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_city), *EqualTo(ca_city,Edgewood), *IsNotNull(ca_address_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -92,7 +92,7 @@ Input [7]: [c_customer_id#1, c_current_cdemo_sk#2, c_current_hdemo_sk#3, c_curre Output [2]: [hd_demo_sk#9, hd_income_band_sk#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)] +PushedFilters: [*IsNotNull(hd_demo_sk), *IsNotNull(hd_income_band_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -103,7 +103,7 @@ Arguments: (isnotnull(hd_demo_sk#9) AND isnotnull(hd_income_band_sk#10)) Output [3]: [ib_income_band_sk#11, ib_lower_bound#12, ib_upper_bound#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/income_band] -PushedFilters: [IsNotNull(ib_lower_bound), IsNotNull(ib_upper_bound), GreaterThanOrEqual(ib_lower_bound,38128), LessThanOrEqual(ib_upper_bound,88128), IsNotNull(ib_income_band_sk)] +PushedFilters: [*IsNotNull(ib_lower_bound), *IsNotNull(ib_upper_bound), *GreaterThanOrEqual(ib_lower_bound,38128), *LessThanOrEqual(ib_upper_bound,88128), *IsNotNull(ib_income_band_sk)] ReadSchema: struct (15) FilterExecTransformer @@ -180,7 +180,7 @@ Input [4]: [c_customer_id#1, c_current_cdemo_sk#2, c_first_name#5, c_last_name#6 Output [1]: [cd_demo_sk#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -215,7 +215,7 @@ Input [4]: [c_customer_id#1, c_first_name#5, c_last_name#6, cd_demo_sk#14] Output [2]: [sr_cdemo_sk#15, sr_returned_date_sk#16] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_cdemo_sk)] +PushedFilters: [*IsNotNull(sr_cdemo_sk)] ReadSchema: struct (42) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84/explain.txt index e82a51b7cff..fe602c65bb7 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84/explain.txt @@ -42,7 +42,7 @@ VeloxColumnarToRow (48) Output [6]: [c_customer_id#1, c_current_cdemo_sk#2, c_current_hdemo_sk#3, c_current_addr_sk#4, c_first_name#5, c_last_name#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -53,7 +53,7 @@ Arguments: ((isnotnull(c_current_addr_sk#4) AND isnotnull(c_current_cdemo_sk#2)) Output [2]: [ca_address_sk#7, ca_city#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_city), EqualTo(ca_city,Edgewood), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_city), *EqualTo(ca_city,Edgewood), *IsNotNull(ca_address_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -92,7 +92,7 @@ Input [7]: [c_customer_id#1, c_current_cdemo_sk#2, c_current_hdemo_sk#3, c_curre Output [1]: [cd_demo_sk#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -127,7 +127,7 @@ Input [6]: [c_customer_id#1, c_current_cdemo_sk#2, c_current_hdemo_sk#3, c_first Output [2]: [hd_demo_sk#10, hd_income_band_sk#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)] +PushedFilters: [*IsNotNull(hd_demo_sk), *IsNotNull(hd_income_band_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -162,7 +162,7 @@ Input [7]: [c_customer_id#1, c_current_hdemo_sk#3, c_first_name#5, c_last_name#6 Output [3]: [ib_income_band_sk#12, ib_lower_bound#13, ib_upper_bound#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/income_band] -PushedFilters: [IsNotNull(ib_lower_bound), IsNotNull(ib_upper_bound), GreaterThanOrEqual(ib_lower_bound,38128), LessThanOrEqual(ib_upper_bound,88128), IsNotNull(ib_income_band_sk)] +PushedFilters: [*IsNotNull(ib_lower_bound), *IsNotNull(ib_upper_bound), *GreaterThanOrEqual(ib_lower_bound,38128), *LessThanOrEqual(ib_upper_bound,88128), *IsNotNull(ib_income_band_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -215,7 +215,7 @@ Input [4]: [c_customer_id#1, c_first_name#5, c_last_name#6, cd_demo_sk#9] Output [2]: [sr_cdemo_sk#15, sr_returned_date_sk#16] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_cdemo_sk)] +PushedFilters: [*IsNotNull(sr_cdemo_sk)] ReadSchema: struct (42) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85.sf100/explain.txt index a86faf8a5b6..3c0283223d8 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85.sf100/explain.txt @@ -68,7 +68,7 @@ Output [7]: [ws_item_sk#1, ws_web_page_sk#2, ws_order_number#3, ws_quantity#4, w Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#7), dynamicpruningexpression(ws_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_order_number), IsNotNull(ws_web_page_sk), Or(Or(And(GreaterThanOrEqual(ws_sales_price,100.00),LessThanOrEqual(ws_sales_price,150.00)),And(GreaterThanOrEqual(ws_sales_price,50.00),LessThanOrEqual(ws_sales_price,100.00))),And(GreaterThanOrEqual(ws_sales_price,150.00),LessThanOrEqual(ws_sales_price,200.00))), Or(Or(And(GreaterThanOrEqual(ws_net_profit,100.00),LessThanOrEqual(ws_net_profit,200.00)),And(GreaterThanOrEqual(ws_net_profit,150.00),LessThanOrEqual(ws_net_profit,300.00))),And(GreaterThanOrEqual(ws_net_profit,50.00),LessThanOrEqual(ws_net_profit,250.00)))] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_order_number), *IsNotNull(ws_web_page_sk), *Or(Or(And(GreaterThanOrEqual(ws_sales_price,100.00),LessThanOrEqual(ws_sales_price,150.00)),And(GreaterThanOrEqual(ws_sales_price,50.00),LessThanOrEqual(ws_sales_price,100.00))),And(GreaterThanOrEqual(ws_sales_price,150.00),LessThanOrEqual(ws_sales_price,200.00))), *Or(Or(And(GreaterThanOrEqual(ws_net_profit,100.00),LessThanOrEqual(ws_net_profit,200.00)),And(GreaterThanOrEqual(ws_net_profit,150.00),LessThanOrEqual(ws_net_profit,300.00))),And(GreaterThanOrEqual(ws_net_profit,50.00),LessThanOrEqual(ws_net_profit,250.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -79,7 +79,7 @@ Arguments: ((((isnotnull(ws_item_sk#1) AND isnotnull(ws_order_number#3)) AND isn Output [1]: [wp_web_page_sk#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_web_page_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -131,7 +131,7 @@ Input [6]: [ws_item_sk#1, ws_order_number#3, ws_quantity#4, ws_sales_price#5, ws Output [9]: [wr_item_sk#11, wr_refunded_cdemo_sk#12, wr_refunded_addr_sk#13, wr_returning_cdemo_sk#14, wr_reason_sk#15, wr_order_number#16, wr_fee#17, wr_refunded_cash#18, wr_returned_date_sk#19] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_item_sk), IsNotNull(wr_order_number), IsNotNull(wr_refunded_cdemo_sk), IsNotNull(wr_returning_cdemo_sk), IsNotNull(wr_refunded_addr_sk), IsNotNull(wr_reason_sk)] +PushedFilters: [*IsNotNull(wr_item_sk), *IsNotNull(wr_order_number), *IsNotNull(wr_refunded_cdemo_sk), *IsNotNull(wr_returning_cdemo_sk), *IsNotNull(wr_refunded_addr_sk), *IsNotNull(wr_reason_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -173,7 +173,7 @@ Input [14]: [ws_item_sk#1, ws_order_number#3, ws_quantity#4, ws_sales_price#5, w Output [3]: [cd_demo_sk#23, cd_marital_status#24, cd_education_status#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] ReadSchema: struct (27) FilterExecTransformer @@ -225,7 +225,7 @@ Input [10]: [ws_quantity#4, ws_net_profit#6, ws_sold_date_sk#7, wr_refunded_addr Output [3]: [cd_demo_sk#27, cd_marital_status#28, cd_education_status#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status), IsNotNull(cd_education_status)] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status)] ReadSchema: struct (40) FilterExecTransformer @@ -267,7 +267,7 @@ Input [13]: [ws_quantity#4, ws_net_profit#6, ws_sold_date_sk#7, wr_refunded_addr Output [3]: [ca_address_sk#31, ca_state#32, ca_country#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), EqualTo(ca_country,United States), IsNotNull(ca_address_sk), Or(Or(In(ca_state, [IN,NJ,OH]),In(ca_state, [CT,KY,WI])),In(ca_state, [AR,IA,LA]))] +PushedFilters: [*IsNotNull(ca_country), *EqualTo(ca_country,United States), *IsNotNull(ca_address_sk), *Or(Or(In(ca_state, [IN,NJ,OH]),In(ca_state, [CT,KY,WI])),In(ca_state, [AR,IA,LA]))] ReadSchema: struct (50) FilterExecTransformer @@ -325,7 +325,7 @@ Input [6]: [ws_quantity#4, ws_sold_date_sk#7, wr_reason_sk#15, wr_fee#17, wr_ref Output [2]: [r_reason_sk#35, r_reason_desc#36] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/reason] -PushedFilters: [IsNotNull(r_reason_sk)] +PushedFilters: [*IsNotNull(r_reason_sk)] ReadSchema: struct (64) FilterExecTransformer @@ -419,7 +419,7 @@ ColumnarBroadcastExchange (87) Output [2]: [d_date_sk#34, d_year#59] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (84) FilterExecTransformer @@ -454,7 +454,7 @@ VeloxColumnarToRow (99) Output [3]: [cd_demo_sk#23, cd_marital_status#24, cd_education_status#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] ReadSchema: struct (89) FilterExecTransformer @@ -519,7 +519,7 @@ VeloxColumnarToRow (111) Output [3]: [ca_address_sk#31, ca_state#32, ca_country#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), EqualTo(ca_country,United States), IsNotNull(ca_address_sk), Or(Or(In(ca_state, [IN,NJ,OH]),In(ca_state, [CT,KY,WI])),In(ca_state, [AR,IA,LA]))] +PushedFilters: [*IsNotNull(ca_country), *EqualTo(ca_country,United States), *IsNotNull(ca_address_sk), *Or(Or(In(ca_state, [IN,NJ,OH]),In(ca_state, [CT,KY,WI])),In(ca_state, [AR,IA,LA]))] ReadSchema: struct (101) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85/explain.txt index 1cbdc981143..fb9538860ee 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85/explain.txt @@ -59,7 +59,7 @@ Output [7]: [ws_item_sk#1, ws_web_page_sk#2, ws_order_number#3, ws_quantity#4, w Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#7), dynamicpruningexpression(ws_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_order_number), IsNotNull(ws_web_page_sk), Or(Or(And(GreaterThanOrEqual(ws_sales_price,100.00),LessThanOrEqual(ws_sales_price,150.00)),And(GreaterThanOrEqual(ws_sales_price,50.00),LessThanOrEqual(ws_sales_price,100.00))),And(GreaterThanOrEqual(ws_sales_price,150.00),LessThanOrEqual(ws_sales_price,200.00))), Or(Or(And(GreaterThanOrEqual(ws_net_profit,100.00),LessThanOrEqual(ws_net_profit,200.00)),And(GreaterThanOrEqual(ws_net_profit,150.00),LessThanOrEqual(ws_net_profit,300.00))),And(GreaterThanOrEqual(ws_net_profit,50.00),LessThanOrEqual(ws_net_profit,250.00)))] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_order_number), *IsNotNull(ws_web_page_sk), *Or(Or(And(GreaterThanOrEqual(ws_sales_price,100.00),LessThanOrEqual(ws_sales_price,150.00)),And(GreaterThanOrEqual(ws_sales_price,50.00),LessThanOrEqual(ws_sales_price,100.00))),And(GreaterThanOrEqual(ws_sales_price,150.00),LessThanOrEqual(ws_sales_price,200.00))), *Or(Or(And(GreaterThanOrEqual(ws_net_profit,100.00),LessThanOrEqual(ws_net_profit,200.00)),And(GreaterThanOrEqual(ws_net_profit,150.00),LessThanOrEqual(ws_net_profit,300.00))),And(GreaterThanOrEqual(ws_net_profit,50.00),LessThanOrEqual(ws_net_profit,250.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -84,7 +84,7 @@ Input [7]: [ws_item_sk#1, ws_web_page_sk#2, ws_order_number#3, ws_quantity#4, ws Output [9]: [wr_item_sk#9, wr_refunded_cdemo_sk#10, wr_refunded_addr_sk#11, wr_returning_cdemo_sk#12, wr_reason_sk#13, wr_order_number#14, wr_fee#15, wr_refunded_cash#16, wr_returned_date_sk#17] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_item_sk), IsNotNull(wr_order_number), IsNotNull(wr_refunded_cdemo_sk), IsNotNull(wr_returning_cdemo_sk), IsNotNull(wr_refunded_addr_sk), IsNotNull(wr_reason_sk)] +PushedFilters: [*IsNotNull(wr_item_sk), *IsNotNull(wr_order_number), *IsNotNull(wr_refunded_cdemo_sk), *IsNotNull(wr_returning_cdemo_sk), *IsNotNull(wr_refunded_addr_sk), *IsNotNull(wr_reason_sk)] ReadSchema: struct (8) FilterExecTransformer @@ -109,7 +109,7 @@ Input [15]: [ws_item_sk#1, ws_web_page_sk#2, ws_order_number#3, ws_quantity#4, w Output [1]: [wp_web_page_sk#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_web_page_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -144,7 +144,7 @@ Input [12]: [ws_web_page_sk#2, ws_quantity#4, ws_sales_price#5, ws_net_profit#6, Output [3]: [cd_demo_sk#19, cd_marital_status#20, cd_education_status#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] ReadSchema: struct (21) FilterExecTransformer @@ -179,7 +179,7 @@ Input [13]: [ws_quantity#4, ws_sales_price#5, ws_net_profit#6, ws_sold_date_sk#7 Output [3]: [cd_demo_sk#22, cd_marital_status#23, cd_education_status#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status), IsNotNull(cd_education_status)] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status)] ReadSchema: struct (29) FilterExecTransformer @@ -214,7 +214,7 @@ Input [13]: [ws_quantity#4, ws_net_profit#6, ws_sold_date_sk#7, wr_refunded_addr Output [3]: [ca_address_sk#25, ca_state#26, ca_country#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), EqualTo(ca_country,United States), IsNotNull(ca_address_sk), Or(Or(In(ca_state, [IN,NJ,OH]),In(ca_state, [CT,KY,WI])),In(ca_state, [AR,IA,LA]))] +PushedFilters: [*IsNotNull(ca_country), *EqualTo(ca_country,United States), *IsNotNull(ca_address_sk), *Or(Or(In(ca_state, [IN,NJ,OH]),In(ca_state, [CT,KY,WI])),In(ca_state, [AR,IA,LA]))] ReadSchema: struct (37) FilterExecTransformer @@ -272,7 +272,7 @@ Input [6]: [ws_quantity#4, ws_sold_date_sk#7, wr_reason_sk#13, wr_fee#15, wr_ref Output [2]: [r_reason_sk#29, r_reason_desc#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/reason] -PushedFilters: [IsNotNull(r_reason_sk)] +PushedFilters: [*IsNotNull(r_reason_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -366,7 +366,7 @@ ColumnarBroadcastExchange (74) Output [2]: [d_date_sk#28, d_year#53] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (71) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86.sf100/explain.txt index 350b7c89e5d..4d151026331 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86.sf100/explain.txt @@ -36,7 +36,7 @@ Output [3]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -66,7 +66,7 @@ Input [4]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3, d_date_sk#5] Output [3]: [i_item_sk#6, i_class#7, i_category#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -201,7 +201,7 @@ ColumnarBroadcastExchange (43) Output [2]: [d_date_sk#5, d_month_seq#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (40) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86/explain.txt index 350b7c89e5d..4d151026331 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86/explain.txt @@ -36,7 +36,7 @@ Output [3]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -66,7 +66,7 @@ Input [4]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3, d_date_sk#5] Output [3]: [i_item_sk#6, i_class#7, i_category#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -201,7 +201,7 @@ ColumnarBroadcastExchange (43) Output [2]: [d_date_sk#5, d_month_seq#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (40) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87.sf100/explain.txt index f8ee9104cfc..48b5633ac89 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87.sf100/explain.txt @@ -84,7 +84,7 @@ Output [2]: [ss_customer_sk#1, ss_sold_date_sk#2] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#2), dynamicpruningexpression(ss_sold_date_sk#2 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -131,7 +131,7 @@ Input [2]: [ss_customer_sk#1, d_date#5] Output [3]: [c_customer_sk#7, c_first_name#8, c_last_name#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -230,7 +230,7 @@ Output [2]: [cs_bill_customer_sk#13, cs_sold_date_sk#14] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#14), dynamicpruningexpression(cs_sold_date_sk#14 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -359,7 +359,7 @@ Output [2]: [ws_bill_customer_sk#23, ws_sold_date_sk#24] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#24), dynamicpruningexpression(ws_sold_date_sk#24 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -514,7 +514,7 @@ ColumnarBroadcastExchange (109) Output [3]: [d_date_sk#4, d_date#5, d_month_seq#35] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (106) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87/explain.txt index bdcfc2754ea..b2fc7abcb2e 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87/explain.txt @@ -65,7 +65,7 @@ Output [2]: [ss_customer_sk#1, ss_sold_date_sk#2] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#2), dynamicpruningexpression(ss_sold_date_sk#2 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -95,7 +95,7 @@ Input [4]: [ss_customer_sk#1, ss_sold_date_sk#2, d_date_sk#4, d_date#5] Output [3]: [c_customer_sk#6, c_first_name#7, c_last_name#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -166,7 +166,7 @@ Output [2]: [cs_bill_customer_sk#10, cs_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#11), dynamicpruningexpression(cs_sold_date_sk#11 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -271,7 +271,7 @@ Output [2]: [ws_bill_customer_sk#18, ws_sold_date_sk#19] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#19), dynamicpruningexpression(ws_sold_date_sk#19 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (50) FilterExecTransformer @@ -402,7 +402,7 @@ ColumnarBroadcastExchange (82) Output [3]: [d_date_sk#4, d_date#5, d_month_seq#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (79) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88.sf100/explain.txt index 7023bffc4de..11a67b1063c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88.sf100/explain.txt @@ -217,7 +217,7 @@ VeloxColumnarToRow (277) Output [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -232,7 +232,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Output [3]: [t_time_sk#5, t_hour#6, t_minute#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,8), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,8), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -271,7 +271,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, t_time_sk#5] Output [2]: [s_store_sk#8, s_store_name#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_name), EqualTo(s_store_name,ese), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_name), *EqualTo(s_store_name,ese), *IsNotNull(s_store_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -310,7 +310,7 @@ Input [3]: [ss_hdemo_sk#2, ss_store_sk#3, s_store_sk#8] Output [3]: [hd_demo_sk#10, hd_dep_count#11, hd_vehicle_count#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(Or(And(EqualTo(hd_dep_count,4),LessThanOrEqual(hd_vehicle_count,6)),And(EqualTo(hd_dep_count,2),LessThanOrEqual(hd_vehicle_count,4))),And(EqualTo(hd_dep_count,0),LessThanOrEqual(hd_vehicle_count,2))), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(Or(And(EqualTo(hd_dep_count,4),LessThanOrEqual(hd_vehicle_count,6)),And(EqualTo(hd_dep_count,2),LessThanOrEqual(hd_vehicle_count,4))),And(EqualTo(hd_dep_count,0),LessThanOrEqual(hd_vehicle_count,2))), *IsNotNull(hd_demo_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -380,7 +380,7 @@ Results [1]: [count(1)#15 AS h8_30_to_9#16] Output [4]: [ss_sold_time_sk#17, ss_hdemo_sk#18, ss_store_sk#19, ss_sold_date_sk#20] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (39) FilterExecTransformer @@ -395,7 +395,7 @@ Input [4]: [ss_sold_time_sk#17, ss_hdemo_sk#18, ss_store_sk#19, ss_sold_date_sk# Output [3]: [t_time_sk#21, t_hour#22, t_minute#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,9), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,9), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -521,7 +521,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#30, ss_hdemo_sk#31, ss_store_sk#32, ss_sold_date_sk#33] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (73) FilterExecTransformer @@ -536,7 +536,7 @@ Input [4]: [ss_sold_time_sk#30, ss_hdemo_sk#31, ss_store_sk#32, ss_sold_date_sk# Output [3]: [t_time_sk#34, t_hour#35, t_minute#36] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,9), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,9), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (76) FilterExecTransformer @@ -662,7 +662,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#43, ss_hdemo_sk#44, ss_store_sk#45, ss_sold_date_sk#46] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (107) FilterExecTransformer @@ -677,7 +677,7 @@ Input [4]: [ss_sold_time_sk#43, ss_hdemo_sk#44, ss_store_sk#45, ss_sold_date_sk# Output [3]: [t_time_sk#47, t_hour#48, t_minute#49] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,10), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,10), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (110) FilterExecTransformer @@ -803,7 +803,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#56, ss_hdemo_sk#57, ss_store_sk#58, ss_sold_date_sk#59] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (141) FilterExecTransformer @@ -818,7 +818,7 @@ Input [4]: [ss_sold_time_sk#56, ss_hdemo_sk#57, ss_store_sk#58, ss_sold_date_sk# Output [3]: [t_time_sk#60, t_hour#61, t_minute#62] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,10), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,10), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (144) FilterExecTransformer @@ -944,7 +944,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#69, ss_hdemo_sk#70, ss_store_sk#71, ss_sold_date_sk#72] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (175) FilterExecTransformer @@ -959,7 +959,7 @@ Input [4]: [ss_sold_time_sk#69, ss_hdemo_sk#70, ss_store_sk#71, ss_sold_date_sk# Output [3]: [t_time_sk#73, t_hour#74, t_minute#75] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,11), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,11), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (178) FilterExecTransformer @@ -1085,7 +1085,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#82, ss_hdemo_sk#83, ss_store_sk#84, ss_sold_date_sk#85] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (209) FilterExecTransformer @@ -1100,7 +1100,7 @@ Input [4]: [ss_sold_time_sk#82, ss_hdemo_sk#83, ss_store_sk#84, ss_sold_date_sk# Output [3]: [t_time_sk#86, t_hour#87, t_minute#88] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,11), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,11), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (212) FilterExecTransformer @@ -1226,7 +1226,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#95, ss_hdemo_sk#96, ss_store_sk#97, ss_sold_date_sk#98] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (243) FilterExecTransformer @@ -1241,7 +1241,7 @@ Input [4]: [ss_sold_time_sk#95, ss_hdemo_sk#96, ss_store_sk#97, ss_sold_date_sk# Output [3]: [t_time_sk#99, t_hour#100, t_minute#101] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,12), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,12), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (246) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88/explain.txt index aee9531aad7..8f2e990482d 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88/explain.txt @@ -217,7 +217,7 @@ VeloxColumnarToRow (277) Output [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -232,7 +232,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Output [3]: [hd_demo_sk#5, hd_dep_count#6, hd_vehicle_count#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(Or(And(EqualTo(hd_dep_count,4),LessThanOrEqual(hd_vehicle_count,6)),And(EqualTo(hd_dep_count,2),LessThanOrEqual(hd_vehicle_count,4))),And(EqualTo(hd_dep_count,0),LessThanOrEqual(hd_vehicle_count,2))), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(Or(And(EqualTo(hd_dep_count,4),LessThanOrEqual(hd_vehicle_count,6)),And(EqualTo(hd_dep_count,2),LessThanOrEqual(hd_vehicle_count,4))),And(EqualTo(hd_dep_count,0),LessThanOrEqual(hd_vehicle_count,2))), *IsNotNull(hd_demo_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -271,7 +271,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, hd_demo_sk#5] Output [3]: [t_time_sk#8, t_hour#9, t_minute#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,8), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,8), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -310,7 +310,7 @@ Input [3]: [ss_sold_time_sk#1, ss_store_sk#3, t_time_sk#8] Output [2]: [s_store_sk#11, s_store_name#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_name), EqualTo(s_store_name,ese), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_name), *EqualTo(s_store_name,ese), *IsNotNull(s_store_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -380,7 +380,7 @@ Results [1]: [count(1)#15 AS h8_30_to_9#16] Output [4]: [ss_sold_time_sk#17, ss_hdemo_sk#18, ss_store_sk#19, ss_sold_date_sk#20] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (39) FilterExecTransformer @@ -414,7 +414,7 @@ Input [4]: [ss_sold_time_sk#17, ss_hdemo_sk#18, ss_store_sk#19, hd_demo_sk#21] Output [3]: [t_time_sk#22, t_hour#23, t_minute#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,9), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,9), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -521,7 +521,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#30, ss_hdemo_sk#31, ss_store_sk#32, ss_sold_date_sk#33] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (73) FilterExecTransformer @@ -555,7 +555,7 @@ Input [4]: [ss_sold_time_sk#30, ss_hdemo_sk#31, ss_store_sk#32, hd_demo_sk#34] Output [3]: [t_time_sk#35, t_hour#36, t_minute#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,9), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,9), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (81) FilterExecTransformer @@ -662,7 +662,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#43, ss_hdemo_sk#44, ss_store_sk#45, ss_sold_date_sk#46] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (107) FilterExecTransformer @@ -696,7 +696,7 @@ Input [4]: [ss_sold_time_sk#43, ss_hdemo_sk#44, ss_store_sk#45, hd_demo_sk#47] Output [3]: [t_time_sk#48, t_hour#49, t_minute#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,10), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,10), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (115) FilterExecTransformer @@ -803,7 +803,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#56, ss_hdemo_sk#57, ss_store_sk#58, ss_sold_date_sk#59] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (141) FilterExecTransformer @@ -837,7 +837,7 @@ Input [4]: [ss_sold_time_sk#56, ss_hdemo_sk#57, ss_store_sk#58, hd_demo_sk#60] Output [3]: [t_time_sk#61, t_hour#62, t_minute#63] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,10), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,10), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (149) FilterExecTransformer @@ -944,7 +944,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#69, ss_hdemo_sk#70, ss_store_sk#71, ss_sold_date_sk#72] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (175) FilterExecTransformer @@ -978,7 +978,7 @@ Input [4]: [ss_sold_time_sk#69, ss_hdemo_sk#70, ss_store_sk#71, hd_demo_sk#73] Output [3]: [t_time_sk#74, t_hour#75, t_minute#76] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,11), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,11), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (183) FilterExecTransformer @@ -1085,7 +1085,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#82, ss_hdemo_sk#83, ss_store_sk#84, ss_sold_date_sk#85] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (209) FilterExecTransformer @@ -1119,7 +1119,7 @@ Input [4]: [ss_sold_time_sk#82, ss_hdemo_sk#83, ss_store_sk#84, hd_demo_sk#86] Output [3]: [t_time_sk#87, t_hour#88, t_minute#89] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,11), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,11), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (217) FilterExecTransformer @@ -1226,7 +1226,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#95, ss_hdemo_sk#96, ss_store_sk#97, ss_sold_date_sk#98] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (243) FilterExecTransformer @@ -1260,7 +1260,7 @@ Input [4]: [ss_sold_time_sk#95, ss_hdemo_sk#96, ss_store_sk#97, hd_demo_sk#99] Output [3]: [t_time_sk#100, t_hour#101, t_minute#102] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,12), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,12), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (251) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89.sf100/explain.txt index 0438365e65b..ae94c7c3d98 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89.sf100/explain.txt @@ -39,7 +39,7 @@ VeloxColumnarToRow (44) Output [4]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(In(i_category, [Books ,Electronics ,Sports ]),In(i_class, [computers ,football ,stereo ])),And(In(i_category, [Jewelry ,Men ,Women ]),In(i_class, [birdal ,dresses ,shirts ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(In(i_category, [Books ,Electronics ,Sports ]),In(i_class, [computers ,football ,stereo ])),And(In(i_category, [Jewelry ,Men ,Women ]),In(i_class, [birdal ,dresses ,shirts ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -65,7 +65,7 @@ Output [4]: [ss_item_sk#5, ss_store_sk#6, ss_sales_price#7, ss_sold_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (8) FilterExecTransformer @@ -105,7 +105,7 @@ Input [8]: [i_brand#2, i_class#3, i_category#4, ss_store_sk#6, ss_sales_price#7, Output [3]: [s_store_sk#12, s_store_name#13, s_company_name#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -232,7 +232,7 @@ ColumnarBroadcastExchange (49) Output [3]: [d_date_sk#10, d_year#25, d_moy#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (46) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89/explain.txt index f76fb453983..b5d0eea9178 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89/explain.txt @@ -39,7 +39,7 @@ VeloxColumnarToRow (44) Output [4]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(In(i_category, [Books ,Electronics ,Sports ]),In(i_class, [computers ,football ,stereo ])),And(In(i_category, [Jewelry ,Men ,Women ]),In(i_class, [birdal ,dresses ,shirts ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(In(i_category, [Books ,Electronics ,Sports ]),In(i_class, [computers ,football ,stereo ])),And(In(i_category, [Jewelry ,Men ,Women ]),In(i_class, [birdal ,dresses ,shirts ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Output [4]: [ss_item_sk#5, ss_store_sk#6, ss_sales_price#7, ss_sold_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -105,7 +105,7 @@ Input [8]: [i_brand#2, i_class#3, i_category#4, ss_store_sk#6, ss_sales_price#7, Output [3]: [s_store_sk#12, s_store_name#13, s_company_name#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -232,7 +232,7 @@ ColumnarBroadcastExchange (49) Output [3]: [d_date_sk#10, d_year#25, d_moy#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (46) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9.sf100/explain.txt index 95366f4c925..13964d3ce24 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9.sf100/explain.txt @@ -9,7 +9,7 @@ VeloxColumnarToRow (5) Output [1]: [r_reason_sk#1] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/reason] -PushedFilters: [IsNotNull(r_reason_sk), EqualTo(r_reason_sk,1)] +PushedFilters: [*IsNotNull(r_reason_sk), *EqualTo(r_reason_sk,1)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ VeloxColumnarToRow (18) Output [4]: [ss_quantity#12, ss_ext_discount_amt#13, ss_net_paid#14, ss_sold_date_sk#15] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,1), LessThanOrEqual(ss_quantity,20)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,1), *LessThanOrEqual(ss_quantity,20)] ReadSchema: struct (7) FilterExecTransformer @@ -120,7 +120,7 @@ VeloxColumnarToRow (31) Output [4]: [ss_quantity#32, ss_ext_discount_amt#33, ss_net_paid#34, ss_sold_date_sk#35] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,21), LessThanOrEqual(ss_quantity,40)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,21), *LessThanOrEqual(ss_quantity,40)] ReadSchema: struct (20) FilterExecTransformer @@ -194,7 +194,7 @@ VeloxColumnarToRow (44) Output [4]: [ss_quantity#52, ss_ext_discount_amt#53, ss_net_paid#54, ss_sold_date_sk#55] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,41), LessThanOrEqual(ss_quantity,60)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,41), *LessThanOrEqual(ss_quantity,60)] ReadSchema: struct (33) FilterExecTransformer @@ -268,7 +268,7 @@ VeloxColumnarToRow (57) Output [4]: [ss_quantity#72, ss_ext_discount_amt#73, ss_net_paid#74, ss_sold_date_sk#75] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,61), LessThanOrEqual(ss_quantity,80)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,61), *LessThanOrEqual(ss_quantity,80)] ReadSchema: struct (46) FilterExecTransformer @@ -342,7 +342,7 @@ VeloxColumnarToRow (70) Output [4]: [ss_quantity#92, ss_ext_discount_amt#93, ss_net_paid#94, ss_sold_date_sk#95] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,81), LessThanOrEqual(ss_quantity,100)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,81), *LessThanOrEqual(ss_quantity,100)] ReadSchema: struct (59) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9/explain.txt index 95366f4c925..13964d3ce24 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9/explain.txt @@ -9,7 +9,7 @@ VeloxColumnarToRow (5) Output [1]: [r_reason_sk#1] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/reason] -PushedFilters: [IsNotNull(r_reason_sk), EqualTo(r_reason_sk,1)] +PushedFilters: [*IsNotNull(r_reason_sk), *EqualTo(r_reason_sk,1)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ VeloxColumnarToRow (18) Output [4]: [ss_quantity#12, ss_ext_discount_amt#13, ss_net_paid#14, ss_sold_date_sk#15] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,1), LessThanOrEqual(ss_quantity,20)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,1), *LessThanOrEqual(ss_quantity,20)] ReadSchema: struct (7) FilterExecTransformer @@ -120,7 +120,7 @@ VeloxColumnarToRow (31) Output [4]: [ss_quantity#32, ss_ext_discount_amt#33, ss_net_paid#34, ss_sold_date_sk#35] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,21), LessThanOrEqual(ss_quantity,40)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,21), *LessThanOrEqual(ss_quantity,40)] ReadSchema: struct (20) FilterExecTransformer @@ -194,7 +194,7 @@ VeloxColumnarToRow (44) Output [4]: [ss_quantity#52, ss_ext_discount_amt#53, ss_net_paid#54, ss_sold_date_sk#55] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,41), LessThanOrEqual(ss_quantity,60)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,41), *LessThanOrEqual(ss_quantity,60)] ReadSchema: struct (33) FilterExecTransformer @@ -268,7 +268,7 @@ VeloxColumnarToRow (57) Output [4]: [ss_quantity#72, ss_ext_discount_amt#73, ss_net_paid#74, ss_sold_date_sk#75] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,61), LessThanOrEqual(ss_quantity,80)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,61), *LessThanOrEqual(ss_quantity,80)] ReadSchema: struct (46) FilterExecTransformer @@ -342,7 +342,7 @@ VeloxColumnarToRow (70) Output [4]: [ss_quantity#92, ss_ext_discount_amt#93, ss_net_paid#94, ss_sold_date_sk#95] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,81), LessThanOrEqual(ss_quantity,100)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,81), *LessThanOrEqual(ss_quantity,100)] ReadSchema: struct (59) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90.sf100/explain.txt index 416a39d6259..76359a92386 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90.sf100/explain.txt @@ -62,7 +62,7 @@ VeloxColumnarToRow (74) Output [4]: [ws_sold_time_sk#1, ws_ship_hdemo_sk#2, ws_web_page_sk#3, ws_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_hdemo_sk), IsNotNull(ws_sold_time_sk), IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_ship_hdemo_sk), *IsNotNull(ws_sold_time_sk), *IsNotNull(ws_web_page_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Input [4]: [ws_sold_time_sk#1, ws_ship_hdemo_sk#2, ws_web_page_sk#3, ws_sold_dat Output [2]: [wp_web_page_sk#5, wp_char_count#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_char_count), GreaterThanOrEqual(wp_char_count,5000), LessThanOrEqual(wp_char_count,5200), IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_char_count), *GreaterThanOrEqual(wp_char_count,5000), *LessThanOrEqual(wp_char_count,5200), *IsNotNull(wp_web_page_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -116,7 +116,7 @@ Input [4]: [ws_sold_time_sk#1, ws_ship_hdemo_sk#2, ws_web_page_sk#3, wp_web_page Output [2]: [hd_demo_sk#7, hd_dep_count#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_dep_count), EqualTo(hd_dep_count,6), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_dep_count), *EqualTo(hd_dep_count,6), *IsNotNull(hd_demo_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -155,7 +155,7 @@ Input [3]: [ws_sold_time_sk#1, ws_ship_hdemo_sk#2, hd_demo_sk#7] Output [2]: [t_time_sk#9, t_hour#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), GreaterThanOrEqual(t_hour,8), LessThanOrEqual(t_hour,9), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *GreaterThanOrEqual(t_hour,8), *LessThanOrEqual(t_hour,9), *IsNotNull(t_time_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -225,7 +225,7 @@ Results [1]: [count(1)#13 AS amc#14] Output [4]: [ws_sold_time_sk#15, ws_ship_hdemo_sk#16, ws_web_page_sk#17, ws_sold_date_sk#18] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_hdemo_sk), IsNotNull(ws_sold_time_sk), IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_ship_hdemo_sk), *IsNotNull(ws_sold_time_sk), *IsNotNull(ws_web_page_sk)] ReadSchema: struct (39) FilterExecTransformer @@ -278,7 +278,7 @@ Input [3]: [ws_sold_time_sk#15, ws_ship_hdemo_sk#16, hd_demo_sk#20] Output [2]: [t_time_sk#21, t_hour#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), GreaterThanOrEqual(t_hour,19), LessThanOrEqual(t_hour,20), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *GreaterThanOrEqual(t_hour,19), *LessThanOrEqual(t_hour,20), *IsNotNull(t_time_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90/explain.txt index 934e1618b7a..cd0eca4f8ee 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90/explain.txt @@ -62,7 +62,7 @@ VeloxColumnarToRow (74) Output [4]: [ws_sold_time_sk#1, ws_ship_hdemo_sk#2, ws_web_page_sk#3, ws_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_hdemo_sk), IsNotNull(ws_sold_time_sk), IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_ship_hdemo_sk), *IsNotNull(ws_sold_time_sk), *IsNotNull(ws_web_page_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Input [4]: [ws_sold_time_sk#1, ws_ship_hdemo_sk#2, ws_web_page_sk#3, ws_sold_dat Output [2]: [hd_demo_sk#5, hd_dep_count#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_dep_count), EqualTo(hd_dep_count,6), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_dep_count), *EqualTo(hd_dep_count,6), *IsNotNull(hd_demo_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -116,7 +116,7 @@ Input [4]: [ws_sold_time_sk#1, ws_ship_hdemo_sk#2, ws_web_page_sk#3, hd_demo_sk# Output [2]: [t_time_sk#7, t_hour#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), GreaterThanOrEqual(t_hour,8), LessThanOrEqual(t_hour,9), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *GreaterThanOrEqual(t_hour,8), *LessThanOrEqual(t_hour,9), *IsNotNull(t_time_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -155,7 +155,7 @@ Input [3]: [ws_sold_time_sk#1, ws_web_page_sk#3, t_time_sk#7] Output [2]: [wp_web_page_sk#9, wp_char_count#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_char_count), GreaterThanOrEqual(wp_char_count,5000), LessThanOrEqual(wp_char_count,5200), IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_char_count), *GreaterThanOrEqual(wp_char_count,5000), *LessThanOrEqual(wp_char_count,5200), *IsNotNull(wp_web_page_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -225,7 +225,7 @@ Results [1]: [count(1)#13 AS amc#14] Output [4]: [ws_sold_time_sk#15, ws_ship_hdemo_sk#16, ws_web_page_sk#17, ws_sold_date_sk#18] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_hdemo_sk), IsNotNull(ws_sold_time_sk), IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_ship_hdemo_sk), *IsNotNull(ws_sold_time_sk), *IsNotNull(ws_web_page_sk)] ReadSchema: struct (39) FilterExecTransformer @@ -259,7 +259,7 @@ Input [4]: [ws_sold_time_sk#15, ws_ship_hdemo_sk#16, ws_web_page_sk#17, hd_demo_ Output [2]: [t_time_sk#20, t_hour#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), GreaterThanOrEqual(t_hour,19), LessThanOrEqual(t_hour,20), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *GreaterThanOrEqual(t_hour,19), *LessThanOrEqual(t_hour,20), *IsNotNull(t_time_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91.sf100/explain.txt index 1dd416dcb5c..b7f18b8681f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91.sf100/explain.txt @@ -55,7 +55,7 @@ VeloxColumnarToRow (66) Output [4]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_hdemo_sk#3, c_current_addr_sk#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -66,7 +66,7 @@ Arguments: (((isnotnull(c_customer_sk#1) AND isnotnull(c_current_addr_sk#4)) AND Output [3]: [cd_demo_sk#5, cd_marital_status#6, cd_education_status#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Unknown )),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,Advanced Degree ))), IsNotNull(cd_demo_sk)] +PushedFilters: [*Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Unknown )),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,Advanced Degree ))), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -101,7 +101,7 @@ Input [7]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_hdemo_sk#3, c_curre Output [2]: [hd_demo_sk#8, hd_buy_potential#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_buy_potential), StringStartsWith(hd_buy_potential,Unknown), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_buy_potential), *StringStartsWith(hd_buy_potential,Unknown), *IsNotNull(hd_demo_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -140,7 +140,7 @@ Input [6]: [c_customer_sk#1, c_current_hdemo_sk#3, c_current_addr_sk#4, cd_marit Output [2]: [ca_address_sk#10, ca_gmt_offset#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-7.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-7.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -180,7 +180,7 @@ Output [4]: [cr_returning_customer_sk#12, cr_call_center_sk#13, cr_net_loss#14, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#15), dynamicpruningexpression(cr_returned_date_sk#15 IN dynamicpruning#16)] -PushedFilters: [IsNotNull(cr_call_center_sk), IsNotNull(cr_returning_customer_sk)] +PushedFilters: [*IsNotNull(cr_call_center_sk), *IsNotNull(cr_returning_customer_sk)] ReadSchema: struct (30) FilterExecTransformer @@ -234,7 +234,7 @@ Input [6]: [c_customer_sk#1, cd_marital_status#6, cd_education_status#7, cr_retu Output [4]: [cc_call_center_sk#18, cc_call_center_id#19, cc_name#20, cc_manager#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk)] +PushedFilters: [*IsNotNull(cc_call_center_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -345,7 +345,7 @@ ColumnarBroadcastExchange (71) Output [3]: [d_date_sk#17, d_year#31, d_moy#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (68) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91/explain.txt index 920bb3101ac..216c3a84a6d 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91/explain.txt @@ -55,7 +55,7 @@ VeloxColumnarToRow (66) Output [4]: [cc_call_center_sk#1, cc_call_center_id#2, cc_name#3, cc_manager#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk)] +PushedFilters: [*IsNotNull(cc_call_center_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -67,7 +67,7 @@ Output [4]: [cr_returning_customer_sk#5, cr_call_center_sk#6, cr_net_loss#7, cr_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#8), dynamicpruningexpression(cr_returned_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cr_call_center_sk), IsNotNull(cr_returning_customer_sk)] +PushedFilters: [*IsNotNull(cr_call_center_sk), *IsNotNull(cr_returning_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -121,7 +121,7 @@ Input [7]: [cc_call_center_id#2, cc_name#3, cc_manager#4, cr_returning_customer_ Output [4]: [c_customer_sk#11, c_current_cdemo_sk#12, c_current_hdemo_sk#13, c_current_addr_sk#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -156,7 +156,7 @@ Input [9]: [cc_call_center_id#2, cc_name#3, cc_manager#4, cr_returning_customer_ Output [2]: [ca_address_sk#15, ca_gmt_offset#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-7.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-7.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -195,7 +195,7 @@ Input [8]: [cc_call_center_id#2, cc_name#3, cc_manager#4, cr_net_loss#7, c_curre Output [3]: [cd_demo_sk#17, cd_marital_status#18, cd_education_status#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Unknown )),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,Advanced Degree ))), IsNotNull(cd_demo_sk)] +PushedFilters: [*Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Unknown )),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,Advanced Degree ))), *IsNotNull(cd_demo_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -230,7 +230,7 @@ Input [9]: [cc_call_center_id#2, cc_name#3, cc_manager#4, cr_net_loss#7, c_curre Output [2]: [hd_demo_sk#20, hd_buy_potential#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_buy_potential), StringStartsWith(hd_buy_potential,Unknown), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_buy_potential), *StringStartsWith(hd_buy_potential,Unknown), *IsNotNull(hd_demo_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -345,7 +345,7 @@ ColumnarBroadcastExchange (71) Output [3]: [d_date_sk#10, d_year#31, d_moy#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (68) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92.sf100/explain.txt index 7597830ca83..e68de8de282 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92.sf100/explain.txt @@ -43,7 +43,7 @@ VeloxColumnarToRow (49) Output [2]: [i_item_sk#1, i_manufact_id#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,350), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,350), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Output [3]: [ws_item_sk#3, ws_ext_discount_amt#4, ws_sold_date_sk#5] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#5), dynamicpruningexpression(ws_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -171,7 +171,7 @@ Output [3]: [ws_item_sk#17, ws_ext_discount_amt#18, ws_sold_date_sk#19] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#19), dynamicpruningexpression(ws_sold_date_sk#19 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_ext_discount_amt)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_ext_discount_amt)] ReadSchema: struct (32) FilterExecTransformer @@ -267,7 +267,7 @@ VeloxColumnarToRow (61) Output [2]: [i_item_sk#1, i_manufact_id#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,350), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,350), *IsNotNull(i_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -327,7 +327,7 @@ ColumnarBroadcastExchange (66) Output [2]: [d_date_sk#8, d_date#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-01-27), LessThanOrEqual(d_date,2000-04-26), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-01-27), *LessThanOrEqual(d_date,2000-04-26), *IsNotNull(d_date_sk)] ReadSchema: struct (63) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92/explain.txt index 03c74f4331e..3967b847703 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92/explain.txt @@ -44,7 +44,7 @@ Output [3]: [ws_item_sk#1, ws_ext_discount_amt#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_ext_discount_amt)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_ext_discount_amt)] ReadSchema: struct (2) FilterExecTransformer @@ -55,7 +55,7 @@ Arguments: (isnotnull(ws_item_sk#1) AND isnotnull(ws_ext_discount_amt#2)) Output [2]: [i_item_sk#5, i_manufact_id#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,350), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,350), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -95,7 +95,7 @@ Output [3]: [ws_item_sk#7, ws_ext_discount_amt#8, ws_sold_date_sk#9] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#9), dynamicpruningexpression(ws_sold_date_sk#9 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -262,7 +262,7 @@ ColumnarBroadcastExchange (54) Output [2]: [d_date_sk#19, d_date#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-01-27), LessThanOrEqual(d_date,2000-04-26), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-01-27), *LessThanOrEqual(d_date,2000-04-26), *IsNotNull(d_date_sk)] ReadSchema: struct (51) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93.sf100/explain.txt index 4b1ffd84766..aa0c601c193 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93.sf100/explain.txt @@ -33,7 +33,7 @@ VeloxColumnarToRow (37) Output [5]: [sr_item_sk#1, sr_reason_sk#2, sr_ticket_number#3, sr_return_quantity#4, sr_returned_date_sk#5] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number), IsNotNull(sr_reason_sk)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number), *IsNotNull(sr_reason_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -48,7 +48,7 @@ Input [5]: [sr_item_sk#1, sr_reason_sk#2, sr_ticket_number#3, sr_return_quantity Output [2]: [r_reason_sk#6, r_reason_desc#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/reason] -PushedFilters: [IsNotNull(r_reason_desc), EqualTo(r_reason_desc,reason 28 ), IsNotNull(r_reason_sk)] +PushedFilters: [*IsNotNull(r_reason_desc), *EqualTo(r_reason_desc,reason 28 ), *IsNotNull(r_reason_sk)] ReadSchema: struct (5) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93/explain.txt index bfee34b4ebd..178894c35ed 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93/explain.txt @@ -60,7 +60,7 @@ Input [5]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, s Output [5]: [sr_item_sk#8, sr_reason_sk#9, sr_ticket_number#10, sr_return_quantity#11, sr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number), IsNotNull(sr_reason_sk)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number), *IsNotNull(sr_reason_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -102,7 +102,7 @@ Input [9]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, s Output [2]: [r_reason_sk#14, r_reason_desc#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/reason] -PushedFilters: [IsNotNull(r_reason_desc), EqualTo(r_reason_desc,reason 28 ), IsNotNull(r_reason_sk)] +PushedFilters: [*IsNotNull(r_reason_desc), *EqualTo(r_reason_desc,reason 28 ), *IsNotNull(r_reason_sk)] ReadSchema: struct (19) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94.sf100/explain.txt index 97f2376b036..b018114a74f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94.sf100/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (59) Output [8]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_warehouse_sk#4, ws_order_number#5, ws_ext_ship_cost#6, ws_net_profit#7, ws_sold_date_sk#8] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_date_sk), IsNotNull(ws_ship_addr_sk), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_ship_date_sk), *IsNotNull(ws_ship_addr_sk), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -153,7 +153,7 @@ Join condition: None Output [2]: [ca_address_sk#20, ca_state#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,IL), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,IL), *IsNotNull(ca_address_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -192,7 +192,7 @@ Input [7]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_num Output [2]: [web_site_sk#22, web_company_name#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_company_name), EqualTo(web_company_name,pri ), IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_company_name), *EqualTo(web_company_name,pri ), *IsNotNull(web_site_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -231,7 +231,7 @@ Input [6]: [ws_ship_date_sk#1, ws_web_site_sk#3, ws_order_number#5, ws_ext_ship_ Output [2]: [d_date_sk#24, d_date#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-01), LessThanOrEqual(d_date,1999-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-01), *LessThanOrEqual(d_date,1999-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer @@ -323,7 +323,7 @@ VeloxColumnarToRow (71) Output [2]: [ca_address_sk#20, ca_state#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,IL), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,IL), *IsNotNull(ca_address_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -388,7 +388,7 @@ VeloxColumnarToRow (83) Output [2]: [web_site_sk#22, web_company_name#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_company_name), EqualTo(web_company_name,pri ), IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_company_name), *EqualTo(web_company_name,pri ), *IsNotNull(web_site_sk)] ReadSchema: struct (73) FilterExecTransformer @@ -453,7 +453,7 @@ VeloxColumnarToRow (95) Output [2]: [d_date_sk#24, d_date#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-01), LessThanOrEqual(d_date,1999-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-01), *LessThanOrEqual(d_date,1999-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (85) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94/explain.txt index 85b07dc84d2..719ea010219 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (59) Output [8]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_warehouse_sk#4, ws_order_number#5, ws_ext_ship_cost#6, ws_net_profit#7, ws_sold_date_sk#8] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_date_sk), IsNotNull(ws_ship_addr_sk), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_ship_date_sk), *IsNotNull(ws_ship_addr_sk), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -153,7 +153,7 @@ Join condition: None Output [2]: [d_date_sk#17, d_date#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-01), LessThanOrEqual(d_date,1999-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-01), *LessThanOrEqual(d_date,1999-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -192,7 +192,7 @@ Input [7]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_num Output [2]: [ca_address_sk#19, ca_state#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,IL), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,IL), *IsNotNull(ca_address_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -231,7 +231,7 @@ Input [6]: [ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_number#5, ws_ext_ship_ Output [2]: [web_site_sk#21, web_company_name#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_company_name), EqualTo(web_company_name,pri ), IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_company_name), *EqualTo(web_company_name,pri ), *IsNotNull(web_site_sk)] ReadSchema: struct (45) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95.sf100/explain.txt index e86dddc86f8..d7b46d36ff6 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95.sf100/explain.txt @@ -63,7 +63,7 @@ VeloxColumnarToRow (74) Output [7]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_number#4, ws_ext_ship_cost#5, ws_net_profit#6, ws_sold_date_sk#7] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_date_sk), IsNotNull(ws_ship_addr_sk), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_ship_date_sk), *IsNotNull(ws_ship_addr_sk), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -95,7 +95,7 @@ Input [6]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_num Output [3]: [ws_warehouse_sk#12, ws_order_number#13, ws_sold_date_sk#14] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_order_number), IsNotNull(ws_warehouse_sk)] +PushedFilters: [*IsNotNull(ws_order_number), *IsNotNull(ws_warehouse_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -152,7 +152,7 @@ Join condition: None Output [2]: [wr_order_number#18, wr_returned_date_sk#19] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number)] +PushedFilters: [*IsNotNull(wr_order_number)] ReadSchema: struct (24) FilterExecTransformer @@ -224,7 +224,7 @@ Join condition: None Output [2]: [ca_address_sk#25, ca_state#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,IL), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,IL), *IsNotNull(ca_address_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -263,7 +263,7 @@ Input [7]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_num Output [2]: [web_site_sk#27, web_company_name#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_company_name), EqualTo(web_company_name,pri ), IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_company_name), *EqualTo(web_company_name,pri ), *IsNotNull(web_site_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -302,7 +302,7 @@ Input [6]: [ws_ship_date_sk#1, ws_web_site_sk#3, ws_order_number#4, ws_ext_ship_ Output [2]: [d_date_sk#29, d_date#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-01), LessThanOrEqual(d_date,1999-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-01), *LessThanOrEqual(d_date,1999-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer @@ -394,7 +394,7 @@ VeloxColumnarToRow (86) Output [2]: [ca_address_sk#25, ca_state#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,IL), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,IL), *IsNotNull(ca_address_sk)] ReadSchema: struct (76) FilterExecTransformer @@ -459,7 +459,7 @@ VeloxColumnarToRow (98) Output [2]: [web_site_sk#27, web_company_name#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_company_name), EqualTo(web_company_name,pri ), IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_company_name), *EqualTo(web_company_name,pri ), *IsNotNull(web_site_sk)] ReadSchema: struct (88) FilterExecTransformer @@ -524,7 +524,7 @@ VeloxColumnarToRow (110) Output [2]: [d_date_sk#29, d_date#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-01), LessThanOrEqual(d_date,1999-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-01), *LessThanOrEqual(d_date,1999-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (100) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95/explain.txt index 2ea15db9ddc..11ec0247391 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95/explain.txt @@ -64,7 +64,7 @@ VeloxColumnarToRow (75) Output [7]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_number#4, ws_ext_ship_cost#5, ws_net_profit#6, ws_sold_date_sk#7] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_date_sk), IsNotNull(ws_ship_addr_sk), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_ship_date_sk), *IsNotNull(ws_ship_addr_sk), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Input [6]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_num Output [3]: [ws_warehouse_sk#9, ws_order_number#10, ws_sold_date_sk#11] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_order_number), IsNotNull(ws_warehouse_sk)] +PushedFilters: [*IsNotNull(ws_order_number), *IsNotNull(ws_warehouse_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -153,7 +153,7 @@ Join condition: None Output [2]: [wr_order_number#15, wr_returned_date_sk#16] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number)] +PushedFilters: [*IsNotNull(wr_order_number)] ReadSchema: struct (24) FilterExecTransformer @@ -229,7 +229,7 @@ Join condition: None Output [2]: [d_date_sk#22, d_date#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-01), LessThanOrEqual(d_date,1999-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-01), *LessThanOrEqual(d_date,1999-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -268,7 +268,7 @@ Input [7]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_num Output [2]: [ca_address_sk#24, ca_state#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,IL), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,IL), *IsNotNull(ca_address_sk)] ReadSchema: struct (52) FilterExecTransformer @@ -307,7 +307,7 @@ Input [6]: [ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_number#4, ws_ext_ship_ Output [2]: [web_site_sk#26, web_company_name#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_company_name), EqualTo(web_company_name,pri ), IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_company_name), *EqualTo(web_company_name,pri ), *IsNotNull(web_site_sk)] ReadSchema: struct (61) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96.sf100/explain.txt index 46266268bdf..fedc2193fbd 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96.sf100/explain.txt @@ -35,7 +35,7 @@ VeloxColumnarToRow (39) Output [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -50,7 +50,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Output [3]: [t_time_sk#5, t_hour#6, t_minute#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,20), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,20), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -89,7 +89,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, t_time_sk#5] Output [2]: [s_store_sk#8, s_store_name#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_name), EqualTo(s_store_name,ese), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_name), *EqualTo(s_store_name,ese), *IsNotNull(s_store_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -128,7 +128,7 @@ Input [3]: [ss_hdemo_sk#2, ss_store_sk#3, s_store_sk#8] Output [2]: [hd_demo_sk#10, hd_dep_count#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_dep_count), EqualTo(hd_dep_count,7), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_dep_count), *EqualTo(hd_dep_count,7), *IsNotNull(hd_demo_sk)] ReadSchema: struct (23) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96/explain.txt index e4b562b0a78..1b350534fe8 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96/explain.txt @@ -35,7 +35,7 @@ VeloxColumnarToRow (39) Output [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -50,7 +50,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Output [2]: [hd_demo_sk#5, hd_dep_count#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_dep_count), EqualTo(hd_dep_count,7), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_dep_count), *EqualTo(hd_dep_count,7), *IsNotNull(hd_demo_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -89,7 +89,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, hd_demo_sk#5] Output [3]: [t_time_sk#7, t_hour#8, t_minute#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,20), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,20), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -128,7 +128,7 @@ Input [3]: [ss_sold_time_sk#1, ss_store_sk#3, t_time_sk#7] Output [2]: [s_store_sk#10, s_store_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_name), EqualTo(s_store_name,ese), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_name), *EqualTo(s_store_name,ese), *IsNotNull(s_store_sk)] ReadSchema: struct (23) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97.sf100/explain.txt index 50f8f339132..58e52d01f3b 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97.sf100/explain.txt @@ -186,7 +186,7 @@ ColumnarBroadcastExchange (38) Output [2]: [d_date_sk#5, d_month_seq#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (35) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97/explain.txt index 50f8f339132..58e52d01f3b 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97/explain.txt @@ -186,7 +186,7 @@ ColumnarBroadcastExchange (38) Output [2]: [d_date_sk#5, d_month_seq#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (35) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98.sf100/explain.txt index 7321cd491ee..9ab512593fa 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98.sf100/explain.txt @@ -43,7 +43,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -75,7 +75,7 @@ Input [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Output [6]: [i_item_sk#6, i_item_id#7, i_item_desc#8, i_current_price#9, i_class#10, i_category#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -245,7 +245,7 @@ ColumnarBroadcastExchange (54) Output [2]: [d_date_sk#13, d_date#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (51) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98/explain.txt index 32669d499c8..a7db24b2a7e 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98/explain.txt @@ -37,7 +37,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -48,7 +48,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [6]: [i_item_sk#5, i_item_id#6, i_item_desc#7, i_current_price#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -211,7 +211,7 @@ ColumnarBroadcastExchange (46) Output [2]: [d_date_sk#11, d_date#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (43) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99.sf100/explain.txt index ecbd909507e..82d4c83cbbd 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99.sf100/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (46) Output [5]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_ship_mode_sk#3, cs_warehouse_sk#4, cs_sold_date_sk#5] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_warehouse_sk), IsNotNull(cs_ship_mode_sk), IsNotNull(cs_call_center_sk), IsNotNull(cs_ship_date_sk)] +PushedFilters: [*IsNotNull(cs_warehouse_sk), *IsNotNull(cs_ship_mode_sk), *IsNotNull(cs_call_center_sk), *IsNotNull(cs_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Arguments: (((isnotnull(cs_warehouse_sk#4) AND isnotnull(cs_ship_mode_sk#3)) AND Output [2]: [d_date_sk#6, d_month_seq#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -90,7 +90,7 @@ Input [6]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_ship_mode_sk#3, cs_wareho Output [2]: [sm_ship_mode_sk#8, sm_type#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/ship_mode] -PushedFilters: [IsNotNull(sm_ship_mode_sk)] +PushedFilters: [*IsNotNull(sm_ship_mode_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -125,7 +125,7 @@ Input [7]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_ship_mode_sk#3, cs_wareho Output [2]: [cc_call_center_sk#10, cc_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk)] +PushedFilters: [*IsNotNull(cc_call_center_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -160,7 +160,7 @@ Input [7]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_warehouse_sk#4, cs_sold_d Output [2]: [w_warehouse_sk#12, w_warehouse_name#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (29) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99/explain.txt index 237c79b64b4..26ac9e6c56a 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (46) Output [5]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_ship_mode_sk#3, cs_warehouse_sk#4, cs_sold_date_sk#5] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_warehouse_sk), IsNotNull(cs_ship_mode_sk), IsNotNull(cs_call_center_sk), IsNotNull(cs_ship_date_sk)] +PushedFilters: [*IsNotNull(cs_warehouse_sk), *IsNotNull(cs_ship_mode_sk), *IsNotNull(cs_call_center_sk), *IsNotNull(cs_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Arguments: (((isnotnull(cs_warehouse_sk#4) AND isnotnull(cs_ship_mode_sk#3)) AND Output [2]: [w_warehouse_sk#6, w_warehouse_name#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -86,7 +86,7 @@ Input [7]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_ship_mode_sk#3, cs_wareho Output [2]: [sm_ship_mode_sk#8, sm_type#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/ship_mode] -PushedFilters: [IsNotNull(sm_ship_mode_sk)] +PushedFilters: [*IsNotNull(sm_ship_mode_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -121,7 +121,7 @@ Input [7]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_ship_mode_sk#3, cs_sold_d Output [2]: [cc_call_center_sk#10, cc_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk)] +PushedFilters: [*IsNotNull(cc_call_center_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -156,7 +156,7 @@ Input [7]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_sold_date_sk#5, w_warehou Output [2]: [d_date_sk#12, d_month_seq#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (28) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a.sf100/explain.txt index 1abbd31e210..f9495bb6842 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a.sf100/explain.txt @@ -60,7 +60,7 @@ VeloxColumnarToRow (74) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -241,7 +241,7 @@ Input [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#20, ca_county#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -294,7 +294,7 @@ Input [1]: [c_current_cdemo_sk#2] Output [9]: [cd_demo_sk#22, cd_gender#23, cd_marital_status#24, cd_education_status#25, cd_purchase_estimate#26, cd_credit_rating#27, cd_dep_count#28, cd_dep_employed_count#29, cd_dep_college_count#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (60) FilterExecTransformer @@ -379,7 +379,7 @@ VeloxColumnarToRow (86) Output [2]: [ca_address_sk#20, ca_county#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (76) FilterExecTransformer @@ -451,7 +451,7 @@ ColumnarBroadcastExchange (91) Output [3]: [d_date_sk#9, d_year#46, d_moy#47] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2002), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,7), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2002), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,7), *IsNotNull(d_date_sk)] ReadSchema: struct (88) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a/explain.txt index 8ab983ce495..2e74cf669fd 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a/explain.txt @@ -52,7 +52,7 @@ VeloxColumnarToRow (62) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -192,7 +192,7 @@ Input [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#16, ca_county#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -231,7 +231,7 @@ Input [3]: [c_current_cdemo_sk#2, c_current_addr_sk#3, ca_address_sk#16] Output [9]: [cd_demo_sk#18, cd_gender#19, cd_marital_status#20, cd_education_status#21, cd_purchase_estimate#22, cd_credit_rating#23, cd_dep_count#24, cd_dep_employed_count#25, cd_dep_college_count#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -325,7 +325,7 @@ ColumnarBroadcastExchange (67) Output [3]: [d_date_sk#7, d_year#37, d_moy#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2002), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,7), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2002), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,7), *IsNotNull(d_date_sk)] ReadSchema: struct (64) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11.sf100/explain.txt index 890a27a1212..64b4e101bb0 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11.sf100/explain.txt @@ -113,7 +113,7 @@ Output [4]: [ss_customer_sk#1, ss_ext_discount_amt#2, ss_ext_list_price#3, ss_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -160,7 +160,7 @@ Input [4]: [ss_customer_sk#1, ss_ext_discount_amt#2, ss_ext_list_price#3, d_year Output [8]: [c_customer_sk#9, c_customer_id#10, c_first_name#11, c_last_name#12, c_preferred_cust_flag#13, c_birth_country#14, c_login#15, c_email_address#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (14) FilterExecTransformer @@ -267,7 +267,7 @@ Output [4]: [ss_customer_sk#26, ss_ext_discount_amt#27, ss_ext_list_price#28, ss Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#29), dynamicpruningexpression(ss_sold_date_sk#29 IN dynamicpruning#30)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -396,7 +396,7 @@ Output [4]: [ws_bill_customer_sk#52, ws_ext_discount_amt#53, ws_ext_list_price#5 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#55), dynamicpruningexpression(ws_sold_date_sk#55 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -537,7 +537,7 @@ Output [4]: [ws_bill_customer_sk#75, ws_ext_discount_amt#76, ws_ext_list_price#7 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#78), dynamicpruningexpression(ws_sold_date_sk#78 IN dynamicpruning#30)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (107) FilterExecTransformer @@ -688,7 +688,7 @@ ColumnarBroadcastExchange (145) Output [2]: [d_date_sk#6, d_year#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (143) FilterExecTransformer @@ -713,7 +713,7 @@ ColumnarBroadcastExchange (149) Output [2]: [d_date_sk#31, d_year#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (147) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11/explain.txt index 10dea88bacb..e1cdb5a6cad 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11/explain.txt @@ -96,7 +96,7 @@ VeloxColumnarToRow (118) Output [8]: [c_customer_sk#1, c_customer_id#2, c_first_name#3, c_last_name#4, c_preferred_cust_flag#5, c_birth_country#6, c_login#7, c_email_address#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (2) FilterExecTransformer @@ -108,7 +108,7 @@ Output [4]: [ss_customer_sk#9, ss_ext_discount_amt#10, ss_ext_list_price#11, ss_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#12), dynamicpruningexpression(ss_sold_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -205,7 +205,7 @@ Arguments: (isnotnull(year_total#22) AND (year_total#22 > 0.00)) Output [8]: [c_customer_sk#23, c_customer_id#24, c_first_name#25, c_last_name#26, c_preferred_cust_flag#27, c_birth_country#28, c_login#29, c_email_address#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (27) FilterExecTransformer @@ -217,7 +217,7 @@ Output [4]: [ss_customer_sk#31, ss_ext_discount_amt#32, ss_ext_list_price#33, ss Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#34), dynamicpruningexpression(ss_sold_date_sk#34 IN dynamicpruning#35)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -330,7 +330,7 @@ Join condition: None Output [8]: [c_customer_sk#47, c_customer_id#48, c_first_name#49, c_last_name#50, c_preferred_cust_flag#51, c_birth_country#52, c_login#53, c_email_address#54] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (56) FilterExecTransformer @@ -342,7 +342,7 @@ Output [4]: [ws_bill_customer_sk#55, ws_ext_discount_amt#56, ws_ext_list_price#5 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#58), dynamicpruningexpression(ws_sold_date_sk#58 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (58) FilterExecTransformer @@ -463,7 +463,7 @@ Input [9]: [customer_id#21, year_total#22, customer_id#42, customer_first_name#4 Output [8]: [c_customer_sk#68, c_customer_id#69, c_first_name#70, c_last_name#71, c_preferred_cust_flag#72, c_birth_country#73, c_login#74, c_email_address#75] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (87) FilterExecTransformer @@ -475,7 +475,7 @@ Output [4]: [ws_bill_customer_sk#76, ws_ext_discount_amt#77, ws_ext_list_price#7 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#79), dynamicpruningexpression(ws_sold_date_sk#79 IN dynamicpruning#35)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (89) FilterExecTransformer @@ -611,7 +611,7 @@ ColumnarBroadcastExchange (122) Output [2]: [d_date_sk#14, d_year#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (120) FilterExecTransformer @@ -636,7 +636,7 @@ ColumnarBroadcastExchange (126) Output [2]: [d_date_sk#36, d_year#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (124) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12.sf100/explain.txt index 814b1ecac1a..1427406739b 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12.sf100/explain.txt @@ -39,7 +39,7 @@ Output [3]: [ws_item_sk#1, ws_ext_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -71,7 +71,7 @@ Input [3]: [ws_item_sk#1, ws_ext_sales_price#2, ws_sold_date_sk#3] Output [6]: [i_item_sk#6, i_item_id#7, i_item_desc#8, i_current_price#9, i_class#10, i_category#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -220,7 +220,7 @@ ColumnarBroadcastExchange (48) Output [2]: [d_date_sk#13, d_date#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12/explain.txt index 009dceeb7c3..5c3b03f3e58 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12/explain.txt @@ -33,7 +33,7 @@ Output [3]: [ws_item_sk#1, ws_ext_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -44,7 +44,7 @@ Arguments: isnotnull(ws_item_sk#1) Output [6]: [i_item_sk#5, i_item_id#6, i_item_desc#7, i_current_price#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -186,7 +186,7 @@ ColumnarBroadcastExchange (40) Output [2]: [d_date_sk#11, d_date#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14.sf100/explain.txt index 295c63b392f..0756a9211dd 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14.sf100/explain.txt @@ -120,7 +120,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -131,7 +131,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -143,7 +143,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -173,7 +173,7 @@ Input [3]: [ss_item_sk#10, ss_sold_date_sk#11, d_date_sk#13] Output [4]: [i_item_sk#14, i_brand_id#15, i_class_id#16, i_category_id#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (13) FilterExecTransformer @@ -206,7 +206,7 @@ Output [2]: [cs_item_sk#19, cs_sold_date_sk#20] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#20), dynamicpruningexpression(cs_sold_date_sk#20 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -236,7 +236,7 @@ Input [3]: [cs_item_sk#19, cs_sold_date_sk#20, d_date_sk#21] Output [4]: [i_item_sk#22, i_brand_id#23, i_class_id#24, i_category_id#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (28) FilterExecTransformer @@ -375,7 +375,7 @@ Output [2]: [ws_item_sk#32, ws_sold_date_sk#33] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#33), dynamicpruningexpression(ws_sold_date_sk#33 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -510,7 +510,7 @@ Input [5]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4, d_d Output [4]: [i_item_sk#42, i_brand_id#43, i_class_id#44, i_category_id#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (96) FilterExecTransformer @@ -604,7 +604,7 @@ Output [4]: [ss_item_sk#60, ss_quantity#61, ss_list_price#62, ss_sold_date_sk#63 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#63), dynamicpruningexpression(ss_sold_date_sk#63 IN dynamicpruning#64)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (118) FilterExecTransformer @@ -925,7 +925,7 @@ ColumnarBroadcastExchange (189) Output [2]: [d_date_sk#41, d_week_seq#109] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#110), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#110), *IsNotNull(d_date_sk)] ReadSchema: struct (186) FilterExecTransformer @@ -957,7 +957,7 @@ VeloxColumnarToRow (194) Output [4]: [d_week_seq#111, d_year#112, d_moy#113, d_dom#114] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,1999), EqualTo(d_moy,12), EqualTo(d_dom,16)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,1999), *EqualTo(d_moy,12), *EqualTo(d_dom,16)] ReadSchema: struct (191) FilterExecTransformer @@ -988,7 +988,7 @@ ColumnarBroadcastExchange (199) Output [2]: [d_date_sk#13, d_year#115] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1998), LessThanOrEqual(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1998), *LessThanOrEqual(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (196) FilterExecTransformer @@ -1024,7 +1024,7 @@ ColumnarBroadcastExchange (204) Output [2]: [d_date_sk#66, d_week_seq#116] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#117), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#117), *IsNotNull(d_date_sk)] ReadSchema: struct (201) FilterExecTransformer @@ -1056,7 +1056,7 @@ VeloxColumnarToRow (209) Output [4]: [d_week_seq#118, d_year#119, d_moy#120, d_dom#121] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,1998), EqualTo(d_moy,12), EqualTo(d_dom,16)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,1998), *EqualTo(d_moy,12), *EqualTo(d_dom,16)] ReadSchema: struct (206) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14/explain.txt index 657975c8dc7..19f24f07ed9 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14/explain.txt @@ -110,7 +110,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -121,7 +121,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -133,7 +133,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -144,7 +144,7 @@ Arguments: isnotnull(ss_item_sk#10) Output [4]: [i_item_sk#13, i_brand_id#14, i_class_id#15, i_category_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (8) FilterExecTransformer @@ -156,7 +156,7 @@ Output [2]: [cs_item_sk#17, cs_sold_date_sk#18] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#18), dynamicpruningexpression(cs_sold_date_sk#18 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -167,7 +167,7 @@ Arguments: isnotnull(cs_item_sk#17) Output [4]: [i_item_sk#19, i_brand_id#20, i_class_id#21, i_category_id#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -320,7 +320,7 @@ Output [2]: [ws_item_sk#29, ws_sold_date_sk#30] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#30), dynamicpruningexpression(ws_sold_date_sk#30 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (49) FilterExecTransformer @@ -433,7 +433,7 @@ Join condition: None Output [4]: [i_item_sk#37, i_brand_id#38, i_class_id#39, i_category_id#40] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (77) FilterExecTransformer @@ -546,7 +546,7 @@ Output [4]: [ss_item_sk#56, ss_quantity#57, ss_list_price#58, ss_sold_date_sk#59 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#59), dynamicpruningexpression(ss_sold_date_sk#59 IN dynamicpruning#60)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (104) FilterExecTransformer @@ -867,7 +867,7 @@ ColumnarBroadcastExchange (175) Output [2]: [d_date_sk#41, d_week_seq#105] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#106), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#106), *IsNotNull(d_date_sk)] ReadSchema: struct (172) FilterExecTransformer @@ -899,7 +899,7 @@ VeloxColumnarToRow (180) Output [4]: [d_week_seq#107, d_year#108, d_moy#109, d_dom#110] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,1999), EqualTo(d_moy,12), EqualTo(d_dom,16)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,1999), *EqualTo(d_moy,12), *EqualTo(d_dom,16)] ReadSchema: struct (177) FilterExecTransformer @@ -930,7 +930,7 @@ ColumnarBroadcastExchange (185) Output [2]: [d_date_sk#24, d_year#111] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1998), LessThanOrEqual(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1998), *LessThanOrEqual(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (182) FilterExecTransformer @@ -966,7 +966,7 @@ ColumnarBroadcastExchange (190) Output [2]: [d_date_sk#66, d_week_seq#112] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#113), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#113), *IsNotNull(d_date_sk)] ReadSchema: struct (187) FilterExecTransformer @@ -998,7 +998,7 @@ VeloxColumnarToRow (195) Output [4]: [d_week_seq#114, d_year#115, d_moy#116, d_dom#117] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,1998), EqualTo(d_moy,12), EqualTo(d_dom,16)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,1998), *EqualTo(d_moy,12), *EqualTo(d_dom,16)] ReadSchema: struct (192) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a.sf100/explain.txt index fc1b67f299f..bbaab9d29f1 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a.sf100/explain.txt @@ -193,7 +193,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -204,7 +204,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -216,7 +216,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -246,7 +246,7 @@ Input [3]: [ss_item_sk#10, ss_sold_date_sk#11, d_date_sk#13] Output [4]: [i_item_sk#14, i_brand_id#15, i_class_id#16, i_category_id#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (13) FilterExecTransformer @@ -279,7 +279,7 @@ Output [2]: [cs_item_sk#19, cs_sold_date_sk#20] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#20), dynamicpruningexpression(cs_sold_date_sk#20 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -309,7 +309,7 @@ Input [3]: [cs_item_sk#19, cs_sold_date_sk#20, d_date_sk#21] Output [4]: [i_item_sk#22, i_brand_id#23, i_class_id#24, i_category_id#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (28) FilterExecTransformer @@ -448,7 +448,7 @@ Output [2]: [ws_item_sk#32, ws_sold_date_sk#33] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#33), dynamicpruningexpression(ws_sold_date_sk#33 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -583,7 +583,7 @@ Input [5]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4, d_d Output [4]: [i_item_sk#42, i_brand_id#43, i_class_id#44, i_category_id#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (96) FilterExecTransformer @@ -681,7 +681,7 @@ Output [4]: [cs_item_sk#60, cs_quantity#61, cs_list_price#62, cs_sold_date_sk#63 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#63), dynamicpruningexpression(cs_sold_date_sk#63 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (119) FilterExecTransformer @@ -793,7 +793,7 @@ Output [4]: [ws_item_sk#83, ws_quantity#84, ws_list_price#85, ws_sold_date_sk#86 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#86), dynamicpruningexpression(ws_sold_date_sk#86 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (146) FilterExecTransformer @@ -1410,7 +1410,7 @@ ColumnarBroadcastExchange (289) Output [2]: [d_date_sk#219, d_year#235] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1998), LessThanOrEqual(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1998), *LessThanOrEqual(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (286) FilterExecTransformer @@ -1442,7 +1442,7 @@ ColumnarBroadcastExchange (294) Output [3]: [d_date_sk#41, d_year#236, d_moy#237] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (291) FilterExecTransformer @@ -1472,7 +1472,7 @@ ColumnarBroadcastExchange (299) Output [2]: [d_date_sk#13, d_year#238] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1999), LessThanOrEqual(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1999), *LessThanOrEqual(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (296) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a/explain.txt index 7b3e8fc11d4..0bad18439ea 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a/explain.txt @@ -183,7 +183,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -194,7 +194,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -206,7 +206,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -217,7 +217,7 @@ Arguments: isnotnull(ss_item_sk#10) Output [4]: [i_item_sk#13, i_brand_id#14, i_class_id#15, i_category_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (8) FilterExecTransformer @@ -229,7 +229,7 @@ Output [2]: [cs_item_sk#17, cs_sold_date_sk#18] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#18), dynamicpruningexpression(cs_sold_date_sk#18 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -240,7 +240,7 @@ Arguments: isnotnull(cs_item_sk#17) Output [4]: [i_item_sk#19, i_brand_id#20, i_class_id#21, i_category_id#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -393,7 +393,7 @@ Output [2]: [ws_item_sk#29, ws_sold_date_sk#30] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#30), dynamicpruningexpression(ws_sold_date_sk#30 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (49) FilterExecTransformer @@ -506,7 +506,7 @@ Join condition: None Output [4]: [i_item_sk#37, i_brand_id#38, i_class_id#39, i_category_id#40] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (77) FilterExecTransformer @@ -623,7 +623,7 @@ Output [4]: [cs_item_sk#56, cs_quantity#57, cs_list_price#58, cs_sold_date_sk#59 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#59), dynamicpruningexpression(cs_sold_date_sk#59 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (105) FilterExecTransformer @@ -735,7 +735,7 @@ Output [4]: [ws_item_sk#79, ws_quantity#80, ws_list_price#81, ws_sold_date_sk#82 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#82), dynamicpruningexpression(ws_sold_date_sk#82 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (132) FilterExecTransformer @@ -1352,7 +1352,7 @@ ColumnarBroadcastExchange (275) Output [2]: [d_date_sk#215, d_year#231] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1998), LessThanOrEqual(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1998), *LessThanOrEqual(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (272) FilterExecTransformer @@ -1384,7 +1384,7 @@ ColumnarBroadcastExchange (280) Output [3]: [d_date_sk#41, d_year#232, d_moy#233] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (277) FilterExecTransformer @@ -1414,7 +1414,7 @@ ColumnarBroadcastExchange (285) Output [2]: [d_date_sk#24, d_year#234] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1999), LessThanOrEqual(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1999), *LessThanOrEqual(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (282) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a.sf100/explain.txt index e5249bb0a40..da9066db0c9 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a.sf100/explain.txt @@ -190,7 +190,7 @@ Output [9]: [cs_bill_customer_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#3, cs_quantit Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#9), dynamicpruningexpression(cs_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -201,7 +201,7 @@ Arguments: ((isnotnull(cs_bill_cdemo_sk#2) AND isnotnull(cs_bill_customer_sk#1)) Output [4]: [cd_demo_sk#11, cd_gender#12, cd_education_status#13, cd_dep_count#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -259,7 +259,7 @@ Input [10]: [cs_bill_customer_sk#1, cs_item_sk#3, cs_quantity#4, cs_list_price#5 Output [2]: [i_item_sk#16, i_item_id#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -311,7 +311,7 @@ Input [8]: [cs_bill_customer_sk#1, cs_quantity#4, cs_list_price#5, cs_sales_pric Output [5]: [c_customer_sk#19, c_current_cdemo_sk#20, c_current_addr_sk#21, c_birth_month#22, c_birth_year#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [In(c_birth_month, [1,10,12,4,5,9]), IsNotNull(c_customer_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*In(c_birth_month, [1,10,12,4,5,9]), *IsNotNull(c_customer_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (31) FilterExecTransformer @@ -326,7 +326,7 @@ Input [5]: [c_customer_sk#19, c_current_cdemo_sk#20, c_current_addr_sk#21, c_bir Output [4]: [ca_address_sk#24, ca_county#25, ca_state#26, ca_country#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -378,7 +378,7 @@ Input [6]: [c_customer_sk#19, c_current_cdemo_sk#20, c_birth_year#23, ca_county# Output [1]: [cd_demo_sk#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -495,7 +495,7 @@ Input [8]: [cs_bill_customer_sk#82, cs_quantity#83, cs_list_price#84, cs_sales_p Output [5]: [c_customer_sk#90, c_current_cdemo_sk#91, c_current_addr_sk#92, c_birth_month#93, c_birth_year#94] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [In(c_birth_month, [1,10,12,4,5,9]), IsNotNull(c_customer_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*In(c_birth_month, [1,10,12,4,5,9]), *IsNotNull(c_customer_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (76) FilterExecTransformer @@ -510,7 +510,7 @@ Input [5]: [c_customer_sk#90, c_current_cdemo_sk#91, c_current_addr_sk#92, c_bir Output [3]: [ca_address_sk#95, ca_state#96, ca_country#97] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -660,7 +660,7 @@ Input [8]: [cs_bill_customer_sk#152, cs_quantity#153, cs_list_price#154, cs_sale Output [5]: [c_customer_sk#160, c_current_cdemo_sk#161, c_current_addr_sk#162, c_birth_month#163, c_birth_year#164] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [In(c_birth_month, [1,10,12,4,5,9]), IsNotNull(c_customer_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*In(c_birth_month, [1,10,12,4,5,9]), *IsNotNull(c_customer_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (117) FilterExecTransformer @@ -675,7 +675,7 @@ Input [5]: [c_customer_sk#160, c_current_cdemo_sk#161, c_current_addr_sk#162, c_ Output [3]: [ca_address_sk#165, ca_state#166, ca_country#167] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (120) FilterExecTransformer @@ -821,7 +821,7 @@ Output [9]: [cs_bill_customer_sk#223, cs_bill_cdemo_sk#224, cs_item_sk#225, cs_q Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#231), dynamicpruningexpression(cs_sold_date_sk#231 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (156) FilterExecTransformer @@ -870,7 +870,7 @@ Input [10]: [cs_bill_customer_sk#223, cs_item_sk#225, cs_quantity#226, cs_list_p Output [5]: [c_customer_sk#235, c_current_cdemo_sk#236, c_current_addr_sk#237, c_birth_month#238, c_birth_year#239] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [In(c_birth_month, [1,10,12,4,5,9]), IsNotNull(c_customer_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*In(c_birth_month, [1,10,12,4,5,9]), *IsNotNull(c_customer_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (168) FilterExecTransformer @@ -885,7 +885,7 @@ Input [5]: [c_customer_sk#235, c_current_cdemo_sk#236, c_current_addr_sk#237, c_ Output [2]: [ca_address_sk#240, ca_state#241] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (171) FilterExecTransformer @@ -938,7 +938,7 @@ Input [3]: [c_customer_sk#235, c_current_cdemo_sk#236, c_birth_year#239] Output [1]: [cd_demo_sk#242] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (184) FilterExecTransformer @@ -1046,7 +1046,7 @@ Output [9]: [cs_bill_customer_sk#298, cs_bill_cdemo_sk#299, cs_item_sk#300, cs_q Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#306), dynamicpruningexpression(cs_sold_date_sk#306 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (209) FilterExecTransformer @@ -1095,7 +1095,7 @@ Input [10]: [cs_bill_customer_sk#298, cs_item_sk#300, cs_quantity#301, cs_list_p Output [1]: [i_item_sk#310] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (221) FilterExecTransformer @@ -1207,7 +1207,7 @@ ColumnarBroadcastExchange (249) Output [2]: [d_date_sk#15, d_year#366] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (246) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a/explain.txt index 35acd435776..c2fe08ab9c7 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a/explain.txt @@ -194,7 +194,7 @@ Output [9]: [cs_bill_customer_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#3, cs_quantit Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#9), dynamicpruningexpression(cs_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -205,7 +205,7 @@ Arguments: ((isnotnull(cs_bill_cdemo_sk#2) AND isnotnull(cs_bill_customer_sk#1)) Output [4]: [cd_demo_sk#11, cd_gender#12, cd_education_status#13, cd_dep_count#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -244,7 +244,7 @@ Input [11]: [cs_bill_customer_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#3, cs_quantit Output [5]: [c_customer_sk#15, c_current_cdemo_sk#16, c_current_addr_sk#17, c_birth_month#18, c_birth_year#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [In(c_birth_month, [1,10,12,4,5,9]), IsNotNull(c_customer_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*In(c_birth_month, [1,10,12,4,5,9]), *IsNotNull(c_customer_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -283,7 +283,7 @@ Input [13]: [cs_bill_customer_sk#1, cs_item_sk#3, cs_quantity#4, cs_list_price#5 Output [1]: [cd_demo_sk#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -318,7 +318,7 @@ Input [12]: [cs_item_sk#3, cs_quantity#4, cs_list_price#5, cs_sales_price#6, cs_ Output [4]: [ca_address_sk#21, ca_county#22, ca_state#23, ca_country#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (30) FilterExecTransformer @@ -372,7 +372,7 @@ Input [13]: [cs_item_sk#3, cs_quantity#4, cs_list_price#5, cs_sales_price#6, cs_ Output [2]: [i_item_sk#26, i_item_id#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -447,7 +447,7 @@ Output [9]: [cs_bill_customer_sk#78, cs_bill_cdemo_sk#79, cs_item_sk#80, cs_quan Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#86), dynamicpruningexpression(cs_sold_date_sk#86 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (60) FilterExecTransformer @@ -515,7 +515,7 @@ Input [12]: [cs_item_sk#80, cs_quantity#81, cs_list_price#82, cs_sales_price#83, Output [3]: [ca_address_sk#94, ca_state#95, ca_country#96] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (77) FilterExecTransformer @@ -632,7 +632,7 @@ Output [9]: [cs_bill_customer_sk#151, cs_bill_cdemo_sk#152, cs_item_sk#153, cs_q Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#159), dynamicpruningexpression(cs_sold_date_sk#159 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (105) FilterExecTransformer @@ -700,7 +700,7 @@ Input [12]: [cs_item_sk#153, cs_quantity#154, cs_list_price#155, cs_sales_price# Output [3]: [ca_address_sk#167, ca_state#168, ca_country#169] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (122) FilterExecTransformer @@ -821,7 +821,7 @@ Output [9]: [cs_bill_customer_sk#225, cs_bill_cdemo_sk#226, cs_item_sk#227, cs_q Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#233), dynamicpruningexpression(cs_sold_date_sk#233 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (151) FilterExecTransformer @@ -889,7 +889,7 @@ Input [12]: [cs_item_sk#227, cs_quantity#228, cs_list_price#229, cs_sales_price# Output [2]: [ca_address_sk#241, ca_state#242] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (168) FilterExecTransformer @@ -1010,7 +1010,7 @@ Output [9]: [cs_bill_customer_sk#299, cs_bill_cdemo_sk#300, cs_item_sk#301, cs_q Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#307), dynamicpruningexpression(cs_sold_date_sk#307 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (197) FilterExecTransformer @@ -1116,7 +1116,7 @@ Input [10]: [cs_item_sk#301, cs_quantity#302, cs_list_price#303, cs_sales_price# Output [1]: [i_item_sk#317] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (224) FilterExecTransformer @@ -1209,7 +1209,7 @@ ColumnarBroadcastExchange (247) Output [2]: [d_date_sk#25, d_year#371] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (244) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20.sf100/explain.txt index 1046b971068..fde54fd6504 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20.sf100/explain.txt @@ -39,7 +39,7 @@ Output [3]: [cs_item_sk#1, cs_ext_sales_price#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -71,7 +71,7 @@ Input [3]: [cs_item_sk#1, cs_ext_sales_price#2, cs_sold_date_sk#3] Output [6]: [i_item_sk#6, i_item_id#7, i_item_desc#8, i_current_price#9, i_class#10, i_category#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -220,7 +220,7 @@ ColumnarBroadcastExchange (48) Output [2]: [d_date_sk#13, d_date#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20/explain.txt index 610e72b2cc2..6d936ccc19a 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20/explain.txt @@ -33,7 +33,7 @@ Output [3]: [cs_item_sk#1, cs_ext_sales_price#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -44,7 +44,7 @@ Arguments: isnotnull(cs_item_sk#1) Output [6]: [i_item_sk#5, i_item_id#6, i_item_desc#7, i_current_price#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -186,7 +186,7 @@ ColumnarBroadcastExchange (40) Output [2]: [d_date_sk#11, d_date#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22.sf100/explain.txt index b86f2360234..0816e5222b9 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22.sf100/explain.txt @@ -38,7 +38,7 @@ Output [3]: [inv_item_sk#1, inv_quantity_on_hand#2, inv_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#3), dynamicpruningexpression(inv_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -85,7 +85,7 @@ Input [2]: [inv_item_sk#1, inv_quantity_on_hand#2] Output [5]: [i_item_sk#7, i_brand#8, i_class#9, i_category#10, i_product_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -218,7 +218,7 @@ ColumnarBroadcastExchange (47) Output [2]: [d_date_sk#5, d_month_seq#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (44) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22/explain.txt index 8e5c769af5f..341f0694e63 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22/explain.txt @@ -33,7 +33,7 @@ Output [3]: [inv_item_sk#1, inv_quantity_on_hand#2, inv_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#3), dynamicpruningexpression(inv_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -63,7 +63,7 @@ Input [4]: [inv_item_sk#1, inv_quantity_on_hand#2, inv_date_sk#3, d_date_sk#5] Output [5]: [i_item_sk#6, i_brand#7, i_class#8, i_category#9, i_product_name#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -189,7 +189,7 @@ ColumnarBroadcastExchange (40) Output [2]: [d_date_sk#5, d_month_seq#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a.sf100/explain.txt index f37ebb733b1..a91c79a9ecd 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a.sf100/explain.txt @@ -78,7 +78,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -89,7 +89,7 @@ Arguments: (isnotnull(inv_item_sk#1) AND isnotnull(inv_warehouse_sk#2)) Output [1]: [w_warehouse_sk#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -160,7 +160,7 @@ Input [2]: [inv_item_sk#1, inv_quantity_on_hand#3] Output [5]: [i_item_sk#9, i_brand#10, i_class#11, i_category#12, i_product_name#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -491,7 +491,7 @@ ColumnarBroadcastExchange (101) Output [2]: [d_date_sk#7, d_month_seq#93] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (98) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a/explain.txt index 4e1fc59144e..0a4515cbaa5 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a/explain.txt @@ -73,7 +73,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -103,7 +103,7 @@ Input [5]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_ Output [5]: [i_item_sk#7, i_brand#8, i_class#9, i_category#10, i_product_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -138,7 +138,7 @@ Input [8]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, i_item_sk Output [1]: [w_warehouse_sk#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -462,7 +462,7 @@ ColumnarBroadcastExchange (94) Output [2]: [d_date_sk#6, d_month_seq#91] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (91) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24.sf100/explain.txt index ff569f0dc94..1d3db8e6478 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24.sf100/explain.txt @@ -63,7 +63,7 @@ VeloxColumnarToRow (77) Output [5]: [s_store_sk#1, s_store_name#2, s_market_id#3, s_state#4, s_zip#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (2) FilterExecTransformer @@ -92,7 +92,7 @@ Input [4]: [s_store_sk#1, s_store_name#2, s_state#4, s_zip#5] Output [4]: [ca_address_sk#6, ca_state#7, ca_zip#8, ca_country#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (9) FilterExecTransformer @@ -127,7 +127,7 @@ Input [6]: [s_store_sk#1, s_store_name#2, s_state#4, ca_address_sk#6, ca_state#7 Output [5]: [c_customer_sk#10, c_current_addr_sk#11, c_first_name#12, c_last_name#13, c_birth_country#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk), IsNotNull(c_birth_country)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk), *IsNotNull(c_birth_country)] ReadSchema: struct (17) FilterExecTransformer @@ -162,7 +162,7 @@ Input [7]: [s_store_sk#1, s_store_name#2, s_state#4, ca_state#7, c_customer_sk#1 Output [6]: [ss_item_sk#15, ss_customer_sk#16, ss_store_sk#17, ss_ticket_number#18, ss_net_paid#19, ss_sold_date_sk#20] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -187,7 +187,7 @@ Input [12]: [s_store_sk#1, s_store_name#2, s_state#4, ca_state#7, c_customer_sk# Output [6]: [i_item_sk#21, i_current_price#22, i_size#23, i_color#24, i_units#25, i_manager_id#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_color), EqualTo(i_color,pale ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_color), *EqualTo(i_color,pale ), *IsNotNull(i_item_sk)] ReadSchema: struct (30) FilterExecTransformer @@ -239,7 +239,7 @@ Input [13]: [s_store_name#2, s_state#4, ca_state#7, c_first_name#12, c_last_name Output [3]: [sr_item_sk#28, sr_ticket_number#29, sr_returned_date_sk#30] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -436,7 +436,7 @@ Input [7]: [s_store_sk#46, s_store_name#47, s_state#48, ca_state#49, c_customer_ Output [6]: [ss_item_sk#53, ss_customer_sk#54, ss_store_sk#55, ss_ticket_number#56, ss_net_paid#57, ss_sold_date_sk#58] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (82) FilterExecTransformer @@ -478,7 +478,7 @@ Input [8]: [s_store_name#47, s_state#48, ca_state#49, c_first_name#51, c_last_na Output [6]: [i_item_sk#60, i_current_price#61, i_size#62, i_color#63, i_units#64, i_manager_id#65] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (92) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24/explain.txt index 77e14ac0c83..c6a2e654640 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24/explain.txt @@ -63,7 +63,7 @@ VeloxColumnarToRow (77) Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, ss_sold_date_sk#6] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -95,7 +95,7 @@ Input [5]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [3]: [sr_item_sk#8, sr_ticket_number#9, sr_returned_date_sk#10] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -137,7 +137,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [5]: [s_store_sk#12, s_store_name#13, s_market_id#14, s_state#15, s_zip#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (20) FilterExecTransformer @@ -176,7 +176,7 @@ Input [8]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_net_paid#5, s_stor Output [6]: [i_item_sk#17, i_current_price#18, i_size#19, i_color#20, i_units#21, i_manager_id#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_color), EqualTo(i_color,pale ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_color), *EqualTo(i_color,pale ), *IsNotNull(i_item_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -211,7 +211,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_net_paid#5, s_store_name#13, s_s Output [5]: [c_customer_sk#23, c_current_addr_sk#24, c_first_name#25, c_last_name#26, c_birth_country#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk), IsNotNull(c_birth_country)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk), *IsNotNull(c_birth_country)] ReadSchema: struct (37) FilterExecTransformer @@ -246,7 +246,7 @@ Input [15]: [ss_customer_sk#2, ss_net_paid#5, s_store_name#13, s_state#15, s_zip Output [4]: [ca_address_sk#28, ca_state#29, ca_zip#30, ca_country#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (45) FilterExecTransformer @@ -473,7 +473,7 @@ Input [8]: [ss_item_sk#46, ss_customer_sk#47, ss_store_sk#48, ss_net_paid#50, s_ Output [6]: [i_item_sk#57, i_current_price#58, i_size#59, i_color#60, i_units#61, i_manager_id#62] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (92) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a.sf100/explain.txt index 6aa07cba054..d7424152f3d 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a.sf100/explain.txt @@ -95,7 +95,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -106,7 +106,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_store_sk#3)) AND isnotnul Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_marital_status,W), EqualTo(cd_education_status,Primary ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_marital_status,W), *EqualTo(cd_education_status,Primary ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -164,7 +164,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [s_store_sk#15, s_state#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -199,7 +199,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#17, i_item_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -278,7 +278,7 @@ Output [8]: [ss_item_sk#52, ss_cdemo_sk#53, ss_store_sk#54, ss_quantity#55, ss_l Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#59), dynamicpruningexpression(ss_sold_date_sk#59 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -308,7 +308,7 @@ Input [9]: [ss_item_sk#52, ss_cdemo_sk#53, ss_store_sk#54, ss_quantity#55, ss_li Output [2]: [s_store_sk#61, s_state#62] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -429,7 +429,7 @@ Output [8]: [ss_item_sk#100, ss_cdemo_sk#101, ss_store_sk#102, ss_quantity#103, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#107), dynamicpruningexpression(ss_sold_date_sk#107 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -497,7 +497,7 @@ Input [7]: [ss_item_sk#100, ss_quantity#103, ss_list_price#104, ss_sales_price#1 Output [1]: [i_item_sk#111] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -590,7 +590,7 @@ ColumnarBroadcastExchange (120) Output [2]: [d_date_sk#14, d_year#146] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (117) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a/explain.txt index 0114a1bc934..886f7114b86 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a/explain.txt @@ -95,7 +95,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -106,7 +106,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_store_sk#3)) AND isnotnul Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_marital_status,W), EqualTo(cd_education_status,Primary ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_marital_status,W), *EqualTo(cd_education_status,Primary ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -164,7 +164,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [s_store_sk#15, s_state#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -199,7 +199,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#17, i_item_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -278,7 +278,7 @@ Output [8]: [ss_item_sk#52, ss_cdemo_sk#53, ss_store_sk#54, ss_quantity#55, ss_l Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#59), dynamicpruningexpression(ss_sold_date_sk#59 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -327,7 +327,7 @@ Input [8]: [ss_item_sk#52, ss_store_sk#54, ss_quantity#55, ss_list_price#56, ss_ Output [2]: [s_store_sk#62, s_state#63] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (56) FilterExecTransformer @@ -429,7 +429,7 @@ Output [8]: [ss_item_sk#100, ss_cdemo_sk#101, ss_store_sk#102, ss_quantity#103, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#107), dynamicpruningexpression(ss_sold_date_sk#107 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -497,7 +497,7 @@ Input [7]: [ss_item_sk#100, ss_store_sk#102, ss_quantity#103, ss_list_price#104, Output [1]: [i_item_sk#111] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -590,7 +590,7 @@ ColumnarBroadcastExchange (120) Output [2]: [d_date_sk#14, d_year#146] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (117) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34.sf100/explain.txt index 1dd7da0bd49..cb9f0fb38ef 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34.sf100/explain.txt @@ -50,7 +50,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -80,7 +80,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_county), EqualTo(s_county,Williamson County), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_county), *EqualTo(s_county,Williamson County), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -119,7 +119,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -218,7 +218,7 @@ Input [3]: [ss_ticket_number#4, ss_customer_sk#1, cnt#18] Output [5]: [c_customer_sk#20, c_salutation#21, c_first_name#22, c_last_name#23, c_preferred_cust_flag#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -297,7 +297,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#7, d_year#26, d_dom#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34/explain.txt index df4e2adde5c..5ee23d243bc 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34/explain.txt @@ -44,7 +44,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_county), EqualTo(s_county,Williamson County), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_county), *EqualTo(s_county,Williamson County), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -113,7 +113,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -191,7 +191,7 @@ Arguments: ((cnt#18 >= 15) AND (cnt#18 <= 20)) Output [5]: [c_customer_sk#19, c_salutation#20, c_first_name#21, c_last_name#22, c_preferred_cust_flag#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -263,7 +263,7 @@ ColumnarBroadcastExchange (55) Output [3]: [d_date_sk#7, d_year#24, d_dom#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35.sf100/explain.txt index 3000a8b09da..c8b83cdd3ba 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35.sf100/explain.txt @@ -71,7 +71,7 @@ VeloxColumnarToRow (88) Output [3]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -275,7 +275,7 @@ Input [2]: [c_current_cdemo_sk#4, c_current_addr_sk#5] Output [2]: [ca_address_sk#21, ca_state#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (53) FilterExecTransformer @@ -334,7 +334,7 @@ Input [2]: [c_current_cdemo_sk#4, ca_state#22] Output [6]: [cd_demo_sk#25, cd_gender#26, cd_marital_status#27, cd_dep_count#28, cd_dep_employed_count#29, cd_dep_college_count#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (68) FilterExecTransformer @@ -435,7 +435,7 @@ ColumnarBroadcastExchange (93) Output [3]: [d_date_sk#10, d_year#81, d_qoy#82] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_qoy), EqualTo(d_year,2002), LessThan(d_qoy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_qoy), *EqualTo(d_year,2002), *LessThan(d_qoy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (90) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35/explain.txt index d1400dd6864..41f88b253cd 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35/explain.txt @@ -54,7 +54,7 @@ VeloxColumnarToRow (65) Output [3]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -211,7 +211,7 @@ Input [5]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5, exists#2 Output [2]: [ca_address_sk#16, ca_state#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (39) FilterExecTransformer @@ -246,7 +246,7 @@ Input [4]: [c_current_cdemo_sk#4, c_current_addr_sk#5, ca_address_sk#16, ca_stat Output [6]: [cd_demo_sk#18, cd_gender#19, cd_marital_status#20, cd_dep_count#21, cd_dep_employed_count#22, cd_dep_college_count#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -340,7 +340,7 @@ ColumnarBroadcastExchange (70) Output [3]: [d_date_sk#9, d_year#73, d_qoy#74] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_qoy), EqualTo(d_year,2002), LessThan(d_qoy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_qoy), *EqualTo(d_year,2002), *LessThan(d_qoy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (67) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a.sf100/explain.txt index db67fbac8f7..570c238e9ba 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a.sf100/explain.txt @@ -69,7 +69,7 @@ VeloxColumnarToRow (87) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -267,7 +267,7 @@ Input [2]: [c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#20, ca_state#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (52) FilterExecTransformer @@ -326,7 +326,7 @@ Input [2]: [c_current_cdemo_sk#2, ca_state#21] Output [6]: [cd_demo_sk#24, cd_gender#25, cd_marital_status#26, cd_dep_count#27, cd_dep_employed_count#28, cd_dep_college_count#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (67) FilterExecTransformer @@ -427,7 +427,7 @@ ColumnarBroadcastExchange (92) Output [3]: [d_date_sk#8, d_year#80, d_qoy#81] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_qoy), EqualTo(d_year,1999), LessThan(d_qoy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_qoy), *EqualTo(d_year,1999), *LessThan(d_qoy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (89) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a/explain.txt index d3cdb6ee8ce..5e36e57a96f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (61) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -191,7 +191,7 @@ Input [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#16, ca_state#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -226,7 +226,7 @@ Input [4]: [c_current_cdemo_sk#2, c_current_addr_sk#3, ca_address_sk#16, ca_stat Output [6]: [cd_demo_sk#18, cd_gender#19, cd_marital_status#20, cd_dep_count#21, cd_dep_employed_count#22, cd_dep_college_count#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -320,7 +320,7 @@ ColumnarBroadcastExchange (66) Output [3]: [d_date_sk#7, d_year#73, d_qoy#74] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_qoy), EqualTo(d_year,1999), LessThan(d_qoy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_qoy), *EqualTo(d_year,1999), *LessThan(d_qoy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (63) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a.sf100/explain.txt index 15d8c1c6a62..0c4555c2962 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a.sf100/explain.txt @@ -67,7 +67,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -97,7 +97,7 @@ Input [6]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [2]: [s_store_sk#8, s_state#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -136,7 +136,7 @@ Input [5]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [3]: [i_item_sk#10, i_class#11, i_category#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -413,7 +413,7 @@ ColumnarBroadcastExchange (86) Output [2]: [d_date_sk#7, d_year#73] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (83) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a/explain.txt index 0f250c25f0a..b6390f401fb 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a/explain.txt @@ -67,7 +67,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -97,7 +97,7 @@ Input [6]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [3]: [i_item_sk#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -132,7 +132,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [2]: [s_store_sk#11, s_state#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -413,7 +413,7 @@ ColumnarBroadcastExchange (86) Output [2]: [d_date_sk#7, d_year#73] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (83) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47.sf100/explain.txt index 737a3fe7afc..0713cf7f7a7 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47.sf100/explain.txt @@ -75,7 +75,7 @@ Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -105,7 +105,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4, d_ Output [3]: [s_store_sk#9, s_store_name#10, s_company_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_company_name)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_company_name)] ReadSchema: struct (9) FilterExecTransformer @@ -157,7 +157,7 @@ Input [6]: [ss_item_sk#1, ss_sales_price#3, d_year#7, d_moy#8, s_store_name#10, Output [3]: [i_item_sk#13, i_brand#14, i_category#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (22) FilterExecTransformer @@ -439,7 +439,7 @@ ColumnarBroadcastExchange (95) Output [3]: [d_date_sk#6, d_year#7, d_moy#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (93) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47/explain.txt index 484eae5a822..a54decfd420 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47/explain.txt @@ -64,7 +64,7 @@ VeloxColumnarToRow (77) Output [3]: [i_item_sk#1, i_brand#2, i_category#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Output [4]: [ss_item_sk#4, ss_store_sk#5, ss_sales_price#6, ss_sold_date_sk#7] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -130,7 +130,7 @@ Input [8]: [i_brand#2, i_category#3, ss_store_sk#5, ss_sales_price#6, ss_sold_da Output [3]: [s_store_sk#12, s_store_name#13, s_company_name#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_company_name)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_company_name)] ReadSchema: struct (17) FilterExecTransformer @@ -382,7 +382,7 @@ ColumnarBroadcastExchange (81) Output [3]: [d_date_sk#9, d_year#10, d_moy#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (79) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49.sf100/explain.txt index 92adaddac86..f849271f6c4 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49.sf100/explain.txt @@ -109,7 +109,7 @@ Output [6]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4, ws_n Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#6), dynamicpruningexpression(ws_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ws_net_profit), IsNotNull(ws_net_paid), IsNotNull(ws_quantity), GreaterThan(ws_net_profit,1.00), GreaterThan(ws_net_paid,0.00), GreaterThan(ws_quantity,0), IsNotNull(ws_order_number), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_net_profit), *IsNotNull(ws_net_paid), *IsNotNull(ws_quantity), *GreaterThan(ws_net_profit,1.00), *GreaterThan(ws_net_paid,0.00), *GreaterThan(ws_quantity,0), *IsNotNull(ws_order_number), *IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -160,7 +160,7 @@ Input [4]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4] Output [5]: [wr_item_sk#10, wr_order_number#11, wr_return_quantity#12, wr_return_amt#13, wr_returned_date_sk#14] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_return_amt), GreaterThan(wr_return_amt,10000.00), IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_return_amt), *GreaterThan(wr_return_amt,10000.00), *IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (15) FilterExecTransformer @@ -270,7 +270,7 @@ Output [6]: [cs_item_sk#43, cs_order_number#44, cs_quantity#45, cs_net_paid#46, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#48), dynamicpruningexpression(cs_sold_date_sk#48 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(cs_net_profit), IsNotNull(cs_net_paid), IsNotNull(cs_quantity), GreaterThan(cs_net_profit,1.00), GreaterThan(cs_net_paid,0.00), GreaterThan(cs_quantity,0), IsNotNull(cs_order_number), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_net_profit), *IsNotNull(cs_net_paid), *IsNotNull(cs_quantity), *GreaterThan(cs_net_profit,1.00), *GreaterThan(cs_net_paid,0.00), *GreaterThan(cs_quantity,0), *IsNotNull(cs_order_number), *IsNotNull(cs_item_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -321,7 +321,7 @@ Input [4]: [cs_item_sk#43, cs_order_number#44, cs_quantity#45, cs_net_paid#46] Output [5]: [cr_item_sk#51, cr_order_number#52, cr_return_quantity#53, cr_return_amount#54, cr_returned_date_sk#55] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_return_amount), GreaterThan(cr_return_amount,10000.00), IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_return_amount), *GreaterThan(cr_return_amount,10000.00), *IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (54) FilterExecTransformer @@ -431,7 +431,7 @@ Output [6]: [ss_item_sk#84, ss_ticket_number#85, ss_quantity#86, ss_net_paid#87, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#89), dynamicpruningexpression(ss_sold_date_sk#89 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_net_profit), IsNotNull(ss_net_paid), IsNotNull(ss_quantity), GreaterThan(ss_net_profit,1.00), GreaterThan(ss_net_paid,0.00), GreaterThan(ss_quantity,0), IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_net_profit), *IsNotNull(ss_net_paid), *IsNotNull(ss_quantity), *GreaterThan(ss_net_profit,1.00), *GreaterThan(ss_net_paid,0.00), *GreaterThan(ss_quantity,0), *IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -482,7 +482,7 @@ Input [4]: [ss_item_sk#84, ss_ticket_number#85, ss_quantity#86, ss_net_paid#87] Output [5]: [sr_item_sk#92, sr_ticket_number#93, sr_return_quantity#94, sr_return_amt#95, sr_returned_date_sk#96] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_return_amt), GreaterThan(sr_return_amt,10000.00), IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_return_amt), *GreaterThan(sr_return_amt,10000.00), *IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (93) FilterExecTransformer @@ -655,7 +655,7 @@ ColumnarBroadcastExchange (136) Output [3]: [d_date_sk#8, d_year#126, d_moy#127] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,12), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,12), *IsNotNull(d_date_sk)] ReadSchema: struct (133) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49/explain.txt index 2fef2d9abfb..9018bda5bd3 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49/explain.txt @@ -97,7 +97,7 @@ Output [6]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4, ws_n Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#6), dynamicpruningexpression(ws_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ws_net_profit), IsNotNull(ws_net_paid), IsNotNull(ws_quantity), GreaterThan(ws_net_profit,1.00), GreaterThan(ws_net_paid,0.00), GreaterThan(ws_quantity,0), IsNotNull(ws_order_number), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_net_profit), *IsNotNull(ws_net_paid), *IsNotNull(ws_quantity), *GreaterThan(ws_net_profit,1.00), *GreaterThan(ws_net_paid,0.00), *GreaterThan(ws_quantity,0), *IsNotNull(ws_order_number), *IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -126,7 +126,7 @@ Input [5]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4, ws_so Output [5]: [wr_item_sk#8, wr_order_number#9, wr_return_quantity#10, wr_return_amt#11, wr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_return_amt), GreaterThan(wr_return_amt,10000.00), IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_return_amt), *GreaterThan(wr_return_amt,10000.00), *IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -238,7 +238,7 @@ Output [6]: [cs_item_sk#41, cs_order_number#42, cs_quantity#43, cs_net_paid#44, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#46), dynamicpruningexpression(cs_sold_date_sk#46 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(cs_net_profit), IsNotNull(cs_net_paid), IsNotNull(cs_quantity), GreaterThan(cs_net_profit,1.00), GreaterThan(cs_net_paid,0.00), GreaterThan(cs_quantity,0), IsNotNull(cs_order_number), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_net_profit), *IsNotNull(cs_net_paid), *IsNotNull(cs_quantity), *GreaterThan(cs_net_profit,1.00), *GreaterThan(cs_net_paid,0.00), *GreaterThan(cs_quantity,0), *IsNotNull(cs_order_number), *IsNotNull(cs_item_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -267,7 +267,7 @@ Input [5]: [cs_item_sk#41, cs_order_number#42, cs_quantity#43, cs_net_paid#44, c Output [5]: [cr_item_sk#47, cr_order_number#48, cr_return_quantity#49, cr_return_amount#50, cr_returned_date_sk#51] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_return_amount), GreaterThan(cr_return_amount,10000.00), IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_return_amount), *GreaterThan(cr_return_amount,10000.00), *IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -379,7 +379,7 @@ Output [6]: [ss_item_sk#80, ss_ticket_number#81, ss_quantity#82, ss_net_paid#83, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#85), dynamicpruningexpression(ss_sold_date_sk#85 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_net_profit), IsNotNull(ss_net_paid), IsNotNull(ss_quantity), GreaterThan(ss_net_profit,1.00), GreaterThan(ss_net_paid,0.00), GreaterThan(ss_quantity,0), IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_net_profit), *IsNotNull(ss_net_paid), *IsNotNull(ss_quantity), *GreaterThan(ss_net_profit,1.00), *GreaterThan(ss_net_paid,0.00), *GreaterThan(ss_quantity,0), *IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk)] ReadSchema: struct (68) FilterExecTransformer @@ -408,7 +408,7 @@ Input [5]: [ss_item_sk#80, ss_ticket_number#81, ss_quantity#82, ss_net_paid#83, Output [5]: [sr_item_sk#86, sr_ticket_number#87, sr_return_quantity#88, sr_return_amt#89, sr_returned_date_sk#90] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_return_amt), GreaterThan(sr_return_amt,10000.00), IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_return_amt), *GreaterThan(sr_return_amt,10000.00), *IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (75) FilterExecTransformer @@ -583,7 +583,7 @@ ColumnarBroadcastExchange (118) Output [3]: [d_date_sk#13, d_year#120, d_moy#121] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,12), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,12), *IsNotNull(d_date_sk)] ReadSchema: struct (115) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a.sf100/explain.txt index 07d909db057..540dae34a0b 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a.sf100/explain.txt @@ -99,7 +99,7 @@ Output [3]: [ws_item_sk#1, ws_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -291,7 +291,7 @@ Output [3]: [ss_item_sk#26, ss_sales_price#27, ss_sold_date_sk#28] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#28), dynamicpruningexpression(ss_sold_date_sk#28 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -583,7 +583,7 @@ ColumnarBroadcastExchange (126) Output [3]: [d_date_sk#5, d_date#6, d_month_seq#65] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (123) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a/explain.txt index e2ceb364af5..bc38486bd46 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a/explain.txt @@ -103,7 +103,7 @@ Output [3]: [ws_item_sk#1, ws_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -303,7 +303,7 @@ Output [3]: [ss_item_sk#29, ss_sales_price#30, ss_sold_date_sk#31] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#31), dynamicpruningexpression(ss_sold_date_sk#31 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (52) FilterExecTransformer @@ -617,7 +617,7 @@ ColumnarBroadcastExchange (132) Output [3]: [d_date_sk#5, d_date#6, d_month_seq#71] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (129) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57.sf100/explain.txt index 9333588fedd..74c402386ac 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57.sf100/explain.txt @@ -75,7 +75,7 @@ Output [4]: [cs_call_center_sk#1, cs_item_sk#2, cs_sales_price#3, cs_sold_date_s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#4), dynamicpruningexpression(cs_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_call_center_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_call_center_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -105,7 +105,7 @@ Input [7]: [cs_call_center_sk#1, cs_item_sk#2, cs_sales_price#3, cs_sold_date_sk Output [2]: [cc_call_center_sk#9, cc_name#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk), IsNotNull(cc_name)] +PushedFilters: [*IsNotNull(cc_call_center_sk), *IsNotNull(cc_name)] ReadSchema: struct (9) FilterExecTransformer @@ -157,7 +157,7 @@ Input [5]: [cs_item_sk#2, cs_sales_price#3, d_year#7, d_moy#8, cc_name#10] Output [3]: [i_item_sk#12, i_brand#13, i_category#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (22) FilterExecTransformer @@ -439,7 +439,7 @@ ColumnarBroadcastExchange (95) Output [3]: [d_date_sk#6, d_year#7, d_moy#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (93) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57/explain.txt index 254c229d7a7..61d44ae12f0 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57/explain.txt @@ -64,7 +64,7 @@ VeloxColumnarToRow (77) Output [3]: [i_item_sk#1, i_brand#2, i_category#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Output [4]: [cs_call_center_sk#4, cs_item_sk#5, cs_sales_price#6, cs_sold_date_s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#7), dynamicpruningexpression(cs_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_call_center_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_call_center_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -130,7 +130,7 @@ Input [8]: [i_brand#2, i_category#3, cs_call_center_sk#4, cs_sales_price#6, cs_s Output [2]: [cc_call_center_sk#12, cc_name#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk), IsNotNull(cc_name)] +PushedFilters: [*IsNotNull(cc_call_center_sk), *IsNotNull(cc_name)] ReadSchema: struct (17) FilterExecTransformer @@ -382,7 +382,7 @@ ColumnarBroadcastExchange (81) Output [3]: [d_date_sk#9, d_year#10, d_moy#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (79) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a.sf100/explain.txt index 54212c3b236..a0fcb8f399f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a.sf100/explain.txt @@ -127,7 +127,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -147,7 +147,7 @@ Output [4]: [sr_store_sk#12, sr_return_amt#13, sr_net_loss#14, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#15), dynamicpruningexpression(sr_returned_date_sk#15 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -175,7 +175,7 @@ Input [6]: [store_sk#6, date_sk#7, sales_price#8, profit#9, return_amt#10, net_l Output [2]: [s_store_sk#22, s_store_id#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -273,7 +273,7 @@ Output [4]: [cs_catalog_page_sk#47, cs_ext_sales_price#48, cs_net_profit#49, cs_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#50), dynamicpruningexpression(cs_sold_date_sk#50 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_catalog_page_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -293,7 +293,7 @@ Output [4]: [cr_catalog_page_sk#57, cr_return_amount#58, cr_net_loss#59, cr_retu Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#60), dynamicpruningexpression(cr_returned_date_sk#60 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cr_catalog_page_sk)] +PushedFilters: [*IsNotNull(cr_catalog_page_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -321,7 +321,7 @@ Input [6]: [page_sk#51, date_sk#52, sales_price#53, profit#54, return_amt#55, ne Output [2]: [cp_catalog_page_sk#67, cp_catalog_page_id#68] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -419,7 +419,7 @@ Output [4]: [ws_web_site_sk#92, ws_ext_sales_price#93, ws_net_profit#94, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#95), dynamicpruningexpression(ws_sold_date_sk#95 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -466,7 +466,7 @@ Input [5]: [wr_item_sk#102, wr_order_number#103, wr_return_amt#104, wr_net_loss# Output [4]: [ws_item_sk#108, ws_web_site_sk#109, ws_order_number#110, ws_sold_date_sk#111] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_order_number), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_order_number), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (81) FilterExecTransformer @@ -521,7 +521,7 @@ Input [6]: [wsr_web_site_sk#96, date_sk#97, sales_price#98, profit#99, return_am Output [2]: [web_site_sk#119, web_site_id#120] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (95) FilterExecTransformer @@ -832,7 +832,7 @@ ColumnarBroadcastExchange (171) Output [2]: [d_date_sk#24, d_date#220] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1998-08-04), LessThanOrEqual(d_date,1998-08-18), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1998-08-04), *LessThanOrEqual(d_date,1998-08-18), *IsNotNull(d_date_sk)] ReadSchema: struct (168) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a/explain.txt index 41a7954d9ad..cc91f432031 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a/explain.txt @@ -122,7 +122,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -142,7 +142,7 @@ Output [4]: [sr_store_sk#12, sr_return_amt#13, sr_net_loss#14, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#15), dynamicpruningexpression(sr_returned_date_sk#15 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -189,7 +189,7 @@ Input [7]: [store_sk#6, date_sk#7, sales_price#8, profit#9, return_amt#10, net_l Output [2]: [s_store_sk#23, s_store_id#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -268,7 +268,7 @@ Output [4]: [cs_catalog_page_sk#47, cs_ext_sales_price#48, cs_net_profit#49, cs_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#50), dynamicpruningexpression(cs_sold_date_sk#50 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_catalog_page_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -288,7 +288,7 @@ Output [4]: [cr_catalog_page_sk#57, cr_return_amount#58, cr_net_loss#59, cr_retu Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#60), dynamicpruningexpression(cr_returned_date_sk#60 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cr_catalog_page_sk)] +PushedFilters: [*IsNotNull(cr_catalog_page_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -335,7 +335,7 @@ Input [7]: [page_sk#51, date_sk#52, sales_price#53, profit#54, return_amt#55, ne Output [2]: [cp_catalog_page_sk#68, cp_catalog_page_id#69] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (52) FilterExecTransformer @@ -414,7 +414,7 @@ Output [4]: [ws_web_site_sk#92, ws_ext_sales_price#93, ws_net_profit#94, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#95), dynamicpruningexpression(ws_sold_date_sk#95 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -454,7 +454,7 @@ Input [5]: [wr_item_sk#102, wr_order_number#103, wr_return_amt#104, wr_net_loss# Output [4]: [ws_item_sk#107, ws_web_site_sk#108, ws_order_number#109, ws_sold_date_sk#110] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_order_number), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_order_number), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -511,7 +511,7 @@ Input [7]: [wsr_web_site_sk#96, date_sk#97, sales_price#98, profit#99, return_am Output [2]: [web_site_sk#118, web_site_id#119] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (93) FilterExecTransformer @@ -803,7 +803,7 @@ ColumnarBroadcastExchange (164) Output [2]: [d_date_sk#22, d_date#218] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1998-08-04), LessThanOrEqual(d_date,1998-08-18), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1998-08-04), *LessThanOrEqual(d_date,1998-08-18), *IsNotNull(d_date_sk)] ReadSchema: struct (161) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6.sf100/explain.txt index 6c0c272e0d6..0e6831bbb97 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6.sf100/explain.txt @@ -63,7 +63,7 @@ VeloxColumnarToRow (76) Output [3]: [i_item_sk#1, i_current_price#2, i_category#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), IsNotNull(i_category), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *IsNotNull(i_category), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Arguments: ((isnotnull(i_current_price#2) AND isnotnull(i_category#3)) AND isnot Output [2]: [i_current_price#4, i_category#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category)] +PushedFilters: [*IsNotNull(i_category)] ReadSchema: struct (4) FilterExecTransformer @@ -171,7 +171,7 @@ Output [3]: [ss_item_sk#14, ss_customer_sk#15, ss_sold_date_sk#16] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#16), dynamicpruningexpression(ss_sold_date_sk#16 IN dynamicpruning#17)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -228,7 +228,7 @@ Input [1]: [ss_customer_sk#15] Output [2]: [ca_address_sk#20, ca_state#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -260,7 +260,7 @@ Input [2]: [ca_address_sk#20, ca_state#21] Output [2]: [c_customer_sk#23, c_current_addr_sk#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_customer_sk)] ReadSchema: struct (49) FilterExecTransformer @@ -388,7 +388,7 @@ ColumnarBroadcastExchange (81) Output [2]: [d_date_sk#18, d_month_seq#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), EqualTo(d_month_seq,ScalarSubquery#34), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *EqualTo(d_month_seq,ScalarSubquery#34), *IsNotNull(d_date_sk)] ReadSchema: struct (78) FilterExecTransformer @@ -426,7 +426,7 @@ VeloxColumnarToRow (94) Output [3]: [d_month_seq#35, d_year#36, d_moy#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,1)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,1)] ReadSchema: struct (83) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6/explain.txt index 61d2509f7ac..1982afc567c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6/explain.txt @@ -53,7 +53,7 @@ VeloxColumnarToRow (62) Output [2]: [ca_address_sk#1, ca_state#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -64,7 +64,7 @@ Arguments: isnotnull(ca_address_sk#1) Output [2]: [c_customer_sk#3, c_current_addr_sk#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -100,7 +100,7 @@ Output [3]: [ss_item_sk#5, ss_customer_sk#6, ss_sold_date_sk#7] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -154,7 +154,7 @@ Input [4]: [ca_state#2, ss_item_sk#5, ss_sold_date_sk#7, d_date_sk#9] Output [3]: [i_item_sk#10, i_current_price#11, i_category#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), IsNotNull(i_category), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *IsNotNull(i_category), *IsNotNull(i_item_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -165,7 +165,7 @@ Arguments: ((isnotnull(i_current_price#11) AND isnotnull(i_category#12)) AND isn Output [2]: [i_current_price#13, i_category#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category)] +PushedFilters: [*IsNotNull(i_category)] ReadSchema: struct (27) FilterExecTransformer @@ -330,7 +330,7 @@ ColumnarBroadcastExchange (67) Output [2]: [d_date_sk#9, d_month_seq#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), EqualTo(d_month_seq,ScalarSubquery#30), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *EqualTo(d_month_seq,ScalarSubquery#30), *IsNotNull(d_date_sk)] ReadSchema: struct (64) FilterExecTransformer @@ -368,7 +368,7 @@ VeloxColumnarToRow (80) Output [3]: [d_month_seq#31, d_year#32, d_moy#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,1)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,1)] ReadSchema: struct (69) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64.sf100/explain.txt index 8c519e9b938..68442efc7a5 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64.sf100/explain.txt @@ -263,7 +263,7 @@ Output [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_a Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#12), dynamicpruningexpression(ss_sold_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -295,7 +295,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [sr_item_sk#16, sr_ticket_number#17, sr_returned_date_sk#18] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (10) FilterExecTransformer @@ -337,7 +337,7 @@ Input [14]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [4]: [cs_item_sk#20, cs_order_number#21, cs_ext_list_price#22, cs_sold_date_sk#23] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_order_number)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_order_number)] ReadSchema: struct (20) FilterExecTransformer @@ -369,7 +369,7 @@ Input [3]: [cs_item_sk#20, cs_order_number#21, cs_ext_list_price#22] Output [6]: [cr_item_sk#25, cr_order_number#26, cr_refunded_cash#27, cr_reversed_charge#28, cr_store_credit#29, cr_returned_date_sk#30] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (28) FilterExecTransformer @@ -501,7 +501,7 @@ Input [13]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [s_store_sk#47, s_store_name#48, s_zip#49] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_zip)] ReadSchema: struct (60) FilterExecTransformer @@ -553,7 +553,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [6]: [c_customer_sk#51, c_current_cdemo_sk#52, c_current_hdemo_sk#53, c_current_addr_sk#54, c_first_shipto_date_sk#55, c_first_sales_date_sk#56] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_first_sales_date_sk), IsNotNull(c_first_shipto_date_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_first_sales_date_sk), *IsNotNull(c_first_shipto_date_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (73) FilterExecTransformer @@ -595,7 +595,7 @@ Input [18]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [2]: [d_date_sk#58, d_year#59] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (83) FilterExecTransformer @@ -666,7 +666,7 @@ Input [16]: [ss_item_sk#1, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_ Output [2]: [cd_demo_sk#63, cd_marital_status#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status)] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status)] ReadSchema: struct (101) FilterExecTransformer @@ -744,7 +744,7 @@ Input [18]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [1]: [p_promo_sk#69] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (121) FilterExecTransformer @@ -779,7 +779,7 @@ Input [15]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [2]: [hd_demo_sk#70, hd_income_band_sk#71] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)] +PushedFilters: [*IsNotNull(hd_demo_sk), *IsNotNull(hd_income_band_sk)] ReadSchema: struct (129) FilterExecTransformer @@ -850,7 +850,7 @@ Input [13]: [ss_item_sk#1, ss_addr_sk#5, ss_wholesale_cost#9, ss_list_price#10, Output [5]: [ca_address_sk#75, ca_street_number#76, ca_street_name#77, ca_city#78, ca_zip#79] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (147) FilterExecTransformer @@ -928,7 +928,7 @@ Input [21]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [1]: [ib_income_band_sk#87] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/income_band] -PushedFilters: [IsNotNull(ib_income_band_sk)] +PushedFilters: [*IsNotNull(ib_income_band_sk)] ReadSchema: struct (167) FilterExecTransformer @@ -982,7 +982,7 @@ Input [19]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [4]: [i_item_sk#89, i_current_price#90, i_color#91, i_product_name#92] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), *GreaterThanOrEqual(i_current_price,64.00), *LessThanOrEqual(i_current_price,74.00), *GreaterThanOrEqual(i_current_price,65.00), *LessThanOrEqual(i_current_price,79.00), *IsNotNull(i_item_sk)] ReadSchema: struct (180) FilterExecTransformer @@ -1078,7 +1078,7 @@ Output [12]: [ss_item_sk#127, ss_customer_sk#128, ss_cdemo_sk#129, ss_hdemo_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#138), dynamicpruningexpression(ss_sold_date_sk#138 IN dynamicpruning#139)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (203) FilterExecTransformer @@ -1626,7 +1626,7 @@ VeloxColumnarToRow (355) Output [3]: [i_item_sk#89, i_current_price#90, i_color#91] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), *GreaterThanOrEqual(i_current_price,64.00), *LessThanOrEqual(i_current_price,74.00), *GreaterThanOrEqual(i_current_price,65.00), *LessThanOrEqual(i_current_price,79.00), *IsNotNull(i_item_sk)] ReadSchema: struct (345) FilterExecTransformer @@ -1685,7 +1685,7 @@ ColumnarBroadcastExchange (359) Output [2]: [d_date_sk#45, d_year#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (357) FilterExecTransformer @@ -1724,7 +1724,7 @@ ColumnarBroadcastExchange (363) Output [2]: [d_date_sk#144, d_year#145] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (361) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64/explain.txt index 35ca65a0d45..7c97132ee73 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64/explain.txt @@ -219,7 +219,7 @@ Output [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_a Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#12), dynamicpruningexpression(ss_sold_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -244,7 +244,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [sr_item_sk#14, sr_ticket_number#15, sr_returned_date_sk#16] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (8) FilterExecTransformer @@ -286,7 +286,7 @@ Input [11]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [4]: [cs_item_sk#18, cs_order_number#19, cs_ext_list_price#20, cs_sold_date_sk#21] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_order_number)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_order_number)] ReadSchema: struct (18) FilterExecTransformer @@ -318,7 +318,7 @@ Input [3]: [cs_item_sk#18, cs_order_number#19, cs_ext_list_price#20] Output [6]: [cr_item_sk#23, cr_order_number#24, cr_refunded_cash#25, cr_reversed_charge#26, cr_store_credit#27, cr_returned_date_sk#28] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (26) FilterExecTransformer @@ -436,7 +436,7 @@ Input [13]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [s_store_sk#45, s_store_name#46, s_zip#47] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_zip)] ReadSchema: struct (54) FilterExecTransformer @@ -471,7 +471,7 @@ Input [14]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [6]: [c_customer_sk#48, c_current_cdemo_sk#49, c_current_hdemo_sk#50, c_current_addr_sk#51, c_first_shipto_date_sk#52, c_first_sales_date_sk#53] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_first_sales_date_sk), IsNotNull(c_first_shipto_date_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_first_sales_date_sk), *IsNotNull(c_first_shipto_date_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -506,7 +506,7 @@ Input [18]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [2]: [d_date_sk#54, d_year#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -560,7 +560,7 @@ Input [18]: [ss_item_sk#1, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_ Output [2]: [cd_demo_sk#58, cd_marital_status#59] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status)] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status)] ReadSchema: struct (83) FilterExecTransformer @@ -614,7 +614,7 @@ Input [18]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [1]: [p_promo_sk#62] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (96) FilterExecTransformer @@ -649,7 +649,7 @@ Input [15]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [2]: [hd_demo_sk#63, hd_income_band_sk#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)] +PushedFilters: [*IsNotNull(hd_demo_sk), *IsNotNull(hd_income_band_sk)] ReadSchema: struct (104) FilterExecTransformer @@ -703,7 +703,7 @@ Input [15]: [ss_item_sk#1, ss_addr_sk#5, ss_wholesale_cost#9, ss_list_price#10, Output [5]: [ca_address_sk#67, ca_street_number#68, ca_street_name#69, ca_city#70, ca_zip#71] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (117) FilterExecTransformer @@ -757,7 +757,7 @@ Input [21]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [1]: [ib_income_band_sk#77] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/income_band] -PushedFilters: [IsNotNull(ib_income_band_sk)] +PushedFilters: [*IsNotNull(ib_income_band_sk)] ReadSchema: struct (130) FilterExecTransformer @@ -811,7 +811,7 @@ Input [19]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [4]: [i_item_sk#79, i_current_price#80, i_color#81, i_product_name#82] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), *GreaterThanOrEqual(i_current_price,64.00), *LessThanOrEqual(i_current_price,74.00), *GreaterThanOrEqual(i_current_price,65.00), *LessThanOrEqual(i_current_price,79.00), *IsNotNull(i_item_sk)] ReadSchema: struct (143) FilterExecTransformer @@ -879,7 +879,7 @@ Output [12]: [ss_item_sk#108, ss_customer_sk#109, ss_cdemo_sk#110, ss_hdemo_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#119), dynamicpruningexpression(ss_sold_date_sk#119 IN dynamicpruning#120)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (159) FilterExecTransformer @@ -904,7 +904,7 @@ Input [12]: [ss_item_sk#108, ss_customer_sk#109, ss_cdemo_sk#110, ss_hdemo_sk#11 Output [3]: [sr_item_sk#121, sr_ticket_number#122, sr_returned_date_sk#123] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (165) FilterExecTransformer @@ -1343,7 +1343,7 @@ ColumnarBroadcastExchange (278) Output [2]: [d_date_sk#43, d_year#44] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (276) FilterExecTransformer @@ -1368,7 +1368,7 @@ ColumnarBroadcastExchange (282) Output [2]: [d_date_sk#135, d_year#136] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (280) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a.sf100/explain.txt index 5ccbe0a1e53..cacc04e5452 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a.sf100/explain.txt @@ -132,7 +132,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -162,7 +162,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_sol Output [2]: [s_store_sk#11, s_store_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -214,7 +214,7 @@ Input [7]: [ss_item_sk#1, ss_quantity#3, ss_sales_price#4, d_year#8, d_moy#9, d_ Output [5]: [i_item_sk#14, i_brand#15, i_class#16, i_category#17, i_product_name#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -845,7 +845,7 @@ ColumnarBroadcastExchange (175) Output [5]: [d_date_sk#7, d_month_seq#229, d_year#8, d_moy#9, d_qoy#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (172) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a/explain.txt index c41d9f58bde..f32f786899f 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a/explain.txt @@ -127,7 +127,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -157,7 +157,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_sol Output [2]: [s_store_sk#11, s_store_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -192,7 +192,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, d_year Output [5]: [i_item_sk#13, i_brand#14, i_class#15, i_category#16, i_product_name#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -816,7 +816,7 @@ ColumnarBroadcastExchange (168) Output [5]: [d_date_sk#7, d_month_seq#227, d_year#8, d_moy#9, d_qoy#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (165) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a.sf100/explain.txt index 7de409d7d97..1a9844190a1 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a.sf100/explain.txt @@ -87,7 +87,7 @@ Output [3]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -117,7 +117,7 @@ Input [4]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3, d_date_sk#5] Output [3]: [s_store_sk#6, s_county#7, s_state#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -129,7 +129,7 @@ Output [3]: [ss_store_sk#9, ss_net_profit#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (11) FilterExecTransformer @@ -159,7 +159,7 @@ Input [4]: [ss_store_sk#9, ss_net_profit#10, ss_sold_date_sk#11, d_date_sk#12] Output [2]: [s_store_sk#13, s_state#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -539,7 +539,7 @@ ColumnarBroadcastExchange (111) Output [2]: [d_date_sk#5, d_month_seq#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (108) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a/explain.txt index 80239447219..c994f005d1e 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a/explain.txt @@ -87,7 +87,7 @@ Output [3]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -117,7 +117,7 @@ Input [4]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3, d_date_sk#5] Output [3]: [s_store_sk#6, s_county#7, s_state#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -129,7 +129,7 @@ Output [3]: [ss_store_sk#9, ss_net_profit#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (11) FilterExecTransformer @@ -140,7 +140,7 @@ Arguments: isnotnull(ss_store_sk#9) Output [2]: [s_store_sk#12, s_state#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -539,7 +539,7 @@ ColumnarBroadcastExchange (111) Output [2]: [d_date_sk#5, d_month_seq#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (108) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72.sf100/explain.txt index 925b0b2f37b..3b4dde2045c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72.sf100/explain.txt @@ -85,7 +85,7 @@ Output [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#8), dynamicpruningexpression(cs_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_quantity), IsNotNull(cs_item_sk), IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_hdemo_sk), IsNotNull(cs_ship_date_sk)] +PushedFilters: [*IsNotNull(cs_quantity), *IsNotNull(cs_item_sk), *IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_hdemo_sk), *IsNotNull(cs_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Arguments: ((((isnotnull(cs_quantity#7) AND isnotnull(cs_item_sk#4)) AND isnotnu Output [2]: [hd_demo_sk#10, hd_buy_potential#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_buy_potential), EqualTo(hd_buy_potential,1001-5000 ), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_buy_potential), *EqualTo(hd_buy_potential,1001-5000 ), *IsNotNull(hd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -135,7 +135,7 @@ Input [9]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_s Output [2]: [cd_demo_sk#12, cd_marital_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_marital_status), EqualTo(cd_marital_status,M), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_marital_status), *EqualTo(cd_marital_status,M), *IsNotNull(cd_demo_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -174,7 +174,7 @@ Input [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#4, cs_promo_sk#5, Output [2]: [d_date_sk#14, d_date#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *IsNotNull(d_date_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -226,7 +226,7 @@ Input [6]: [cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_quantity#7, cs_so Output [2]: [i_item_sk#17, i_item_desc#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -305,7 +305,7 @@ Output [4]: [inv_item_sk#25, inv_warehouse_sk#26, inv_quantity_on_hand#27, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#28), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (55) FilterExecTransformer @@ -316,7 +316,7 @@ Arguments: ((isnotnull(inv_quantity_on_hand#27) AND isnotnull(inv_item_sk#25)) A Output [2]: [w_warehouse_sk#29, w_warehouse_name#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (57) FilterExecTransformer @@ -378,7 +378,7 @@ Input [11]: [cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_quantity#7, i_it Output [1]: [p_promo_sk#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -430,7 +430,7 @@ Input [5]: [cs_item_sk#4, cs_order_number#6, w_warehouse_name#30, i_item_desc#18 Output [3]: [cr_item_sk#34, cr_order_number#35, cr_returned_date_sk#36] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (85) FilterExecTransformer @@ -537,7 +537,7 @@ ColumnarBroadcastExchange (118) Output [4]: [d_date_sk#20, d_date#21, d_week_seq#22, d_year#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk), IsNotNull(d_week_seq), IsNotNull(d_date)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk), *IsNotNull(d_week_seq), *IsNotNull(d_date)] ReadSchema: struct (107) FilterExecTransformer @@ -566,7 +566,7 @@ Input [3]: [d_date_sk#20, d_date#21, d_week_seq#22] Output [2]: [d_date_sk#23, d_week_seq#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *IsNotNull(d_date_sk)] ReadSchema: struct (114) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72/explain.txt index 7751453a2a9..693046f516d 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72/explain.txt @@ -82,7 +82,7 @@ Output [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#8), dynamicpruningexpression(cs_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_quantity), IsNotNull(cs_item_sk), IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_hdemo_sk), IsNotNull(cs_ship_date_sk)] +PushedFilters: [*IsNotNull(cs_quantity), *IsNotNull(cs_item_sk), *IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_hdemo_sk), *IsNotNull(cs_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -94,7 +94,7 @@ Output [4]: [inv_item_sk#10, inv_warehouse_sk#11, inv_quantity_on_hand#12, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#13)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -129,7 +129,7 @@ Input [12]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [w_warehouse_sk#14, w_warehouse_name#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -164,7 +164,7 @@ Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [i_item_sk#16, i_item_desc#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -199,7 +199,7 @@ Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [cd_demo_sk#18, cd_marital_status#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_marital_status), EqualTo(cd_marital_status,M), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_marital_status), *EqualTo(cd_marital_status,M), *IsNotNull(cd_demo_sk)] ReadSchema: struct (28) FilterExecTransformer @@ -238,7 +238,7 @@ Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [hd_demo_sk#20, hd_buy_potential#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_buy_potential), EqualTo(hd_buy_potential,1001-5000 ), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_buy_potential), *EqualTo(hd_buy_potential,1001-5000 ), *IsNotNull(hd_demo_sk)] ReadSchema: struct (37) FilterExecTransformer @@ -296,7 +296,7 @@ Input [11]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, Output [2]: [d_date_sk#25, d_week_seq#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *IsNotNull(d_date_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -331,7 +331,7 @@ Input [11]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, Output [2]: [d_date_sk#27, d_date#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *IsNotNull(d_date_sk)] ReadSchema: struct (59) FilterExecTransformer @@ -366,7 +366,7 @@ Input [10]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, Output [1]: [p_promo_sk#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (67) FilterExecTransformer @@ -418,7 +418,7 @@ Input [5]: [cs_item_sk#4, cs_order_number#6, w_warehouse_name#15, i_item_desc#17 Output [3]: [cr_item_sk#31, cr_order_number#32, cr_returned_date_sk#33] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (80) FilterExecTransformer @@ -519,7 +519,7 @@ ColumnarBroadcastExchange (105) Output [4]: [d_date_sk#22, d_date#23, d_week_seq#24, d_year#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk), IsNotNull(d_week_seq), IsNotNull(d_date)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk), *IsNotNull(d_week_seq), *IsNotNull(d_date)] ReadSchema: struct (102) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74.sf100/explain.txt index 12972c43188..a26128cb08e 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74.sf100/explain.txt @@ -113,7 +113,7 @@ Output [3]: [ss_customer_sk#1, ss_net_paid#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -160,7 +160,7 @@ Input [3]: [ss_customer_sk#1, ss_net_paid#2, d_year#6] Output [4]: [c_customer_sk#8, c_customer_id#9, c_first_name#10, c_last_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (14) FilterExecTransformer @@ -267,7 +267,7 @@ Output [3]: [ss_customer_sk#21, ss_net_paid#22, ss_sold_date_sk#23] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#23), dynamicpruningexpression(ss_sold_date_sk#23 IN dynamicpruning#24)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -396,7 +396,7 @@ Output [3]: [ws_bill_customer_sk#41, ws_net_paid#42, ws_sold_date_sk#43] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#43), dynamicpruningexpression(ws_sold_date_sk#43 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -537,7 +537,7 @@ Output [3]: [ws_bill_customer_sk#59, ws_net_paid#60, ws_sold_date_sk#61] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#61), dynamicpruningexpression(ws_sold_date_sk#61 IN dynamicpruning#24)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (107) FilterExecTransformer @@ -688,7 +688,7 @@ ColumnarBroadcastExchange (145) Output [2]: [d_date_sk#5, d_year#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (143) FilterExecTransformer @@ -713,7 +713,7 @@ ColumnarBroadcastExchange (149) Output [2]: [d_date_sk#25, d_year#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (147) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74/explain.txt index 3acdbe814cb..dd0a91cfed1 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74/explain.txt @@ -96,7 +96,7 @@ VeloxColumnarToRow (118) Output [4]: [c_customer_sk#1, c_customer_id#2, c_first_name#3, c_last_name#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (2) FilterExecTransformer @@ -108,7 +108,7 @@ Output [3]: [ss_customer_sk#5, ss_net_paid#6, ss_sold_date_sk#7] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -205,7 +205,7 @@ Arguments: (isnotnull(year_total#17) AND (year_total#17 > 0.00)) Output [4]: [c_customer_sk#18, c_customer_id#19, c_first_name#20, c_last_name#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (27) FilterExecTransformer @@ -217,7 +217,7 @@ Output [3]: [ss_customer_sk#22, ss_net_paid#23, ss_sold_date_sk#24] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#24), dynamicpruningexpression(ss_sold_date_sk#24 IN dynamicpruning#25)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -330,7 +330,7 @@ Join condition: None Output [4]: [c_customer_sk#36, c_customer_id#37, c_first_name#38, c_last_name#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (56) FilterExecTransformer @@ -342,7 +342,7 @@ Output [3]: [ws_bill_customer_sk#40, ws_net_paid#41, ws_sold_date_sk#42] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#42), dynamicpruningexpression(ws_sold_date_sk#42 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (58) FilterExecTransformer @@ -463,7 +463,7 @@ Input [8]: [customer_id#16, year_total#17, customer_id#32, customer_first_name#3 Output [4]: [c_customer_sk#52, c_customer_id#53, c_first_name#54, c_last_name#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (87) FilterExecTransformer @@ -475,7 +475,7 @@ Output [3]: [ws_bill_customer_sk#56, ws_net_paid#57, ws_sold_date_sk#58] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#58), dynamicpruningexpression(ws_sold_date_sk#58 IN dynamicpruning#25)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (89) FilterExecTransformer @@ -611,7 +611,7 @@ ColumnarBroadcastExchange (122) Output [2]: [d_date_sk#9, d_year#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (120) FilterExecTransformer @@ -636,7 +636,7 @@ ColumnarBroadcastExchange (126) Output [2]: [d_date_sk#26, d_year#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (124) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75.sf100/explain.txt index 5c39ada22fc..2c2c8b64e0c 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75.sf100/explain.txt @@ -169,7 +169,7 @@ Output [5]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -180,7 +180,7 @@ Arguments: isnotnull(cs_item_sk#1) Output [6]: [i_item_sk#7, i_brand_id#8, i_class_id#9, i_category_id#10, i_category#11, i_manufact_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Books ), IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id), IsNotNull(i_manufact_id)] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Books ), *IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id), *IsNotNull(i_manufact_id)] ReadSchema: struct (4) FilterExecTransformer @@ -255,7 +255,7 @@ Input [9]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price#4 Output [5]: [cr_item_sk#16, cr_order_number#17, cr_return_quantity#18, cr_return_amount#19, cr_returned_date_sk#20] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -302,7 +302,7 @@ Output [5]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pr Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#28), dynamicpruningexpression(ss_sold_date_sk#28 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -368,7 +368,7 @@ Input [9]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pri Output [5]: [sr_item_sk#37, sr_ticket_number#38, sr_return_quantity#39, sr_return_amt#40, sr_returned_date_sk#41] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -415,7 +415,7 @@ Output [5]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#49), dynamicpruningexpression(ws_sold_date_sk#49 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -481,7 +481,7 @@ Input [9]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pric Output [5]: [wr_item_sk#58, wr_order_number#59, wr_return_quantity#60, wr_return_amt#61, wr_returned_date_sk#62] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -640,7 +640,7 @@ Output [5]: [cs_item_sk#78, cs_order_number#79, cs_quantity#80, cs_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#82), dynamicpruningexpression(cs_sold_date_sk#82 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (118) FilterExecTransformer @@ -730,7 +730,7 @@ Output [5]: [ss_item_sk#98, ss_ticket_number#99, ss_quantity#100, ss_ext_sales_p Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#102), dynamicpruningexpression(ss_sold_date_sk#102 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (141) FilterExecTransformer @@ -820,7 +820,7 @@ Output [5]: [ws_item_sk#117, ws_order_number#118, ws_quantity#119, ws_ext_sales_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#121), dynamicpruningexpression(ws_sold_date_sk#121 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (164) FilterExecTransformer @@ -1050,7 +1050,7 @@ ColumnarBroadcastExchange (222) Output [2]: [d_date_sk#13, d_year#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (220) FilterExecTransformer @@ -1079,7 +1079,7 @@ ColumnarBroadcastExchange (226) Output [2]: [d_date_sk#89, d_year#90] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (224) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75/explain.txt index 9cf2cbca9f6..c2e30f40202 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75/explain.txt @@ -169,7 +169,7 @@ Output [5]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -180,7 +180,7 @@ Arguments: isnotnull(cs_item_sk#1) Output [6]: [i_item_sk#7, i_brand_id#8, i_class_id#9, i_category_id#10, i_category#11, i_manufact_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Books ), IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id), IsNotNull(i_manufact_id)] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Books ), *IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id), *IsNotNull(i_manufact_id)] ReadSchema: struct (4) FilterExecTransformer @@ -255,7 +255,7 @@ Input [9]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price#4 Output [5]: [cr_item_sk#16, cr_order_number#17, cr_return_quantity#18, cr_return_amount#19, cr_returned_date_sk#20] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -302,7 +302,7 @@ Output [5]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pr Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#28), dynamicpruningexpression(ss_sold_date_sk#28 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -368,7 +368,7 @@ Input [9]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pri Output [5]: [sr_item_sk#37, sr_ticket_number#38, sr_return_quantity#39, sr_return_amt#40, sr_returned_date_sk#41] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -415,7 +415,7 @@ Output [5]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#49), dynamicpruningexpression(ws_sold_date_sk#49 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -481,7 +481,7 @@ Input [9]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pric Output [5]: [wr_item_sk#58, wr_order_number#59, wr_return_quantity#60, wr_return_amt#61, wr_returned_date_sk#62] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -640,7 +640,7 @@ Output [5]: [cs_item_sk#78, cs_order_number#79, cs_quantity#80, cs_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#82), dynamicpruningexpression(cs_sold_date_sk#82 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (118) FilterExecTransformer @@ -730,7 +730,7 @@ Output [5]: [ss_item_sk#98, ss_ticket_number#99, ss_quantity#100, ss_ext_sales_p Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#102), dynamicpruningexpression(ss_sold_date_sk#102 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (141) FilterExecTransformer @@ -820,7 +820,7 @@ Output [5]: [ws_item_sk#117, ws_order_number#118, ws_quantity#119, ws_ext_sales_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#121), dynamicpruningexpression(ws_sold_date_sk#121 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (164) FilterExecTransformer @@ -1050,7 +1050,7 @@ ColumnarBroadcastExchange (222) Output [2]: [d_date_sk#13, d_year#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (220) FilterExecTransformer @@ -1079,7 +1079,7 @@ ColumnarBroadcastExchange (226) Output [2]: [d_date_sk#89, d_year#90] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (224) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a.sf100/explain.txt index e3b59a2600e..2ddd9ddab68 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a.sf100/explain.txt @@ -149,7 +149,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -179,7 +179,7 @@ Input [5]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_s Output [1]: [s_store_sk#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -254,7 +254,7 @@ Output [4]: [sr_store_sk#19, sr_return_amt#20, sr_net_loss#21, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#22), dynamicpruningexpression(sr_returned_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -523,7 +523,7 @@ Output [4]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#76), dynamicpruningexpression(ws_sold_date_sk#76 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_web_page_sk)] ReadSchema: struct (90) FilterExecTransformer @@ -553,7 +553,7 @@ Input [5]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold_ Output [1]: [wp_web_page_sk#78] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_web_page_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -628,7 +628,7 @@ Output [4]: [wr_web_page_sk#90, wr_return_amt#91, wr_net_loss#92, wr_returned_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#93), dynamicpruningexpression(wr_returned_date_sk#93 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(wr_web_page_sk)] +PushedFilters: [*IsNotNull(wr_web_page_sk)] ReadSchema: struct (114) FilterExecTransformer @@ -958,7 +958,7 @@ ColumnarBroadcastExchange (195) Output [2]: [d_date_sk#6, d_date#187] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1998-08-04), LessThanOrEqual(d_date,1998-09-03), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1998-08-04), *LessThanOrEqual(d_date,1998-09-03), *IsNotNull(d_date_sk)] ReadSchema: struct (192) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a/explain.txt index 93ebf152a04..3cbe7756dc5 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a/explain.txt @@ -149,7 +149,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -179,7 +179,7 @@ Input [5]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_s Output [1]: [s_store_sk#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -254,7 +254,7 @@ Output [4]: [sr_store_sk#19, sr_return_amt#20, sr_net_loss#21, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#22), dynamicpruningexpression(sr_returned_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -523,7 +523,7 @@ Output [4]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#76), dynamicpruningexpression(ws_sold_date_sk#76 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_web_page_sk)] ReadSchema: struct (90) FilterExecTransformer @@ -553,7 +553,7 @@ Input [5]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold_ Output [1]: [wp_web_page_sk#78] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_web_page_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -628,7 +628,7 @@ Output [4]: [wr_web_page_sk#90, wr_return_amt#91, wr_net_loss#92, wr_returned_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#93), dynamicpruningexpression(wr_returned_date_sk#93 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(wr_web_page_sk)] +PushedFilters: [*IsNotNull(wr_web_page_sk)] ReadSchema: struct (114) FilterExecTransformer @@ -958,7 +958,7 @@ ColumnarBroadcastExchange (195) Output [2]: [d_date_sk#6, d_date#187] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1998-08-04), LessThanOrEqual(d_date,1998-09-03), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1998-08-04), *LessThanOrEqual(d_date,1998-09-03), *IsNotNull(d_date_sk)] ReadSchema: struct (192) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78.sf100/explain.txt index 667d34ad5b1..ada52ec3902 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78.sf100/explain.txt @@ -92,7 +92,7 @@ Output [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -124,7 +124,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, s Output [3]: [sr_item_sk#10, sr_ticket_number#11, sr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -229,7 +229,7 @@ Output [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#38), dynamicpruningexpression(ws_sold_date_sk#38 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -261,7 +261,7 @@ Input [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quanti Output [3]: [wr_item_sk#40, wr_order_number#41, wr_returned_date_sk#42] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -380,7 +380,7 @@ Output [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#69), dynamicpruningexpression(cs_sold_date_sk#69 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -412,7 +412,7 @@ Input [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quanti Output [3]: [cr_item_sk#71, cr_order_number#72, cr_returned_date_sk#73] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -549,7 +549,7 @@ ColumnarBroadcastExchange (112) Output [2]: [d_date_sk#14, d_year#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (110) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78/explain.txt index bac72c01e53..31e93bcb55b 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78/explain.txt @@ -92,7 +92,7 @@ Output [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -124,7 +124,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, s Output [3]: [sr_item_sk#10, sr_ticket_number#11, sr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -229,7 +229,7 @@ Output [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#38), dynamicpruningexpression(ws_sold_date_sk#38 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -261,7 +261,7 @@ Input [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quanti Output [3]: [wr_item_sk#40, wr_order_number#41, wr_returned_date_sk#42] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -380,7 +380,7 @@ Output [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#69), dynamicpruningexpression(cs_sold_date_sk#69 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -412,7 +412,7 @@ Input [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quanti Output [3]: [cr_item_sk#71, cr_order_number#72, cr_returned_date_sk#73] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -549,7 +549,7 @@ ColumnarBroadcastExchange (112) Output [2]: [d_date_sk#14, d_year#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (110) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a.sf100/explain.txt index 435abd34a18..276af5cbf20 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a.sf100/explain.txt @@ -286,7 +286,7 @@ Output [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -318,7 +318,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_e Output [5]: [sr_item_sk#12, sr_ticket_number#13, sr_return_amt#14, sr_net_loss#15, sr_returned_date_sk#16] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (10) FilterExecTransformer @@ -360,7 +360,7 @@ Input [11]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_ Output [2]: [i_item_sk#18, i_current_price#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThan(i_current_price,50.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThan(i_current_price,50.00), *IsNotNull(i_item_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -399,7 +399,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ext_sales_price#5, ss Output [2]: [p_promo_sk#20, p_channel_tv#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_channel_tv), EqualTo(p_channel_tv,N), IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_channel_tv), *EqualTo(p_channel_tv,N), *IsNotNull(p_promo_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -457,7 +457,7 @@ Input [7]: [ss_store_sk#2, ss_ext_sales_price#5, ss_net_profit#6, ss_sold_date_s Output [2]: [s_store_sk#23, s_store_id#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -536,7 +536,7 @@ Output [7]: [cs_catalog_page_sk#47, cs_item_sk#48, cs_promo_sk#49, cs_order_numb Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#53), dynamicpruningexpression(cs_sold_date_sk#53 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_catalog_page_sk), IsNotNull(cs_item_sk), IsNotNull(cs_promo_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk), *IsNotNull(cs_item_sk), *IsNotNull(cs_promo_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -568,7 +568,7 @@ Input [7]: [cs_catalog_page_sk#47, cs_item_sk#48, cs_promo_sk#49, cs_order_numbe Output [5]: [cr_item_sk#55, cr_order_number#56, cr_return_amount#57, cr_net_loss#58, cr_returned_date_sk#59] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (69) FilterExecTransformer @@ -667,7 +667,7 @@ Input [7]: [cs_catalog_page_sk#47, cs_ext_sales_price#51, cs_net_profit#52, cs_s Output [2]: [cp_catalog_page_sk#64, cp_catalog_page_id#65] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (94) FilterExecTransformer @@ -746,7 +746,7 @@ Output [7]: [ws_item_sk#88, ws_web_site_sk#89, ws_promo_sk#90, ws_order_number#9 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#94), dynamicpruningexpression(ws_sold_date_sk#94 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_web_site_sk), IsNotNull(ws_item_sk), IsNotNull(ws_promo_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk), *IsNotNull(ws_item_sk), *IsNotNull(ws_promo_sk)] ReadSchema: struct (112) FilterExecTransformer @@ -778,7 +778,7 @@ Input [7]: [ws_item_sk#88, ws_web_site_sk#89, ws_promo_sk#90, ws_order_number#91 Output [5]: [wr_item_sk#96, wr_order_number#97, wr_return_amt#98, wr_net_loss#99, wr_returned_date_sk#100] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_item_sk), IsNotNull(wr_order_number)] +PushedFilters: [*IsNotNull(wr_item_sk), *IsNotNull(wr_order_number)] ReadSchema: struct (120) FilterExecTransformer @@ -877,7 +877,7 @@ Input [7]: [ws_web_site_sk#89, ws_ext_sales_price#92, ws_net_profit#93, ws_sold_ Output [2]: [web_site_sk#105, web_site_id#106] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (145) FilterExecTransformer @@ -1056,7 +1056,7 @@ Output [7]: [ws_item_sk#178, ws_web_site_sk#179, ws_promo_sk#180, ws_order_numbe Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#184), dynamicpruningexpression(ws_sold_date_sk#184 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_web_site_sk), IsNotNull(ws_item_sk), IsNotNull(ws_promo_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk), *IsNotNull(ws_item_sk), *IsNotNull(ws_promo_sk)] ReadSchema: struct (188) FilterExecTransformer @@ -1318,7 +1318,7 @@ Output [7]: [ss_item_sk#250, ss_store_sk#251, ss_promo_sk#252, ss_ticket_number# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#256), dynamicpruningexpression(ss_sold_date_sk#256 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (253) FilterExecTransformer @@ -1489,7 +1489,7 @@ Output [7]: [cs_catalog_page_sk#286, cs_item_sk#287, cs_promo_sk#288, cs_order_n Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#292), dynamicpruningexpression(cs_sold_date_sk#292 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_catalog_page_sk), IsNotNull(cs_item_sk), IsNotNull(cs_promo_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk), *IsNotNull(cs_item_sk), *IsNotNull(cs_promo_sk)] ReadSchema: struct (296) FilterExecTransformer @@ -1815,7 +1815,7 @@ VeloxColumnarToRow (384) Output [2]: [i_item_sk#18, i_current_price#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThan(i_current_price,50.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThan(i_current_price,50.00), *IsNotNull(i_item_sk)] ReadSchema: struct (374) FilterExecTransformer @@ -1880,7 +1880,7 @@ VeloxColumnarToRow (396) Output [2]: [p_promo_sk#20, p_channel_tv#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_channel_tv), EqualTo(p_channel_tv,N), IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_channel_tv), *EqualTo(p_channel_tv,N), *IsNotNull(p_promo_sk)] ReadSchema: struct (386) FilterExecTransformer @@ -1940,7 +1940,7 @@ ColumnarBroadcastExchange (401) Output [2]: [d_date_sk#22, d_date#372] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1998-08-04), LessThanOrEqual(d_date,1998-09-03), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1998-08-04), *LessThanOrEqual(d_date,1998-09-03), *IsNotNull(d_date_sk)] ReadSchema: struct (398) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a/explain.txt index f40300e3e3b..90304710d29 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a/explain.txt @@ -165,7 +165,7 @@ Output [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -197,7 +197,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_e Output [5]: [sr_item_sk#10, sr_ticket_number#11, sr_return_amt#12, sr_net_loss#13, sr_returned_date_sk#14] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (10) FilterExecTransformer @@ -258,7 +258,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ext_sales_price#5, ss Output [2]: [s_store_sk#17, s_store_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -293,7 +293,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ext_sales_price#5, ss Output [2]: [i_item_sk#19, i_current_price#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThan(i_current_price,50.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThan(i_current_price,50.00), *IsNotNull(i_item_sk)] ReadSchema: struct (33) FilterExecTransformer @@ -332,7 +332,7 @@ Input [8]: [ss_item_sk#1, ss_promo_sk#3, ss_ext_sales_price#5, ss_net_profit#6, Output [2]: [p_promo_sk#21, p_channel_tv#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_channel_tv), EqualTo(p_channel_tv,N), IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_channel_tv), *EqualTo(p_channel_tv,N), *IsNotNull(p_promo_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -415,7 +415,7 @@ Output [7]: [cs_catalog_page_sk#45, cs_item_sk#46, cs_promo_sk#47, cs_order_numb Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#51), dynamicpruningexpression(cs_sold_date_sk#51 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_catalog_page_sk), IsNotNull(cs_item_sk), IsNotNull(cs_promo_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk), *IsNotNull(cs_item_sk), *IsNotNull(cs_promo_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -447,7 +447,7 @@ Input [7]: [cs_catalog_page_sk#45, cs_item_sk#46, cs_promo_sk#47, cs_order_numbe Output [5]: [cr_item_sk#53, cr_order_number#54, cr_return_amount#55, cr_net_loss#56, cr_returned_date_sk#57] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (69) FilterExecTransformer @@ -508,7 +508,7 @@ Input [9]: [cs_catalog_page_sk#45, cs_item_sk#46, cs_promo_sk#47, cs_ext_sales_p Output [2]: [cp_catalog_page_sk#60, cp_catalog_page_id#61] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (84) FilterExecTransformer @@ -625,7 +625,7 @@ Output [7]: [ws_item_sk#86, ws_web_site_sk#87, ws_promo_sk#88, ws_order_number#8 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#92), dynamicpruningexpression(ws_sold_date_sk#92 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_web_site_sk), IsNotNull(ws_item_sk), IsNotNull(ws_promo_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk), *IsNotNull(ws_item_sk), *IsNotNull(ws_promo_sk)] ReadSchema: struct (112) FilterExecTransformer @@ -657,7 +657,7 @@ Input [7]: [ws_item_sk#86, ws_web_site_sk#87, ws_promo_sk#88, ws_order_number#89 Output [5]: [wr_item_sk#94, wr_order_number#95, wr_return_amt#96, wr_net_loss#97, wr_returned_date_sk#98] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_item_sk), IsNotNull(wr_order_number)] +PushedFilters: [*IsNotNull(wr_item_sk), *IsNotNull(wr_order_number)] ReadSchema: struct (120) FilterExecTransformer @@ -718,7 +718,7 @@ Input [9]: [ws_item_sk#86, ws_web_site_sk#87, ws_promo_sk#88, ws_ext_sales_price Output [2]: [web_site_sk#101, web_site_id#102] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (135) FilterExecTransformer @@ -1048,7 +1048,7 @@ ColumnarBroadcastExchange (216) Output [2]: [d_date_sk#16, d_date#203] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1998-08-04), LessThanOrEqual(d_date,1998-09-03), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1998-08-04), *LessThanOrEqual(d_date,1998-09-03), *IsNotNull(d_date_sk)] ReadSchema: struct (213) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a.sf100/explain.txt index 9d3aba215ba..e82a3c02c2e 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a.sf100/explain.txt @@ -60,7 +60,7 @@ Output [3]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [4]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3, d_date_sk#5] Output [3]: [i_item_sk#6, i_class#7, i_category#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -367,7 +367,7 @@ ColumnarBroadcastExchange (77) Output [2]: [d_date_sk#5, d_month_seq#51] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (74) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a/explain.txt index 9d3aba215ba..e82a3c02c2e 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a/explain.txt @@ -60,7 +60,7 @@ Output [3]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [4]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3, d_date_sk#5] Output [3]: [i_item_sk#6, i_class#7, i_category#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -367,7 +367,7 @@ ColumnarBroadcastExchange (77) Output [2]: [d_date_sk#5, d_month_seq#51] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (74) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98.sf100/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98.sf100/explain.txt index eb2e1f8f77d..1fa7fbbaf2a 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98.sf100/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98.sf100/explain.txt @@ -42,7 +42,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Output [6]: [i_item_sk#6, i_item_id#7, i_item_desc#8, i_current_price#9, i_class#10, i_category#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -240,7 +240,7 @@ ColumnarBroadcastExchange (53) Output [2]: [d_date_sk#13, d_date#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (50) FilterExecTransformer diff --git a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98/explain.txt b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98/explain.txt index 31806c2fad4..de2dc675b39 100644 --- a/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98/explain.txt +++ b/gluten-ut/spark40/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98/explain.txt @@ -36,7 +36,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -47,7 +47,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [6]: [i_item_sk#5, i_item_id#6, i_item_desc#7, i_current_price#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -206,7 +206,7 @@ ColumnarBroadcastExchange (45) Output [2]: [d_date_sk#11, d_date#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (42) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q1/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q1/explain.txt index 8996ac8277e..2a146c179ad 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q1/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q1/explain.txt @@ -20,7 +20,7 @@ VeloxColumnarToRow (20) Output [7]: [l_quantity#1, l_extendedprice#2, l_discount#3, l_tax#4, l_returnflag#5, l_linestatus#6, l_shipdate#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipdate), LessThanOrEqual(l_shipdate,1998-09-02)] +PushedFilters: [*IsNotNull(l_shipdate), *LessThanOrEqual(l_shipdate,1998-09-02)] ReadSchema: struct (2) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q10/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q10/explain.txt index a4453ac12e5..176127a6263 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q10/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q10/explain.txt @@ -36,7 +36,7 @@ VeloxColumnarToRow (40) Output [7]: [c_custkey#1, c_name#2, c_address#3, c_nationkey#4, c_phone#5, c_acctbal#6, c_comment#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -47,7 +47,7 @@ Arguments: (isnotnull(c_custkey#1) AND isnotnull(c_nationkey#4)) Output [3]: [o_orderkey#8, o_custkey#9, o_orderdate#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-10-01), LessThan(o_orderdate,1994-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-10-01), *LessThan(o_orderdate,1994-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -86,7 +86,7 @@ Input [9]: [c_custkey#1, c_name#2, c_address#3, c_nationkey#4, c_phone#5, c_acct Output [4]: [l_orderkey#11, l_extendedprice#12, l_discount#13, l_returnflag#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_returnflag), EqualTo(l_returnflag,R), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_returnflag), *EqualTo(l_returnflag,R), *IsNotNull(l_orderkey)] ReadSchema: struct (13) FilterExecTransformer @@ -125,7 +125,7 @@ Input [11]: [c_custkey#1, c_name#2, c_address#3, c_nationkey#4, c_phone#5, c_acc Output [2]: [n_nationkey#15, n_name#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (22) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q11/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q11/explain.txt index b96c068dc8b..4a5b2cfe169 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q11/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q11/explain.txt @@ -32,7 +32,7 @@ VeloxColumnarToRow (36) Output [4]: [ps_partkey#1, ps_suppkey#2, ps_availqty#3, ps_supplycost#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/partsupp] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -43,7 +43,7 @@ Arguments: isnotnull(ps_suppkey#2) Output [2]: [s_suppkey#5, s_nationkey#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (4) FilterExecTransformer @@ -78,7 +78,7 @@ Input [6]: [ps_partkey#1, ps_suppkey#2, ps_availqty#3, ps_supplycost#4, s_suppke Output [2]: [n_nationkey#7, n_name#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,GERMANY), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,GERMANY), *IsNotNull(n_nationkey)] ReadSchema: struct (12) FilterExecTransformer @@ -206,7 +206,7 @@ VeloxColumnarToRow (58) Output [3]: [ps_suppkey#18, ps_availqty#19, ps_supplycost#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/partsupp] -PushedFilters: [IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_suppkey)] ReadSchema: struct (38) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q12/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q12/explain.txt index 7f33106c5ec..7ef9cad9006 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q12/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q12/explain.txt @@ -25,7 +25,7 @@ VeloxColumnarToRow (27) Output [2]: [o_orderkey#1, o_orderpriority#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (2) FilterExecTransformer @@ -36,7 +36,7 @@ Arguments: isnotnull(o_orderkey#1) Output [5]: [l_orderkey#3, l_shipdate#4, l_commitdate#5, l_receiptdate#6, l_shipmode#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate), IsNotNull(l_shipdate), In(l_shipmode, [MAIL,SHIP]), GreaterThanOrEqual(l_receiptdate,1994-01-01), LessThan(l_receiptdate,1995-01-01), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate), *IsNotNull(l_shipdate), *In(l_shipmode, [MAIL,SHIP]), *GreaterThanOrEqual(l_receiptdate,1994-01-01), *LessThan(l_receiptdate,1995-01-01), *IsNotNull(l_orderkey)] ReadSchema: struct (4) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q13/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q13/explain.txt index fa992bd0cc2..04a08b966c3 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q13/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q13/explain.txt @@ -37,7 +37,7 @@ ReadSchema: struct Output [3]: [o_orderkey#2, o_custkey#3, o_comment#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_comment), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_comment), *IsNotNull(o_custkey)] ReadSchema: struct (3) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q14/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q14/explain.txt index 9ebcc332563..7fcadfccda3 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q14/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q14/explain.txt @@ -21,7 +21,7 @@ VeloxColumnarToRow (21) Output [4]: [l_partkey#1, l_extendedprice#2, l_discount#3, l_shipdate#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-09-01), LessThan(l_shipdate,1995-10-01), IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-09-01), *LessThan(l_shipdate,1995-10-01), *IsNotNull(l_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -36,7 +36,7 @@ Input [4]: [l_partkey#1, l_extendedprice#2, l_discount#3, l_shipdate#4] Output [2]: [p_partkey#5, p_type#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_partkey)] ReadSchema: struct (5) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q15/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q15/explain.txt index ae19f517ad9..66b4ace1793 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q15/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q15/explain.txt @@ -26,7 +26,7 @@ VeloxColumnarToRow (28) Output [4]: [s_suppkey#1, s_name#2, s_address#3, s_phone#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey)] +PushedFilters: [*IsNotNull(s_suppkey)] ReadSchema: struct (2) FilterExecTransformer @@ -37,7 +37,7 @@ Arguments: isnotnull(s_suppkey#1) Output [4]: [l_suppkey#5, l_extendedprice#6, l_discount#7, l_shipdate#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01), *IsNotNull(l_suppkey)] ReadSchema: struct (4) FilterExecTransformer @@ -160,7 +160,7 @@ VeloxColumnarToRow (43) Output [4]: [l_suppkey#19, l_extendedprice#20, l_discount#21, l_shipdate#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1996-01-01), LessThan(l_shipdate,1996-04-01)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1996-01-01), *LessThan(l_shipdate,1996-04-01)] ReadSchema: struct (30) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q16/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q16/explain.txt index 63ef61794b9..c13b917692d 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q16/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q16/explain.txt @@ -36,7 +36,7 @@ VeloxColumnarToRow (42) Output [2]: [ps_partkey#1, ps_suppkey#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/partsupp] -PushedFilters: [IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -47,7 +47,7 @@ Arguments: isnotnull(ps_partkey#1) Output [2]: [s_suppkey#3, s_comment#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_comment)] +PushedFilters: [*IsNotNull(s_comment)] ReadSchema: struct (4) FilterExecTransformer @@ -82,7 +82,7 @@ Join condition: None Output [4]: [p_partkey#5, p_brand#6, p_type#7, p_size#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_type), Not(EqualTo(p_brand,Brand#9)), Not(StringStartsWith(p_type,MEDIUM POLISHED)), In(p_size, [14,19,23,3,36,45,49,9]), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_type), *Not(EqualTo(p_brand,Brand#9)), *Not(StringStartsWith(p_type,MEDIUM POLISHED)), *In(p_size, [14,19,23,3,36,45,49,9]), *IsNotNull(p_partkey)] ReadSchema: struct (12) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q17/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q17/explain.txt index b78e0125c32..3206340aa50 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q17/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q17/explain.txt @@ -36,7 +36,7 @@ VeloxColumnarToRow (40) Output [3]: [l_partkey#1, l_quantity#2, l_extendedprice#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_quantity)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_quantity)] ReadSchema: struct (2) FilterExecTransformer @@ -47,7 +47,7 @@ Arguments: (isnotnull(l_partkey#1) AND isnotnull(l_quantity#2)) Output [3]: [p_partkey#4, p_brand#5, p_container#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_brand), IsNotNull(p_container), EqualTo(p_brand,Brand#7), EqualTo(p_container,MED BOX), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_brand), *IsNotNull(p_container), *EqualTo(p_brand,Brand#7), *EqualTo(p_container,MED BOX), *IsNotNull(p_partkey)] ReadSchema: struct (4) FilterExecTransformer @@ -86,7 +86,7 @@ Input [4]: [l_partkey#1, l_quantity#2, l_extendedprice#3, p_partkey#4] Output [2]: [l_partkey#8, l_quantity#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_partkey)] +PushedFilters: [*IsNotNull(l_partkey)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q18/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q18/explain.txt index a40807fb54c..352a5621723 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q18/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q18/explain.txt @@ -42,7 +42,7 @@ VeloxColumnarToRow (49) Output [2]: [c_custkey#1, c_name#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -53,7 +53,7 @@ Arguments: isnotnull(c_custkey#1) Output [4]: [o_orderkey#3, o_custkey#4, o_totalprice#5, o_orderdate#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -157,7 +157,7 @@ Input [6]: [c_custkey#1, c_name#2, o_orderkey#3, o_custkey#4, o_totalprice#5, o_ Output [2]: [l_orderkey#16, l_quantity#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_orderkey)] ReadSchema: struct (28) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q19/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q19/explain.txt index 3840fd50110..f8668ed3fb7 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q19/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q19/explain.txt @@ -20,7 +20,7 @@ VeloxColumnarToRow (20) Output [6]: [l_partkey#1, l_quantity#2, l_extendedprice#3, l_discount#4, l_shipinstruct#5, l_shipmode#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipinstruct), In(l_shipmode, [AIR,AIR REG]), EqualTo(l_shipinstruct,DELIVER IN PERSON), IsNotNull(l_partkey), Or(Or(And(GreaterThanOrEqual(l_quantity,1),LessThanOrEqual(l_quantity,11)),And(GreaterThanOrEqual(l_quantity,10),LessThanOrEqual(l_quantity,20))),And(GreaterThanOrEqual(l_quantity,20),LessThanOrEqual(l_quantity,30)))] +PushedFilters: [*IsNotNull(l_shipinstruct), *In(l_shipmode, [AIR,AIR REG]), *EqualTo(l_shipinstruct,DELIVER IN PERSON), *IsNotNull(l_partkey), *Or(Or(And(GreaterThanOrEqual(l_quantity,1),LessThanOrEqual(l_quantity,11)),And(GreaterThanOrEqual(l_quantity,10),LessThanOrEqual(l_quantity,20))),And(GreaterThanOrEqual(l_quantity,20),LessThanOrEqual(l_quantity,30)))] ReadSchema: struct (2) FilterExecTransformer @@ -35,7 +35,7 @@ Input [6]: [l_partkey#1, l_quantity#2, l_extendedprice#3, l_discount#4, l_shipin Output [4]: [p_partkey#7, p_brand#8, p_size#9, p_container#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_size), GreaterThanOrEqual(p_size,1), IsNotNull(p_partkey), Or(Or(And(And(EqualTo(p_brand,Brand#11),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#12),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#13),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] +PushedFilters: [*IsNotNull(p_size), *GreaterThanOrEqual(p_size,1), *IsNotNull(p_partkey), *Or(Or(And(And(EqualTo(p_brand,Brand#11),In(p_container, [SM BOX,SM CASE,SM PACK,SM PKG])),LessThanOrEqual(p_size,5)),And(And(EqualTo(p_brand,Brand#12),In(p_container, [MED BAG,MED BOX,MED PACK,MED PKG])),LessThanOrEqual(p_size,10))),And(And(EqualTo(p_brand,Brand#13),In(p_container, [LG BOX,LG CASE,LG PACK,LG PKG])),LessThanOrEqual(p_size,15)))] ReadSchema: struct (5) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q2/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q2/explain.txt index fc44c210846..247ff947d41 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q2/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q2/explain.txt @@ -65,7 +65,7 @@ VeloxColumnarToRow (78) Output [4]: [p_partkey#1, p_mfgr#2, p_type#3, p_size#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_size), IsNotNull(p_type), EqualTo(p_size,15), StringEndsWith(p_type,BRASS), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_size), *IsNotNull(p_type), *EqualTo(p_size,15), *StringEndsWith(p_type,BRASS), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -80,7 +80,7 @@ Input [4]: [p_partkey#1, p_mfgr#2, p_type#3, p_size#4] Output [3]: [ps_partkey#5, ps_suppkey#6, ps_supplycost#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/partsupp] -PushedFilters: [IsNotNull(ps_partkey), IsNotNull(ps_supplycost), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_partkey), *IsNotNull(ps_supplycost), *IsNotNull(ps_suppkey)] ReadSchema: struct (5) FilterExecTransformer @@ -115,7 +115,7 @@ Input [5]: [p_partkey#1, p_mfgr#2, ps_partkey#5, ps_suppkey#6, ps_supplycost#7] Output [3]: [ps_partkey#8, ps_suppkey#9, ps_supplycost#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/partsupp] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (13) FilterExecTransformer @@ -126,7 +126,7 @@ Arguments: (isnotnull(ps_suppkey#9) AND isnotnull(ps_partkey#8)) Output [2]: [s_suppkey#11, s_nationkey#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (15) FilterExecTransformer @@ -161,7 +161,7 @@ Input [5]: [ps_partkey#8, ps_suppkey#9, ps_supplycost#10, s_suppkey#11, s_nation Output [2]: [n_nationkey#13, n_regionkey#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (23) FilterExecTransformer @@ -196,7 +196,7 @@ Input [5]: [ps_partkey#8, ps_supplycost#10, s_nationkey#12, n_nationkey#13, n_re Output [2]: [r_regionkey#15, r_name#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/region] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,EUROPE), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,EUROPE), *IsNotNull(r_regionkey)] ReadSchema: struct (31) FilterExecTransformer @@ -302,7 +302,7 @@ Input [6]: [p_partkey#1, p_mfgr#2, ps_suppkey#6, ps_supplycost#7, min(ps_supplyc Output [7]: [s_suppkey#22, s_name#23, s_address#24, s_nationkey#25, s_phone#26, s_acctbal#27, s_comment#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (56) FilterExecTransformer @@ -337,7 +337,7 @@ Input [10]: [p_partkey#1, p_mfgr#2, ps_suppkey#6, s_suppkey#22, s_name#23, s_add Output [3]: [n_nationkey#29, n_name#30, n_regionkey#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (64) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q20/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q20/explain.txt index ab220baad0f..ffea374bc1d 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q20/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q20/explain.txt @@ -49,7 +49,7 @@ VeloxColumnarToRow (58) Output [4]: [s_suppkey#1, s_name#2, s_address#3, s_nationkey#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -60,7 +60,7 @@ Arguments: isnotnull(s_nationkey#4) Output [3]: [ps_partkey#5, ps_suppkey#6, ps_availqty#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/partsupp] -PushedFilters: [IsNotNull(ps_availqty), IsNotNull(ps_partkey), IsNotNull(ps_suppkey)] +PushedFilters: [*IsNotNull(ps_availqty), *IsNotNull(ps_partkey), *IsNotNull(ps_suppkey)] ReadSchema: struct (4) FilterExecTransformer @@ -71,7 +71,7 @@ Arguments: ((isnotnull(ps_availqty#7) AND isnotnull(ps_partkey#5)) AND isnotnull Output [2]: [p_partkey#8, p_name#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_name), StringStartsWith(p_name,forest)] +PushedFilters: [*IsNotNull(p_name), *StringStartsWith(p_name,forest)] ReadSchema: struct (6) FilterExecTransformer @@ -106,7 +106,7 @@ Join condition: None Output [4]: [l_partkey#10, l_suppkey#11, l_quantity#12, l_shipdate#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1994-01-01), LessThan(l_shipdate,1995-01-01), IsNotNull(l_partkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1994-01-01), *LessThan(l_shipdate,1995-01-01), *IsNotNull(l_partkey), *IsNotNull(l_suppkey)] ReadSchema: struct (14) FilterExecTransformer @@ -227,7 +227,7 @@ Input [4]: [s_suppkey#1, s_name#2, s_address#3, s_nationkey#4] Output [2]: [n_nationkey#21, n_name#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,CANADA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,CANADA), *IsNotNull(n_nationkey)] ReadSchema: struct (43) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q21/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q21/explain.txt index 6079bad0dd4..31364ac47be 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q21/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q21/explain.txt @@ -46,7 +46,7 @@ VeloxColumnarToRow (54) Output [3]: [s_suppkey#1, s_name#2, s_nationkey#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -57,7 +57,7 @@ Arguments: (isnotnull(s_suppkey#1) AND isnotnull(s_nationkey#3)) Output [4]: [l_orderkey#4, l_suppkey#5, l_commitdate#6, l_receiptdate#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -98,7 +98,7 @@ Join condition: NOT (l_suppkey#9 = l_suppkey#5) Output [4]: [l_orderkey#10, l_suppkey#11, l_commitdate#12, l_receiptdate#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_receiptdate), IsNotNull(l_commitdate)] +PushedFilters: [*IsNotNull(l_receiptdate), *IsNotNull(l_commitdate)] ReadSchema: struct (13) FilterExecTransformer @@ -157,7 +157,7 @@ Input [5]: [s_suppkey#1, s_name#2, s_nationkey#3, l_orderkey#4, l_suppkey#5] Output [2]: [o_orderkey#14, o_orderstatus#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderstatus), EqualTo(o_orderstatus,F), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderstatus), *EqualTo(o_orderstatus,F), *IsNotNull(o_orderkey)] ReadSchema: struct (27) FilterExecTransformer @@ -196,7 +196,7 @@ Input [4]: [s_name#2, s_nationkey#3, l_orderkey#4, o_orderkey#14] Output [2]: [n_nationkey#16, n_name#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_name), EqualTo(n_name,SAUDI ARABIA), IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_name), *EqualTo(n_name,SAUDI ARABIA), *IsNotNull(n_nationkey)] ReadSchema: struct (36) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q22/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q22/explain.txt index 3eb3608fe41..16d19c81af4 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q22/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q22/explain.txt @@ -23,7 +23,7 @@ VeloxColumnarToRow (25) Output [3]: [c_custkey#1, c_phone#2, c_acctbal#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_acctbal)] +PushedFilters: [*IsNotNull(c_acctbal)] ReadSchema: struct (2) FilterExecTransformer @@ -144,7 +144,7 @@ VeloxColumnarToRow (38) Output [2]: [c_phone#18, c_acctbal#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_acctbal), GreaterThan(c_acctbal,0)] +PushedFilters: [*IsNotNull(c_acctbal), *GreaterThan(c_acctbal,0)] ReadSchema: struct (27) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q3/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q3/explain.txt index f3baf0356cf..bcf950df445 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q3/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q3/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [2]: [c_custkey#1, c_mktsegment#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_mktsegment), EqualTo(c_mktsegment,BUILDING), IsNotNull(c_custkey)] +PushedFilters: [*IsNotNull(c_mktsegment), *EqualTo(c_mktsegment,BUILDING), *IsNotNull(c_custkey)] ReadSchema: struct (2) FilterExecTransformer @@ -45,7 +45,7 @@ Input [2]: [c_custkey#1, c_mktsegment#2] Output [4]: [o_orderkey#3, o_custkey#4, o_orderdate#5, o_shippriority#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderdate), LessThan(o_orderdate,1995-03-15), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *LessThan(o_orderdate,1995-03-15), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (5) FilterExecTransformer @@ -80,7 +80,7 @@ Input [5]: [c_custkey#1, o_orderkey#3, o_custkey#4, o_orderdate#5, o_shippriorit Output [4]: [l_orderkey#7, l_extendedprice#8, l_discount#9, l_shipdate#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipdate), GreaterThan(l_shipdate,1995-03-15), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThan(l_shipdate,1995-03-15), *IsNotNull(l_orderkey)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q4/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q4/explain.txt index ad4eaa20a9a..cdc88d76dfe 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q4/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q4/explain.txt @@ -26,7 +26,7 @@ VeloxColumnarToRow (28) Output [3]: [o_orderkey#1, o_orderdate#2, o_orderpriority#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1993-07-01), LessThan(o_orderdate,1993-10-01)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1993-07-01), *LessThan(o_orderdate,1993-10-01)] ReadSchema: struct (2) FilterExecTransformer @@ -41,7 +41,7 @@ Input [3]: [o_orderkey#1, o_orderdate#2, o_orderpriority#3] Output [3]: [l_orderkey#4, l_commitdate#5, l_receiptdate#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_commitdate), IsNotNull(l_receiptdate)] +PushedFilters: [*IsNotNull(l_commitdate), *IsNotNull(l_receiptdate)] ReadSchema: struct (5) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q5/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q5/explain.txt index c786fa97a5b..cd42b759a53 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q5/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q5/explain.txt @@ -50,7 +50,7 @@ VeloxColumnarToRow (60) Output [2]: [c_custkey#1, c_nationkey#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -61,7 +61,7 @@ Arguments: (isnotnull(c_custkey#1) AND isnotnull(c_nationkey#2)) Output [3]: [o_orderkey#3, o_custkey#4, o_orderdate#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1994-01-01), LessThan(o_orderdate,1995-01-01), IsNotNull(o_custkey), IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1994-01-01), *LessThan(o_orderdate,1995-01-01), *IsNotNull(o_custkey), *IsNotNull(o_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -100,7 +100,7 @@ Input [4]: [c_custkey#1, c_nationkey#2, o_orderkey#3, o_custkey#4] Output [4]: [l_orderkey#6, l_suppkey#7, l_extendedprice#8, l_discount#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_orderkey), IsNotNull(l_suppkey)] +PushedFilters: [*IsNotNull(l_orderkey), *IsNotNull(l_suppkey)] ReadSchema: struct (13) FilterExecTransformer @@ -135,7 +135,7 @@ Input [6]: [c_nationkey#2, o_orderkey#3, l_orderkey#6, l_suppkey#7, l_extendedpr Output [2]: [s_suppkey#10, s_nationkey#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (21) FilterExecTransformer @@ -170,7 +170,7 @@ Input [6]: [c_nationkey#2, l_suppkey#7, l_extendedprice#8, l_discount#9, s_suppk Output [3]: [n_nationkey#12, n_name#13, n_regionkey#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (29) FilterExecTransformer @@ -205,7 +205,7 @@ Input [6]: [l_extendedprice#8, l_discount#9, s_nationkey#11, n_nationkey#12, n_n Output [2]: [r_regionkey#15, r_name#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/region] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,ASIA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,ASIA), *IsNotNull(r_regionkey)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q7/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q7/explain.txt index 29f943058fc..4381bf6e185 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q7/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q7/explain.txt @@ -46,7 +46,7 @@ VeloxColumnarToRow (55) Output [2]: [s_suppkey#1, s_nationkey#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (2) FilterExecTransformer @@ -57,7 +57,7 @@ Arguments: (isnotnull(s_suppkey#1) AND isnotnull(s_nationkey#2)) Output [5]: [l_orderkey#3, l_suppkey#4, l_extendedprice#5, l_discount#6, l_shipdate#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_shipdate), GreaterThanOrEqual(l_shipdate,1995-01-01), LessThanOrEqual(l_shipdate,1996-12-31), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_shipdate), *GreaterThanOrEqual(l_shipdate,1995-01-01), *LessThanOrEqual(l_shipdate,1996-12-31), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (4) FilterExecTransformer @@ -92,7 +92,7 @@ Input [7]: [s_suppkey#1, s_nationkey#2, l_orderkey#3, l_suppkey#4, l_extendedpri Output [2]: [o_orderkey#8, o_custkey#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (12) FilterExecTransformer @@ -127,7 +127,7 @@ Input [7]: [s_nationkey#2, l_orderkey#3, l_extendedprice#5, l_discount#6, l_ship Output [2]: [c_custkey#10, c_nationkey#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (20) FilterExecTransformer @@ -162,7 +162,7 @@ Input [7]: [s_nationkey#2, l_extendedprice#5, l_discount#6, l_shipdate#7, o_cust Output [2]: [n_nationkey#12, n_name#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey), Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] +PushedFilters: [*IsNotNull(n_nationkey), *Or(EqualTo(n_name,FRANCE),EqualTo(n_name,GERMANY))] ReadSchema: struct (28) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q8/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q8/explain.txt index 7aa8585329e..884e509a3ce 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q8/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q8/explain.txt @@ -63,7 +63,7 @@ VeloxColumnarToRow (77) Output [2]: [p_partkey#1, p_type#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_type), EqualTo(p_type,ECONOMY ANODIZED STEEL), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_type), *EqualTo(p_type,ECONOMY ANODIZED STEEL), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -78,7 +78,7 @@ Input [2]: [p_partkey#1, p_type#2] Output [5]: [l_orderkey#3, l_partkey#4, l_suppkey#5, l_extendedprice#6, l_discount#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (5) FilterExecTransformer @@ -113,7 +113,7 @@ Input [6]: [p_partkey#1, l_orderkey#3, l_partkey#4, l_suppkey#5, l_extendedprice Output [2]: [s_suppkey#8, s_nationkey#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (13) FilterExecTransformer @@ -148,7 +148,7 @@ Input [6]: [l_orderkey#3, l_suppkey#5, l_extendedprice#6, l_discount#7, s_suppke Output [3]: [o_orderkey#10, o_custkey#11, o_orderdate#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderdate), GreaterThanOrEqual(o_orderdate,1995-01-01), LessThanOrEqual(o_orderdate,1996-12-31), IsNotNull(o_orderkey), IsNotNull(o_custkey)] +PushedFilters: [*IsNotNull(o_orderdate), *GreaterThanOrEqual(o_orderdate,1995-01-01), *LessThanOrEqual(o_orderdate,1996-12-31), *IsNotNull(o_orderkey), *IsNotNull(o_custkey)] ReadSchema: struct (21) FilterExecTransformer @@ -183,7 +183,7 @@ Input [7]: [l_orderkey#3, l_extendedprice#6, l_discount#7, s_nationkey#9, o_orde Output [2]: [c_custkey#13, c_nationkey#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_custkey), IsNotNull(c_nationkey)] +PushedFilters: [*IsNotNull(c_custkey), *IsNotNull(c_nationkey)] ReadSchema: struct (29) FilterExecTransformer @@ -218,7 +218,7 @@ Input [7]: [l_extendedprice#6, l_discount#7, s_nationkey#9, o_custkey#11, o_orde Output [2]: [n_nationkey#15, n_regionkey#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey), IsNotNull(n_regionkey)] +PushedFilters: [*IsNotNull(n_nationkey), *IsNotNull(n_regionkey)] ReadSchema: struct (37) FilterExecTransformer @@ -253,7 +253,7 @@ Input [7]: [l_extendedprice#6, l_discount#7, s_nationkey#9, o_orderdate#12, c_na Output [2]: [n_nationkey#17, n_name#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (45) FilterExecTransformer @@ -288,7 +288,7 @@ Input [7]: [l_extendedprice#6, l_discount#7, s_nationkey#9, o_orderdate#12, n_re Output [2]: [r_regionkey#19, r_name#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/region] -PushedFilters: [IsNotNull(r_name), EqualTo(r_name,AMERICA), IsNotNull(r_regionkey)] +PushedFilters: [*IsNotNull(r_name), *EqualTo(r_name,AMERICA), *IsNotNull(r_regionkey)] ReadSchema: struct (53) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q9/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q9/explain.txt index 60439fa2f4b..985f7797f67 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q9/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/gluten-tpch-plan-stability/q9/explain.txt @@ -49,7 +49,7 @@ VeloxColumnarToRow (59) Output [2]: [p_partkey#1, p_name#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/part] -PushedFilters: [IsNotNull(p_name), StringContains(p_name,green), IsNotNull(p_partkey)] +PushedFilters: [*IsNotNull(p_name), *StringContains(p_name,green), *IsNotNull(p_partkey)] ReadSchema: struct (2) FilterExecTransformer @@ -64,7 +64,7 @@ Input [2]: [p_partkey#1, p_name#2] Output [6]: [l_orderkey#3, l_partkey#4, l_suppkey#5, l_quantity#6, l_extendedprice#7, l_discount#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/lineitem] -PushedFilters: [IsNotNull(l_partkey), IsNotNull(l_suppkey), IsNotNull(l_orderkey)] +PushedFilters: [*IsNotNull(l_partkey), *IsNotNull(l_suppkey), *IsNotNull(l_orderkey)] ReadSchema: struct (5) FilterExecTransformer @@ -99,7 +99,7 @@ Input [7]: [p_partkey#1, l_orderkey#3, l_partkey#4, l_suppkey#5, l_quantity#6, l Output [2]: [s_suppkey#9, s_nationkey#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/supplier] -PushedFilters: [IsNotNull(s_suppkey), IsNotNull(s_nationkey)] +PushedFilters: [*IsNotNull(s_suppkey), *IsNotNull(s_nationkey)] ReadSchema: struct (13) FilterExecTransformer @@ -134,7 +134,7 @@ Input [8]: [l_orderkey#3, l_partkey#4, l_suppkey#5, l_quantity#6, l_extendedpric Output [3]: [ps_partkey#11, ps_suppkey#12, ps_supplycost#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/partsupp] -PushedFilters: [IsNotNull(ps_suppkey), IsNotNull(ps_partkey)] +PushedFilters: [*IsNotNull(ps_suppkey), *IsNotNull(ps_partkey)] ReadSchema: struct (21) FilterExecTransformer @@ -169,7 +169,7 @@ Input [10]: [l_orderkey#3, l_partkey#4, l_suppkey#5, l_quantity#6, l_extendedpri Output [2]: [o_orderkey#14, o_orderdate#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/orders] -PushedFilters: [IsNotNull(o_orderkey)] +PushedFilters: [*IsNotNull(o_orderkey)] ReadSchema: struct (29) FilterExecTransformer @@ -204,7 +204,7 @@ Input [8]: [l_orderkey#3, l_quantity#6, l_extendedprice#7, l_discount#8, s_natio Output [2]: [n_nationkey#16, n_name#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/nation] -PushedFilters: [IsNotNull(n_nationkey)] +PushedFilters: [*IsNotNull(n_nationkey)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10.sf100/explain.txt index 3b5b287a772..28e0e3cb4d0 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10.sf100/explain.txt @@ -63,7 +63,7 @@ VeloxColumnarToRow (77) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Output [2]: [ws_bill_customer_sk#6, ws_sold_date_sk#7] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#7), dynamicpruningexpression(ws_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -131,7 +131,7 @@ Output [2]: [cs_ship_customer_sk#11, cs_sold_date_sk#12] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#12), dynamicpruningexpression(cs_sold_date_sk#12 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_ship_customer_sk)] +PushedFilters: [*IsNotNull(cs_ship_customer_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -202,7 +202,7 @@ Output [2]: [ss_customer_sk#16, ss_sold_date_sk#17] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#17), dynamicpruningexpression(ss_sold_date_sk#17 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -259,7 +259,7 @@ Input [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#21, ca_county#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (50) FilterExecTransformer @@ -312,7 +312,7 @@ Input [1]: [c_current_cdemo_sk#2] Output [9]: [cd_demo_sk#23, cd_gender#24, cd_marital_status#25, cd_education_status#26, cd_purchase_estimate#27, cd_credit_rating#28, cd_dep_count#29, cd_dep_employed_count#30, cd_dep_college_count#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (63) FilterExecTransformer @@ -397,7 +397,7 @@ VeloxColumnarToRow (89) Output [2]: [ca_address_sk#21, ca_county#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -469,7 +469,7 @@ ColumnarBroadcastExchange (94) Output [3]: [d_date_sk#9, d_year#47, d_moy#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2002), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,7), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2002), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,7), *IsNotNull(d_date_sk)] ReadSchema: struct (91) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10/explain.txt index f6645f6b402..50ea3a98ad5 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q10/explain.txt @@ -55,7 +55,7 @@ VeloxColumnarToRow (65) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -67,7 +67,7 @@ Output [2]: [ws_bill_customer_sk#4, ws_sold_date_sk#5] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#5), dynamicpruningexpression(ws_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -102,7 +102,7 @@ Output [2]: [cs_ship_customer_sk#9, cs_sold_date_sk#10] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#10), dynamicpruningexpression(cs_sold_date_sk#10 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_ship_customer_sk)] +PushedFilters: [*IsNotNull(cs_ship_customer_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -156,7 +156,7 @@ Output [2]: [ss_customer_sk#13, ss_sold_date_sk#14] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#14), dynamicpruningexpression(ss_sold_date_sk#14 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -210,7 +210,7 @@ Input [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#17, ca_county#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -249,7 +249,7 @@ Input [3]: [c_current_cdemo_sk#2, c_current_addr_sk#3, ca_address_sk#17] Output [9]: [cd_demo_sk#19, cd_gender#20, cd_marital_status#21, cd_education_status#22, cd_purchase_estimate#23, cd_credit_rating#24, cd_dep_count#25, cd_dep_employed_count#26, cd_dep_college_count#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -343,7 +343,7 @@ ColumnarBroadcastExchange (70) Output [3]: [d_date_sk#7, d_year#38, d_moy#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2002), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,7), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2002), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,7), *IsNotNull(d_date_sk)] ReadSchema: struct (67) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19.sf100/explain.txt index 47ae6bdeb54..dc841592122 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19.sf100/explain.txt @@ -48,7 +48,7 @@ VeloxColumnarToRow (56) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1999), GreaterThanOrEqual(d_date_sk,2451484), LessThanOrEqual(d_date_sk,2451513), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1999), *GreaterThanOrEqual(d_date_sk,2451484), *LessThanOrEqual(d_date_sk,2451513), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -78,7 +78,7 @@ Output [5]: [ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2451484), (ss_sold_date_sk#8 <= 2451513), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -113,7 +113,7 @@ Input [4]: [ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7] Output [2]: [c_customer_sk#10, c_current_addr_sk#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -134,7 +134,7 @@ Input [6]: [ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7, Output [2]: [s_store_sk#12, s_zip#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_zip), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_zip), *IsNotNull(s_store_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -183,7 +183,7 @@ Input [4]: [ss_item_sk#4, ss_ext_sales_price#7, c_current_addr_sk#11, s_zip#13] Output [2]: [ca_address_sk#14, ca_zip#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_zip)] ReadSchema: struct (33) FilterExecTransformer @@ -204,7 +204,7 @@ Input [6]: [ss_item_sk#4, ss_ext_sales_price#7, c_current_addr_sk#11, s_zip#13, Output [6]: [i_item_sk#16, i_brand_id#17, i_brand#18, i_manufact_id#19, i_manufact#20, i_manager_id#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,7), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,7), *IsNotNull(i_item_sk)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19/explain.txt index 8a9cfe343e6..083a04680a5 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q19/explain.txt @@ -48,7 +48,7 @@ VeloxColumnarToRow (56) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1999), GreaterThanOrEqual(d_date_sk,2451484), LessThanOrEqual(d_date_sk,2451513), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1999), *GreaterThanOrEqual(d_date_sk,2451484), *LessThanOrEqual(d_date_sk,2451513), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -64,7 +64,7 @@ Output [5]: [ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2451484), (ss_sold_date_sk#8 <= 2451513), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -99,7 +99,7 @@ Input [6]: [d_date_sk#1, ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_s Output [6]: [i_item_sk#9, i_brand_id#10, i_brand#11, i_manufact_id#12, i_manufact#13, i_manager_id#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,7), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,7), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -138,7 +138,7 @@ Input [9]: [ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7, Output [2]: [c_customer_sk#15, c_current_addr_sk#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -173,7 +173,7 @@ Input [9]: [ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7, i_brand_id#10 Output [2]: [ca_address_sk#17, ca_zip#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_zip)] ReadSchema: struct (30) FilterExecTransformer @@ -208,7 +208,7 @@ Input [9]: [ss_store_sk#6, ss_ext_sales_price#7, i_brand_id#10, i_brand#11, i_ma Output [2]: [s_store_sk#19, s_zip#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_zip), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_zip), *IsNotNull(s_store_sk)] ReadSchema: struct (38) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27.sf100/explain.txt index a225dff2976..d2503d33120 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27.sf100/explain.txt @@ -95,7 +95,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2451545), (ss_sold_date_sk#8 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -125,7 +125,7 @@ Input [9]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_p Output [4]: [cd_demo_sk#11, cd_gender#12, cd_marital_status#13, cd_education_status#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_marital_status,D), EqualTo(cd_education_status,Primary ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_marital_status,D), *EqualTo(cd_education_status,Primary ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -164,7 +164,7 @@ Input [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_p Output [2]: [s_store_sk#15, s_state#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_state, [AL,SD,TN]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_state, [AL,SD,TN]), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -199,7 +199,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#17, i_item_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -278,7 +278,7 @@ Output [8]: [ss_item_sk#52, ss_cdemo_sk#53, ss_store_sk#54, ss_quantity#55, ss_l Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#59), (ss_sold_date_sk#59 >= 2451545), (ss_sold_date_sk#59 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#59 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -308,7 +308,7 @@ Input [9]: [ss_item_sk#52, ss_cdemo_sk#53, ss_store_sk#54, ss_quantity#55, ss_li Output [2]: [s_store_sk#61, s_state#62] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_state, [AL,SD,TN]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_state, [AL,SD,TN]), *IsNotNull(s_store_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -429,7 +429,7 @@ Output [8]: [ss_item_sk#100, ss_cdemo_sk#101, ss_store_sk#102, ss_quantity#103, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#107), (ss_sold_date_sk#107 >= 2451545), (ss_sold_date_sk#107 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#107 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -497,7 +497,7 @@ Input [7]: [ss_item_sk#100, ss_cdemo_sk#101, ss_quantity#103, ss_list_price#104, Output [1]: [i_item_sk#111] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -590,7 +590,7 @@ ColumnarBroadcastExchange (120) Output [2]: [d_date_sk#10, d_year#146] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), GreaterThanOrEqual(d_date_sk,2451545), LessThanOrEqual(d_date_sk,2451910), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *GreaterThanOrEqual(d_date_sk,2451545), *LessThanOrEqual(d_date_sk,2451910), *IsNotNull(d_date_sk)] ReadSchema: struct (117) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27/explain.txt index fea9215541d..3db91dfe42c 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q27/explain.txt @@ -95,7 +95,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2451545), (ss_sold_date_sk#8 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -106,7 +106,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_store_sk#3)) AND isnotnul Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_marital_status,D), EqualTo(cd_education_status,Primary ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_marital_status,D), *EqualTo(cd_education_status,Primary ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -164,7 +164,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [s_store_sk#15, s_state#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_state, [AL,SD,TN]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_state, [AL,SD,TN]), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -199,7 +199,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#17, i_item_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -278,7 +278,7 @@ Output [8]: [ss_item_sk#52, ss_cdemo_sk#53, ss_store_sk#54, ss_quantity#55, ss_l Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#59), (ss_sold_date_sk#59 >= 2451545), (ss_sold_date_sk#59 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#59 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -327,7 +327,7 @@ Input [8]: [ss_item_sk#52, ss_store_sk#54, ss_quantity#55, ss_list_price#56, ss_ Output [2]: [s_store_sk#62, s_state#63] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_state, [AL,SD,TN]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_state, [AL,SD,TN]), *IsNotNull(s_store_sk)] ReadSchema: struct (56) FilterExecTransformer @@ -429,7 +429,7 @@ Output [8]: [ss_item_sk#100, ss_cdemo_sk#101, ss_store_sk#102, ss_quantity#103, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#107), (ss_sold_date_sk#107 >= 2451545), (ss_sold_date_sk#107 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#107 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -497,7 +497,7 @@ Input [7]: [ss_item_sk#100, ss_store_sk#102, ss_quantity#103, ss_list_price#104, Output [1]: [i_item_sk#111] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -590,7 +590,7 @@ ColumnarBroadcastExchange (120) Output [2]: [d_date_sk#14, d_year#146] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), GreaterThanOrEqual(d_date_sk,2451545), LessThanOrEqual(d_date_sk,2451910), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *GreaterThanOrEqual(d_date_sk,2451545), *LessThanOrEqual(d_date_sk,2451910), *IsNotNull(d_date_sk)] ReadSchema: struct (117) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3.sf100/explain.txt index 309aa988f49..69df2e87549 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3.sf100/explain.txt @@ -28,7 +28,7 @@ Output [3]: [ss_item_sk#1, ss_net_profit#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [((((((((((ss_sold_date_sk#3 >= 2415355) AND (ss_sold_date_sk#3 <= 2415385)) OR ((ss_sold_date_sk#3 >= 2415720) AND (ss_sold_date_sk#3 <= 2415750))) OR (((ss_sold_date_sk#3 >= 2416085) AND (ss_sold_date_sk#3 <= 2416115)) OR ((ss_sold_date_sk#3 >= 2416450) AND (ss_sold_date_sk#3 <= 2416480)))) OR ((((ss_sold_date_sk#3 >= 2416816) AND (ss_sold_date_sk#3 <= 2416846)) OR ((ss_sold_date_sk#3 >= 2417181) AND (ss_sold_date_sk#3 <= 2417211))) OR ((ss_sold_date_sk#3 >= 2417546) AND (ss_sold_date_sk#3 <= 2417576)))) OR (((((ss_sold_date_sk#3 >= 2417911) AND (ss_sold_date_sk#3 <= 2417941)) OR ((ss_sold_date_sk#3 >= 2418277) AND (ss_sold_date_sk#3 <= 2418307))) OR ((ss_sold_date_sk#3 >= 2418642) AND (ss_sold_date_sk#3 <= 2418672))) OR ((((ss_sold_date_sk#3 >= 2419007) AND (ss_sold_date_sk#3 <= 2419037)) OR ((ss_sold_date_sk#3 >= 2419372) AND (ss_sold_date_sk#3 <= 2419402))) OR ((ss_sold_date_sk#3 >= 2419738) AND (ss_sold_date_sk#3 <= 2419768))))) OR ((((((ss_sold_date_sk#3 >= 2420103) AND (ss_sold_date_sk#3 <= 2420133)) OR ((ss_sold_date_sk#3 >= 2420468) AND (ss_sold_date_sk#3 <= 2420498))) OR ((ss_sold_date_sk#3 >= 2420833) AND (ss_sold_date_sk#3 <= 2420863))) OR ((((ss_sold_date_sk#3 >= 2421199) AND (ss_sold_date_sk#3 <= 2421229)) OR ((ss_sold_date_sk#3 >= 2421564) AND (ss_sold_date_sk#3 <= 2421594))) OR ((ss_sold_date_sk#3 >= 2421929) AND (ss_sold_date_sk#3 <= 2421959)))) OR (((((ss_sold_date_sk#3 >= 2422294) AND (ss_sold_date_sk#3 <= 2422324)) OR ((ss_sold_date_sk#3 >= 2422660) AND (ss_sold_date_sk#3 <= 2422690))) OR ((ss_sold_date_sk#3 >= 2423025) AND (ss_sold_date_sk#3 <= 2423055))) OR ((((ss_sold_date_sk#3 >= 2423390) AND (ss_sold_date_sk#3 <= 2423420)) OR ((ss_sold_date_sk#3 >= 2423755) AND (ss_sold_date_sk#3 <= 2423785))) OR ((ss_sold_date_sk#3 >= 2424121) AND (ss_sold_date_sk#3 <= 2424151)))))) OR (((((((ss_sold_date_sk#3 >= 2424486) AND (ss_sold_date_sk#3 <= 2424516)) OR ((ss_sold_date_sk#3 >= 2424851) AND (ss_sold_date_sk#3 <= 2424881))) OR (((ss_sold_date_sk#3 >= 2425216) AND (ss_sold_date_sk#3 <= 2425246)) OR ((ss_sold_date_sk#3 >= 2425582) AND (ss_sold_date_sk#3 <= 2425612)))) OR ((((ss_sold_date_sk#3 >= 2425947) AND (ss_sold_date_sk#3 <= 2425977)) OR ((ss_sold_date_sk#3 >= 2426312) AND (ss_sold_date_sk#3 <= 2426342))) OR ((ss_sold_date_sk#3 >= 2426677) AND (ss_sold_date_sk#3 <= 2426707)))) OR (((((ss_sold_date_sk#3 >= 2427043) AND (ss_sold_date_sk#3 <= 2427073)) OR ((ss_sold_date_sk#3 >= 2427408) AND (ss_sold_date_sk#3 <= 2427438))) OR ((ss_sold_date_sk#3 >= 2427773) AND (ss_sold_date_sk#3 <= 2427803))) OR ((((ss_sold_date_sk#3 >= 2428138) AND (ss_sold_date_sk#3 <= 2428168)) OR ((ss_sold_date_sk#3 >= 2428504) AND (ss_sold_date_sk#3 <= 2428534))) OR ((ss_sold_date_sk#3 >= 2428869) AND (ss_sold_date_sk#3 <= 2428899))))) OR ((((((ss_sold_date_sk#3 >= 2429234) AND (ss_sold_date_sk#3 <= 2429264)) OR ((ss_sold_date_sk#3 >= 2429599) AND (ss_sold_date_sk#3 <= 2429629))) OR ((ss_sold_date_sk#3 >= 2429965) AND (ss_sold_date_sk#3 <= 2429995))) OR ((((ss_sold_date_sk#3 >= 2430330) AND (ss_sold_date_sk#3 <= 2430360)) OR ((ss_sold_date_sk#3 >= 2430695) AND (ss_sold_date_sk#3 <= 2430725))) OR ((ss_sold_date_sk#3 >= 2431060) AND (ss_sold_date_sk#3 <= 2431090)))) OR (((((ss_sold_date_sk#3 >= 2431426) AND (ss_sold_date_sk#3 <= 2431456)) OR ((ss_sold_date_sk#3 >= 2431791) AND (ss_sold_date_sk#3 <= 2431821))) OR ((ss_sold_date_sk#3 >= 2432156) AND (ss_sold_date_sk#3 <= 2432186))) OR ((((ss_sold_date_sk#3 >= 2432521) AND (ss_sold_date_sk#3 <= 2432551)) OR ((ss_sold_date_sk#3 >= 2432887) AND (ss_sold_date_sk#3 <= 2432917))) OR ((ss_sold_date_sk#3 >= 2433252) AND (ss_sold_date_sk#3 <= 2433282))))))) OR ((((((((ss_sold_date_sk#3 >= 2433617) AND (ss_sold_date_sk#3 <= 2433647)) OR ((ss_sold_date_sk#3 >= 2433982) AND (ss_sold_date_sk#3 <= 2434012))) OR (((ss_sold_date_sk#3 >= 2434348) AND (ss_sold_date_sk#3 <= 2434378)) OR ((ss_sold_date_sk#3 >= 2434713) AND (ss_sold_date_sk#3 <= 2434743)))) OR ((((ss_sold_date_sk#3 >= 2435078) AND (ss_sold_date_sk#3 <= 2435108)) OR ((ss_sold_date_sk#3 >= 2435443) AND (ss_sold_date_sk#3 <= 2435473))) OR ((ss_sold_date_sk#3 >= 2435809) AND (ss_sold_date_sk#3 <= 2435839)))) OR (((((ss_sold_date_sk#3 >= 2436174) AND (ss_sold_date_sk#3 <= 2436204)) OR ((ss_sold_date_sk#3 >= 2436539) AND (ss_sold_date_sk#3 <= 2436569))) OR ((ss_sold_date_sk#3 >= 2436904) AND (ss_sold_date_sk#3 <= 2436934))) OR ((((ss_sold_date_sk#3 >= 2437270) AND (ss_sold_date_sk#3 <= 2437300)) OR ((ss_sold_date_sk#3 >= 2437635) AND (ss_sold_date_sk#3 <= 2437665))) OR ((ss_sold_date_sk#3 >= 2438000) AND (ss_sold_date_sk#3 <= 2438030))))) OR ((((((ss_sold_date_sk#3 >= 2438365) AND (ss_sold_date_sk#3 <= 2438395)) OR ((ss_sold_date_sk#3 >= 2438731) AND (ss_sold_date_sk#3 <= 2438761))) OR ((ss_sold_date_sk#3 >= 2439096) AND (ss_sold_date_sk#3 <= 2439126))) OR ((((ss_sold_date_sk#3 >= 2439461) AND (ss_sold_date_sk#3 <= 2439491)) OR ((ss_sold_date_sk#3 >= 2439826) AND (ss_sold_date_sk#3 <= 2439856))) OR ((ss_sold_date_sk#3 >= 2440192) AND (ss_sold_date_sk#3 <= 2440222)))) OR (((((ss_sold_date_sk#3 >= 2440557) AND (ss_sold_date_sk#3 <= 2440587)) OR ((ss_sold_date_sk#3 >= 2440922) AND (ss_sold_date_sk#3 <= 2440952))) OR ((ss_sold_date_sk#3 >= 2441287) AND (ss_sold_date_sk#3 <= 2441317))) OR ((((ss_sold_date_sk#3 >= 2441653) AND (ss_sold_date_sk#3 <= 2441683)) OR ((ss_sold_date_sk#3 >= 2442018) AND (ss_sold_date_sk#3 <= 2442048))) OR ((ss_sold_date_sk#3 >= 2442383) AND (ss_sold_date_sk#3 <= 2442413)))))) OR (((((((ss_sold_date_sk#3 >= 2442748) AND (ss_sold_date_sk#3 <= 2442778)) OR ((ss_sold_date_sk#3 >= 2443114) AND (ss_sold_date_sk#3 <= 2443144))) OR (((ss_sold_date_sk#3 >= 2443479) AND (ss_sold_date_sk#3 <= 2443509)) OR ((ss_sold_date_sk#3 >= 2443844) AND (ss_sold_date_sk#3 <= 2443874)))) OR ((((ss_sold_date_sk#3 >= 2444209) AND (ss_sold_date_sk#3 <= 2444239)) OR ((ss_sold_date_sk#3 >= 2444575) AND (ss_sold_date_sk#3 <= 2444605))) OR ((ss_sold_date_sk#3 >= 2444940) AND (ss_sold_date_sk#3 <= 2444970)))) OR (((((ss_sold_date_sk#3 >= 2445305) AND (ss_sold_date_sk#3 <= 2445335)) OR ((ss_sold_date_sk#3 >= 2445670) AND (ss_sold_date_sk#3 <= 2445700))) OR ((ss_sold_date_sk#3 >= 2446036) AND (ss_sold_date_sk#3 <= 2446066))) OR ((((ss_sold_date_sk#3 >= 2446401) AND (ss_sold_date_sk#3 <= 2446431)) OR ((ss_sold_date_sk#3 >= 2446766) AND (ss_sold_date_sk#3 <= 2446796))) OR ((ss_sold_date_sk#3 >= 2447131) AND (ss_sold_date_sk#3 <= 2447161))))) OR ((((((ss_sold_date_sk#3 >= 2447497) AND (ss_sold_date_sk#3 <= 2447527)) OR ((ss_sold_date_sk#3 >= 2447862) AND (ss_sold_date_sk#3 <= 2447892))) OR ((ss_sold_date_sk#3 >= 2448227) AND (ss_sold_date_sk#3 <= 2448257))) OR ((((ss_sold_date_sk#3 >= 2448592) AND (ss_sold_date_sk#3 <= 2448622)) OR ((ss_sold_date_sk#3 >= 2448958) AND (ss_sold_date_sk#3 <= 2448988))) OR ((ss_sold_date_sk#3 >= 2449323) AND (ss_sold_date_sk#3 <= 2449353)))) OR (((((ss_sold_date_sk#3 >= 2449688) AND (ss_sold_date_sk#3 <= 2449718)) OR ((ss_sold_date_sk#3 >= 2450053) AND (ss_sold_date_sk#3 <= 2450083))) OR ((ss_sold_date_sk#3 >= 2450419) AND (ss_sold_date_sk#3 <= 2450449))) OR ((((ss_sold_date_sk#3 >= 2450784) AND (ss_sold_date_sk#3 <= 2450814)) OR ((ss_sold_date_sk#3 >= 2451149) AND (ss_sold_date_sk#3 <= 2451179))) OR ((ss_sold_date_sk#3 >= 2451514) AND (ss_sold_date_sk#3 <= 2451544)))))))) OR (((((((((ss_sold_date_sk#3 >= 2451880) AND (ss_sold_date_sk#3 <= 2451910)) OR ((ss_sold_date_sk#3 >= 2452245) AND (ss_sold_date_sk#3 <= 2452275))) OR (((ss_sold_date_sk#3 >= 2452610) AND (ss_sold_date_sk#3 <= 2452640)) OR ((ss_sold_date_sk#3 >= 2452975) AND (ss_sold_date_sk#3 <= 2453005)))) OR ((((ss_sold_date_sk#3 >= 2453341) AND (ss_sold_date_sk#3 <= 2453371)) OR ((ss_sold_date_sk#3 >= 2453706) AND (ss_sold_date_sk#3 <= 2453736))) OR ((ss_sold_date_sk#3 >= 2454071) AND (ss_sold_date_sk#3 <= 2454101)))) OR (((((ss_sold_date_sk#3 >= 2454436) AND (ss_sold_date_sk#3 <= 2454466)) OR ((ss_sold_date_sk#3 >= 2454802) AND (ss_sold_date_sk#3 <= 2454832))) OR ((ss_sold_date_sk#3 >= 2455167) AND (ss_sold_date_sk#3 <= 2455197))) OR ((((ss_sold_date_sk#3 >= 2455532) AND (ss_sold_date_sk#3 <= 2455562)) OR ((ss_sold_date_sk#3 >= 2455897) AND (ss_sold_date_sk#3 <= 2455927))) OR ((ss_sold_date_sk#3 >= 2456263) AND (ss_sold_date_sk#3 <= 2456293))))) OR ((((((ss_sold_date_sk#3 >= 2456628) AND (ss_sold_date_sk#3 <= 2456658)) OR ((ss_sold_date_sk#3 >= 2456993) AND (ss_sold_date_sk#3 <= 2457023))) OR ((ss_sold_date_sk#3 >= 2457358) AND (ss_sold_date_sk#3 <= 2457388))) OR ((((ss_sold_date_sk#3 >= 2457724) AND (ss_sold_date_sk#3 <= 2457754)) OR ((ss_sold_date_sk#3 >= 2458089) AND (ss_sold_date_sk#3 <= 2458119))) OR ((ss_sold_date_sk#3 >= 2458454) AND (ss_sold_date_sk#3 <= 2458484)))) OR (((((ss_sold_date_sk#3 >= 2458819) AND (ss_sold_date_sk#3 <= 2458849)) OR ((ss_sold_date_sk#3 >= 2459185) AND (ss_sold_date_sk#3 <= 2459215))) OR ((ss_sold_date_sk#3 >= 2459550) AND (ss_sold_date_sk#3 <= 2459580))) OR ((((ss_sold_date_sk#3 >= 2459915) AND (ss_sold_date_sk#3 <= 2459945)) OR ((ss_sold_date_sk#3 >= 2460280) AND (ss_sold_date_sk#3 <= 2460310))) OR ((ss_sold_date_sk#3 >= 2460646) AND (ss_sold_date_sk#3 <= 2460676)))))) OR (((((((ss_sold_date_sk#3 >= 2461011) AND (ss_sold_date_sk#3 <= 2461041)) OR ((ss_sold_date_sk#3 >= 2461376) AND (ss_sold_date_sk#3 <= 2461406))) OR (((ss_sold_date_sk#3 >= 2461741) AND (ss_sold_date_sk#3 <= 2461771)) OR ((ss_sold_date_sk#3 >= 2462107) AND (ss_sold_date_sk#3 <= 2462137)))) OR ((((ss_sold_date_sk#3 >= 2462472) AND (ss_sold_date_sk#3 <= 2462502)) OR ((ss_sold_date_sk#3 >= 2462837) AND (ss_sold_date_sk#3 <= 2462867))) OR ((ss_sold_date_sk#3 >= 2463202) AND (ss_sold_date_sk#3 <= 2463232)))) OR (((((ss_sold_date_sk#3 >= 2463568) AND (ss_sold_date_sk#3 <= 2463598)) OR ((ss_sold_date_sk#3 >= 2463933) AND (ss_sold_date_sk#3 <= 2463963))) OR ((ss_sold_date_sk#3 >= 2464298) AND (ss_sold_date_sk#3 <= 2464328))) OR ((((ss_sold_date_sk#3 >= 2464663) AND (ss_sold_date_sk#3 <= 2464693)) OR ((ss_sold_date_sk#3 >= 2465029) AND (ss_sold_date_sk#3 <= 2465059))) OR ((ss_sold_date_sk#3 >= 2465394) AND (ss_sold_date_sk#3 <= 2465424))))) OR ((((((ss_sold_date_sk#3 >= 2465759) AND (ss_sold_date_sk#3 <= 2465789)) OR ((ss_sold_date_sk#3 >= 2466124) AND (ss_sold_date_sk#3 <= 2466154))) OR ((ss_sold_date_sk#3 >= 2466490) AND (ss_sold_date_sk#3 <= 2466520))) OR ((((ss_sold_date_sk#3 >= 2466855) AND (ss_sold_date_sk#3 <= 2466885)) OR ((ss_sold_date_sk#3 >= 2467220) AND (ss_sold_date_sk#3 <= 2467250))) OR ((ss_sold_date_sk#3 >= 2467585) AND (ss_sold_date_sk#3 <= 2467615)))) OR (((((ss_sold_date_sk#3 >= 2467951) AND (ss_sold_date_sk#3 <= 2467981)) OR ((ss_sold_date_sk#3 >= 2468316) AND (ss_sold_date_sk#3 <= 2468346))) OR ((ss_sold_date_sk#3 >= 2468681) AND (ss_sold_date_sk#3 <= 2468711))) OR ((((ss_sold_date_sk#3 >= 2469046) AND (ss_sold_date_sk#3 <= 2469076)) OR ((ss_sold_date_sk#3 >= 2469412) AND (ss_sold_date_sk#3 <= 2469442))) OR ((ss_sold_date_sk#3 >= 2469777) AND (ss_sold_date_sk#3 <= 2469807))))))) OR ((((((((ss_sold_date_sk#3 >= 2470142) AND (ss_sold_date_sk#3 <= 2470172)) OR ((ss_sold_date_sk#3 >= 2470507) AND (ss_sold_date_sk#3 <= 2470537))) OR (((ss_sold_date_sk#3 >= 2470873) AND (ss_sold_date_sk#3 <= 2470903)) OR ((ss_sold_date_sk#3 >= 2471238) AND (ss_sold_date_sk#3 <= 2471268)))) OR ((((ss_sold_date_sk#3 >= 2471603) AND (ss_sold_date_sk#3 <= 2471633)) OR ((ss_sold_date_sk#3 >= 2471968) AND (ss_sold_date_sk#3 <= 2471998))) OR ((ss_sold_date_sk#3 >= 2472334) AND (ss_sold_date_sk#3 <= 2472364)))) OR (((((ss_sold_date_sk#3 >= 2472699) AND (ss_sold_date_sk#3 <= 2472729)) OR ((ss_sold_date_sk#3 >= 2473064) AND (ss_sold_date_sk#3 <= 2473094))) OR ((ss_sold_date_sk#3 >= 2473429) AND (ss_sold_date_sk#3 <= 2473459))) OR ((((ss_sold_date_sk#3 >= 2473795) AND (ss_sold_date_sk#3 <= 2473825)) OR ((ss_sold_date_sk#3 >= 2474160) AND (ss_sold_date_sk#3 <= 2474190))) OR ((ss_sold_date_sk#3 >= 2474525) AND (ss_sold_date_sk#3 <= 2474555))))) OR ((((((ss_sold_date_sk#3 >= 2474890) AND (ss_sold_date_sk#3 <= 2474920)) OR ((ss_sold_date_sk#3 >= 2475256) AND (ss_sold_date_sk#3 <= 2475286))) OR ((ss_sold_date_sk#3 >= 2475621) AND (ss_sold_date_sk#3 <= 2475651))) OR ((((ss_sold_date_sk#3 >= 2475986) AND (ss_sold_date_sk#3 <= 2476016)) OR ((ss_sold_date_sk#3 >= 2476351) AND (ss_sold_date_sk#3 <= 2476381))) OR ((ss_sold_date_sk#3 >= 2476717) AND (ss_sold_date_sk#3 <= 2476747)))) OR (((((ss_sold_date_sk#3 >= 2477082) AND (ss_sold_date_sk#3 <= 2477112)) OR ((ss_sold_date_sk#3 >= 2477447) AND (ss_sold_date_sk#3 <= 2477477))) OR ((ss_sold_date_sk#3 >= 2477812) AND (ss_sold_date_sk#3 <= 2477842))) OR ((((ss_sold_date_sk#3 >= 2478178) AND (ss_sold_date_sk#3 <= 2478208)) OR ((ss_sold_date_sk#3 >= 2478543) AND (ss_sold_date_sk#3 <= 2478573))) OR ((ss_sold_date_sk#3 >= 2478908) AND (ss_sold_date_sk#3 <= 2478938)))))) OR (((((((ss_sold_date_sk#3 >= 2479273) AND (ss_sold_date_sk#3 <= 2479303)) OR ((ss_sold_date_sk#3 >= 2479639) AND (ss_sold_date_sk#3 <= 2479669))) OR (((ss_sold_date_sk#3 >= 2480004) AND (ss_sold_date_sk#3 <= 2480034)) OR ((ss_sold_date_sk#3 >= 2480369) AND (ss_sold_date_sk#3 <= 2480399)))) OR ((((ss_sold_date_sk#3 >= 2480734) AND (ss_sold_date_sk#3 <= 2480764)) OR ((ss_sold_date_sk#3 >= 2481100) AND (ss_sold_date_sk#3 <= 2481130))) OR ((ss_sold_date_sk#3 >= 2481465) AND (ss_sold_date_sk#3 <= 2481495)))) OR (((((ss_sold_date_sk#3 >= 2481830) AND (ss_sold_date_sk#3 <= 2481860)) OR ((ss_sold_date_sk#3 >= 2482195) AND (ss_sold_date_sk#3 <= 2482225))) OR ((ss_sold_date_sk#3 >= 2482561) AND (ss_sold_date_sk#3 <= 2482591))) OR ((((ss_sold_date_sk#3 >= 2482926) AND (ss_sold_date_sk#3 <= 2482956)) OR ((ss_sold_date_sk#3 >= 2483291) AND (ss_sold_date_sk#3 <= 2483321))) OR ((ss_sold_date_sk#3 >= 2483656) AND (ss_sold_date_sk#3 <= 2483686))))) OR ((((((ss_sold_date_sk#3 >= 2484022) AND (ss_sold_date_sk#3 <= 2484052)) OR ((ss_sold_date_sk#3 >= 2484387) AND (ss_sold_date_sk#3 <= 2484417))) OR ((ss_sold_date_sk#3 >= 2484752) AND (ss_sold_date_sk#3 <= 2484782))) OR ((((ss_sold_date_sk#3 >= 2485117) AND (ss_sold_date_sk#3 <= 2485147)) OR ((ss_sold_date_sk#3 >= 2485483) AND (ss_sold_date_sk#3 <= 2485513))) OR ((ss_sold_date_sk#3 >= 2485848) AND (ss_sold_date_sk#3 <= 2485878)))) OR (((((ss_sold_date_sk#3 >= 2486213) AND (ss_sold_date_sk#3 <= 2486243)) OR ((ss_sold_date_sk#3 >= 2486578) AND (ss_sold_date_sk#3 <= 2486608))) OR ((ss_sold_date_sk#3 >= 2486944) AND (ss_sold_date_sk#3 <= 2486974))) OR ((((ss_sold_date_sk#3 >= 2487309) AND (ss_sold_date_sk#3 <= 2487339)) OR ((ss_sold_date_sk#3 >= 2487674) AND (ss_sold_date_sk#3 <= 2487704))) OR ((ss_sold_date_sk#3 >= 2488039) AND (ss_sold_date_sk#3 <= 2488069))))))))), isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -39,7 +39,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#5, i_brand_id#6, i_brand#7, i_manufact_id#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,436), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,436), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -156,7 +156,7 @@ ColumnarBroadcastExchange (33) Output [3]: [d_date_sk#9, d_year#10, d_moy#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), EqualTo(d_moy,12), Or(Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2415355),LessThanOrEqual(d_date_sk,2415385)),And(GreaterThanOrEqual(d_date_sk,2415720),LessThanOrEqual(d_date_sk,2415750))),Or(And(GreaterThanOrEqual(d_date_sk,2416085),LessThanOrEqual(d_date_sk,2416115)),And(GreaterThanOrEqual(d_date_sk,2416450),LessThanOrEqual(d_date_sk,2416480)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2416816),LessThanOrEqual(d_date_sk,2416846)),And(GreaterThanOrEqual(d_date_sk,2417181),LessThanOrEqual(d_date_sk,2417211))),And(GreaterThanOrEqual(d_date_sk,2417546),LessThanOrEqual(d_date_sk,2417576)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2417911),LessThanOrEqual(d_date_sk,2417941)),And(GreaterThanOrEqual(d_date_sk,2418277),LessThanOrEqual(d_date_sk,2418307))),And(GreaterThanOrEqual(d_date_sk,2418642),LessThanOrEqual(d_date_sk,2418672))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2419007),LessThanOrEqual(d_date_sk,2419037)),And(GreaterThanOrEqual(d_date_sk,2419372),LessThanOrEqual(d_date_sk,2419402))),And(GreaterThanOrEqual(d_date_sk,2419738),LessThanOrEqual(d_date_sk,2419768))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2420103),LessThanOrEqual(d_date_sk,2420133)),And(GreaterThanOrEqual(d_date_sk,2420468),LessThanOrEqual(d_date_sk,2420498))),And(GreaterThanOrEqual(d_date_sk,2420833),LessThanOrEqual(d_date_sk,2420863))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2421199),LessThanOrEqual(d_date_sk,2421229)),And(GreaterThanOrEqual(d_date_sk,2421564),LessThanOrEqual(d_date_sk,2421594))),And(GreaterThanOrEqual(d_date_sk,2421929),LessThanOrEqual(d_date_sk,2421959)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2422294),LessThanOrEqual(d_date_sk,2422324)),And(GreaterThanOrEqual(d_date_sk,2422660),LessThanOrEqual(d_date_sk,2422690))),And(GreaterThanOrEqual(d_date_sk,2423025),LessThanOrEqual(d_date_sk,2423055))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2423390),LessThanOrEqual(d_date_sk,2423420)),And(GreaterThanOrEqual(d_date_sk,2423755),LessThanOrEqual(d_date_sk,2423785))),And(GreaterThanOrEqual(d_date_sk,2424121),LessThanOrEqual(d_date_sk,2424151)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2424486),LessThanOrEqual(d_date_sk,2424516)),And(GreaterThanOrEqual(d_date_sk,2424851),LessThanOrEqual(d_date_sk,2424881))),Or(And(GreaterThanOrEqual(d_date_sk,2425216),LessThanOrEqual(d_date_sk,2425246)),And(GreaterThanOrEqual(d_date_sk,2425582),LessThanOrEqual(d_date_sk,2425612)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2425947),LessThanOrEqual(d_date_sk,2425977)),And(GreaterThanOrEqual(d_date_sk,2426312),LessThanOrEqual(d_date_sk,2426342))),And(GreaterThanOrEqual(d_date_sk,2426677),LessThanOrEqual(d_date_sk,2426707)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2427043),LessThanOrEqual(d_date_sk,2427073)),And(GreaterThanOrEqual(d_date_sk,2427408),LessThanOrEqual(d_date_sk,2427438))),And(GreaterThanOrEqual(d_date_sk,2427773),LessThanOrEqual(d_date_sk,2427803))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2428138),LessThanOrEqual(d_date_sk,2428168)),And(GreaterThanOrEqual(d_date_sk,2428504),LessThanOrEqual(d_date_sk,2428534))),And(GreaterThanOrEqual(d_date_sk,2428869),LessThanOrEqual(d_date_sk,2428899))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2429234),LessThanOrEqual(d_date_sk,2429264)),And(GreaterThanOrEqual(d_date_sk,2429599),LessThanOrEqual(d_date_sk,2429629))),And(GreaterThanOrEqual(d_date_sk,2429965),LessThanOrEqual(d_date_sk,2429995))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2430330),LessThanOrEqual(d_date_sk,2430360)),And(GreaterThanOrEqual(d_date_sk,2430695),LessThanOrEqual(d_date_sk,2430725))),And(GreaterThanOrEqual(d_date_sk,2431060),LessThanOrEqual(d_date_sk,2431090)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2431426),LessThanOrEqual(d_date_sk,2431456)),And(GreaterThanOrEqual(d_date_sk,2431791),LessThanOrEqual(d_date_sk,2431821))),And(GreaterThanOrEqual(d_date_sk,2432156),LessThanOrEqual(d_date_sk,2432186))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2432521),LessThanOrEqual(d_date_sk,2432551)),And(GreaterThanOrEqual(d_date_sk,2432887),LessThanOrEqual(d_date_sk,2432917))),And(GreaterThanOrEqual(d_date_sk,2433252),LessThanOrEqual(d_date_sk,2433282))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2433617),LessThanOrEqual(d_date_sk,2433647)),And(GreaterThanOrEqual(d_date_sk,2433982),LessThanOrEqual(d_date_sk,2434012))),Or(And(GreaterThanOrEqual(d_date_sk,2434348),LessThanOrEqual(d_date_sk,2434378)),And(GreaterThanOrEqual(d_date_sk,2434713),LessThanOrEqual(d_date_sk,2434743)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2435078),LessThanOrEqual(d_date_sk,2435108)),And(GreaterThanOrEqual(d_date_sk,2435443),LessThanOrEqual(d_date_sk,2435473))),And(GreaterThanOrEqual(d_date_sk,2435809),LessThanOrEqual(d_date_sk,2435839)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2436174),LessThanOrEqual(d_date_sk,2436204)),And(GreaterThanOrEqual(d_date_sk,2436539),LessThanOrEqual(d_date_sk,2436569))),And(GreaterThanOrEqual(d_date_sk,2436904),LessThanOrEqual(d_date_sk,2436934))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2437270),LessThanOrEqual(d_date_sk,2437300)),And(GreaterThanOrEqual(d_date_sk,2437635),LessThanOrEqual(d_date_sk,2437665))),And(GreaterThanOrEqual(d_date_sk,2438000),LessThanOrEqual(d_date_sk,2438030))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2438365),LessThanOrEqual(d_date_sk,2438395)),And(GreaterThanOrEqual(d_date_sk,2438731),LessThanOrEqual(d_date_sk,2438761))),And(GreaterThanOrEqual(d_date_sk,2439096),LessThanOrEqual(d_date_sk,2439126))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2439461),LessThanOrEqual(d_date_sk,2439491)),And(GreaterThanOrEqual(d_date_sk,2439826),LessThanOrEqual(d_date_sk,2439856))),And(GreaterThanOrEqual(d_date_sk,2440192),LessThanOrEqual(d_date_sk,2440222)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2440557),LessThanOrEqual(d_date_sk,2440587)),And(GreaterThanOrEqual(d_date_sk,2440922),LessThanOrEqual(d_date_sk,2440952))),And(GreaterThanOrEqual(d_date_sk,2441287),LessThanOrEqual(d_date_sk,2441317))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2441653),LessThanOrEqual(d_date_sk,2441683)),And(GreaterThanOrEqual(d_date_sk,2442018),LessThanOrEqual(d_date_sk,2442048))),And(GreaterThanOrEqual(d_date_sk,2442383),LessThanOrEqual(d_date_sk,2442413)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2442748),LessThanOrEqual(d_date_sk,2442778)),And(GreaterThanOrEqual(d_date_sk,2443114),LessThanOrEqual(d_date_sk,2443144))),Or(And(GreaterThanOrEqual(d_date_sk,2443479),LessThanOrEqual(d_date_sk,2443509)),And(GreaterThanOrEqual(d_date_sk,2443844),LessThanOrEqual(d_date_sk,2443874)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2444209),LessThanOrEqual(d_date_sk,2444239)),And(GreaterThanOrEqual(d_date_sk,2444575),LessThanOrEqual(d_date_sk,2444605))),And(GreaterThanOrEqual(d_date_sk,2444940),LessThanOrEqual(d_date_sk,2444970)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2445305),LessThanOrEqual(d_date_sk,2445335)),And(GreaterThanOrEqual(d_date_sk,2445670),LessThanOrEqual(d_date_sk,2445700))),And(GreaterThanOrEqual(d_date_sk,2446036),LessThanOrEqual(d_date_sk,2446066))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2446401),LessThanOrEqual(d_date_sk,2446431)),And(GreaterThanOrEqual(d_date_sk,2446766),LessThanOrEqual(d_date_sk,2446796))),And(GreaterThanOrEqual(d_date_sk,2447131),LessThanOrEqual(d_date_sk,2447161))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2447497),LessThanOrEqual(d_date_sk,2447527)),And(GreaterThanOrEqual(d_date_sk,2447862),LessThanOrEqual(d_date_sk,2447892))),And(GreaterThanOrEqual(d_date_sk,2448227),LessThanOrEqual(d_date_sk,2448257))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2448592),LessThanOrEqual(d_date_sk,2448622)),And(GreaterThanOrEqual(d_date_sk,2448958),LessThanOrEqual(d_date_sk,2448988))),And(GreaterThanOrEqual(d_date_sk,2449323),LessThanOrEqual(d_date_sk,2449353)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2449688),LessThanOrEqual(d_date_sk,2449718)),And(GreaterThanOrEqual(d_date_sk,2450053),LessThanOrEqual(d_date_sk,2450083))),And(GreaterThanOrEqual(d_date_sk,2450419),LessThanOrEqual(d_date_sk,2450449))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2450784),LessThanOrEqual(d_date_sk,2450814)),And(GreaterThanOrEqual(d_date_sk,2451149),LessThanOrEqual(d_date_sk,2451179))),And(GreaterThanOrEqual(d_date_sk,2451514),LessThanOrEqual(d_date_sk,2451544)))))))),Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2451880),LessThanOrEqual(d_date_sk,2451910)),And(GreaterThanOrEqual(d_date_sk,2452245),LessThanOrEqual(d_date_sk,2452275))),Or(And(GreaterThanOrEqual(d_date_sk,2452610),LessThanOrEqual(d_date_sk,2452640)),And(GreaterThanOrEqual(d_date_sk,2452975),LessThanOrEqual(d_date_sk,2453005)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2453341),LessThanOrEqual(d_date_sk,2453371)),And(GreaterThanOrEqual(d_date_sk,2453706),LessThanOrEqual(d_date_sk,2453736))),And(GreaterThanOrEqual(d_date_sk,2454071),LessThanOrEqual(d_date_sk,2454101)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2454436),LessThanOrEqual(d_date_sk,2454466)),And(GreaterThanOrEqual(d_date_sk,2454802),LessThanOrEqual(d_date_sk,2454832))),And(GreaterThanOrEqual(d_date_sk,2455167),LessThanOrEqual(d_date_sk,2455197))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2455532),LessThanOrEqual(d_date_sk,2455562)),And(GreaterThanOrEqual(d_date_sk,2455897),LessThanOrEqual(d_date_sk,2455927))),And(GreaterThanOrEqual(d_date_sk,2456263),LessThanOrEqual(d_date_sk,2456293))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2456628),LessThanOrEqual(d_date_sk,2456658)),And(GreaterThanOrEqual(d_date_sk,2456993),LessThanOrEqual(d_date_sk,2457023))),And(GreaterThanOrEqual(d_date_sk,2457358),LessThanOrEqual(d_date_sk,2457388))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2457724),LessThanOrEqual(d_date_sk,2457754)),And(GreaterThanOrEqual(d_date_sk,2458089),LessThanOrEqual(d_date_sk,2458119))),And(GreaterThanOrEqual(d_date_sk,2458454),LessThanOrEqual(d_date_sk,2458484)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2458819),LessThanOrEqual(d_date_sk,2458849)),And(GreaterThanOrEqual(d_date_sk,2459185),LessThanOrEqual(d_date_sk,2459215))),And(GreaterThanOrEqual(d_date_sk,2459550),LessThanOrEqual(d_date_sk,2459580))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2459915),LessThanOrEqual(d_date_sk,2459945)),And(GreaterThanOrEqual(d_date_sk,2460280),LessThanOrEqual(d_date_sk,2460310))),And(GreaterThanOrEqual(d_date_sk,2460646),LessThanOrEqual(d_date_sk,2460676)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2461011),LessThanOrEqual(d_date_sk,2461041)),And(GreaterThanOrEqual(d_date_sk,2461376),LessThanOrEqual(d_date_sk,2461406))),Or(And(GreaterThanOrEqual(d_date_sk,2461741),LessThanOrEqual(d_date_sk,2461771)),And(GreaterThanOrEqual(d_date_sk,2462107),LessThanOrEqual(d_date_sk,2462137)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2462472),LessThanOrEqual(d_date_sk,2462502)),And(GreaterThanOrEqual(d_date_sk,2462837),LessThanOrEqual(d_date_sk,2462867))),And(GreaterThanOrEqual(d_date_sk,2463202),LessThanOrEqual(d_date_sk,2463232)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2463568),LessThanOrEqual(d_date_sk,2463598)),And(GreaterThanOrEqual(d_date_sk,2463933),LessThanOrEqual(d_date_sk,2463963))),And(GreaterThanOrEqual(d_date_sk,2464298),LessThanOrEqual(d_date_sk,2464328))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2464663),LessThanOrEqual(d_date_sk,2464693)),And(GreaterThanOrEqual(d_date_sk,2465029),LessThanOrEqual(d_date_sk,2465059))),And(GreaterThanOrEqual(d_date_sk,2465394),LessThanOrEqual(d_date_sk,2465424))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2465759),LessThanOrEqual(d_date_sk,2465789)),And(GreaterThanOrEqual(d_date_sk,2466124),LessThanOrEqual(d_date_sk,2466154))),And(GreaterThanOrEqual(d_date_sk,2466490),LessThanOrEqual(d_date_sk,2466520))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2466855),LessThanOrEqual(d_date_sk,2466885)),And(GreaterThanOrEqual(d_date_sk,2467220),LessThanOrEqual(d_date_sk,2467250))),And(GreaterThanOrEqual(d_date_sk,2467585),LessThanOrEqual(d_date_sk,2467615)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2467951),LessThanOrEqual(d_date_sk,2467981)),And(GreaterThanOrEqual(d_date_sk,2468316),LessThanOrEqual(d_date_sk,2468346))),And(GreaterThanOrEqual(d_date_sk,2468681),LessThanOrEqual(d_date_sk,2468711))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2469046),LessThanOrEqual(d_date_sk,2469076)),And(GreaterThanOrEqual(d_date_sk,2469412),LessThanOrEqual(d_date_sk,2469442))),And(GreaterThanOrEqual(d_date_sk,2469777),LessThanOrEqual(d_date_sk,2469807))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2470142),LessThanOrEqual(d_date_sk,2470172)),And(GreaterThanOrEqual(d_date_sk,2470507),LessThanOrEqual(d_date_sk,2470537))),Or(And(GreaterThanOrEqual(d_date_sk,2470873),LessThanOrEqual(d_date_sk,2470903)),And(GreaterThanOrEqual(d_date_sk,2471238),LessThanOrEqual(d_date_sk,2471268)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2471603),LessThanOrEqual(d_date_sk,2471633)),And(GreaterThanOrEqual(d_date_sk,2471968),LessThanOrEqual(d_date_sk,2471998))),And(GreaterThanOrEqual(d_date_sk,2472334),LessThanOrEqual(d_date_sk,2472364)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2472699),LessThanOrEqual(d_date_sk,2472729)),And(GreaterThanOrEqual(d_date_sk,2473064),LessThanOrEqual(d_date_sk,2473094))),And(GreaterThanOrEqual(d_date_sk,2473429),LessThanOrEqual(d_date_sk,2473459))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2473795),LessThanOrEqual(d_date_sk,2473825)),And(GreaterThanOrEqual(d_date_sk,2474160),LessThanOrEqual(d_date_sk,2474190))),And(GreaterThanOrEqual(d_date_sk,2474525),LessThanOrEqual(d_date_sk,2474555))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2474890),LessThanOrEqual(d_date_sk,2474920)),And(GreaterThanOrEqual(d_date_sk,2475256),LessThanOrEqual(d_date_sk,2475286))),And(GreaterThanOrEqual(d_date_sk,2475621),LessThanOrEqual(d_date_sk,2475651))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2475986),LessThanOrEqual(d_date_sk,2476016)),And(GreaterThanOrEqual(d_date_sk,2476351),LessThanOrEqual(d_date_sk,2476381))),And(GreaterThanOrEqual(d_date_sk,2476717),LessThanOrEqual(d_date_sk,2476747)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2477082),LessThanOrEqual(d_date_sk,2477112)),And(GreaterThanOrEqual(d_date_sk,2477447),LessThanOrEqual(d_date_sk,2477477))),And(GreaterThanOrEqual(d_date_sk,2477812),LessThanOrEqual(d_date_sk,2477842))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2478178),LessThanOrEqual(d_date_sk,2478208)),And(GreaterThanOrEqual(d_date_sk,2478543),LessThanOrEqual(d_date_sk,2478573))),And(GreaterThanOrEqual(d_date_sk,2478908),LessThanOrEqual(d_date_sk,2478938)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2479273),LessThanOrEqual(d_date_sk,2479303)),And(GreaterThanOrEqual(d_date_sk,2479639),LessThanOrEqual(d_date_sk,2479669))),Or(And(GreaterThanOrEqual(d_date_sk,2480004),LessThanOrEqual(d_date_sk,2480034)),And(GreaterThanOrEqual(d_date_sk,2480369),LessThanOrEqual(d_date_sk,2480399)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2480734),LessThanOrEqual(d_date_sk,2480764)),And(GreaterThanOrEqual(d_date_sk,2481100),LessThanOrEqual(d_date_sk,2481130))),And(GreaterThanOrEqual(d_date_sk,2481465),LessThanOrEqual(d_date_sk,2481495)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2481830),LessThanOrEqual(d_date_sk,2481860)),And(GreaterThanOrEqual(d_date_sk,2482195),LessThanOrEqual(d_date_sk,2482225))),And(GreaterThanOrEqual(d_date_sk,2482561),LessThanOrEqual(d_date_sk,2482591))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2482926),LessThanOrEqual(d_date_sk,2482956)),And(GreaterThanOrEqual(d_date_sk,2483291),LessThanOrEqual(d_date_sk,2483321))),And(GreaterThanOrEqual(d_date_sk,2483656),LessThanOrEqual(d_date_sk,2483686))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2484022),LessThanOrEqual(d_date_sk,2484052)),And(GreaterThanOrEqual(d_date_sk,2484387),LessThanOrEqual(d_date_sk,2484417))),And(GreaterThanOrEqual(d_date_sk,2484752),LessThanOrEqual(d_date_sk,2484782))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2485117),LessThanOrEqual(d_date_sk,2485147)),And(GreaterThanOrEqual(d_date_sk,2485483),LessThanOrEqual(d_date_sk,2485513))),And(GreaterThanOrEqual(d_date_sk,2485848),LessThanOrEqual(d_date_sk,2485878)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2486213),LessThanOrEqual(d_date_sk,2486243)),And(GreaterThanOrEqual(d_date_sk,2486578),LessThanOrEqual(d_date_sk,2486608))),And(GreaterThanOrEqual(d_date_sk,2486944),LessThanOrEqual(d_date_sk,2486974))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2487309),LessThanOrEqual(d_date_sk,2487339)),And(GreaterThanOrEqual(d_date_sk,2487674),LessThanOrEqual(d_date_sk,2487704))),And(GreaterThanOrEqual(d_date_sk,2488039),LessThanOrEqual(d_date_sk,2488069))))))))), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *EqualTo(d_moy,12), *Or(Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2415355),LessThanOrEqual(d_date_sk,2415385)),And(GreaterThanOrEqual(d_date_sk,2415720),LessThanOrEqual(d_date_sk,2415750))),Or(And(GreaterThanOrEqual(d_date_sk,2416085),LessThanOrEqual(d_date_sk,2416115)),And(GreaterThanOrEqual(d_date_sk,2416450),LessThanOrEqual(d_date_sk,2416480)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2416816),LessThanOrEqual(d_date_sk,2416846)),And(GreaterThanOrEqual(d_date_sk,2417181),LessThanOrEqual(d_date_sk,2417211))),And(GreaterThanOrEqual(d_date_sk,2417546),LessThanOrEqual(d_date_sk,2417576)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2417911),LessThanOrEqual(d_date_sk,2417941)),And(GreaterThanOrEqual(d_date_sk,2418277),LessThanOrEqual(d_date_sk,2418307))),And(GreaterThanOrEqual(d_date_sk,2418642),LessThanOrEqual(d_date_sk,2418672))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2419007),LessThanOrEqual(d_date_sk,2419037)),And(GreaterThanOrEqual(d_date_sk,2419372),LessThanOrEqual(d_date_sk,2419402))),And(GreaterThanOrEqual(d_date_sk,2419738),LessThanOrEqual(d_date_sk,2419768))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2420103),LessThanOrEqual(d_date_sk,2420133)),And(GreaterThanOrEqual(d_date_sk,2420468),LessThanOrEqual(d_date_sk,2420498))),And(GreaterThanOrEqual(d_date_sk,2420833),LessThanOrEqual(d_date_sk,2420863))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2421199),LessThanOrEqual(d_date_sk,2421229)),And(GreaterThanOrEqual(d_date_sk,2421564),LessThanOrEqual(d_date_sk,2421594))),And(GreaterThanOrEqual(d_date_sk,2421929),LessThanOrEqual(d_date_sk,2421959)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2422294),LessThanOrEqual(d_date_sk,2422324)),And(GreaterThanOrEqual(d_date_sk,2422660),LessThanOrEqual(d_date_sk,2422690))),And(GreaterThanOrEqual(d_date_sk,2423025),LessThanOrEqual(d_date_sk,2423055))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2423390),LessThanOrEqual(d_date_sk,2423420)),And(GreaterThanOrEqual(d_date_sk,2423755),LessThanOrEqual(d_date_sk,2423785))),And(GreaterThanOrEqual(d_date_sk,2424121),LessThanOrEqual(d_date_sk,2424151)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2424486),LessThanOrEqual(d_date_sk,2424516)),And(GreaterThanOrEqual(d_date_sk,2424851),LessThanOrEqual(d_date_sk,2424881))),Or(And(GreaterThanOrEqual(d_date_sk,2425216),LessThanOrEqual(d_date_sk,2425246)),And(GreaterThanOrEqual(d_date_sk,2425582),LessThanOrEqual(d_date_sk,2425612)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2425947),LessThanOrEqual(d_date_sk,2425977)),And(GreaterThanOrEqual(d_date_sk,2426312),LessThanOrEqual(d_date_sk,2426342))),And(GreaterThanOrEqual(d_date_sk,2426677),LessThanOrEqual(d_date_sk,2426707)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2427043),LessThanOrEqual(d_date_sk,2427073)),And(GreaterThanOrEqual(d_date_sk,2427408),LessThanOrEqual(d_date_sk,2427438))),And(GreaterThanOrEqual(d_date_sk,2427773),LessThanOrEqual(d_date_sk,2427803))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2428138),LessThanOrEqual(d_date_sk,2428168)),And(GreaterThanOrEqual(d_date_sk,2428504),LessThanOrEqual(d_date_sk,2428534))),And(GreaterThanOrEqual(d_date_sk,2428869),LessThanOrEqual(d_date_sk,2428899))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2429234),LessThanOrEqual(d_date_sk,2429264)),And(GreaterThanOrEqual(d_date_sk,2429599),LessThanOrEqual(d_date_sk,2429629))),And(GreaterThanOrEqual(d_date_sk,2429965),LessThanOrEqual(d_date_sk,2429995))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2430330),LessThanOrEqual(d_date_sk,2430360)),And(GreaterThanOrEqual(d_date_sk,2430695),LessThanOrEqual(d_date_sk,2430725))),And(GreaterThanOrEqual(d_date_sk,2431060),LessThanOrEqual(d_date_sk,2431090)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2431426),LessThanOrEqual(d_date_sk,2431456)),And(GreaterThanOrEqual(d_date_sk,2431791),LessThanOrEqual(d_date_sk,2431821))),And(GreaterThanOrEqual(d_date_sk,2432156),LessThanOrEqual(d_date_sk,2432186))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2432521),LessThanOrEqual(d_date_sk,2432551)),And(GreaterThanOrEqual(d_date_sk,2432887),LessThanOrEqual(d_date_sk,2432917))),And(GreaterThanOrEqual(d_date_sk,2433252),LessThanOrEqual(d_date_sk,2433282))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2433617),LessThanOrEqual(d_date_sk,2433647)),And(GreaterThanOrEqual(d_date_sk,2433982),LessThanOrEqual(d_date_sk,2434012))),Or(And(GreaterThanOrEqual(d_date_sk,2434348),LessThanOrEqual(d_date_sk,2434378)),And(GreaterThanOrEqual(d_date_sk,2434713),LessThanOrEqual(d_date_sk,2434743)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2435078),LessThanOrEqual(d_date_sk,2435108)),And(GreaterThanOrEqual(d_date_sk,2435443),LessThanOrEqual(d_date_sk,2435473))),And(GreaterThanOrEqual(d_date_sk,2435809),LessThanOrEqual(d_date_sk,2435839)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2436174),LessThanOrEqual(d_date_sk,2436204)),And(GreaterThanOrEqual(d_date_sk,2436539),LessThanOrEqual(d_date_sk,2436569))),And(GreaterThanOrEqual(d_date_sk,2436904),LessThanOrEqual(d_date_sk,2436934))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2437270),LessThanOrEqual(d_date_sk,2437300)),And(GreaterThanOrEqual(d_date_sk,2437635),LessThanOrEqual(d_date_sk,2437665))),And(GreaterThanOrEqual(d_date_sk,2438000),LessThanOrEqual(d_date_sk,2438030))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2438365),LessThanOrEqual(d_date_sk,2438395)),And(GreaterThanOrEqual(d_date_sk,2438731),LessThanOrEqual(d_date_sk,2438761))),And(GreaterThanOrEqual(d_date_sk,2439096),LessThanOrEqual(d_date_sk,2439126))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2439461),LessThanOrEqual(d_date_sk,2439491)),And(GreaterThanOrEqual(d_date_sk,2439826),LessThanOrEqual(d_date_sk,2439856))),And(GreaterThanOrEqual(d_date_sk,2440192),LessThanOrEqual(d_date_sk,2440222)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2440557),LessThanOrEqual(d_date_sk,2440587)),And(GreaterThanOrEqual(d_date_sk,2440922),LessThanOrEqual(d_date_sk,2440952))),And(GreaterThanOrEqual(d_date_sk,2441287),LessThanOrEqual(d_date_sk,2441317))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2441653),LessThanOrEqual(d_date_sk,2441683)),And(GreaterThanOrEqual(d_date_sk,2442018),LessThanOrEqual(d_date_sk,2442048))),And(GreaterThanOrEqual(d_date_sk,2442383),LessThanOrEqual(d_date_sk,2442413)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2442748),LessThanOrEqual(d_date_sk,2442778)),And(GreaterThanOrEqual(d_date_sk,2443114),LessThanOrEqual(d_date_sk,2443144))),Or(And(GreaterThanOrEqual(d_date_sk,2443479),LessThanOrEqual(d_date_sk,2443509)),And(GreaterThanOrEqual(d_date_sk,2443844),LessThanOrEqual(d_date_sk,2443874)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2444209),LessThanOrEqual(d_date_sk,2444239)),And(GreaterThanOrEqual(d_date_sk,2444575),LessThanOrEqual(d_date_sk,2444605))),And(GreaterThanOrEqual(d_date_sk,2444940),LessThanOrEqual(d_date_sk,2444970)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2445305),LessThanOrEqual(d_date_sk,2445335)),And(GreaterThanOrEqual(d_date_sk,2445670),LessThanOrEqual(d_date_sk,2445700))),And(GreaterThanOrEqual(d_date_sk,2446036),LessThanOrEqual(d_date_sk,2446066))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2446401),LessThanOrEqual(d_date_sk,2446431)),And(GreaterThanOrEqual(d_date_sk,2446766),LessThanOrEqual(d_date_sk,2446796))),And(GreaterThanOrEqual(d_date_sk,2447131),LessThanOrEqual(d_date_sk,2447161))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2447497),LessThanOrEqual(d_date_sk,2447527)),And(GreaterThanOrEqual(d_date_sk,2447862),LessThanOrEqual(d_date_sk,2447892))),And(GreaterThanOrEqual(d_date_sk,2448227),LessThanOrEqual(d_date_sk,2448257))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2448592),LessThanOrEqual(d_date_sk,2448622)),And(GreaterThanOrEqual(d_date_sk,2448958),LessThanOrEqual(d_date_sk,2448988))),And(GreaterThanOrEqual(d_date_sk,2449323),LessThanOrEqual(d_date_sk,2449353)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2449688),LessThanOrEqual(d_date_sk,2449718)),And(GreaterThanOrEqual(d_date_sk,2450053),LessThanOrEqual(d_date_sk,2450083))),And(GreaterThanOrEqual(d_date_sk,2450419),LessThanOrEqual(d_date_sk,2450449))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2450784),LessThanOrEqual(d_date_sk,2450814)),And(GreaterThanOrEqual(d_date_sk,2451149),LessThanOrEqual(d_date_sk,2451179))),And(GreaterThanOrEqual(d_date_sk,2451514),LessThanOrEqual(d_date_sk,2451544)))))))),Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2451880),LessThanOrEqual(d_date_sk,2451910)),And(GreaterThanOrEqual(d_date_sk,2452245),LessThanOrEqual(d_date_sk,2452275))),Or(And(GreaterThanOrEqual(d_date_sk,2452610),LessThanOrEqual(d_date_sk,2452640)),And(GreaterThanOrEqual(d_date_sk,2452975),LessThanOrEqual(d_date_sk,2453005)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2453341),LessThanOrEqual(d_date_sk,2453371)),And(GreaterThanOrEqual(d_date_sk,2453706),LessThanOrEqual(d_date_sk,2453736))),And(GreaterThanOrEqual(d_date_sk,2454071),LessThanOrEqual(d_date_sk,2454101)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2454436),LessThanOrEqual(d_date_sk,2454466)),And(GreaterThanOrEqual(d_date_sk,2454802),LessThanOrEqual(d_date_sk,2454832))),And(GreaterThanOrEqual(d_date_sk,2455167),LessThanOrEqual(d_date_sk,2455197))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2455532),LessThanOrEqual(d_date_sk,2455562)),And(GreaterThanOrEqual(d_date_sk,2455897),LessThanOrEqual(d_date_sk,2455927))),And(GreaterThanOrEqual(d_date_sk,2456263),LessThanOrEqual(d_date_sk,2456293))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2456628),LessThanOrEqual(d_date_sk,2456658)),And(GreaterThanOrEqual(d_date_sk,2456993),LessThanOrEqual(d_date_sk,2457023))),And(GreaterThanOrEqual(d_date_sk,2457358),LessThanOrEqual(d_date_sk,2457388))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2457724),LessThanOrEqual(d_date_sk,2457754)),And(GreaterThanOrEqual(d_date_sk,2458089),LessThanOrEqual(d_date_sk,2458119))),And(GreaterThanOrEqual(d_date_sk,2458454),LessThanOrEqual(d_date_sk,2458484)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2458819),LessThanOrEqual(d_date_sk,2458849)),And(GreaterThanOrEqual(d_date_sk,2459185),LessThanOrEqual(d_date_sk,2459215))),And(GreaterThanOrEqual(d_date_sk,2459550),LessThanOrEqual(d_date_sk,2459580))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2459915),LessThanOrEqual(d_date_sk,2459945)),And(GreaterThanOrEqual(d_date_sk,2460280),LessThanOrEqual(d_date_sk,2460310))),And(GreaterThanOrEqual(d_date_sk,2460646),LessThanOrEqual(d_date_sk,2460676)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2461011),LessThanOrEqual(d_date_sk,2461041)),And(GreaterThanOrEqual(d_date_sk,2461376),LessThanOrEqual(d_date_sk,2461406))),Or(And(GreaterThanOrEqual(d_date_sk,2461741),LessThanOrEqual(d_date_sk,2461771)),And(GreaterThanOrEqual(d_date_sk,2462107),LessThanOrEqual(d_date_sk,2462137)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2462472),LessThanOrEqual(d_date_sk,2462502)),And(GreaterThanOrEqual(d_date_sk,2462837),LessThanOrEqual(d_date_sk,2462867))),And(GreaterThanOrEqual(d_date_sk,2463202),LessThanOrEqual(d_date_sk,2463232)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2463568),LessThanOrEqual(d_date_sk,2463598)),And(GreaterThanOrEqual(d_date_sk,2463933),LessThanOrEqual(d_date_sk,2463963))),And(GreaterThanOrEqual(d_date_sk,2464298),LessThanOrEqual(d_date_sk,2464328))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2464663),LessThanOrEqual(d_date_sk,2464693)),And(GreaterThanOrEqual(d_date_sk,2465029),LessThanOrEqual(d_date_sk,2465059))),And(GreaterThanOrEqual(d_date_sk,2465394),LessThanOrEqual(d_date_sk,2465424))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2465759),LessThanOrEqual(d_date_sk,2465789)),And(GreaterThanOrEqual(d_date_sk,2466124),LessThanOrEqual(d_date_sk,2466154))),And(GreaterThanOrEqual(d_date_sk,2466490),LessThanOrEqual(d_date_sk,2466520))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2466855),LessThanOrEqual(d_date_sk,2466885)),And(GreaterThanOrEqual(d_date_sk,2467220),LessThanOrEqual(d_date_sk,2467250))),And(GreaterThanOrEqual(d_date_sk,2467585),LessThanOrEqual(d_date_sk,2467615)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2467951),LessThanOrEqual(d_date_sk,2467981)),And(GreaterThanOrEqual(d_date_sk,2468316),LessThanOrEqual(d_date_sk,2468346))),And(GreaterThanOrEqual(d_date_sk,2468681),LessThanOrEqual(d_date_sk,2468711))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2469046),LessThanOrEqual(d_date_sk,2469076)),And(GreaterThanOrEqual(d_date_sk,2469412),LessThanOrEqual(d_date_sk,2469442))),And(GreaterThanOrEqual(d_date_sk,2469777),LessThanOrEqual(d_date_sk,2469807))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2470142),LessThanOrEqual(d_date_sk,2470172)),And(GreaterThanOrEqual(d_date_sk,2470507),LessThanOrEqual(d_date_sk,2470537))),Or(And(GreaterThanOrEqual(d_date_sk,2470873),LessThanOrEqual(d_date_sk,2470903)),And(GreaterThanOrEqual(d_date_sk,2471238),LessThanOrEqual(d_date_sk,2471268)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2471603),LessThanOrEqual(d_date_sk,2471633)),And(GreaterThanOrEqual(d_date_sk,2471968),LessThanOrEqual(d_date_sk,2471998))),And(GreaterThanOrEqual(d_date_sk,2472334),LessThanOrEqual(d_date_sk,2472364)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2472699),LessThanOrEqual(d_date_sk,2472729)),And(GreaterThanOrEqual(d_date_sk,2473064),LessThanOrEqual(d_date_sk,2473094))),And(GreaterThanOrEqual(d_date_sk,2473429),LessThanOrEqual(d_date_sk,2473459))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2473795),LessThanOrEqual(d_date_sk,2473825)),And(GreaterThanOrEqual(d_date_sk,2474160),LessThanOrEqual(d_date_sk,2474190))),And(GreaterThanOrEqual(d_date_sk,2474525),LessThanOrEqual(d_date_sk,2474555))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2474890),LessThanOrEqual(d_date_sk,2474920)),And(GreaterThanOrEqual(d_date_sk,2475256),LessThanOrEqual(d_date_sk,2475286))),And(GreaterThanOrEqual(d_date_sk,2475621),LessThanOrEqual(d_date_sk,2475651))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2475986),LessThanOrEqual(d_date_sk,2476016)),And(GreaterThanOrEqual(d_date_sk,2476351),LessThanOrEqual(d_date_sk,2476381))),And(GreaterThanOrEqual(d_date_sk,2476717),LessThanOrEqual(d_date_sk,2476747)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2477082),LessThanOrEqual(d_date_sk,2477112)),And(GreaterThanOrEqual(d_date_sk,2477447),LessThanOrEqual(d_date_sk,2477477))),And(GreaterThanOrEqual(d_date_sk,2477812),LessThanOrEqual(d_date_sk,2477842))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2478178),LessThanOrEqual(d_date_sk,2478208)),And(GreaterThanOrEqual(d_date_sk,2478543),LessThanOrEqual(d_date_sk,2478573))),And(GreaterThanOrEqual(d_date_sk,2478908),LessThanOrEqual(d_date_sk,2478938)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2479273),LessThanOrEqual(d_date_sk,2479303)),And(GreaterThanOrEqual(d_date_sk,2479639),LessThanOrEqual(d_date_sk,2479669))),Or(And(GreaterThanOrEqual(d_date_sk,2480004),LessThanOrEqual(d_date_sk,2480034)),And(GreaterThanOrEqual(d_date_sk,2480369),LessThanOrEqual(d_date_sk,2480399)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2480734),LessThanOrEqual(d_date_sk,2480764)),And(GreaterThanOrEqual(d_date_sk,2481100),LessThanOrEqual(d_date_sk,2481130))),And(GreaterThanOrEqual(d_date_sk,2481465),LessThanOrEqual(d_date_sk,2481495)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2481830),LessThanOrEqual(d_date_sk,2481860)),And(GreaterThanOrEqual(d_date_sk,2482195),LessThanOrEqual(d_date_sk,2482225))),And(GreaterThanOrEqual(d_date_sk,2482561),LessThanOrEqual(d_date_sk,2482591))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2482926),LessThanOrEqual(d_date_sk,2482956)),And(GreaterThanOrEqual(d_date_sk,2483291),LessThanOrEqual(d_date_sk,2483321))),And(GreaterThanOrEqual(d_date_sk,2483656),LessThanOrEqual(d_date_sk,2483686))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2484022),LessThanOrEqual(d_date_sk,2484052)),And(GreaterThanOrEqual(d_date_sk,2484387),LessThanOrEqual(d_date_sk,2484417))),And(GreaterThanOrEqual(d_date_sk,2484752),LessThanOrEqual(d_date_sk,2484782))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2485117),LessThanOrEqual(d_date_sk,2485147)),And(GreaterThanOrEqual(d_date_sk,2485483),LessThanOrEqual(d_date_sk,2485513))),And(GreaterThanOrEqual(d_date_sk,2485848),LessThanOrEqual(d_date_sk,2485878)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2486213),LessThanOrEqual(d_date_sk,2486243)),And(GreaterThanOrEqual(d_date_sk,2486578),LessThanOrEqual(d_date_sk,2486608))),And(GreaterThanOrEqual(d_date_sk,2486944),LessThanOrEqual(d_date_sk,2486974))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2487309),LessThanOrEqual(d_date_sk,2487339)),And(GreaterThanOrEqual(d_date_sk,2487674),LessThanOrEqual(d_date_sk,2487704))),And(GreaterThanOrEqual(d_date_sk,2488039),LessThanOrEqual(d_date_sk,2488069))))))))), *IsNotNull(d_date_sk)] ReadSchema: struct (30) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3/explain.txt index ef99f35c68f..d2023d3ec13 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q3/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), EqualTo(d_moy,12), Or(Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2415355),LessThanOrEqual(d_date_sk,2415385)),And(GreaterThanOrEqual(d_date_sk,2415720),LessThanOrEqual(d_date_sk,2415750))),Or(And(GreaterThanOrEqual(d_date_sk,2416085),LessThanOrEqual(d_date_sk,2416115)),And(GreaterThanOrEqual(d_date_sk,2416450),LessThanOrEqual(d_date_sk,2416480)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2416816),LessThanOrEqual(d_date_sk,2416846)),And(GreaterThanOrEqual(d_date_sk,2417181),LessThanOrEqual(d_date_sk,2417211))),And(GreaterThanOrEqual(d_date_sk,2417546),LessThanOrEqual(d_date_sk,2417576)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2417911),LessThanOrEqual(d_date_sk,2417941)),And(GreaterThanOrEqual(d_date_sk,2418277),LessThanOrEqual(d_date_sk,2418307))),And(GreaterThanOrEqual(d_date_sk,2418642),LessThanOrEqual(d_date_sk,2418672))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2419007),LessThanOrEqual(d_date_sk,2419037)),And(GreaterThanOrEqual(d_date_sk,2419372),LessThanOrEqual(d_date_sk,2419402))),And(GreaterThanOrEqual(d_date_sk,2419738),LessThanOrEqual(d_date_sk,2419768))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2420103),LessThanOrEqual(d_date_sk,2420133)),And(GreaterThanOrEqual(d_date_sk,2420468),LessThanOrEqual(d_date_sk,2420498))),And(GreaterThanOrEqual(d_date_sk,2420833),LessThanOrEqual(d_date_sk,2420863))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2421199),LessThanOrEqual(d_date_sk,2421229)),And(GreaterThanOrEqual(d_date_sk,2421564),LessThanOrEqual(d_date_sk,2421594))),And(GreaterThanOrEqual(d_date_sk,2421929),LessThanOrEqual(d_date_sk,2421959)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2422294),LessThanOrEqual(d_date_sk,2422324)),And(GreaterThanOrEqual(d_date_sk,2422660),LessThanOrEqual(d_date_sk,2422690))),And(GreaterThanOrEqual(d_date_sk,2423025),LessThanOrEqual(d_date_sk,2423055))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2423390),LessThanOrEqual(d_date_sk,2423420)),And(GreaterThanOrEqual(d_date_sk,2423755),LessThanOrEqual(d_date_sk,2423785))),And(GreaterThanOrEqual(d_date_sk,2424121),LessThanOrEqual(d_date_sk,2424151)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2424486),LessThanOrEqual(d_date_sk,2424516)),And(GreaterThanOrEqual(d_date_sk,2424851),LessThanOrEqual(d_date_sk,2424881))),Or(And(GreaterThanOrEqual(d_date_sk,2425216),LessThanOrEqual(d_date_sk,2425246)),And(GreaterThanOrEqual(d_date_sk,2425582),LessThanOrEqual(d_date_sk,2425612)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2425947),LessThanOrEqual(d_date_sk,2425977)),And(GreaterThanOrEqual(d_date_sk,2426312),LessThanOrEqual(d_date_sk,2426342))),And(GreaterThanOrEqual(d_date_sk,2426677),LessThanOrEqual(d_date_sk,2426707)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2427043),LessThanOrEqual(d_date_sk,2427073)),And(GreaterThanOrEqual(d_date_sk,2427408),LessThanOrEqual(d_date_sk,2427438))),And(GreaterThanOrEqual(d_date_sk,2427773),LessThanOrEqual(d_date_sk,2427803))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2428138),LessThanOrEqual(d_date_sk,2428168)),And(GreaterThanOrEqual(d_date_sk,2428504),LessThanOrEqual(d_date_sk,2428534))),And(GreaterThanOrEqual(d_date_sk,2428869),LessThanOrEqual(d_date_sk,2428899))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2429234),LessThanOrEqual(d_date_sk,2429264)),And(GreaterThanOrEqual(d_date_sk,2429599),LessThanOrEqual(d_date_sk,2429629))),And(GreaterThanOrEqual(d_date_sk,2429965),LessThanOrEqual(d_date_sk,2429995))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2430330),LessThanOrEqual(d_date_sk,2430360)),And(GreaterThanOrEqual(d_date_sk,2430695),LessThanOrEqual(d_date_sk,2430725))),And(GreaterThanOrEqual(d_date_sk,2431060),LessThanOrEqual(d_date_sk,2431090)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2431426),LessThanOrEqual(d_date_sk,2431456)),And(GreaterThanOrEqual(d_date_sk,2431791),LessThanOrEqual(d_date_sk,2431821))),And(GreaterThanOrEqual(d_date_sk,2432156),LessThanOrEqual(d_date_sk,2432186))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2432521),LessThanOrEqual(d_date_sk,2432551)),And(GreaterThanOrEqual(d_date_sk,2432887),LessThanOrEqual(d_date_sk,2432917))),And(GreaterThanOrEqual(d_date_sk,2433252),LessThanOrEqual(d_date_sk,2433282))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2433617),LessThanOrEqual(d_date_sk,2433647)),And(GreaterThanOrEqual(d_date_sk,2433982),LessThanOrEqual(d_date_sk,2434012))),Or(And(GreaterThanOrEqual(d_date_sk,2434348),LessThanOrEqual(d_date_sk,2434378)),And(GreaterThanOrEqual(d_date_sk,2434713),LessThanOrEqual(d_date_sk,2434743)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2435078),LessThanOrEqual(d_date_sk,2435108)),And(GreaterThanOrEqual(d_date_sk,2435443),LessThanOrEqual(d_date_sk,2435473))),And(GreaterThanOrEqual(d_date_sk,2435809),LessThanOrEqual(d_date_sk,2435839)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2436174),LessThanOrEqual(d_date_sk,2436204)),And(GreaterThanOrEqual(d_date_sk,2436539),LessThanOrEqual(d_date_sk,2436569))),And(GreaterThanOrEqual(d_date_sk,2436904),LessThanOrEqual(d_date_sk,2436934))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2437270),LessThanOrEqual(d_date_sk,2437300)),And(GreaterThanOrEqual(d_date_sk,2437635),LessThanOrEqual(d_date_sk,2437665))),And(GreaterThanOrEqual(d_date_sk,2438000),LessThanOrEqual(d_date_sk,2438030))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2438365),LessThanOrEqual(d_date_sk,2438395)),And(GreaterThanOrEqual(d_date_sk,2438731),LessThanOrEqual(d_date_sk,2438761))),And(GreaterThanOrEqual(d_date_sk,2439096),LessThanOrEqual(d_date_sk,2439126))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2439461),LessThanOrEqual(d_date_sk,2439491)),And(GreaterThanOrEqual(d_date_sk,2439826),LessThanOrEqual(d_date_sk,2439856))),And(GreaterThanOrEqual(d_date_sk,2440192),LessThanOrEqual(d_date_sk,2440222)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2440557),LessThanOrEqual(d_date_sk,2440587)),And(GreaterThanOrEqual(d_date_sk,2440922),LessThanOrEqual(d_date_sk,2440952))),And(GreaterThanOrEqual(d_date_sk,2441287),LessThanOrEqual(d_date_sk,2441317))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2441653),LessThanOrEqual(d_date_sk,2441683)),And(GreaterThanOrEqual(d_date_sk,2442018),LessThanOrEqual(d_date_sk,2442048))),And(GreaterThanOrEqual(d_date_sk,2442383),LessThanOrEqual(d_date_sk,2442413)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2442748),LessThanOrEqual(d_date_sk,2442778)),And(GreaterThanOrEqual(d_date_sk,2443114),LessThanOrEqual(d_date_sk,2443144))),Or(And(GreaterThanOrEqual(d_date_sk,2443479),LessThanOrEqual(d_date_sk,2443509)),And(GreaterThanOrEqual(d_date_sk,2443844),LessThanOrEqual(d_date_sk,2443874)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2444209),LessThanOrEqual(d_date_sk,2444239)),And(GreaterThanOrEqual(d_date_sk,2444575),LessThanOrEqual(d_date_sk,2444605))),And(GreaterThanOrEqual(d_date_sk,2444940),LessThanOrEqual(d_date_sk,2444970)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2445305),LessThanOrEqual(d_date_sk,2445335)),And(GreaterThanOrEqual(d_date_sk,2445670),LessThanOrEqual(d_date_sk,2445700))),And(GreaterThanOrEqual(d_date_sk,2446036),LessThanOrEqual(d_date_sk,2446066))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2446401),LessThanOrEqual(d_date_sk,2446431)),And(GreaterThanOrEqual(d_date_sk,2446766),LessThanOrEqual(d_date_sk,2446796))),And(GreaterThanOrEqual(d_date_sk,2447131),LessThanOrEqual(d_date_sk,2447161))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2447497),LessThanOrEqual(d_date_sk,2447527)),And(GreaterThanOrEqual(d_date_sk,2447862),LessThanOrEqual(d_date_sk,2447892))),And(GreaterThanOrEqual(d_date_sk,2448227),LessThanOrEqual(d_date_sk,2448257))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2448592),LessThanOrEqual(d_date_sk,2448622)),And(GreaterThanOrEqual(d_date_sk,2448958),LessThanOrEqual(d_date_sk,2448988))),And(GreaterThanOrEqual(d_date_sk,2449323),LessThanOrEqual(d_date_sk,2449353)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2449688),LessThanOrEqual(d_date_sk,2449718)),And(GreaterThanOrEqual(d_date_sk,2450053),LessThanOrEqual(d_date_sk,2450083))),And(GreaterThanOrEqual(d_date_sk,2450419),LessThanOrEqual(d_date_sk,2450449))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2450784),LessThanOrEqual(d_date_sk,2450814)),And(GreaterThanOrEqual(d_date_sk,2451149),LessThanOrEqual(d_date_sk,2451179))),And(GreaterThanOrEqual(d_date_sk,2451514),LessThanOrEqual(d_date_sk,2451544)))))))),Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2451880),LessThanOrEqual(d_date_sk,2451910)),And(GreaterThanOrEqual(d_date_sk,2452245),LessThanOrEqual(d_date_sk,2452275))),Or(And(GreaterThanOrEqual(d_date_sk,2452610),LessThanOrEqual(d_date_sk,2452640)),And(GreaterThanOrEqual(d_date_sk,2452975),LessThanOrEqual(d_date_sk,2453005)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2453341),LessThanOrEqual(d_date_sk,2453371)),And(GreaterThanOrEqual(d_date_sk,2453706),LessThanOrEqual(d_date_sk,2453736))),And(GreaterThanOrEqual(d_date_sk,2454071),LessThanOrEqual(d_date_sk,2454101)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2454436),LessThanOrEqual(d_date_sk,2454466)),And(GreaterThanOrEqual(d_date_sk,2454802),LessThanOrEqual(d_date_sk,2454832))),And(GreaterThanOrEqual(d_date_sk,2455167),LessThanOrEqual(d_date_sk,2455197))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2455532),LessThanOrEqual(d_date_sk,2455562)),And(GreaterThanOrEqual(d_date_sk,2455897),LessThanOrEqual(d_date_sk,2455927))),And(GreaterThanOrEqual(d_date_sk,2456263),LessThanOrEqual(d_date_sk,2456293))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2456628),LessThanOrEqual(d_date_sk,2456658)),And(GreaterThanOrEqual(d_date_sk,2456993),LessThanOrEqual(d_date_sk,2457023))),And(GreaterThanOrEqual(d_date_sk,2457358),LessThanOrEqual(d_date_sk,2457388))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2457724),LessThanOrEqual(d_date_sk,2457754)),And(GreaterThanOrEqual(d_date_sk,2458089),LessThanOrEqual(d_date_sk,2458119))),And(GreaterThanOrEqual(d_date_sk,2458454),LessThanOrEqual(d_date_sk,2458484)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2458819),LessThanOrEqual(d_date_sk,2458849)),And(GreaterThanOrEqual(d_date_sk,2459185),LessThanOrEqual(d_date_sk,2459215))),And(GreaterThanOrEqual(d_date_sk,2459550),LessThanOrEqual(d_date_sk,2459580))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2459915),LessThanOrEqual(d_date_sk,2459945)),And(GreaterThanOrEqual(d_date_sk,2460280),LessThanOrEqual(d_date_sk,2460310))),And(GreaterThanOrEqual(d_date_sk,2460646),LessThanOrEqual(d_date_sk,2460676)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2461011),LessThanOrEqual(d_date_sk,2461041)),And(GreaterThanOrEqual(d_date_sk,2461376),LessThanOrEqual(d_date_sk,2461406))),Or(And(GreaterThanOrEqual(d_date_sk,2461741),LessThanOrEqual(d_date_sk,2461771)),And(GreaterThanOrEqual(d_date_sk,2462107),LessThanOrEqual(d_date_sk,2462137)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2462472),LessThanOrEqual(d_date_sk,2462502)),And(GreaterThanOrEqual(d_date_sk,2462837),LessThanOrEqual(d_date_sk,2462867))),And(GreaterThanOrEqual(d_date_sk,2463202),LessThanOrEqual(d_date_sk,2463232)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2463568),LessThanOrEqual(d_date_sk,2463598)),And(GreaterThanOrEqual(d_date_sk,2463933),LessThanOrEqual(d_date_sk,2463963))),And(GreaterThanOrEqual(d_date_sk,2464298),LessThanOrEqual(d_date_sk,2464328))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2464663),LessThanOrEqual(d_date_sk,2464693)),And(GreaterThanOrEqual(d_date_sk,2465029),LessThanOrEqual(d_date_sk,2465059))),And(GreaterThanOrEqual(d_date_sk,2465394),LessThanOrEqual(d_date_sk,2465424))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2465759),LessThanOrEqual(d_date_sk,2465789)),And(GreaterThanOrEqual(d_date_sk,2466124),LessThanOrEqual(d_date_sk,2466154))),And(GreaterThanOrEqual(d_date_sk,2466490),LessThanOrEqual(d_date_sk,2466520))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2466855),LessThanOrEqual(d_date_sk,2466885)),And(GreaterThanOrEqual(d_date_sk,2467220),LessThanOrEqual(d_date_sk,2467250))),And(GreaterThanOrEqual(d_date_sk,2467585),LessThanOrEqual(d_date_sk,2467615)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2467951),LessThanOrEqual(d_date_sk,2467981)),And(GreaterThanOrEqual(d_date_sk,2468316),LessThanOrEqual(d_date_sk,2468346))),And(GreaterThanOrEqual(d_date_sk,2468681),LessThanOrEqual(d_date_sk,2468711))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2469046),LessThanOrEqual(d_date_sk,2469076)),And(GreaterThanOrEqual(d_date_sk,2469412),LessThanOrEqual(d_date_sk,2469442))),And(GreaterThanOrEqual(d_date_sk,2469777),LessThanOrEqual(d_date_sk,2469807))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2470142),LessThanOrEqual(d_date_sk,2470172)),And(GreaterThanOrEqual(d_date_sk,2470507),LessThanOrEqual(d_date_sk,2470537))),Or(And(GreaterThanOrEqual(d_date_sk,2470873),LessThanOrEqual(d_date_sk,2470903)),And(GreaterThanOrEqual(d_date_sk,2471238),LessThanOrEqual(d_date_sk,2471268)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2471603),LessThanOrEqual(d_date_sk,2471633)),And(GreaterThanOrEqual(d_date_sk,2471968),LessThanOrEqual(d_date_sk,2471998))),And(GreaterThanOrEqual(d_date_sk,2472334),LessThanOrEqual(d_date_sk,2472364)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2472699),LessThanOrEqual(d_date_sk,2472729)),And(GreaterThanOrEqual(d_date_sk,2473064),LessThanOrEqual(d_date_sk,2473094))),And(GreaterThanOrEqual(d_date_sk,2473429),LessThanOrEqual(d_date_sk,2473459))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2473795),LessThanOrEqual(d_date_sk,2473825)),And(GreaterThanOrEqual(d_date_sk,2474160),LessThanOrEqual(d_date_sk,2474190))),And(GreaterThanOrEqual(d_date_sk,2474525),LessThanOrEqual(d_date_sk,2474555))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2474890),LessThanOrEqual(d_date_sk,2474920)),And(GreaterThanOrEqual(d_date_sk,2475256),LessThanOrEqual(d_date_sk,2475286))),And(GreaterThanOrEqual(d_date_sk,2475621),LessThanOrEqual(d_date_sk,2475651))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2475986),LessThanOrEqual(d_date_sk,2476016)),And(GreaterThanOrEqual(d_date_sk,2476351),LessThanOrEqual(d_date_sk,2476381))),And(GreaterThanOrEqual(d_date_sk,2476717),LessThanOrEqual(d_date_sk,2476747)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2477082),LessThanOrEqual(d_date_sk,2477112)),And(GreaterThanOrEqual(d_date_sk,2477447),LessThanOrEqual(d_date_sk,2477477))),And(GreaterThanOrEqual(d_date_sk,2477812),LessThanOrEqual(d_date_sk,2477842))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2478178),LessThanOrEqual(d_date_sk,2478208)),And(GreaterThanOrEqual(d_date_sk,2478543),LessThanOrEqual(d_date_sk,2478573))),And(GreaterThanOrEqual(d_date_sk,2478908),LessThanOrEqual(d_date_sk,2478938)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2479273),LessThanOrEqual(d_date_sk,2479303)),And(GreaterThanOrEqual(d_date_sk,2479639),LessThanOrEqual(d_date_sk,2479669))),Or(And(GreaterThanOrEqual(d_date_sk,2480004),LessThanOrEqual(d_date_sk,2480034)),And(GreaterThanOrEqual(d_date_sk,2480369),LessThanOrEqual(d_date_sk,2480399)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2480734),LessThanOrEqual(d_date_sk,2480764)),And(GreaterThanOrEqual(d_date_sk,2481100),LessThanOrEqual(d_date_sk,2481130))),And(GreaterThanOrEqual(d_date_sk,2481465),LessThanOrEqual(d_date_sk,2481495)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2481830),LessThanOrEqual(d_date_sk,2481860)),And(GreaterThanOrEqual(d_date_sk,2482195),LessThanOrEqual(d_date_sk,2482225))),And(GreaterThanOrEqual(d_date_sk,2482561),LessThanOrEqual(d_date_sk,2482591))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2482926),LessThanOrEqual(d_date_sk,2482956)),And(GreaterThanOrEqual(d_date_sk,2483291),LessThanOrEqual(d_date_sk,2483321))),And(GreaterThanOrEqual(d_date_sk,2483656),LessThanOrEqual(d_date_sk,2483686))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2484022),LessThanOrEqual(d_date_sk,2484052)),And(GreaterThanOrEqual(d_date_sk,2484387),LessThanOrEqual(d_date_sk,2484417))),And(GreaterThanOrEqual(d_date_sk,2484752),LessThanOrEqual(d_date_sk,2484782))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2485117),LessThanOrEqual(d_date_sk,2485147)),And(GreaterThanOrEqual(d_date_sk,2485483),LessThanOrEqual(d_date_sk,2485513))),And(GreaterThanOrEqual(d_date_sk,2485848),LessThanOrEqual(d_date_sk,2485878)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2486213),LessThanOrEqual(d_date_sk,2486243)),And(GreaterThanOrEqual(d_date_sk,2486578),LessThanOrEqual(d_date_sk,2486608))),And(GreaterThanOrEqual(d_date_sk,2486944),LessThanOrEqual(d_date_sk,2486974))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2487309),LessThanOrEqual(d_date_sk,2487339)),And(GreaterThanOrEqual(d_date_sk,2487674),LessThanOrEqual(d_date_sk,2487704))),And(GreaterThanOrEqual(d_date_sk,2488039),LessThanOrEqual(d_date_sk,2488069))))))))), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *EqualTo(d_moy,12), *Or(Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2415355),LessThanOrEqual(d_date_sk,2415385)),And(GreaterThanOrEqual(d_date_sk,2415720),LessThanOrEqual(d_date_sk,2415750))),Or(And(GreaterThanOrEqual(d_date_sk,2416085),LessThanOrEqual(d_date_sk,2416115)),And(GreaterThanOrEqual(d_date_sk,2416450),LessThanOrEqual(d_date_sk,2416480)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2416816),LessThanOrEqual(d_date_sk,2416846)),And(GreaterThanOrEqual(d_date_sk,2417181),LessThanOrEqual(d_date_sk,2417211))),And(GreaterThanOrEqual(d_date_sk,2417546),LessThanOrEqual(d_date_sk,2417576)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2417911),LessThanOrEqual(d_date_sk,2417941)),And(GreaterThanOrEqual(d_date_sk,2418277),LessThanOrEqual(d_date_sk,2418307))),And(GreaterThanOrEqual(d_date_sk,2418642),LessThanOrEqual(d_date_sk,2418672))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2419007),LessThanOrEqual(d_date_sk,2419037)),And(GreaterThanOrEqual(d_date_sk,2419372),LessThanOrEqual(d_date_sk,2419402))),And(GreaterThanOrEqual(d_date_sk,2419738),LessThanOrEqual(d_date_sk,2419768))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2420103),LessThanOrEqual(d_date_sk,2420133)),And(GreaterThanOrEqual(d_date_sk,2420468),LessThanOrEqual(d_date_sk,2420498))),And(GreaterThanOrEqual(d_date_sk,2420833),LessThanOrEqual(d_date_sk,2420863))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2421199),LessThanOrEqual(d_date_sk,2421229)),And(GreaterThanOrEqual(d_date_sk,2421564),LessThanOrEqual(d_date_sk,2421594))),And(GreaterThanOrEqual(d_date_sk,2421929),LessThanOrEqual(d_date_sk,2421959)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2422294),LessThanOrEqual(d_date_sk,2422324)),And(GreaterThanOrEqual(d_date_sk,2422660),LessThanOrEqual(d_date_sk,2422690))),And(GreaterThanOrEqual(d_date_sk,2423025),LessThanOrEqual(d_date_sk,2423055))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2423390),LessThanOrEqual(d_date_sk,2423420)),And(GreaterThanOrEqual(d_date_sk,2423755),LessThanOrEqual(d_date_sk,2423785))),And(GreaterThanOrEqual(d_date_sk,2424121),LessThanOrEqual(d_date_sk,2424151)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2424486),LessThanOrEqual(d_date_sk,2424516)),And(GreaterThanOrEqual(d_date_sk,2424851),LessThanOrEqual(d_date_sk,2424881))),Or(And(GreaterThanOrEqual(d_date_sk,2425216),LessThanOrEqual(d_date_sk,2425246)),And(GreaterThanOrEqual(d_date_sk,2425582),LessThanOrEqual(d_date_sk,2425612)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2425947),LessThanOrEqual(d_date_sk,2425977)),And(GreaterThanOrEqual(d_date_sk,2426312),LessThanOrEqual(d_date_sk,2426342))),And(GreaterThanOrEqual(d_date_sk,2426677),LessThanOrEqual(d_date_sk,2426707)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2427043),LessThanOrEqual(d_date_sk,2427073)),And(GreaterThanOrEqual(d_date_sk,2427408),LessThanOrEqual(d_date_sk,2427438))),And(GreaterThanOrEqual(d_date_sk,2427773),LessThanOrEqual(d_date_sk,2427803))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2428138),LessThanOrEqual(d_date_sk,2428168)),And(GreaterThanOrEqual(d_date_sk,2428504),LessThanOrEqual(d_date_sk,2428534))),And(GreaterThanOrEqual(d_date_sk,2428869),LessThanOrEqual(d_date_sk,2428899))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2429234),LessThanOrEqual(d_date_sk,2429264)),And(GreaterThanOrEqual(d_date_sk,2429599),LessThanOrEqual(d_date_sk,2429629))),And(GreaterThanOrEqual(d_date_sk,2429965),LessThanOrEqual(d_date_sk,2429995))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2430330),LessThanOrEqual(d_date_sk,2430360)),And(GreaterThanOrEqual(d_date_sk,2430695),LessThanOrEqual(d_date_sk,2430725))),And(GreaterThanOrEqual(d_date_sk,2431060),LessThanOrEqual(d_date_sk,2431090)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2431426),LessThanOrEqual(d_date_sk,2431456)),And(GreaterThanOrEqual(d_date_sk,2431791),LessThanOrEqual(d_date_sk,2431821))),And(GreaterThanOrEqual(d_date_sk,2432156),LessThanOrEqual(d_date_sk,2432186))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2432521),LessThanOrEqual(d_date_sk,2432551)),And(GreaterThanOrEqual(d_date_sk,2432887),LessThanOrEqual(d_date_sk,2432917))),And(GreaterThanOrEqual(d_date_sk,2433252),LessThanOrEqual(d_date_sk,2433282))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2433617),LessThanOrEqual(d_date_sk,2433647)),And(GreaterThanOrEqual(d_date_sk,2433982),LessThanOrEqual(d_date_sk,2434012))),Or(And(GreaterThanOrEqual(d_date_sk,2434348),LessThanOrEqual(d_date_sk,2434378)),And(GreaterThanOrEqual(d_date_sk,2434713),LessThanOrEqual(d_date_sk,2434743)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2435078),LessThanOrEqual(d_date_sk,2435108)),And(GreaterThanOrEqual(d_date_sk,2435443),LessThanOrEqual(d_date_sk,2435473))),And(GreaterThanOrEqual(d_date_sk,2435809),LessThanOrEqual(d_date_sk,2435839)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2436174),LessThanOrEqual(d_date_sk,2436204)),And(GreaterThanOrEqual(d_date_sk,2436539),LessThanOrEqual(d_date_sk,2436569))),And(GreaterThanOrEqual(d_date_sk,2436904),LessThanOrEqual(d_date_sk,2436934))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2437270),LessThanOrEqual(d_date_sk,2437300)),And(GreaterThanOrEqual(d_date_sk,2437635),LessThanOrEqual(d_date_sk,2437665))),And(GreaterThanOrEqual(d_date_sk,2438000),LessThanOrEqual(d_date_sk,2438030))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2438365),LessThanOrEqual(d_date_sk,2438395)),And(GreaterThanOrEqual(d_date_sk,2438731),LessThanOrEqual(d_date_sk,2438761))),And(GreaterThanOrEqual(d_date_sk,2439096),LessThanOrEqual(d_date_sk,2439126))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2439461),LessThanOrEqual(d_date_sk,2439491)),And(GreaterThanOrEqual(d_date_sk,2439826),LessThanOrEqual(d_date_sk,2439856))),And(GreaterThanOrEqual(d_date_sk,2440192),LessThanOrEqual(d_date_sk,2440222)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2440557),LessThanOrEqual(d_date_sk,2440587)),And(GreaterThanOrEqual(d_date_sk,2440922),LessThanOrEqual(d_date_sk,2440952))),And(GreaterThanOrEqual(d_date_sk,2441287),LessThanOrEqual(d_date_sk,2441317))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2441653),LessThanOrEqual(d_date_sk,2441683)),And(GreaterThanOrEqual(d_date_sk,2442018),LessThanOrEqual(d_date_sk,2442048))),And(GreaterThanOrEqual(d_date_sk,2442383),LessThanOrEqual(d_date_sk,2442413)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2442748),LessThanOrEqual(d_date_sk,2442778)),And(GreaterThanOrEqual(d_date_sk,2443114),LessThanOrEqual(d_date_sk,2443144))),Or(And(GreaterThanOrEqual(d_date_sk,2443479),LessThanOrEqual(d_date_sk,2443509)),And(GreaterThanOrEqual(d_date_sk,2443844),LessThanOrEqual(d_date_sk,2443874)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2444209),LessThanOrEqual(d_date_sk,2444239)),And(GreaterThanOrEqual(d_date_sk,2444575),LessThanOrEqual(d_date_sk,2444605))),And(GreaterThanOrEqual(d_date_sk,2444940),LessThanOrEqual(d_date_sk,2444970)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2445305),LessThanOrEqual(d_date_sk,2445335)),And(GreaterThanOrEqual(d_date_sk,2445670),LessThanOrEqual(d_date_sk,2445700))),And(GreaterThanOrEqual(d_date_sk,2446036),LessThanOrEqual(d_date_sk,2446066))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2446401),LessThanOrEqual(d_date_sk,2446431)),And(GreaterThanOrEqual(d_date_sk,2446766),LessThanOrEqual(d_date_sk,2446796))),And(GreaterThanOrEqual(d_date_sk,2447131),LessThanOrEqual(d_date_sk,2447161))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2447497),LessThanOrEqual(d_date_sk,2447527)),And(GreaterThanOrEqual(d_date_sk,2447862),LessThanOrEqual(d_date_sk,2447892))),And(GreaterThanOrEqual(d_date_sk,2448227),LessThanOrEqual(d_date_sk,2448257))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2448592),LessThanOrEqual(d_date_sk,2448622)),And(GreaterThanOrEqual(d_date_sk,2448958),LessThanOrEqual(d_date_sk,2448988))),And(GreaterThanOrEqual(d_date_sk,2449323),LessThanOrEqual(d_date_sk,2449353)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2449688),LessThanOrEqual(d_date_sk,2449718)),And(GreaterThanOrEqual(d_date_sk,2450053),LessThanOrEqual(d_date_sk,2450083))),And(GreaterThanOrEqual(d_date_sk,2450419),LessThanOrEqual(d_date_sk,2450449))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2450784),LessThanOrEqual(d_date_sk,2450814)),And(GreaterThanOrEqual(d_date_sk,2451149),LessThanOrEqual(d_date_sk,2451179))),And(GreaterThanOrEqual(d_date_sk,2451514),LessThanOrEqual(d_date_sk,2451544)))))))),Or(Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2451880),LessThanOrEqual(d_date_sk,2451910)),And(GreaterThanOrEqual(d_date_sk,2452245),LessThanOrEqual(d_date_sk,2452275))),Or(And(GreaterThanOrEqual(d_date_sk,2452610),LessThanOrEqual(d_date_sk,2452640)),And(GreaterThanOrEqual(d_date_sk,2452975),LessThanOrEqual(d_date_sk,2453005)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2453341),LessThanOrEqual(d_date_sk,2453371)),And(GreaterThanOrEqual(d_date_sk,2453706),LessThanOrEqual(d_date_sk,2453736))),And(GreaterThanOrEqual(d_date_sk,2454071),LessThanOrEqual(d_date_sk,2454101)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2454436),LessThanOrEqual(d_date_sk,2454466)),And(GreaterThanOrEqual(d_date_sk,2454802),LessThanOrEqual(d_date_sk,2454832))),And(GreaterThanOrEqual(d_date_sk,2455167),LessThanOrEqual(d_date_sk,2455197))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2455532),LessThanOrEqual(d_date_sk,2455562)),And(GreaterThanOrEqual(d_date_sk,2455897),LessThanOrEqual(d_date_sk,2455927))),And(GreaterThanOrEqual(d_date_sk,2456263),LessThanOrEqual(d_date_sk,2456293))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2456628),LessThanOrEqual(d_date_sk,2456658)),And(GreaterThanOrEqual(d_date_sk,2456993),LessThanOrEqual(d_date_sk,2457023))),And(GreaterThanOrEqual(d_date_sk,2457358),LessThanOrEqual(d_date_sk,2457388))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2457724),LessThanOrEqual(d_date_sk,2457754)),And(GreaterThanOrEqual(d_date_sk,2458089),LessThanOrEqual(d_date_sk,2458119))),And(GreaterThanOrEqual(d_date_sk,2458454),LessThanOrEqual(d_date_sk,2458484)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2458819),LessThanOrEqual(d_date_sk,2458849)),And(GreaterThanOrEqual(d_date_sk,2459185),LessThanOrEqual(d_date_sk,2459215))),And(GreaterThanOrEqual(d_date_sk,2459550),LessThanOrEqual(d_date_sk,2459580))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2459915),LessThanOrEqual(d_date_sk,2459945)),And(GreaterThanOrEqual(d_date_sk,2460280),LessThanOrEqual(d_date_sk,2460310))),And(GreaterThanOrEqual(d_date_sk,2460646),LessThanOrEqual(d_date_sk,2460676)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2461011),LessThanOrEqual(d_date_sk,2461041)),And(GreaterThanOrEqual(d_date_sk,2461376),LessThanOrEqual(d_date_sk,2461406))),Or(And(GreaterThanOrEqual(d_date_sk,2461741),LessThanOrEqual(d_date_sk,2461771)),And(GreaterThanOrEqual(d_date_sk,2462107),LessThanOrEqual(d_date_sk,2462137)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2462472),LessThanOrEqual(d_date_sk,2462502)),And(GreaterThanOrEqual(d_date_sk,2462837),LessThanOrEqual(d_date_sk,2462867))),And(GreaterThanOrEqual(d_date_sk,2463202),LessThanOrEqual(d_date_sk,2463232)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2463568),LessThanOrEqual(d_date_sk,2463598)),And(GreaterThanOrEqual(d_date_sk,2463933),LessThanOrEqual(d_date_sk,2463963))),And(GreaterThanOrEqual(d_date_sk,2464298),LessThanOrEqual(d_date_sk,2464328))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2464663),LessThanOrEqual(d_date_sk,2464693)),And(GreaterThanOrEqual(d_date_sk,2465029),LessThanOrEqual(d_date_sk,2465059))),And(GreaterThanOrEqual(d_date_sk,2465394),LessThanOrEqual(d_date_sk,2465424))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2465759),LessThanOrEqual(d_date_sk,2465789)),And(GreaterThanOrEqual(d_date_sk,2466124),LessThanOrEqual(d_date_sk,2466154))),And(GreaterThanOrEqual(d_date_sk,2466490),LessThanOrEqual(d_date_sk,2466520))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2466855),LessThanOrEqual(d_date_sk,2466885)),And(GreaterThanOrEqual(d_date_sk,2467220),LessThanOrEqual(d_date_sk,2467250))),And(GreaterThanOrEqual(d_date_sk,2467585),LessThanOrEqual(d_date_sk,2467615)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2467951),LessThanOrEqual(d_date_sk,2467981)),And(GreaterThanOrEqual(d_date_sk,2468316),LessThanOrEqual(d_date_sk,2468346))),And(GreaterThanOrEqual(d_date_sk,2468681),LessThanOrEqual(d_date_sk,2468711))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2469046),LessThanOrEqual(d_date_sk,2469076)),And(GreaterThanOrEqual(d_date_sk,2469412),LessThanOrEqual(d_date_sk,2469442))),And(GreaterThanOrEqual(d_date_sk,2469777),LessThanOrEqual(d_date_sk,2469807))))))),Or(Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2470142),LessThanOrEqual(d_date_sk,2470172)),And(GreaterThanOrEqual(d_date_sk,2470507),LessThanOrEqual(d_date_sk,2470537))),Or(And(GreaterThanOrEqual(d_date_sk,2470873),LessThanOrEqual(d_date_sk,2470903)),And(GreaterThanOrEqual(d_date_sk,2471238),LessThanOrEqual(d_date_sk,2471268)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2471603),LessThanOrEqual(d_date_sk,2471633)),And(GreaterThanOrEqual(d_date_sk,2471968),LessThanOrEqual(d_date_sk,2471998))),And(GreaterThanOrEqual(d_date_sk,2472334),LessThanOrEqual(d_date_sk,2472364)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2472699),LessThanOrEqual(d_date_sk,2472729)),And(GreaterThanOrEqual(d_date_sk,2473064),LessThanOrEqual(d_date_sk,2473094))),And(GreaterThanOrEqual(d_date_sk,2473429),LessThanOrEqual(d_date_sk,2473459))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2473795),LessThanOrEqual(d_date_sk,2473825)),And(GreaterThanOrEqual(d_date_sk,2474160),LessThanOrEqual(d_date_sk,2474190))),And(GreaterThanOrEqual(d_date_sk,2474525),LessThanOrEqual(d_date_sk,2474555))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2474890),LessThanOrEqual(d_date_sk,2474920)),And(GreaterThanOrEqual(d_date_sk,2475256),LessThanOrEqual(d_date_sk,2475286))),And(GreaterThanOrEqual(d_date_sk,2475621),LessThanOrEqual(d_date_sk,2475651))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2475986),LessThanOrEqual(d_date_sk,2476016)),And(GreaterThanOrEqual(d_date_sk,2476351),LessThanOrEqual(d_date_sk,2476381))),And(GreaterThanOrEqual(d_date_sk,2476717),LessThanOrEqual(d_date_sk,2476747)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2477082),LessThanOrEqual(d_date_sk,2477112)),And(GreaterThanOrEqual(d_date_sk,2477447),LessThanOrEqual(d_date_sk,2477477))),And(GreaterThanOrEqual(d_date_sk,2477812),LessThanOrEqual(d_date_sk,2477842))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2478178),LessThanOrEqual(d_date_sk,2478208)),And(GreaterThanOrEqual(d_date_sk,2478543),LessThanOrEqual(d_date_sk,2478573))),And(GreaterThanOrEqual(d_date_sk,2478908),LessThanOrEqual(d_date_sk,2478938)))))),Or(Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2479273),LessThanOrEqual(d_date_sk,2479303)),And(GreaterThanOrEqual(d_date_sk,2479639),LessThanOrEqual(d_date_sk,2479669))),Or(And(GreaterThanOrEqual(d_date_sk,2480004),LessThanOrEqual(d_date_sk,2480034)),And(GreaterThanOrEqual(d_date_sk,2480369),LessThanOrEqual(d_date_sk,2480399)))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2480734),LessThanOrEqual(d_date_sk,2480764)),And(GreaterThanOrEqual(d_date_sk,2481100),LessThanOrEqual(d_date_sk,2481130))),And(GreaterThanOrEqual(d_date_sk,2481465),LessThanOrEqual(d_date_sk,2481495)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2481830),LessThanOrEqual(d_date_sk,2481860)),And(GreaterThanOrEqual(d_date_sk,2482195),LessThanOrEqual(d_date_sk,2482225))),And(GreaterThanOrEqual(d_date_sk,2482561),LessThanOrEqual(d_date_sk,2482591))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2482926),LessThanOrEqual(d_date_sk,2482956)),And(GreaterThanOrEqual(d_date_sk,2483291),LessThanOrEqual(d_date_sk,2483321))),And(GreaterThanOrEqual(d_date_sk,2483656),LessThanOrEqual(d_date_sk,2483686))))),Or(Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2484022),LessThanOrEqual(d_date_sk,2484052)),And(GreaterThanOrEqual(d_date_sk,2484387),LessThanOrEqual(d_date_sk,2484417))),And(GreaterThanOrEqual(d_date_sk,2484752),LessThanOrEqual(d_date_sk,2484782))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2485117),LessThanOrEqual(d_date_sk,2485147)),And(GreaterThanOrEqual(d_date_sk,2485483),LessThanOrEqual(d_date_sk,2485513))),And(GreaterThanOrEqual(d_date_sk,2485848),LessThanOrEqual(d_date_sk,2485878)))),Or(Or(Or(And(GreaterThanOrEqual(d_date_sk,2486213),LessThanOrEqual(d_date_sk,2486243)),And(GreaterThanOrEqual(d_date_sk,2486578),LessThanOrEqual(d_date_sk,2486608))),And(GreaterThanOrEqual(d_date_sk,2486944),LessThanOrEqual(d_date_sk,2486974))),Or(Or(And(GreaterThanOrEqual(d_date_sk,2487309),LessThanOrEqual(d_date_sk,2487339)),And(GreaterThanOrEqual(d_date_sk,2487674),LessThanOrEqual(d_date_sk,2487704))),And(GreaterThanOrEqual(d_date_sk,2488039),LessThanOrEqual(d_date_sk,2488069))))))))), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_net_profit#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [((((((((((ss_sold_date_sk#6 >= 2415355) AND (ss_sold_date_sk#6 <= 2415385)) OR ((ss_sold_date_sk#6 >= 2415720) AND (ss_sold_date_sk#6 <= 2415750))) OR (((ss_sold_date_sk#6 >= 2416085) AND (ss_sold_date_sk#6 <= 2416115)) OR ((ss_sold_date_sk#6 >= 2416450) AND (ss_sold_date_sk#6 <= 2416480)))) OR ((((ss_sold_date_sk#6 >= 2416816) AND (ss_sold_date_sk#6 <= 2416846)) OR ((ss_sold_date_sk#6 >= 2417181) AND (ss_sold_date_sk#6 <= 2417211))) OR ((ss_sold_date_sk#6 >= 2417546) AND (ss_sold_date_sk#6 <= 2417576)))) OR (((((ss_sold_date_sk#6 >= 2417911) AND (ss_sold_date_sk#6 <= 2417941)) OR ((ss_sold_date_sk#6 >= 2418277) AND (ss_sold_date_sk#6 <= 2418307))) OR ((ss_sold_date_sk#6 >= 2418642) AND (ss_sold_date_sk#6 <= 2418672))) OR ((((ss_sold_date_sk#6 >= 2419007) AND (ss_sold_date_sk#6 <= 2419037)) OR ((ss_sold_date_sk#6 >= 2419372) AND (ss_sold_date_sk#6 <= 2419402))) OR ((ss_sold_date_sk#6 >= 2419738) AND (ss_sold_date_sk#6 <= 2419768))))) OR ((((((ss_sold_date_sk#6 >= 2420103) AND (ss_sold_date_sk#6 <= 2420133)) OR ((ss_sold_date_sk#6 >= 2420468) AND (ss_sold_date_sk#6 <= 2420498))) OR ((ss_sold_date_sk#6 >= 2420833) AND (ss_sold_date_sk#6 <= 2420863))) OR ((((ss_sold_date_sk#6 >= 2421199) AND (ss_sold_date_sk#6 <= 2421229)) OR ((ss_sold_date_sk#6 >= 2421564) AND (ss_sold_date_sk#6 <= 2421594))) OR ((ss_sold_date_sk#6 >= 2421929) AND (ss_sold_date_sk#6 <= 2421959)))) OR (((((ss_sold_date_sk#6 >= 2422294) AND (ss_sold_date_sk#6 <= 2422324)) OR ((ss_sold_date_sk#6 >= 2422660) AND (ss_sold_date_sk#6 <= 2422690))) OR ((ss_sold_date_sk#6 >= 2423025) AND (ss_sold_date_sk#6 <= 2423055))) OR ((((ss_sold_date_sk#6 >= 2423390) AND (ss_sold_date_sk#6 <= 2423420)) OR ((ss_sold_date_sk#6 >= 2423755) AND (ss_sold_date_sk#6 <= 2423785))) OR ((ss_sold_date_sk#6 >= 2424121) AND (ss_sold_date_sk#6 <= 2424151)))))) OR (((((((ss_sold_date_sk#6 >= 2424486) AND (ss_sold_date_sk#6 <= 2424516)) OR ((ss_sold_date_sk#6 >= 2424851) AND (ss_sold_date_sk#6 <= 2424881))) OR (((ss_sold_date_sk#6 >= 2425216) AND (ss_sold_date_sk#6 <= 2425246)) OR ((ss_sold_date_sk#6 >= 2425582) AND (ss_sold_date_sk#6 <= 2425612)))) OR ((((ss_sold_date_sk#6 >= 2425947) AND (ss_sold_date_sk#6 <= 2425977)) OR ((ss_sold_date_sk#6 >= 2426312) AND (ss_sold_date_sk#6 <= 2426342))) OR ((ss_sold_date_sk#6 >= 2426677) AND (ss_sold_date_sk#6 <= 2426707)))) OR (((((ss_sold_date_sk#6 >= 2427043) AND (ss_sold_date_sk#6 <= 2427073)) OR ((ss_sold_date_sk#6 >= 2427408) AND (ss_sold_date_sk#6 <= 2427438))) OR ((ss_sold_date_sk#6 >= 2427773) AND (ss_sold_date_sk#6 <= 2427803))) OR ((((ss_sold_date_sk#6 >= 2428138) AND (ss_sold_date_sk#6 <= 2428168)) OR ((ss_sold_date_sk#6 >= 2428504) AND (ss_sold_date_sk#6 <= 2428534))) OR ((ss_sold_date_sk#6 >= 2428869) AND (ss_sold_date_sk#6 <= 2428899))))) OR ((((((ss_sold_date_sk#6 >= 2429234) AND (ss_sold_date_sk#6 <= 2429264)) OR ((ss_sold_date_sk#6 >= 2429599) AND (ss_sold_date_sk#6 <= 2429629))) OR ((ss_sold_date_sk#6 >= 2429965) AND (ss_sold_date_sk#6 <= 2429995))) OR ((((ss_sold_date_sk#6 >= 2430330) AND (ss_sold_date_sk#6 <= 2430360)) OR ((ss_sold_date_sk#6 >= 2430695) AND (ss_sold_date_sk#6 <= 2430725))) OR ((ss_sold_date_sk#6 >= 2431060) AND (ss_sold_date_sk#6 <= 2431090)))) OR (((((ss_sold_date_sk#6 >= 2431426) AND (ss_sold_date_sk#6 <= 2431456)) OR ((ss_sold_date_sk#6 >= 2431791) AND (ss_sold_date_sk#6 <= 2431821))) OR ((ss_sold_date_sk#6 >= 2432156) AND (ss_sold_date_sk#6 <= 2432186))) OR ((((ss_sold_date_sk#6 >= 2432521) AND (ss_sold_date_sk#6 <= 2432551)) OR ((ss_sold_date_sk#6 >= 2432887) AND (ss_sold_date_sk#6 <= 2432917))) OR ((ss_sold_date_sk#6 >= 2433252) AND (ss_sold_date_sk#6 <= 2433282))))))) OR ((((((((ss_sold_date_sk#6 >= 2433617) AND (ss_sold_date_sk#6 <= 2433647)) OR ((ss_sold_date_sk#6 >= 2433982) AND (ss_sold_date_sk#6 <= 2434012))) OR (((ss_sold_date_sk#6 >= 2434348) AND (ss_sold_date_sk#6 <= 2434378)) OR ((ss_sold_date_sk#6 >= 2434713) AND (ss_sold_date_sk#6 <= 2434743)))) OR ((((ss_sold_date_sk#6 >= 2435078) AND (ss_sold_date_sk#6 <= 2435108)) OR ((ss_sold_date_sk#6 >= 2435443) AND (ss_sold_date_sk#6 <= 2435473))) OR ((ss_sold_date_sk#6 >= 2435809) AND (ss_sold_date_sk#6 <= 2435839)))) OR (((((ss_sold_date_sk#6 >= 2436174) AND (ss_sold_date_sk#6 <= 2436204)) OR ((ss_sold_date_sk#6 >= 2436539) AND (ss_sold_date_sk#6 <= 2436569))) OR ((ss_sold_date_sk#6 >= 2436904) AND (ss_sold_date_sk#6 <= 2436934))) OR ((((ss_sold_date_sk#6 >= 2437270) AND (ss_sold_date_sk#6 <= 2437300)) OR ((ss_sold_date_sk#6 >= 2437635) AND (ss_sold_date_sk#6 <= 2437665))) OR ((ss_sold_date_sk#6 >= 2438000) AND (ss_sold_date_sk#6 <= 2438030))))) OR ((((((ss_sold_date_sk#6 >= 2438365) AND (ss_sold_date_sk#6 <= 2438395)) OR ((ss_sold_date_sk#6 >= 2438731) AND (ss_sold_date_sk#6 <= 2438761))) OR ((ss_sold_date_sk#6 >= 2439096) AND (ss_sold_date_sk#6 <= 2439126))) OR ((((ss_sold_date_sk#6 >= 2439461) AND (ss_sold_date_sk#6 <= 2439491)) OR ((ss_sold_date_sk#6 >= 2439826) AND (ss_sold_date_sk#6 <= 2439856))) OR ((ss_sold_date_sk#6 >= 2440192) AND (ss_sold_date_sk#6 <= 2440222)))) OR (((((ss_sold_date_sk#6 >= 2440557) AND (ss_sold_date_sk#6 <= 2440587)) OR ((ss_sold_date_sk#6 >= 2440922) AND (ss_sold_date_sk#6 <= 2440952))) OR ((ss_sold_date_sk#6 >= 2441287) AND (ss_sold_date_sk#6 <= 2441317))) OR ((((ss_sold_date_sk#6 >= 2441653) AND (ss_sold_date_sk#6 <= 2441683)) OR ((ss_sold_date_sk#6 >= 2442018) AND (ss_sold_date_sk#6 <= 2442048))) OR ((ss_sold_date_sk#6 >= 2442383) AND (ss_sold_date_sk#6 <= 2442413)))))) OR (((((((ss_sold_date_sk#6 >= 2442748) AND (ss_sold_date_sk#6 <= 2442778)) OR ((ss_sold_date_sk#6 >= 2443114) AND (ss_sold_date_sk#6 <= 2443144))) OR (((ss_sold_date_sk#6 >= 2443479) AND (ss_sold_date_sk#6 <= 2443509)) OR ((ss_sold_date_sk#6 >= 2443844) AND (ss_sold_date_sk#6 <= 2443874)))) OR ((((ss_sold_date_sk#6 >= 2444209) AND (ss_sold_date_sk#6 <= 2444239)) OR ((ss_sold_date_sk#6 >= 2444575) AND (ss_sold_date_sk#6 <= 2444605))) OR ((ss_sold_date_sk#6 >= 2444940) AND (ss_sold_date_sk#6 <= 2444970)))) OR (((((ss_sold_date_sk#6 >= 2445305) AND (ss_sold_date_sk#6 <= 2445335)) OR ((ss_sold_date_sk#6 >= 2445670) AND (ss_sold_date_sk#6 <= 2445700))) OR ((ss_sold_date_sk#6 >= 2446036) AND (ss_sold_date_sk#6 <= 2446066))) OR ((((ss_sold_date_sk#6 >= 2446401) AND (ss_sold_date_sk#6 <= 2446431)) OR ((ss_sold_date_sk#6 >= 2446766) AND (ss_sold_date_sk#6 <= 2446796))) OR ((ss_sold_date_sk#6 >= 2447131) AND (ss_sold_date_sk#6 <= 2447161))))) OR ((((((ss_sold_date_sk#6 >= 2447497) AND (ss_sold_date_sk#6 <= 2447527)) OR ((ss_sold_date_sk#6 >= 2447862) AND (ss_sold_date_sk#6 <= 2447892))) OR ((ss_sold_date_sk#6 >= 2448227) AND (ss_sold_date_sk#6 <= 2448257))) OR ((((ss_sold_date_sk#6 >= 2448592) AND (ss_sold_date_sk#6 <= 2448622)) OR ((ss_sold_date_sk#6 >= 2448958) AND (ss_sold_date_sk#6 <= 2448988))) OR ((ss_sold_date_sk#6 >= 2449323) AND (ss_sold_date_sk#6 <= 2449353)))) OR (((((ss_sold_date_sk#6 >= 2449688) AND (ss_sold_date_sk#6 <= 2449718)) OR ((ss_sold_date_sk#6 >= 2450053) AND (ss_sold_date_sk#6 <= 2450083))) OR ((ss_sold_date_sk#6 >= 2450419) AND (ss_sold_date_sk#6 <= 2450449))) OR ((((ss_sold_date_sk#6 >= 2450784) AND (ss_sold_date_sk#6 <= 2450814)) OR ((ss_sold_date_sk#6 >= 2451149) AND (ss_sold_date_sk#6 <= 2451179))) OR ((ss_sold_date_sk#6 >= 2451514) AND (ss_sold_date_sk#6 <= 2451544)))))))) OR (((((((((ss_sold_date_sk#6 >= 2451880) AND (ss_sold_date_sk#6 <= 2451910)) OR ((ss_sold_date_sk#6 >= 2452245) AND (ss_sold_date_sk#6 <= 2452275))) OR (((ss_sold_date_sk#6 >= 2452610) AND (ss_sold_date_sk#6 <= 2452640)) OR ((ss_sold_date_sk#6 >= 2452975) AND (ss_sold_date_sk#6 <= 2453005)))) OR ((((ss_sold_date_sk#6 >= 2453341) AND (ss_sold_date_sk#6 <= 2453371)) OR ((ss_sold_date_sk#6 >= 2453706) AND (ss_sold_date_sk#6 <= 2453736))) OR ((ss_sold_date_sk#6 >= 2454071) AND (ss_sold_date_sk#6 <= 2454101)))) OR (((((ss_sold_date_sk#6 >= 2454436) AND (ss_sold_date_sk#6 <= 2454466)) OR ((ss_sold_date_sk#6 >= 2454802) AND (ss_sold_date_sk#6 <= 2454832))) OR ((ss_sold_date_sk#6 >= 2455167) AND (ss_sold_date_sk#6 <= 2455197))) OR ((((ss_sold_date_sk#6 >= 2455532) AND (ss_sold_date_sk#6 <= 2455562)) OR ((ss_sold_date_sk#6 >= 2455897) AND (ss_sold_date_sk#6 <= 2455927))) OR ((ss_sold_date_sk#6 >= 2456263) AND (ss_sold_date_sk#6 <= 2456293))))) OR ((((((ss_sold_date_sk#6 >= 2456628) AND (ss_sold_date_sk#6 <= 2456658)) OR ((ss_sold_date_sk#6 >= 2456993) AND (ss_sold_date_sk#6 <= 2457023))) OR ((ss_sold_date_sk#6 >= 2457358) AND (ss_sold_date_sk#6 <= 2457388))) OR ((((ss_sold_date_sk#6 >= 2457724) AND (ss_sold_date_sk#6 <= 2457754)) OR ((ss_sold_date_sk#6 >= 2458089) AND (ss_sold_date_sk#6 <= 2458119))) OR ((ss_sold_date_sk#6 >= 2458454) AND (ss_sold_date_sk#6 <= 2458484)))) OR (((((ss_sold_date_sk#6 >= 2458819) AND (ss_sold_date_sk#6 <= 2458849)) OR ((ss_sold_date_sk#6 >= 2459185) AND (ss_sold_date_sk#6 <= 2459215))) OR ((ss_sold_date_sk#6 >= 2459550) AND (ss_sold_date_sk#6 <= 2459580))) OR ((((ss_sold_date_sk#6 >= 2459915) AND (ss_sold_date_sk#6 <= 2459945)) OR ((ss_sold_date_sk#6 >= 2460280) AND (ss_sold_date_sk#6 <= 2460310))) OR ((ss_sold_date_sk#6 >= 2460646) AND (ss_sold_date_sk#6 <= 2460676)))))) OR (((((((ss_sold_date_sk#6 >= 2461011) AND (ss_sold_date_sk#6 <= 2461041)) OR ((ss_sold_date_sk#6 >= 2461376) AND (ss_sold_date_sk#6 <= 2461406))) OR (((ss_sold_date_sk#6 >= 2461741) AND (ss_sold_date_sk#6 <= 2461771)) OR ((ss_sold_date_sk#6 >= 2462107) AND (ss_sold_date_sk#6 <= 2462137)))) OR ((((ss_sold_date_sk#6 >= 2462472) AND (ss_sold_date_sk#6 <= 2462502)) OR ((ss_sold_date_sk#6 >= 2462837) AND (ss_sold_date_sk#6 <= 2462867))) OR ((ss_sold_date_sk#6 >= 2463202) AND (ss_sold_date_sk#6 <= 2463232)))) OR (((((ss_sold_date_sk#6 >= 2463568) AND (ss_sold_date_sk#6 <= 2463598)) OR ((ss_sold_date_sk#6 >= 2463933) AND (ss_sold_date_sk#6 <= 2463963))) OR ((ss_sold_date_sk#6 >= 2464298) AND (ss_sold_date_sk#6 <= 2464328))) OR ((((ss_sold_date_sk#6 >= 2464663) AND (ss_sold_date_sk#6 <= 2464693)) OR ((ss_sold_date_sk#6 >= 2465029) AND (ss_sold_date_sk#6 <= 2465059))) OR ((ss_sold_date_sk#6 >= 2465394) AND (ss_sold_date_sk#6 <= 2465424))))) OR ((((((ss_sold_date_sk#6 >= 2465759) AND (ss_sold_date_sk#6 <= 2465789)) OR ((ss_sold_date_sk#6 >= 2466124) AND (ss_sold_date_sk#6 <= 2466154))) OR ((ss_sold_date_sk#6 >= 2466490) AND (ss_sold_date_sk#6 <= 2466520))) OR ((((ss_sold_date_sk#6 >= 2466855) AND (ss_sold_date_sk#6 <= 2466885)) OR ((ss_sold_date_sk#6 >= 2467220) AND (ss_sold_date_sk#6 <= 2467250))) OR ((ss_sold_date_sk#6 >= 2467585) AND (ss_sold_date_sk#6 <= 2467615)))) OR (((((ss_sold_date_sk#6 >= 2467951) AND (ss_sold_date_sk#6 <= 2467981)) OR ((ss_sold_date_sk#6 >= 2468316) AND (ss_sold_date_sk#6 <= 2468346))) OR ((ss_sold_date_sk#6 >= 2468681) AND (ss_sold_date_sk#6 <= 2468711))) OR ((((ss_sold_date_sk#6 >= 2469046) AND (ss_sold_date_sk#6 <= 2469076)) OR ((ss_sold_date_sk#6 >= 2469412) AND (ss_sold_date_sk#6 <= 2469442))) OR ((ss_sold_date_sk#6 >= 2469777) AND (ss_sold_date_sk#6 <= 2469807))))))) OR ((((((((ss_sold_date_sk#6 >= 2470142) AND (ss_sold_date_sk#6 <= 2470172)) OR ((ss_sold_date_sk#6 >= 2470507) AND (ss_sold_date_sk#6 <= 2470537))) OR (((ss_sold_date_sk#6 >= 2470873) AND (ss_sold_date_sk#6 <= 2470903)) OR ((ss_sold_date_sk#6 >= 2471238) AND (ss_sold_date_sk#6 <= 2471268)))) OR ((((ss_sold_date_sk#6 >= 2471603) AND (ss_sold_date_sk#6 <= 2471633)) OR ((ss_sold_date_sk#6 >= 2471968) AND (ss_sold_date_sk#6 <= 2471998))) OR ((ss_sold_date_sk#6 >= 2472334) AND (ss_sold_date_sk#6 <= 2472364)))) OR (((((ss_sold_date_sk#6 >= 2472699) AND (ss_sold_date_sk#6 <= 2472729)) OR ((ss_sold_date_sk#6 >= 2473064) AND (ss_sold_date_sk#6 <= 2473094))) OR ((ss_sold_date_sk#6 >= 2473429) AND (ss_sold_date_sk#6 <= 2473459))) OR ((((ss_sold_date_sk#6 >= 2473795) AND (ss_sold_date_sk#6 <= 2473825)) OR ((ss_sold_date_sk#6 >= 2474160) AND (ss_sold_date_sk#6 <= 2474190))) OR ((ss_sold_date_sk#6 >= 2474525) AND (ss_sold_date_sk#6 <= 2474555))))) OR ((((((ss_sold_date_sk#6 >= 2474890) AND (ss_sold_date_sk#6 <= 2474920)) OR ((ss_sold_date_sk#6 >= 2475256) AND (ss_sold_date_sk#6 <= 2475286))) OR ((ss_sold_date_sk#6 >= 2475621) AND (ss_sold_date_sk#6 <= 2475651))) OR ((((ss_sold_date_sk#6 >= 2475986) AND (ss_sold_date_sk#6 <= 2476016)) OR ((ss_sold_date_sk#6 >= 2476351) AND (ss_sold_date_sk#6 <= 2476381))) OR ((ss_sold_date_sk#6 >= 2476717) AND (ss_sold_date_sk#6 <= 2476747)))) OR (((((ss_sold_date_sk#6 >= 2477082) AND (ss_sold_date_sk#6 <= 2477112)) OR ((ss_sold_date_sk#6 >= 2477447) AND (ss_sold_date_sk#6 <= 2477477))) OR ((ss_sold_date_sk#6 >= 2477812) AND (ss_sold_date_sk#6 <= 2477842))) OR ((((ss_sold_date_sk#6 >= 2478178) AND (ss_sold_date_sk#6 <= 2478208)) OR ((ss_sold_date_sk#6 >= 2478543) AND (ss_sold_date_sk#6 <= 2478573))) OR ((ss_sold_date_sk#6 >= 2478908) AND (ss_sold_date_sk#6 <= 2478938)))))) OR (((((((ss_sold_date_sk#6 >= 2479273) AND (ss_sold_date_sk#6 <= 2479303)) OR ((ss_sold_date_sk#6 >= 2479639) AND (ss_sold_date_sk#6 <= 2479669))) OR (((ss_sold_date_sk#6 >= 2480004) AND (ss_sold_date_sk#6 <= 2480034)) OR ((ss_sold_date_sk#6 >= 2480369) AND (ss_sold_date_sk#6 <= 2480399)))) OR ((((ss_sold_date_sk#6 >= 2480734) AND (ss_sold_date_sk#6 <= 2480764)) OR ((ss_sold_date_sk#6 >= 2481100) AND (ss_sold_date_sk#6 <= 2481130))) OR ((ss_sold_date_sk#6 >= 2481465) AND (ss_sold_date_sk#6 <= 2481495)))) OR (((((ss_sold_date_sk#6 >= 2481830) AND (ss_sold_date_sk#6 <= 2481860)) OR ((ss_sold_date_sk#6 >= 2482195) AND (ss_sold_date_sk#6 <= 2482225))) OR ((ss_sold_date_sk#6 >= 2482561) AND (ss_sold_date_sk#6 <= 2482591))) OR ((((ss_sold_date_sk#6 >= 2482926) AND (ss_sold_date_sk#6 <= 2482956)) OR ((ss_sold_date_sk#6 >= 2483291) AND (ss_sold_date_sk#6 <= 2483321))) OR ((ss_sold_date_sk#6 >= 2483656) AND (ss_sold_date_sk#6 <= 2483686))))) OR ((((((ss_sold_date_sk#6 >= 2484022) AND (ss_sold_date_sk#6 <= 2484052)) OR ((ss_sold_date_sk#6 >= 2484387) AND (ss_sold_date_sk#6 <= 2484417))) OR ((ss_sold_date_sk#6 >= 2484752) AND (ss_sold_date_sk#6 <= 2484782))) OR ((((ss_sold_date_sk#6 >= 2485117) AND (ss_sold_date_sk#6 <= 2485147)) OR ((ss_sold_date_sk#6 >= 2485483) AND (ss_sold_date_sk#6 <= 2485513))) OR ((ss_sold_date_sk#6 >= 2485848) AND (ss_sold_date_sk#6 <= 2485878)))) OR (((((ss_sold_date_sk#6 >= 2486213) AND (ss_sold_date_sk#6 <= 2486243)) OR ((ss_sold_date_sk#6 >= 2486578) AND (ss_sold_date_sk#6 <= 2486608))) OR ((ss_sold_date_sk#6 >= 2486944) AND (ss_sold_date_sk#6 <= 2486974))) OR ((((ss_sold_date_sk#6 >= 2487309) AND (ss_sold_date_sk#6 <= 2487339)) OR ((ss_sold_date_sk#6 >= 2487674) AND (ss_sold_date_sk#6 <= 2487704))) OR ((ss_sold_date_sk#6 >= 2488039) AND (ss_sold_date_sk#6 <= 2488069))))))))), isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_net_profit#5, ss_sold_date_s Output [4]: [i_item_sk#7, i_brand_id#8, i_brand#9, i_manufact_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,436), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,436), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34.sf100/explain.txt index 70c0057ae08..b180b4bb98f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34.sf100/explain.txt @@ -50,7 +50,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), (ss_sold_date_sk#5 >= 2450816), (ss_sold_date_sk#5 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -80,7 +80,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_county, [Appanoose County,Daviess County,Fairfield County,Raleigh County,Saginaw County,Sumner County,Williamson County,Ziebach County]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_county, [Appanoose County,Daviess County,Fairfield County,Raleigh County,Saginaw County,Sumner County,Williamson County,Ziebach County]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -119,7 +119,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -218,7 +218,7 @@ Input [3]: [ss_ticket_number#4, ss_customer_sk#1, cnt#18] Output [5]: [c_customer_sk#20, c_salutation#21, c_first_name#22, c_last_name#23, c_preferred_cust_flag#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -297,7 +297,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#7, d_year#26, d_dom#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), In(d_year, [1998,1999,2000]), GreaterThanOrEqual(d_date_sk,2450816), LessThanOrEqual(d_date_sk,2451910), IsNotNull(d_date_sk)] +PushedFilters: [*Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), *In(d_year, [1998,1999,2000]), *GreaterThanOrEqual(d_date_sk,2450816), *LessThanOrEqual(d_date_sk,2451910), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34/explain.txt index 4871ea6321b..618a063a1dd 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q34/explain.txt @@ -44,7 +44,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), (ss_sold_date_sk#5 >= 2450816), (ss_sold_date_sk#5 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_county, [Appanoose County,Daviess County,Fairfield County,Raleigh County,Saginaw County,Sumner County,Williamson County,Ziebach County]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_county, [Appanoose County,Daviess County,Fairfield County,Raleigh County,Saginaw County,Sumner County,Williamson County,Ziebach County]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -113,7 +113,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -191,7 +191,7 @@ Arguments: ((cnt#18 >= 15) AND (cnt#18 <= 20)) Output [5]: [c_customer_sk#19, c_salutation#20, c_first_name#21, c_last_name#22, c_preferred_cust_flag#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -263,7 +263,7 @@ ColumnarBroadcastExchange (55) Output [3]: [d_date_sk#7, d_year#24, d_dom#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), In(d_year, [1998,1999,2000]), GreaterThanOrEqual(d_date_sk,2450816), LessThanOrEqual(d_date_sk,2451910), IsNotNull(d_date_sk)] +PushedFilters: [*Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), *In(d_year, [1998,1999,2000]), *GreaterThanOrEqual(d_date_sk,2450816), *LessThanOrEqual(d_date_sk,2451910), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42.sf100/explain.txt index 08902ced6db..831b379f097 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42.sf100/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,12), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2451149), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,12), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2451149), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -60,7 +60,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2451149), (ss_sold_date_sk#6 <= 2451179), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_d Output [4]: [i_item_sk#8, i_category_id#9, i_category#10, i_manager_id#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42/explain.txt index c5b98996d80..7c16ac40d22 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q42/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,12), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2451149), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,12), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2451149), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2451149), (ss_sold_date_sk#6 <= 2451179), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_d Output [4]: [i_item_sk#7, i_category_id#8, i_category#9, i_manager_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43.sf100/explain.txt index 68231046b75..71028897caf 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43.sf100/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_day_name#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2450816), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2450816), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -60,7 +60,7 @@ Output [3]: [ss_store_sk#4, ss_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2450816), (ss_sold_date_sk#6 <= 2451179), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_day_name#3, ss_store_sk#4, ss_sales_price#5, ss_sold_ Output [4]: [s_store_sk#8, s_store_id#9, s_store_name#10, s_gmt_offset#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_gmt_offset), EqualTo(s_gmt_offset,-5.00), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_gmt_offset), *EqualTo(s_gmt_offset,-5.00), *IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43/explain.txt index ffdb13574ec..f29c8728dfa 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q43/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_day_name#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2450816), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2450816), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_store_sk#4, ss_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2450816), (ss_sold_date_sk#6 <= 2451179), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_day_name#3, ss_store_sk#4, ss_sales_price#5, ss_sold_ Output [4]: [s_store_sk#7, s_store_id#8, s_store_name#9, s_gmt_offset#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_gmt_offset), EqualTo(s_gmt_offset,-5.00), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_gmt_offset), *EqualTo(s_gmt_offset,-5.00), *IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46.sf100/explain.txt index 2dc39df6b55..f329db0a794 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46.sf100/explain.txt @@ -59,7 +59,7 @@ Output [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [ss_sold_date_sk#8 INSET 2451181, 2451182, 2451188, 2451189, 2451195, 2451196, 2451202, 2451203, 2451209, 2451210, 2451216, 2451217, 2451223, 2451224, 2451230, 2451231, 2451237, 2451238, 2451244, 2451245, 2451251, 2451252, 2451258, 2451259, 2451265, 2451266, 2451272, 2451273, 2451279, 2451280, 2451286, 2451287, 2451293, 2451294, 2451300, 2451301, 2451307, 2451308, 2451314, 2451315, 2451321, 2451322, 2451328, 2451329, 2451335, 2451336, 2451342, 2451343, 2451349, 2451350, 2451356, 2451357, 2451363, 2451364, 2451370, 2451371, 2451377, 2451378, 2451384, 2451385, 2451391, 2451392, 2451398, 2451399, 2451405, 2451406, 2451412, 2451413, 2451419, 2451420, 2451426, 2451427, 2451433, 2451434, 2451440, 2451441, 2451447, 2451448, 2451454, 2451455, 2451461, 2451462, 2451468, 2451469, 2451475, 2451476, 2451482, 2451483, 2451489, 2451490, 2451496, 2451497, 2451503, 2451504, 2451510, 2451511, 2451517, 2451518, 2451524, 2451525, 2451531, 2451532, 2451538, 2451539, 2451545, 2451546, 2451552, 2451553, 2451559, 2451560, 2451566, 2451567, 2451573, 2451574, 2451580, 2451581, 2451587, 2451588, 2451594, 2451595, 2451601, 2451602, 2451608, 2451609, 2451615, 2451616, 2451622, 2451623, 2451629, 2451630, 2451636, 2451637, 2451643, 2451644, 2451650, 2451651, 2451657, 2451658, 2451664, 2451665, 2451671, 2451672, 2451678, 2451679, 2451685, 2451686, 2451692, 2451693, 2451699, 2451700, 2451706, 2451707, 2451713, 2451714, 2451720, 2451721, 2451727, 2451728, 2451734, 2451735, 2451741, 2451742, 2451748, 2451749, 2451755, 2451756, 2451762, 2451763, 2451769, 2451770, 2451776, 2451777, 2451783, 2451784, 2451790, 2451791, 2451797, 2451798, 2451804, 2451805, 2451811, 2451812, 2451818, 2451819, 2451825, 2451826, 2451832, 2451833, 2451839, 2451840, 2451846, 2451847, 2451853, 2451854, 2451860, 2451861, 2451867, 2451868, 2451874, 2451875, 2451881, 2451882, 2451888, 2451889, 2451895, 2451896, 2451902, 2451903, 2451909, 2451910, 2451916, 2451917, 2451923, 2451924, 2451930, 2451931, 2451937, 2451938, 2451944, 2451945, 2451951, 2451952, 2451958, 2451959, 2451965, 2451966, 2451972, 2451973, 2451979, 2451980, 2451986, 2451987, 2451993, 2451994, 2452000, 2452001, 2452007, 2452008, 2452014, 2452015, 2452021, 2452022, 2452028, 2452029, 2452035, 2452036, 2452042, 2452043, 2452049, 2452050, 2452056, 2452057, 2452063, 2452064, 2452070, 2452071, 2452077, 2452078, 2452084, 2452085, 2452091, 2452092, 2452098, 2452099, 2452105, 2452106, 2452112, 2452113, 2452119, 2452120, 2452126, 2452127, 2452133, 2452134, 2452140, 2452141, 2452147, 2452148, 2452154, 2452155, 2452161, 2452162, 2452168, 2452169, 2452175, 2452176, 2452182, 2452183, 2452189, 2452190, 2452196, 2452197, 2452203, 2452204, 2452210, 2452211, 2452217, 2452218, 2452224, 2452225, 2452231, 2452232, 2452238, 2452239, 2452245, 2452246, 2452252, 2452253, 2452259, 2452260, 2452266, 2452267, 2452273, 2452274, isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -89,7 +89,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [2]: [s_store_sk#11, s_city#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Brownsville,Concord,Greenville,Midway,Spring Hill]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Brownsville,Concord,Greenville,Midway,Spring Hill]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -128,7 +128,7 @@ Input [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#13, hd_dep_count#14, hd_vehicle_count#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -184,7 +184,7 @@ Input [5]: [ss_customer_sk#1, ss_addr_sk#3, ss_ticket_number#5, ss_coupon_amt#6, Output [2]: [ca_address_sk#17, ca_city#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (32) FilterExecTransformer @@ -254,7 +254,7 @@ Input [5]: [ss_ticket_number#5, ss_customer_sk#1, bought_city#25, amt#26, profit Output [4]: [c_customer_sk#28, c_current_addr_sk#29, c_first_name#30, c_last_name#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (49) FilterExecTransformer @@ -352,7 +352,7 @@ ColumnarBroadcastExchange (75) Output [3]: [d_date_sk#10, d_year#36, d_dow#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_dow, [0,6]), In(d_year, [1999,2000,2001]), In(d_date_sk, [2451181,2451182,2451188,2451189,2451195,2451196,2451202,2451203,2451209,2451210,2451216,2451217,2451223,2451224,2451230,2451231,2451237,2451238,2451244,2451245,2451251,2451252,2451258,2451259,2451265,2451266,2451272,2451273,2451279,2451280,2451286,2451287,2451293,2451294,2451300,2451301,2451307,2451308,2451314,2451315,2451321,2451322,2451328,2451329,2451335,2451336,2451342,2451343,2451349,2451350,2451356,2451357,2451363,2451364,2451370,2451371,2451377,2451378,2451384,2451385,2451391,2451392,2451398,2451399,2451405,2451406,2451412,2451413,2451419,2451420,2451426,2451427,2451433,2451434,2451440,2451441,2451447,2451448,2451454,2451455,2451461,2451462,2451468,2451469,2451475,2451476,2451482,2451483,2451489,2451490,2451496,2451497,2451503,2451504,2451510,2451511,2451517,2451518,2451524,2451525,2451531,2451532,2451538,2451539,2451545,2451546,2451552,2451553,2451559,2451560,2451566,2451567,2451573,2451574,2451580,2451581,2451587,2451588,2451594,2451595,2451601,2451602,2451608,2451609,2451615,2451616,2451622,2451623,2451629,2451630,2451636,2451637,2451643,2451644,2451650,2451651,2451657,2451658,2451664,2451665,2451671,2451672,2451678,2451679,2451685,2451686,2451692,2451693,2451699,2451700,2451706,2451707,2451713,2451714,2451720,2451721,2451727,2451728,2451734,2451735,2451741,2451742,2451748,2451749,2451755,2451756,2451762,2451763,2451769,2451770,2451776,2451777,2451783,2451784,2451790,2451791,2451797,2451798,2451804,2451805,2451811,2451812,2451818,2451819,2451825,2451826,2451832,2451833,2451839,2451840,2451846,2451847,2451853,2451854,2451860,2451861,2451867,2451868,2451874,2451875,2451881,2451882,2451888,2451889,2451895,2451896,2451902,2451903,2451909,2451910,2451916,2451917,2451923,2451924,2451930,2451931,2451937,2451938,2451944,2451945,2451951,2451952,2451958,2451959,2451965,2451966,2451972,2451973,2451979,2451980,2451986,2451987,2451993,2451994,2452000,2452001,2452007,2452008,2452014,2452015,2452021,2452022,2452028,2452029,2452035,2452036,2452042,2452043,2452049,2452050,2452056,2452057,2452063,2452064,2452070,2452071,2452077,2452078,2452084,2452085,2452091,2452092,2452098,2452099,2452105,2452106,2452112,2452113,2452119,2452120,2452126,2452127,2452133,2452134,2452140,2452141,2452147,2452148,2452154,2452155,2452161,2452162,2452168,2452169,2452175,2452176,2452182,2452183,2452189,2452190,2452196,2452197,2452203,2452204,2452210,2452211,2452217,2452218,2452224,2452225,2452231,2452232,2452238,2452239,2452245,2452246,2452252,2452253,2452259,2452260,2452266,2452267,2452273,2452274]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_dow, [0,6]), *In(d_year, [1999,2000,2001]), *In(d_date_sk, [2451181,2451182,2451188,2451189,2451195,2451196,2451202,2451203,2451209,2451210,2451216,2451217,2451223,2451224,2451230,2451231,2451237,2451238,2451244,2451245,2451251,2451252,2451258,2451259,2451265,2451266,2451272,2451273,2451279,2451280,2451286,2451287,2451293,2451294,2451300,2451301,2451307,2451308,2451314,2451315,2451321,2451322,2451328,2451329,2451335,2451336,2451342,2451343,2451349,2451350,2451356,2451357,2451363,2451364,2451370,2451371,2451377,2451378,2451384,2451385,2451391,2451392,2451398,2451399,2451405,2451406,2451412,2451413,2451419,2451420,2451426,2451427,2451433,2451434,2451440,2451441,2451447,2451448,2451454,2451455,2451461,2451462,2451468,2451469,2451475,2451476,2451482,2451483,2451489,2451490,2451496,2451497,2451503,2451504,2451510,2451511,2451517,2451518,2451524,2451525,2451531,2451532,2451538,2451539,2451545,2451546,2451552,2451553,2451559,2451560,2451566,2451567,2451573,2451574,2451580,2451581,2451587,2451588,2451594,2451595,2451601,2451602,2451608,2451609,2451615,2451616,2451622,2451623,2451629,2451630,2451636,2451637,2451643,2451644,2451650,2451651,2451657,2451658,2451664,2451665,2451671,2451672,2451678,2451679,2451685,2451686,2451692,2451693,2451699,2451700,2451706,2451707,2451713,2451714,2451720,2451721,2451727,2451728,2451734,2451735,2451741,2451742,2451748,2451749,2451755,2451756,2451762,2451763,2451769,2451770,2451776,2451777,2451783,2451784,2451790,2451791,2451797,2451798,2451804,2451805,2451811,2451812,2451818,2451819,2451825,2451826,2451832,2451833,2451839,2451840,2451846,2451847,2451853,2451854,2451860,2451861,2451867,2451868,2451874,2451875,2451881,2451882,2451888,2451889,2451895,2451896,2451902,2451903,2451909,2451910,2451916,2451917,2451923,2451924,2451930,2451931,2451937,2451938,2451944,2451945,2451951,2451952,2451958,2451959,2451965,2451966,2451972,2451973,2451979,2451980,2451986,2451987,2451993,2451994,2452000,2452001,2452007,2452008,2452014,2452015,2452021,2452022,2452028,2452029,2452035,2452036,2452042,2452043,2452049,2452050,2452056,2452057,2452063,2452064,2452070,2452071,2452077,2452078,2452084,2452085,2452091,2452092,2452098,2452099,2452105,2452106,2452112,2452113,2452119,2452120,2452126,2452127,2452133,2452134,2452140,2452141,2452147,2452148,2452154,2452155,2452161,2452162,2452168,2452169,2452175,2452176,2452182,2452183,2452189,2452190,2452196,2452197,2452203,2452204,2452210,2452211,2452217,2452218,2452224,2452225,2452231,2452232,2452238,2452239,2452245,2452246,2452252,2452253,2452259,2452260,2452266,2452267,2452273,2452274]), *IsNotNull(d_date_sk)] ReadSchema: struct (72) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46/explain.txt index 8c7abf2d9ea..39f5413cf05 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q46/explain.txt @@ -51,7 +51,7 @@ Output [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [ss_sold_date_sk#8 INSET 2451181, 2451182, 2451188, 2451189, 2451195, 2451196, 2451202, 2451203, 2451209, 2451210, 2451216, 2451217, 2451223, 2451224, 2451230, 2451231, 2451237, 2451238, 2451244, 2451245, 2451251, 2451252, 2451258, 2451259, 2451265, 2451266, 2451272, 2451273, 2451279, 2451280, 2451286, 2451287, 2451293, 2451294, 2451300, 2451301, 2451307, 2451308, 2451314, 2451315, 2451321, 2451322, 2451328, 2451329, 2451335, 2451336, 2451342, 2451343, 2451349, 2451350, 2451356, 2451357, 2451363, 2451364, 2451370, 2451371, 2451377, 2451378, 2451384, 2451385, 2451391, 2451392, 2451398, 2451399, 2451405, 2451406, 2451412, 2451413, 2451419, 2451420, 2451426, 2451427, 2451433, 2451434, 2451440, 2451441, 2451447, 2451448, 2451454, 2451455, 2451461, 2451462, 2451468, 2451469, 2451475, 2451476, 2451482, 2451483, 2451489, 2451490, 2451496, 2451497, 2451503, 2451504, 2451510, 2451511, 2451517, 2451518, 2451524, 2451525, 2451531, 2451532, 2451538, 2451539, 2451545, 2451546, 2451552, 2451553, 2451559, 2451560, 2451566, 2451567, 2451573, 2451574, 2451580, 2451581, 2451587, 2451588, 2451594, 2451595, 2451601, 2451602, 2451608, 2451609, 2451615, 2451616, 2451622, 2451623, 2451629, 2451630, 2451636, 2451637, 2451643, 2451644, 2451650, 2451651, 2451657, 2451658, 2451664, 2451665, 2451671, 2451672, 2451678, 2451679, 2451685, 2451686, 2451692, 2451693, 2451699, 2451700, 2451706, 2451707, 2451713, 2451714, 2451720, 2451721, 2451727, 2451728, 2451734, 2451735, 2451741, 2451742, 2451748, 2451749, 2451755, 2451756, 2451762, 2451763, 2451769, 2451770, 2451776, 2451777, 2451783, 2451784, 2451790, 2451791, 2451797, 2451798, 2451804, 2451805, 2451811, 2451812, 2451818, 2451819, 2451825, 2451826, 2451832, 2451833, 2451839, 2451840, 2451846, 2451847, 2451853, 2451854, 2451860, 2451861, 2451867, 2451868, 2451874, 2451875, 2451881, 2451882, 2451888, 2451889, 2451895, 2451896, 2451902, 2451903, 2451909, 2451910, 2451916, 2451917, 2451923, 2451924, 2451930, 2451931, 2451937, 2451938, 2451944, 2451945, 2451951, 2451952, 2451958, 2451959, 2451965, 2451966, 2451972, 2451973, 2451979, 2451980, 2451986, 2451987, 2451993, 2451994, 2452000, 2452001, 2452007, 2452008, 2452014, 2452015, 2452021, 2452022, 2452028, 2452029, 2452035, 2452036, 2452042, 2452043, 2452049, 2452050, 2452056, 2452057, 2452063, 2452064, 2452070, 2452071, 2452077, 2452078, 2452084, 2452085, 2452091, 2452092, 2452098, 2452099, 2452105, 2452106, 2452112, 2452113, 2452119, 2452120, 2452126, 2452127, 2452133, 2452134, 2452140, 2452141, 2452147, 2452148, 2452154, 2452155, 2452161, 2452162, 2452168, 2452169, 2452175, 2452176, 2452182, 2452183, 2452189, 2452190, 2452196, 2452197, 2452203, 2452204, 2452210, 2452211, 2452217, 2452218, 2452224, 2452225, 2452231, 2452232, 2452238, 2452239, 2452245, 2452246, 2452252, 2452253, 2452259, 2452260, 2452266, 2452267, 2452273, 2452274, isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [2]: [s_store_sk#11, s_city#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Brownsville,Concord,Greenville,Midway,Spring Hill]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Brownsville,Concord,Greenville,Midway,Spring Hill]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -120,7 +120,7 @@ Input [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#13, hd_dep_count#14, hd_vehicle_count#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -159,7 +159,7 @@ Input [7]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_ticket_number#5, s Output [2]: [ca_address_sk#16, ca_city#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (27) FilterExecTransformer @@ -233,7 +233,7 @@ Input [6]: [ss_ticket_number#5, ss_customer_sk#1, ss_addr_sk#3, ca_city#17, sum( Output [4]: [c_customer_sk#30, c_current_addr_sk#31, c_first_name#32, c_last_name#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -307,7 +307,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#10, d_year#36, d_dow#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_dow, [0,6]), In(d_year, [1999,2000,2001]), In(d_date_sk, [2451181,2451182,2451188,2451189,2451195,2451196,2451202,2451203,2451209,2451210,2451216,2451217,2451223,2451224,2451230,2451231,2451237,2451238,2451244,2451245,2451251,2451252,2451258,2451259,2451265,2451266,2451272,2451273,2451279,2451280,2451286,2451287,2451293,2451294,2451300,2451301,2451307,2451308,2451314,2451315,2451321,2451322,2451328,2451329,2451335,2451336,2451342,2451343,2451349,2451350,2451356,2451357,2451363,2451364,2451370,2451371,2451377,2451378,2451384,2451385,2451391,2451392,2451398,2451399,2451405,2451406,2451412,2451413,2451419,2451420,2451426,2451427,2451433,2451434,2451440,2451441,2451447,2451448,2451454,2451455,2451461,2451462,2451468,2451469,2451475,2451476,2451482,2451483,2451489,2451490,2451496,2451497,2451503,2451504,2451510,2451511,2451517,2451518,2451524,2451525,2451531,2451532,2451538,2451539,2451545,2451546,2451552,2451553,2451559,2451560,2451566,2451567,2451573,2451574,2451580,2451581,2451587,2451588,2451594,2451595,2451601,2451602,2451608,2451609,2451615,2451616,2451622,2451623,2451629,2451630,2451636,2451637,2451643,2451644,2451650,2451651,2451657,2451658,2451664,2451665,2451671,2451672,2451678,2451679,2451685,2451686,2451692,2451693,2451699,2451700,2451706,2451707,2451713,2451714,2451720,2451721,2451727,2451728,2451734,2451735,2451741,2451742,2451748,2451749,2451755,2451756,2451762,2451763,2451769,2451770,2451776,2451777,2451783,2451784,2451790,2451791,2451797,2451798,2451804,2451805,2451811,2451812,2451818,2451819,2451825,2451826,2451832,2451833,2451839,2451840,2451846,2451847,2451853,2451854,2451860,2451861,2451867,2451868,2451874,2451875,2451881,2451882,2451888,2451889,2451895,2451896,2451902,2451903,2451909,2451910,2451916,2451917,2451923,2451924,2451930,2451931,2451937,2451938,2451944,2451945,2451951,2451952,2451958,2451959,2451965,2451966,2451972,2451973,2451979,2451980,2451986,2451987,2451993,2451994,2452000,2452001,2452007,2452008,2452014,2452015,2452021,2452022,2452028,2452029,2452035,2452036,2452042,2452043,2452049,2452050,2452056,2452057,2452063,2452064,2452070,2452071,2452077,2452078,2452084,2452085,2452091,2452092,2452098,2452099,2452105,2452106,2452112,2452113,2452119,2452120,2452126,2452127,2452133,2452134,2452140,2452141,2452147,2452148,2452154,2452155,2452161,2452162,2452168,2452169,2452175,2452176,2452182,2452183,2452189,2452190,2452196,2452197,2452203,2452204,2452210,2452211,2452217,2452218,2452224,2452225,2452231,2452232,2452238,2452239,2452245,2452246,2452252,2452253,2452259,2452260,2452266,2452267,2452273,2452274]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_dow, [0,6]), *In(d_year, [1999,2000,2001]), *In(d_date_sk, [2451181,2451182,2451188,2451189,2451195,2451196,2451202,2451203,2451209,2451210,2451216,2451217,2451223,2451224,2451230,2451231,2451237,2451238,2451244,2451245,2451251,2451252,2451258,2451259,2451265,2451266,2451272,2451273,2451279,2451280,2451286,2451287,2451293,2451294,2451300,2451301,2451307,2451308,2451314,2451315,2451321,2451322,2451328,2451329,2451335,2451336,2451342,2451343,2451349,2451350,2451356,2451357,2451363,2451364,2451370,2451371,2451377,2451378,2451384,2451385,2451391,2451392,2451398,2451399,2451405,2451406,2451412,2451413,2451419,2451420,2451426,2451427,2451433,2451434,2451440,2451441,2451447,2451448,2451454,2451455,2451461,2451462,2451468,2451469,2451475,2451476,2451482,2451483,2451489,2451490,2451496,2451497,2451503,2451504,2451510,2451511,2451517,2451518,2451524,2451525,2451531,2451532,2451538,2451539,2451545,2451546,2451552,2451553,2451559,2451560,2451566,2451567,2451573,2451574,2451580,2451581,2451587,2451588,2451594,2451595,2451601,2451602,2451608,2451609,2451615,2451616,2451622,2451623,2451629,2451630,2451636,2451637,2451643,2451644,2451650,2451651,2451657,2451658,2451664,2451665,2451671,2451672,2451678,2451679,2451685,2451686,2451692,2451693,2451699,2451700,2451706,2451707,2451713,2451714,2451720,2451721,2451727,2451728,2451734,2451735,2451741,2451742,2451748,2451749,2451755,2451756,2451762,2451763,2451769,2451770,2451776,2451777,2451783,2451784,2451790,2451791,2451797,2451798,2451804,2451805,2451811,2451812,2451818,2451819,2451825,2451826,2451832,2451833,2451839,2451840,2451846,2451847,2451853,2451854,2451860,2451861,2451867,2451868,2451874,2451875,2451881,2451882,2451888,2451889,2451895,2451896,2451902,2451903,2451909,2451910,2451916,2451917,2451923,2451924,2451930,2451931,2451937,2451938,2451944,2451945,2451951,2451952,2451958,2451959,2451965,2451966,2451972,2451973,2451979,2451980,2451986,2451987,2451993,2451994,2452000,2452001,2452007,2452008,2452014,2452015,2452021,2452022,2452028,2452029,2452035,2452036,2452042,2452043,2452049,2452050,2452056,2452057,2452063,2452064,2452070,2452071,2452077,2452078,2452084,2452085,2452091,2452092,2452098,2452099,2452105,2452106,2452112,2452113,2452119,2452120,2452126,2452127,2452133,2452134,2452140,2452141,2452147,2452148,2452154,2452155,2452161,2452162,2452168,2452169,2452175,2452176,2452182,2452183,2452189,2452190,2452196,2452197,2452203,2452204,2452210,2452211,2452217,2452218,2452224,2452225,2452231,2452232,2452238,2452239,2452245,2452246,2452252,2452253,2452259,2452260,2452266,2452267,2452273,2452274]), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52.sf100/explain.txt index ac165d0f384..eb3c695c21e 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52.sf100/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,12), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2451149), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,12), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2451149), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -60,7 +60,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2451149), (ss_sold_date_sk#6 <= 2451179), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_d Output [4]: [i_item_sk#8, i_brand_id#9, i_brand#10, i_manager_id#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52/explain.txt index fc87d04c0b2..f28ff1a80f5 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q52/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,12), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2451149), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,12), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2451149), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2451149), (ss_sold_date_sk#6 <= 2451179), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_d Output [4]: [i_item_sk#7, i_brand_id#8, i_brand#9, i_manager_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53.sf100/explain.txt index 31163ade363..4ff89c899fe 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53.sf100/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -70,7 +70,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), (ss_sold_date_sk#13 >= 2451911), (ss_sold_date_sk#13 <= 2452275), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -91,7 +91,7 @@ Input [6]: [i_item_sk#1, i_manufact_id#5, ss_item_sk#10, ss_store_sk#11, ss_sale Output [1]: [s_store_sk#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#16, d_month_seq#27, d_qoy#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223]), GreaterThanOrEqual(d_date_sk,2451911), LessThanOrEqual(d_date_sk,2452275), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223]), *GreaterThanOrEqual(d_date_sk,2451911), *LessThanOrEqual(d_date_sk,2452275), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53/explain.txt index b1eb038080c..8fdab480e23 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q53/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -56,7 +56,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), (ss_sold_date_sk#13 >= 2451911), (ss_sold_date_sk#13 <= 2452275), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -110,7 +110,7 @@ Input [6]: [i_manufact_id#5, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk# Output [1]: [s_store_sk#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#15, d_month_seq#27, d_qoy#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223]), GreaterThanOrEqual(d_date_sk,2451911), LessThanOrEqual(d_date_sk,2452275), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223]), *GreaterThanOrEqual(d_date_sk,2451911), *LessThanOrEqual(d_date_sk,2452275), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55.sf100/explain.txt index 3dd1459a56b..14f4b45d4ba 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55.sf100/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,2001), GreaterThanOrEqual(d_date_sk,2452215), LessThanOrEqual(d_date_sk,2452244), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,2001), *GreaterThanOrEqual(d_date_sk,2452215), *LessThanOrEqual(d_date_sk,2452244), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -60,7 +60,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2452215), (ss_sold_date_sk#6 <= 2452244), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -81,7 +81,7 @@ Input [4]: [d_date_sk#1, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Output [4]: [i_item_sk#8, i_brand_id#9, i_brand#10, i_manager_id#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,48), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,48), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55/explain.txt index 8c0bd7efaf4..69918d58da3 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q55/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,2001), GreaterThanOrEqual(d_date_sk,2452215), LessThanOrEqual(d_date_sk,2452244), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,2001), *GreaterThanOrEqual(d_date_sk,2452215), *LessThanOrEqual(d_date_sk,2452244), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2452215), (ss_sold_date_sk#6 <= 2452244), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [4]: [d_date_sk#1, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Output [4]: [i_item_sk#7, i_brand_id#8, i_brand#9, i_manager_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,48), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,48), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59.sf100/explain.txt index fafd756172b..9a1e375908f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59.sf100/explain.txt @@ -68,7 +68,7 @@ Output [3]: [ss_store_sk#1, ss_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -79,7 +79,7 @@ Arguments: isnotnull(ss_store_sk#1) Output [3]: [d_date_sk#4, d_week_seq#5, d_day_name#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (4) FilterExecTransformer @@ -153,7 +153,7 @@ Input [9]: [d_week_seq#5, ss_store_sk#1, sum(UnscaledValue(CASE WHEN (d_day_name Output [3]: [s_store_sk#44, s_store_id#45, s_store_name#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (21) FilterExecTransformer @@ -188,7 +188,7 @@ Input [12]: [d_week_seq#5, ss_store_sk#1, sun_sales#37, mon_sales#38, tue_sales# Output [2]: [d_month_seq#47, d_week_seq#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1185), LessThanOrEqual(d_month_seq,1196), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1185), *LessThanOrEqual(d_month_seq,1196), *IsNotNull(d_week_seq)] ReadSchema: struct (29) FilterExecTransformer @@ -228,7 +228,7 @@ Output [3]: [ss_store_sk#59, ss_sales_price#60, ss_sold_date_sk#61] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#61)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -239,7 +239,7 @@ Arguments: isnotnull(ss_store_sk#59) Output [3]: [d_date_sk#62, d_week_seq#63, d_day_name#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (40) FilterExecTransformer @@ -313,7 +313,7 @@ Input [8]: [d_week_seq#63, ss_store_sk#59, sum(UnscaledValue(CASE WHEN (d_day_na Output [2]: [s_store_sk#91, s_store_id#92] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (57) FilterExecTransformer @@ -348,7 +348,7 @@ Input [10]: [d_week_seq#63, ss_store_sk#59, sun_sales#85, mon_sales#86, wed_sale Output [2]: [d_month_seq#93, d_week_seq#94] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1197), LessThanOrEqual(d_month_seq,1208), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1197), *LessThanOrEqual(d_month_seq,1208), *IsNotNull(d_week_seq)] ReadSchema: struct (65) FilterExecTransformer @@ -436,7 +436,7 @@ VeloxColumnarToRow (93) Output [2]: [d_month_seq#47, d_week_seq#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1185), LessThanOrEqual(d_month_seq,1196), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1185), *LessThanOrEqual(d_month_seq,1196), *IsNotNull(d_week_seq)] ReadSchema: struct (83) FilterExecTransformer @@ -513,7 +513,7 @@ VeloxColumnarToRow (105) Output [2]: [d_month_seq#93, d_week_seq#94] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1197), LessThanOrEqual(d_month_seq,1208), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1197), *LessThanOrEqual(d_month_seq,1208), *IsNotNull(d_week_seq)] ReadSchema: struct (95) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59/explain.txt index e9e67d1faee..9b437066b94 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q59/explain.txt @@ -66,7 +66,7 @@ Output [3]: [ss_store_sk#1, ss_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Arguments: isnotnull(ss_store_sk#1) Output [3]: [d_date_sk#4, d_week_seq#5, d_day_name#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (4) FilterExecTransformer @@ -151,7 +151,7 @@ Input [9]: [d_week_seq#5, ss_store_sk#1, sum(UnscaledValue(CASE WHEN (d_day_name Output [3]: [s_store_sk#43, s_store_id#44, s_store_name#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (21) FilterExecTransformer @@ -186,7 +186,7 @@ Input [12]: [d_week_seq#5, ss_store_sk#1, sun_sales#36, mon_sales#37, tue_sales# Output [2]: [d_month_seq#46, d_week_seq#47] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1185), LessThanOrEqual(d_month_seq,1196), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1185), *LessThanOrEqual(d_month_seq,1196), *IsNotNull(d_week_seq)] ReadSchema: struct (29) FilterExecTransformer @@ -226,7 +226,7 @@ Output [3]: [ss_store_sk#58, ss_sales_price#59, ss_sold_date_sk#60] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#60)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -295,7 +295,7 @@ Input [8]: [d_week_seq#62, ss_store_sk#58, sum(UnscaledValue(CASE WHEN (d_day_na Output [2]: [s_store_sk#89, s_store_id#90] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (54) FilterExecTransformer @@ -330,7 +330,7 @@ Input [10]: [d_week_seq#62, ss_store_sk#58, sun_sales#83, mon_sales#84, wed_sale Output [2]: [d_month_seq#91, d_week_seq#92] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1197), LessThanOrEqual(d_month_seq,1208), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1197), *LessThanOrEqual(d_month_seq,1208), *IsNotNull(d_week_seq)] ReadSchema: struct (62) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63.sf100/explain.txt index 225fe78e4ff..72259564905 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63.sf100/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manager_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -70,7 +70,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), (ss_sold_date_sk#13 >= 2452123), (ss_sold_date_sk#13 <= 2452487), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -91,7 +91,7 @@ Input [6]: [i_item_sk#1, i_manager_id#5, ss_item_sk#10, ss_store_sk#11, ss_sales Output [1]: [s_store_sk#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#16, d_month_seq#27, d_moy#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230]), GreaterThanOrEqual(d_date_sk,2452123), LessThanOrEqual(d_date_sk,2452487), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230]), *GreaterThanOrEqual(d_date_sk,2452123), *LessThanOrEqual(d_date_sk,2452487), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63/explain.txt index 75fc059a59f..b56b4d77722 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q63/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manager_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -56,7 +56,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), (ss_sold_date_sk#13 >= 2452123), (ss_sold_date_sk#13 <= 2452487), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -110,7 +110,7 @@ Input [6]: [i_manager_id#5, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Output [1]: [s_store_sk#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#15, d_month_seq#27, d_moy#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230]), GreaterThanOrEqual(d_date_sk,2452123), LessThanOrEqual(d_date_sk,2452487), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230]), *GreaterThanOrEqual(d_date_sk,2452123), *LessThanOrEqual(d_date_sk,2452487), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65.sf100/explain.txt index 116863bd01c..61555f167ec 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65.sf100/explain.txt @@ -58,7 +58,7 @@ Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), (ss_sold_date_sk#4 >= 2451911), (ss_sold_date_sk#4 <= 2452275), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -132,7 +132,7 @@ Output [4]: [ss_item_sk#13, ss_store_sk#14, ss_sales_price#15, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#16), (ss_sold_date_sk#16 >= 2451911), (ss_sold_date_sk#16 <= 2452275), dynamicpruningexpression(ss_sold_date_sk#16 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (19) FilterExecTransformer @@ -278,7 +278,7 @@ Input [3]: [ss_store_sk#2, ss_item_sk#1, revenue#12] Output [2]: [s_store_sk#31, s_store_name#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (54) FilterExecTransformer @@ -313,7 +313,7 @@ Input [3]: [ss_item_sk#1, revenue#12, s_store_name#32] Output [5]: [i_item_sk#33, i_item_desc#34, i_current_price#35, i_wholesale_cost#36, i_brand#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -354,7 +354,7 @@ ColumnarBroadcastExchange (72) Output [2]: [d_date_sk#6, d_month_seq#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), GreaterThanOrEqual(d_date_sk,2451911), LessThanOrEqual(d_date_sk,2452275), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *GreaterThanOrEqual(d_date_sk,2451911), *LessThanOrEqual(d_date_sk,2452275), *IsNotNull(d_date_sk)] ReadSchema: struct (69) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65/explain.txt index 5d9458fba36..fbdbb4dd088 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q65/explain.txt @@ -57,7 +57,7 @@ VeloxColumnarToRow (67) Output [2]: [s_store_sk#1, s_store_name#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -69,7 +69,7 @@ Output [4]: [ss_item_sk#3, ss_store_sk#4, ss_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), (ss_sold_date_sk#6 >= 2451911), (ss_sold_date_sk#6 <= 2452275), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -166,7 +166,7 @@ Input [5]: [s_store_sk#1, s_store_name#2, ss_store_sk#4, ss_item_sk#3, revenue#1 Output [5]: [i_item_sk#15, i_item_desc#16, i_current_price#17, i_wholesale_cost#18, i_brand#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -202,7 +202,7 @@ Output [4]: [ss_item_sk#20, ss_store_sk#21, ss_sales_price#22, ss_sold_date_sk#2 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#23), (ss_sold_date_sk#23 >= 2451911), (ss_sold_date_sk#23 <= 2452275), dynamicpruningexpression(ss_sold_date_sk#23 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -354,7 +354,7 @@ ColumnarBroadcastExchange (72) Output [2]: [d_date_sk#8, d_month_seq#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), GreaterThanOrEqual(d_date_sk,2451911), LessThanOrEqual(d_date_sk,2452275), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *GreaterThanOrEqual(d_date_sk,2451911), *LessThanOrEqual(d_date_sk,2452275), *IsNotNull(d_date_sk)] ReadSchema: struct (69) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68.sf100/explain.txt index 77edc9fea3e..08f3ad5ff75 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68.sf100/explain.txt @@ -58,7 +58,7 @@ Output [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [ss_sold_date_sk#9 INSET 2451180, 2451181, 2451211, 2451212, 2451239, 2451240, 2451270, 2451271, 2451300, 2451301, 2451331, 2451332, 2451361, 2451362, 2451392, 2451393, 2451423, 2451424, 2451453, 2451454, 2451484, 2451485, 2451514, 2451515, 2451545, 2451546, 2451576, 2451577, 2451605, 2451606, 2451636, 2451637, 2451666, 2451667, 2451697, 2451698, 2451727, 2451728, 2451758, 2451759, 2451789, 2451790, 2451819, 2451820, 2451850, 2451851, 2451880, 2451881, 2451911, 2451912, 2451942, 2451943, 2451970, 2451971, 2452001, 2452002, 2452031, 2452032, 2452062, 2452063, 2452092, 2452093, 2452123, 2452124, 2452154, 2452155, 2452184, 2452185, 2452215, 2452216, 2452245, 2452246, isnotnull(ss_sold_date_sk#9), dynamicpruningexpression(ss_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -88,7 +88,7 @@ Input [10]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Output [2]: [s_store_sk#12, s_city#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Fairview,Midway]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Fairview,Midway]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -127,7 +127,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#14, hd_dep_count#15, hd_vehicle_count#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -180,7 +180,7 @@ Input [6]: [ss_customer_sk#1, ss_addr_sk#3, ss_ticket_number#5, ss_ext_sales_pri Output [2]: [ca_address_sk#17, ca_city#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (31) FilterExecTransformer @@ -254,7 +254,7 @@ Input [6]: [ss_ticket_number#5, ss_customer_sk#1, bought_city#32, extended_price Output [4]: [c_customer_sk#36, c_current_addr_sk#37, c_first_name#38, c_last_name#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (48) FilterExecTransformer @@ -292,7 +292,7 @@ Input [8]: [ss_ticket_number#5, bought_city#32, extended_price#33, list_price#34 Output [2]: [ca_address_sk#41, ca_city#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (57) FilterExecTransformer @@ -354,7 +354,7 @@ ColumnarBroadcastExchange (73) Output [3]: [d_date_sk#11, d_year#44, d_dom#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1999,2000,2001]), In(d_date_sk, [2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881,2451911,2451912,2451942,2451943,2451970,2451971,2452001,2452002,2452031,2452032,2452062,2452063,2452092,2452093,2452123,2452124,2452154,2452155,2452184,2452185,2452215,2452216,2452245,2452246]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1999,2000,2001]), *In(d_date_sk, [2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881,2451911,2451912,2451942,2451943,2451970,2451971,2452001,2452002,2452031,2452032,2452062,2452063,2452092,2452093,2452123,2452124,2452154,2452155,2452184,2452185,2452215,2452216,2452245,2452246]), *IsNotNull(d_date_sk)] ReadSchema: struct (70) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68/explain.txt index c63591aef0e..05f20a07e60 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q68/explain.txt @@ -51,7 +51,7 @@ Output [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [ss_sold_date_sk#9 INSET 2451180, 2451181, 2451211, 2451212, 2451239, 2451240, 2451270, 2451271, 2451300, 2451301, 2451331, 2451332, 2451361, 2451362, 2451392, 2451393, 2451423, 2451424, 2451453, 2451454, 2451484, 2451485, 2451514, 2451515, 2451545, 2451546, 2451576, 2451577, 2451605, 2451606, 2451636, 2451637, 2451666, 2451667, 2451697, 2451698, 2451727, 2451728, 2451758, 2451759, 2451789, 2451790, 2451819, 2451820, 2451850, 2451851, 2451880, 2451881, 2451911, 2451912, 2451942, 2451943, 2451970, 2451971, 2452001, 2452002, 2452031, 2452032, 2452062, 2452063, 2452092, 2452093, 2452123, 2452124, 2452154, 2452155, 2452184, 2452185, 2452215, 2452216, 2452245, 2452246, isnotnull(ss_sold_date_sk#9), dynamicpruningexpression(ss_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Input [10]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Output [2]: [s_store_sk#12, s_city#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Fairview,Midway]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Fairview,Midway]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -120,7 +120,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#14, hd_dep_count#15, hd_vehicle_count#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,5),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -159,7 +159,7 @@ Input [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_ticket_number#5, s Output [2]: [ca_address_sk#17, ca_city#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (27) FilterExecTransformer @@ -233,7 +233,7 @@ Input [7]: [ss_ticket_number#5, ss_customer_sk#1, ss_addr_sk#3, ca_city#18, sum( Output [4]: [c_customer_sk#36, c_current_addr_sk#37, c_first_name#38, c_last_name#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -307,7 +307,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#11, d_year#42, d_dom#43] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1999,2000,2001]), In(d_date_sk, [2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881,2451911,2451912,2451942,2451943,2451970,2451971,2452001,2452002,2452031,2452032,2452062,2452063,2452092,2452093,2452123,2452124,2452154,2452155,2452184,2452185,2452215,2452216,2452245,2452246]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1999,2000,2001]), *In(d_date_sk, [2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881,2451911,2451912,2451942,2451943,2451970,2451971,2452001,2452002,2452031,2452032,2452062,2452063,2452092,2452093,2452123,2452124,2452154,2452155,2452184,2452185,2452215,2452216,2452245,2452246]), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7.sf100/explain.txt index 0cab4449984..1d83279edd6 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7.sf100/explain.txt @@ -41,7 +41,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_promo_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2450815), (ss_sold_date_sk#8 <= 2451179), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -71,7 +71,7 @@ Input [9]: [ss_item_sk#1, ss_cdemo_sk#2, ss_promo_sk#3, ss_quantity#4, ss_list_p Output [3]: [p_promo_sk#11, p_channel_email#12, p_channel_event#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), *IsNotNull(p_promo_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -110,7 +110,7 @@ Input [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_promo_sk#3, ss_quantity#4, ss_list_p Output [4]: [cd_demo_sk#14, cd_gender#15, cd_marital_status#16, cd_education_status#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_marital_status,W), EqualTo(cd_education_status,Primary ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_marital_status,W), *EqualTo(cd_education_status,Primary ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -149,7 +149,7 @@ Input [7]: [ss_item_sk#1, ss_cdemo_sk#2, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#18, i_item_id#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [2]: [d_date_sk#10, d_year#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2450815), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2450815), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7/explain.txt index b5e742a205f..601332220fc 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q7/explain.txt @@ -41,7 +41,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_promo_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2450815), (ss_sold_date_sk#8 <= 2451179), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_item_sk#1)) AND isnotnull Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_marital_status,W), EqualTo(cd_education_status,Primary ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_marital_status,W), *EqualTo(cd_education_status,Primary ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -110,7 +110,7 @@ Input [8]: [ss_item_sk#1, ss_promo_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#15, i_item_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -145,7 +145,7 @@ Input [8]: [ss_item_sk#1, ss_promo_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [3]: [p_promo_sk#17, p_channel_email#18, p_channel_event#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), *IsNotNull(p_promo_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [2]: [d_date_sk#14, d_year#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), GreaterThanOrEqual(d_date_sk,2450815), LessThanOrEqual(d_date_sk,2451179), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *GreaterThanOrEqual(d_date_sk,2450815), *LessThanOrEqual(d_date_sk,2451179), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73.sf100/explain.txt index 54dc5bd0c7c..891004fd4b1 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73.sf100/explain.txt @@ -44,7 +44,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [ss_sold_date_sk#5 INSET 2450815, 2450816, 2450846, 2450847, 2450874, 2450875, 2450905, 2450906, 2450935, 2450936, 2450966, 2450967, 2450996, 2450997, 2451027, 2451028, 2451058, 2451059, 2451088, 2451089, 2451119, 2451120, 2451149, 2451150, 2451180, 2451181, 2451211, 2451212, 2451239, 2451240, 2451270, 2451271, 2451300, 2451301, 2451331, 2451332, 2451361, 2451362, 2451392, 2451393, 2451423, 2451424, 2451453, 2451454, 2451484, 2451485, 2451514, 2451515, 2451545, 2451546, 2451576, 2451577, 2451605, 2451606, 2451636, 2451637, 2451666, 2451667, 2451697, 2451698, 2451727, 2451728, 2451758, 2451759, 2451789, 2451790, 2451819, 2451820, 2451850, 2451851, 2451880, 2451881, isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_county, [Barrow County,Bronx County,Fairfield County,Ziebach County]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_county, [Barrow County,Bronx County,Fairfield County,Ziebach County]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -113,7 +113,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -205,7 +205,7 @@ Input [3]: [ss_ticket_number#4, ss_customer_sk#1, cnt#18] Output [5]: [c_customer_sk#19, c_salutation#20, c_first_name#21, c_last_name#22, c_preferred_cust_flag#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -263,7 +263,7 @@ ColumnarBroadcastExchange (55) Output [3]: [d_date_sk#7, d_year#24, d_dom#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1998,1999,2000]), In(d_date_sk, [2450815,2450816,2450846,2450847,2450874,2450875,2450905,2450906,2450935,2450936,2450966,2450967,2450996,2450997,2451027,2451028,2451058,2451059,2451088,2451089,2451119,2451120,2451149,2451150,2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1998,1999,2000]), *In(d_date_sk, [2450815,2450816,2450846,2450847,2450874,2450875,2450905,2450906,2450935,2450936,2450966,2450967,2450996,2450997,2451027,2451028,2451058,2451059,2451088,2451089,2451119,2451120,2451149,2451150,2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881]), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73/explain.txt index fb70c406e75..f0fa098fb1c 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q73/explain.txt @@ -44,7 +44,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [ss_sold_date_sk#5 INSET 2450815, 2450816, 2450846, 2450847, 2450874, 2450875, 2450905, 2450906, 2450935, 2450936, 2450966, 2450967, 2450996, 2450997, 2451027, 2451028, 2451058, 2451059, 2451088, 2451089, 2451119, 2451120, 2451149, 2451150, 2451180, 2451181, 2451211, 2451212, 2451239, 2451240, 2451270, 2451271, 2451300, 2451301, 2451331, 2451332, 2451361, 2451362, 2451392, 2451393, 2451423, 2451424, 2451453, 2451454, 2451484, 2451485, 2451514, 2451515, 2451545, 2451546, 2451576, 2451577, 2451605, 2451606, 2451636, 2451637, 2451666, 2451667, 2451697, 2451698, 2451727, 2451728, 2451758, 2451759, 2451789, 2451790, 2451819, 2451820, 2451850, 2451851, 2451880, 2451881, isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_county, [Barrow County,Bronx County,Fairfield County,Ziebach County]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_county, [Barrow County,Bronx County,Fairfield County,Ziebach County]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -113,7 +113,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,Unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -191,7 +191,7 @@ Arguments: ((cnt#18 >= 1) AND (cnt#18 <= 5)) Output [5]: [c_customer_sk#19, c_salutation#20, c_first_name#21, c_last_name#22, c_preferred_cust_flag#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -263,7 +263,7 @@ ColumnarBroadcastExchange (55) Output [3]: [d_date_sk#7, d_year#24, d_dom#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1998,1999,2000]), In(d_date_sk, [2450815,2450816,2450846,2450847,2450874,2450875,2450905,2450906,2450935,2450936,2450966,2450967,2450996,2450997,2451027,2451028,2451058,2451059,2451088,2451089,2451119,2451120,2451149,2451150,2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1998,1999,2000]), *In(d_date_sk, [2450815,2450816,2450846,2450847,2450874,2450875,2450905,2450906,2450935,2450936,2450966,2450967,2450996,2450997,2451027,2451028,2451058,2451059,2451088,2451089,2451119,2451120,2451149,2451150,2451180,2451181,2451211,2451212,2451239,2451240,2451270,2451271,2451300,2451301,2451331,2451332,2451361,2451362,2451392,2451393,2451423,2451424,2451453,2451454,2451484,2451485,2451514,2451515,2451545,2451546,2451576,2451577,2451605,2451606,2451636,2451637,2451666,2451667,2451697,2451698,2451727,2451728,2451758,2451759,2451789,2451790,2451819,2451820,2451850,2451851,2451880,2451881]), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79.sf100/explain.txt index ca7e41d5356..83ee516cb93 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79.sf100/explain.txt @@ -46,7 +46,7 @@ Output [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2450819), (ss_sold_date_sk#8 <= 2451904), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,8),GreaterThan(hd_vehicle_count,0)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,8),GreaterThan(hd_vehicle_count,0)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -115,7 +115,7 @@ Input [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [s_store_sk#14, s_number_employees#15, s_city#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_number_employees), GreaterThanOrEqual(s_number_employees,200), LessThanOrEqual(s_number_employees,295), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_number_employees), *GreaterThanOrEqual(s_number_employees,200), *LessThanOrEqual(s_number_employees,295), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -210,7 +210,7 @@ Input [5]: [ss_ticket_number#5, ss_customer_sk#1, s_city#16, amt#27, profit#28] Output [3]: [c_customer_sk#29, c_first_name#30, c_last_name#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -272,7 +272,7 @@ ColumnarBroadcastExchange (57) Output [3]: [d_date_sk#10, d_year#35, d_dow#36] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dow), EqualTo(d_dow,1), In(d_year, [1998,1999,2000]), GreaterThanOrEqual(d_date_sk,2450819), LessThanOrEqual(d_date_sk,2451904), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dow), *EqualTo(d_dow,1), *In(d_year, [1998,1999,2000]), *GreaterThanOrEqual(d_date_sk,2450819), *LessThanOrEqual(d_date_sk,2451904), *IsNotNull(d_date_sk)] ReadSchema: struct (54) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79/explain.txt index e9a633ea04e..b59caf8beba 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q79/explain.txt @@ -41,7 +41,7 @@ Output [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2450819), (ss_sold_date_sk#8 <= 2451904), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -71,7 +71,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [s_store_sk#11, s_number_employees#12, s_city#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_number_employees), GreaterThanOrEqual(s_number_employees,200), LessThanOrEqual(s_number_employees,295), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_number_employees), *GreaterThanOrEqual(s_number_employees,200), *LessThanOrEqual(s_number_employees,295), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -110,7 +110,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#14, hd_dep_count#15, hd_vehicle_count#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,8),GreaterThan(hd_vehicle_count,0)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,8),GreaterThan(hd_vehicle_count,0)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -188,7 +188,7 @@ Input [6]: [ss_ticket_number#5, ss_customer_sk#1, ss_addr_sk#3, s_city#13, sum(U Output [3]: [c_customer_sk#28, c_first_name#29, c_last_name#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#10, d_year#33, d_dow#34] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dow), EqualTo(d_dow,1), In(d_year, [1998,1999,2000]), GreaterThanOrEqual(d_date_sk,2450819), LessThanOrEqual(d_date_sk,2451904), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dow), *EqualTo(d_dow,1), *In(d_year, [1998,1999,2000]), *GreaterThanOrEqual(d_date_sk,2450819), *LessThanOrEqual(d_date_sk,2451904), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89.sf100/explain.txt index c3ffdcaa96f..d80a9638c17 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89.sf100/explain.txt @@ -40,7 +40,7 @@ Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), (ss_sold_date_sk#4 >= 2451545), (ss_sold_date_sk#4 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -70,7 +70,7 @@ Input [6]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4, d_ Output [3]: [s_store_sk#8, s_store_name#9, s_company_name#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -105,7 +105,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, d_moy#7, s_store_sk#8 Output [4]: [i_item_sk#11, i_brand#12, i_class#13, i_category#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(In(i_category, [Books ,Electronics ,Home ]),In(i_class, [musical ,parenting ,wallpaper ])),And(In(i_category, [Jewelry ,Men ,Shoes ]),In(i_class, [birdal ,pants ,womens ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(In(i_category, [Books ,Electronics ,Home ]),In(i_class, [musical ,parenting ,wallpaper ])),And(In(i_category, [Jewelry ,Men ,Shoes ]),In(i_class, [birdal ,pants ,womens ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -232,7 +232,7 @@ ColumnarBroadcastExchange (49) Output [3]: [d_date_sk#6, d_year#25, d_moy#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), GreaterThanOrEqual(d_date_sk,2451545), LessThanOrEqual(d_date_sk,2451910), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *GreaterThanOrEqual(d_date_sk,2451545), *LessThanOrEqual(d_date_sk,2451910), *IsNotNull(d_date_sk)] ReadSchema: struct (46) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89/explain.txt index cea8453e072..8dc1a2f4536 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q89/explain.txt @@ -39,7 +39,7 @@ VeloxColumnarToRow (44) Output [4]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(In(i_category, [Books ,Electronics ,Home ]),In(i_class, [musical ,parenting ,wallpaper ])),And(In(i_category, [Jewelry ,Men ,Shoes ]),In(i_class, [birdal ,pants ,womens ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(In(i_category, [Books ,Electronics ,Home ]),In(i_class, [musical ,parenting ,wallpaper ])),And(In(i_category, [Jewelry ,Men ,Shoes ]),In(i_class, [birdal ,pants ,womens ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Output [4]: [ss_item_sk#5, ss_store_sk#6, ss_sales_price#7, ss_sold_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), (ss_sold_date_sk#8 >= 2451545), (ss_sold_date_sk#8 <= 2451910), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -105,7 +105,7 @@ Input [8]: [i_brand#2, i_class#3, i_category#4, ss_store_sk#6, ss_sales_price#7, Output [3]: [s_store_sk#12, s_store_name#13, s_company_name#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -232,7 +232,7 @@ ColumnarBroadcastExchange (49) Output [3]: [d_date_sk#10, d_year#25, d_moy#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), GreaterThanOrEqual(d_date_sk,2451545), LessThanOrEqual(d_date_sk,2451910), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *GreaterThanOrEqual(d_date_sk,2451545), *LessThanOrEqual(d_date_sk,2451910), *IsNotNull(d_date_sk)] ReadSchema: struct (46) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98.sf100/explain.txt index a204e0d5c53..38d472bf347 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98.sf100/explain.txt @@ -42,7 +42,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), (ss_sold_date_sk#3 >= 2451911), (ss_sold_date_sk#3 <= 2451941), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -89,7 +89,7 @@ Input [2]: [ss_item_sk#1, ss_ext_sales_price#2] Output [6]: [i_item_sk#7, i_item_id#8, i_item_desc#9, i_current_price#10, i_class#11, i_category#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Jewelry ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Jewelry ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -240,7 +240,7 @@ ColumnarBroadcastExchange (53) Output [2]: [d_date_sk#5, d_date#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2001-01-01), LessThanOrEqual(d_date,2001-01-31), GreaterThanOrEqual(d_date_sk,2451911), LessThanOrEqual(d_date_sk,2451941), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2001-01-01), *LessThanOrEqual(d_date,2001-01-31), *GreaterThanOrEqual(d_date_sk,2451911), *LessThanOrEqual(d_date_sk,2451941), *IsNotNull(d_date_sk)] ReadSchema: struct (50) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98/explain.txt index 52969542a64..e0cdcfd2e8d 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-modified/q98/explain.txt @@ -37,7 +37,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), (ss_sold_date_sk#3 >= 2451911), (ss_sold_date_sk#3 <= 2451941), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -48,7 +48,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [6]: [i_item_sk#5, i_item_id#6, i_item_desc#7, i_current_price#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Jewelry ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Jewelry ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -211,7 +211,7 @@ ColumnarBroadcastExchange (46) Output [2]: [d_date_sk#11, d_date#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2001-01-01), LessThanOrEqual(d_date,2001-01-31), GreaterThanOrEqual(d_date_sk,2451911), LessThanOrEqual(d_date_sk,2451941), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2001-01-01), *LessThanOrEqual(d_date,2001-01-31), *GreaterThanOrEqual(d_date_sk,2451911), *LessThanOrEqual(d_date_sk,2451941), *IsNotNull(d_date_sk)] ReadSchema: struct (43) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1.sf100/explain.txt index ea016333ab6..0c35981f589 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1.sf100/explain.txt @@ -65,7 +65,7 @@ Output [4]: [sr_customer_sk#1, sr_store_sk#2, sr_return_amt#3, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#4), dynamicpruningexpression(sr_returned_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk), IsNotNull(sr_customer_sk)] +PushedFilters: [*IsNotNull(sr_store_sk), *IsNotNull(sr_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -139,7 +139,7 @@ Output [4]: [sr_customer_sk#15, sr_store_sk#16, sr_return_amt#17, sr_returned_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#18), dynamicpruningexpression(sr_returned_date_sk#18 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (19) FilterExecTransformer @@ -275,7 +275,7 @@ Input [5]: [ctr_customer_sk#12, ctr_store_sk#13, ctr_total_return#14, (avg(ctr_t Output [2]: [s_store_sk#33, s_state#34] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -331,7 +331,7 @@ Input [1]: [ctr_customer_sk#12] Output [2]: [c_customer_sk#36, c_customer_id#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (65) FilterExecTransformer @@ -393,7 +393,7 @@ ColumnarBroadcastExchange (81) Output [2]: [d_date_sk#6, d_year#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (78) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1/explain.txt index 3a95b0dda6e..88261ac4d7b 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q1/explain.txt @@ -60,7 +60,7 @@ Output [4]: [sr_customer_sk#1, sr_store_sk#2, sr_return_amt#3, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#4), dynamicpruningexpression(sr_returned_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk), IsNotNull(sr_customer_sk)] +PushedFilters: [*IsNotNull(sr_store_sk), *IsNotNull(sr_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -134,7 +134,7 @@ Output [4]: [sr_customer_sk#15, sr_store_sk#16, sr_return_amt#17, sr_returned_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#18), dynamicpruningexpression(sr_returned_date_sk#18 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (19) FilterExecTransformer @@ -270,7 +270,7 @@ Input [5]: [ctr_customer_sk#12, ctr_store_sk#13, ctr_total_return#14, (avg(ctr_t Output [2]: [s_store_sk#33, s_state#34] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -309,7 +309,7 @@ Input [3]: [ctr_customer_sk#12, ctr_store_sk#13, s_store_sk#33] Output [2]: [c_customer_sk#35, c_customer_id#36] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (60) FilterExecTransformer @@ -364,7 +364,7 @@ ColumnarBroadcastExchange (74) Output [2]: [d_date_sk#6, d_year#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (71) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10.sf100/explain.txt index c17a6c29abc..fe2c59303de 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10.sf100/explain.txt @@ -67,7 +67,7 @@ VeloxColumnarToRow (82) Output [3]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -254,7 +254,7 @@ Input [5]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5, exists#2 Output [2]: [ca_address_sk#21, ca_county#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Jefferson County,La Porte County,Rush County,Toole County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Jefferson County,La Porte County,Rush County,Toole County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (48) FilterExecTransformer @@ -310,7 +310,7 @@ Input [1]: [c_current_cdemo_sk#4] Output [9]: [cd_demo_sk#24, cd_gender#25, cd_marital_status#26, cd_education_status#27, cd_purchase_estimate#28, cd_credit_rating#29, cd_dep_count#30, cd_dep_employed_count#31, cd_dep_college_count#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -416,7 +416,7 @@ VeloxColumnarToRow (94) Output [2]: [ca_address_sk#21, ca_county#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Jefferson County,La Porte County,Rush County,Toole County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Jefferson County,La Porte County,Rush County,Toole County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (84) FilterExecTransformer @@ -488,7 +488,7 @@ ColumnarBroadcastExchange (99) Output [3]: [d_date_sk#11, d_year#49, d_moy#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2002), GreaterThanOrEqual(d_moy,1), LessThanOrEqual(d_moy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2002), *GreaterThanOrEqual(d_moy,1), *LessThanOrEqual(d_moy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (96) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10/explain.txt index 89c6a5525aa..22013e08f49 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q10/explain.txt @@ -55,7 +55,7 @@ VeloxColumnarToRow (66) Output [3]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -212,7 +212,7 @@ Input [5]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5, exists#2 Output [2]: [ca_address_sk#16, ca_county#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Jefferson County,La Porte County,Rush County,Toole County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Jefferson County,La Porte County,Rush County,Toole County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (39) FilterExecTransformer @@ -251,7 +251,7 @@ Input [3]: [c_current_cdemo_sk#4, c_current_addr_sk#5, ca_address_sk#16] Output [9]: [cd_demo_sk#18, cd_gender#19, cd_marital_status#20, cd_education_status#21, cd_purchase_estimate#22, cd_credit_rating#23, cd_dep_count#24, cd_dep_employed_count#25, cd_dep_college_count#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (48) FilterExecTransformer @@ -345,7 +345,7 @@ ColumnarBroadcastExchange (71) Output [3]: [d_date_sk#9, d_year#37, d_moy#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2002), GreaterThanOrEqual(d_moy,1), LessThanOrEqual(d_moy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2002), *GreaterThanOrEqual(d_moy,1), *LessThanOrEqual(d_moy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (68) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11.sf100/explain.txt index 2af9c0db7b3..a4c42206283 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11.sf100/explain.txt @@ -114,7 +114,7 @@ Output [4]: [ss_customer_sk#1, ss_ext_discount_amt#2, ss_ext_list_price#3, ss_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -161,7 +161,7 @@ Input [4]: [ss_customer_sk#1, ss_ext_discount_amt#2, ss_ext_list_price#3, d_year Output [8]: [c_customer_sk#9, c_customer_id#10, c_first_name#11, c_last_name#12, c_preferred_cust_flag#13, c_birth_country#14, c_login#15, c_email_address#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (14) FilterExecTransformer @@ -268,7 +268,7 @@ Output [4]: [ss_customer_sk#26, ss_ext_discount_amt#27, ss_ext_list_price#28, ss Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#29), dynamicpruningexpression(ss_sold_date_sk#29 IN dynamicpruning#30)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -401,7 +401,7 @@ Output [4]: [ws_bill_customer_sk#50, ws_ext_discount_amt#51, ws_ext_list_price#5 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#53), dynamicpruningexpression(ws_sold_date_sk#53 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (73) FilterExecTransformer @@ -542,7 +542,7 @@ Output [4]: [ws_bill_customer_sk#73, ws_ext_discount_amt#74, ws_ext_list_price#7 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#76), dynamicpruningexpression(ws_sold_date_sk#76 IN dynamicpruning#30)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (108) FilterExecTransformer @@ -693,7 +693,7 @@ ColumnarBroadcastExchange (146) Output [2]: [d_date_sk#6, d_year#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (144) FilterExecTransformer @@ -718,7 +718,7 @@ ColumnarBroadcastExchange (150) Output [2]: [d_date_sk#31, d_year#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (148) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11/explain.txt index 7d5de9c5764..2f1a8da4868 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q11/explain.txt @@ -97,7 +97,7 @@ VeloxColumnarToRow (119) Output [8]: [c_customer_sk#1, c_customer_id#2, c_first_name#3, c_last_name#4, c_preferred_cust_flag#5, c_birth_country#6, c_login#7, c_email_address#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (2) FilterExecTransformer @@ -109,7 +109,7 @@ Output [4]: [ss_customer_sk#9, ss_ext_discount_amt#10, ss_ext_list_price#11, ss_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#12), dynamicpruningexpression(ss_sold_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -206,7 +206,7 @@ Arguments: (isnotnull(year_total#22) AND (year_total#22 > 0.00)) Output [8]: [c_customer_sk#23, c_customer_id#24, c_first_name#25, c_last_name#26, c_preferred_cust_flag#27, c_birth_country#28, c_login#29, c_email_address#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (27) FilterExecTransformer @@ -218,7 +218,7 @@ Output [4]: [ss_customer_sk#31, ss_ext_discount_amt#32, ss_ext_list_price#33, ss Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#34), dynamicpruningexpression(ss_sold_date_sk#34 IN dynamicpruning#35)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -335,7 +335,7 @@ Input [5]: [customer_id#21, year_total#22, customer_id#42, customer_preferred_cu Output [8]: [c_customer_sk#45, c_customer_id#46, c_first_name#47, c_last_name#48, c_preferred_cust_flag#49, c_birth_country#50, c_login#51, c_email_address#52] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (57) FilterExecTransformer @@ -347,7 +347,7 @@ Output [4]: [ws_bill_customer_sk#53, ws_ext_discount_amt#54, ws_ext_list_price#5 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#56), dynamicpruningexpression(ws_sold_date_sk#56 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (59) FilterExecTransformer @@ -468,7 +468,7 @@ Input [6]: [customer_id#21, year_total#22, customer_preferred_cust_flag#43, year Output [8]: [c_customer_sk#66, c_customer_id#67, c_first_name#68, c_last_name#69, c_preferred_cust_flag#70, c_birth_country#71, c_login#72, c_email_address#73] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (88) FilterExecTransformer @@ -480,7 +480,7 @@ Output [4]: [ws_bill_customer_sk#74, ws_ext_discount_amt#75, ws_ext_list_price#7 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#77), dynamicpruningexpression(ws_sold_date_sk#77 IN dynamicpruning#35)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (90) FilterExecTransformer @@ -616,7 +616,7 @@ ColumnarBroadcastExchange (123) Output [2]: [d_date_sk#14, d_year#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (121) FilterExecTransformer @@ -641,7 +641,7 @@ ColumnarBroadcastExchange (127) Output [2]: [d_date_sk#36, d_year#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (125) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12.sf100/explain.txt index e8ee4d56213..107f0663e15 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12.sf100/explain.txt @@ -39,7 +39,7 @@ Output [3]: [ws_item_sk#1, ws_ext_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -71,7 +71,7 @@ Input [3]: [ws_item_sk#1, ws_ext_sales_price#2, ws_sold_date_sk#3] Output [6]: [i_item_sk#6, i_item_id#7, i_item_desc#8, i_current_price#9, i_class#10, i_category#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -220,7 +220,7 @@ ColumnarBroadcastExchange (48) Output [2]: [d_date_sk#13, d_date#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12/explain.txt index 805ffbb71d7..0a0d9449358 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q12/explain.txt @@ -33,7 +33,7 @@ Output [3]: [ws_item_sk#1, ws_ext_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -44,7 +44,7 @@ Arguments: isnotnull(ws_item_sk#1) Output [6]: [i_item_sk#5, i_item_id#6, i_item_desc#7, i_current_price#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -186,7 +186,7 @@ ColumnarBroadcastExchange (40) Output [2]: [d_date_sk#11, d_date#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13.sf100/explain.txt index 15528b5a54c..e5822eba1d5 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13.sf100/explain.txt @@ -44,7 +44,7 @@ Output [10]: [ss_cdemo_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_quan Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#10), dynamicpruningexpression(ss_sold_date_sk#10 IN dynamicpruning#11)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_hdemo_sk), Or(Or(And(GreaterThanOrEqual(ss_net_profit,100.00),LessThanOrEqual(ss_net_profit,200.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,300.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,250.00))), Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00)))] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_hdemo_sk), *Or(Or(And(GreaterThanOrEqual(ss_net_profit,100.00),LessThanOrEqual(ss_net_profit,200.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,300.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,250.00))), *Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -55,7 +55,7 @@ Arguments: (((((isnotnull(ss_store_sk#4) AND isnotnull(ss_addr_sk#3)) AND isnotn Output [3]: [cd_demo_sk#12, cd_marital_status#13, cd_education_status#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] +PushedFilters: [*IsNotNull(cd_demo_sk), *Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] ReadSchema: struct (4) FilterExecTransformer @@ -90,7 +90,7 @@ Input [13]: [ss_cdemo_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_quant Output [2]: [hd_demo_sk#15, hd_dep_count#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), Or(EqualTo(hd_dep_count,3),EqualTo(hd_dep_count,1))] +PushedFilters: [*IsNotNull(hd_demo_sk), *Or(EqualTo(hd_dep_count,3),EqualTo(hd_dep_count,1))] ReadSchema: struct (12) FilterExecTransformer @@ -144,7 +144,7 @@ Input [8]: [ss_addr_sk#3, ss_store_sk#4, ss_quantity#5, ss_ext_sales_price#7, ss Output [1]: [s_store_sk#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -179,7 +179,7 @@ Input [7]: [ss_addr_sk#3, ss_store_sk#4, ss_quantity#5, ss_ext_sales_price#7, ss Output [3]: [ca_address_sk#19, ca_state#20, ca_country#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), EqualTo(ca_country,United States), IsNotNull(ca_address_sk), Or(Or(In(ca_state, [OH,TX]),In(ca_state, [KY,NM,OR])),In(ca_state, [MS,TX,VA]))] +PushedFilters: [*IsNotNull(ca_country), *EqualTo(ca_country,United States), *IsNotNull(ca_address_sk), *Or(Or(In(ca_state, [OH,TX]),In(ca_state, [KY,NM,OR])),In(ca_state, [MS,TX,VA]))] ReadSchema: struct (33) FilterExecTransformer @@ -269,7 +269,7 @@ ColumnarBroadcastExchange (55) Output [2]: [d_date_sk#17, d_year#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13/explain.txt index e1e75565abd..76487f2a459 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q13/explain.txt @@ -44,7 +44,7 @@ Output [10]: [ss_cdemo_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_quan Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#10), dynamicpruningexpression(ss_sold_date_sk#10 IN dynamicpruning#11)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_hdemo_sk), Or(Or(And(GreaterThanOrEqual(ss_net_profit,100.00),LessThanOrEqual(ss_net_profit,200.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,300.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,250.00))), Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00)))] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_hdemo_sk), *Or(Or(And(GreaterThanOrEqual(ss_net_profit,100.00),LessThanOrEqual(ss_net_profit,200.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,300.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,250.00))), *Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -55,7 +55,7 @@ Arguments: (((((isnotnull(ss_store_sk#4) AND isnotnull(ss_addr_sk#3)) AND isnotn Output [1]: [s_store_sk#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -90,7 +90,7 @@ Input [11]: [ss_cdemo_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_quant Output [3]: [ca_address_sk#13, ca_state#14, ca_country#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), EqualTo(ca_country,United States), IsNotNull(ca_address_sk), Or(Or(In(ca_state, [OH,TX]),In(ca_state, [KY,NM,OR])),In(ca_state, [MS,TX,VA]))] +PushedFilters: [*IsNotNull(ca_country), *EqualTo(ca_country,United States), *IsNotNull(ca_address_sk), *Or(Or(In(ca_state, [OH,TX]),In(ca_state, [KY,NM,OR])),In(ca_state, [MS,TX,VA]))] ReadSchema: struct (12) FilterExecTransformer @@ -148,7 +148,7 @@ Input [8]: [ss_cdemo_sk#1, ss_hdemo_sk#2, ss_quantity#5, ss_sales_price#6, ss_ex Output [3]: [cd_demo_sk#17, cd_marital_status#18, cd_education_status#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] +PushedFilters: [*IsNotNull(cd_demo_sk), *Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] ReadSchema: struct (26) FilterExecTransformer @@ -183,7 +183,7 @@ Input [9]: [ss_cdemo_sk#1, ss_hdemo_sk#2, ss_quantity#5, ss_sales_price#6, ss_ex Output [2]: [hd_demo_sk#20, hd_dep_count#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), Or(EqualTo(hd_dep_count,3),EqualTo(hd_dep_count,1))] +PushedFilters: [*IsNotNull(hd_demo_sk), *Or(EqualTo(hd_dep_count,3),EqualTo(hd_dep_count,1))] ReadSchema: struct (34) FilterExecTransformer @@ -269,7 +269,7 @@ ColumnarBroadcastExchange (55) Output [2]: [d_date_sk#16, d_year#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a.sf100/explain.txt index 4899f4ea430..0a89bea1082 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a.sf100/explain.txt @@ -148,7 +148,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -159,7 +159,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -171,7 +171,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -201,7 +201,7 @@ Input [3]: [ss_item_sk#10, ss_sold_date_sk#11, d_date_sk#13] Output [4]: [i_item_sk#14, i_brand_id#15, i_class_id#16, i_category_id#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (13) FilterExecTransformer @@ -234,7 +234,7 @@ Output [2]: [cs_item_sk#19, cs_sold_date_sk#20] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#20), dynamicpruningexpression(cs_sold_date_sk#20 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -264,7 +264,7 @@ Input [3]: [cs_item_sk#19, cs_sold_date_sk#20, d_date_sk#21] Output [4]: [i_item_sk#22, i_brand_id#23, i_class_id#24, i_category_id#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (28) FilterExecTransformer @@ -403,7 +403,7 @@ Output [2]: [ws_item_sk#32, ws_sold_date_sk#33] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#33), dynamicpruningexpression(ws_sold_date_sk#33 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -538,7 +538,7 @@ Input [5]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4, d_d Output [4]: [i_item_sk#42, i_brand_id#43, i_class_id#44, i_category_id#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (96) FilterExecTransformer @@ -636,7 +636,7 @@ Output [4]: [cs_item_sk#63, cs_quantity#64, cs_list_price#65, cs_sold_date_sk#66 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#66), dynamicpruningexpression(cs_sold_date_sk#66 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (119) FilterExecTransformer @@ -748,7 +748,7 @@ Output [4]: [ws_item_sk#86, ws_quantity#87, ws_list_price#88, ws_sold_date_sk#89 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#89), dynamicpruningexpression(ws_sold_date_sk#89 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (146) FilterExecTransformer @@ -1105,7 +1105,7 @@ ColumnarBroadcastExchange (226) Output [3]: [d_date_sk#41, d_year#150, d_moy#151] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (223) FilterExecTransformer @@ -1135,7 +1135,7 @@ ColumnarBroadcastExchange (231) Output [2]: [d_date_sk#13, d_year#152] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1999), LessThanOrEqual(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1999), *LessThanOrEqual(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (228) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a/explain.txt index 1fa06d9d72c..30f3bb06a8a 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14a/explain.txt @@ -138,7 +138,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -149,7 +149,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -161,7 +161,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -172,7 +172,7 @@ Arguments: isnotnull(ss_item_sk#10) Output [4]: [i_item_sk#13, i_brand_id#14, i_class_id#15, i_category_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (8) FilterExecTransformer @@ -184,7 +184,7 @@ Output [2]: [cs_item_sk#17, cs_sold_date_sk#18] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#18), dynamicpruningexpression(cs_sold_date_sk#18 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -195,7 +195,7 @@ Arguments: isnotnull(cs_item_sk#17) Output [4]: [i_item_sk#19, i_brand_id#20, i_class_id#21, i_category_id#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -348,7 +348,7 @@ Output [2]: [ws_item_sk#29, ws_sold_date_sk#30] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#30), dynamicpruningexpression(ws_sold_date_sk#30 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (49) FilterExecTransformer @@ -461,7 +461,7 @@ Join condition: None Output [4]: [i_item_sk#37, i_brand_id#38, i_class_id#39, i_category_id#40] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (77) FilterExecTransformer @@ -578,7 +578,7 @@ Output [4]: [cs_item_sk#59, cs_quantity#60, cs_list_price#61, cs_sold_date_sk#62 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#62), dynamicpruningexpression(cs_sold_date_sk#62 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (105) FilterExecTransformer @@ -690,7 +690,7 @@ Output [4]: [ws_item_sk#82, ws_quantity#83, ws_list_price#84, ws_sold_date_sk#85 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#85), dynamicpruningexpression(ws_sold_date_sk#85 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (132) FilterExecTransformer @@ -1047,7 +1047,7 @@ ColumnarBroadcastExchange (212) Output [3]: [d_date_sk#41, d_year#146, d_moy#147] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (209) FilterExecTransformer @@ -1077,7 +1077,7 @@ ColumnarBroadcastExchange (217) Output [2]: [d_date_sk#24, d_year#148] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1999), LessThanOrEqual(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1999), *LessThanOrEqual(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (214) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b.sf100/explain.txt index 3947d7b1bb3..7367c41856f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b.sf100/explain.txt @@ -120,7 +120,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -131,7 +131,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -143,7 +143,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -173,7 +173,7 @@ Input [3]: [ss_item_sk#10, ss_sold_date_sk#11, d_date_sk#13] Output [4]: [i_item_sk#14, i_brand_id#15, i_class_id#16, i_category_id#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (13) FilterExecTransformer @@ -206,7 +206,7 @@ Output [2]: [cs_item_sk#19, cs_sold_date_sk#20] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#20), dynamicpruningexpression(cs_sold_date_sk#20 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -236,7 +236,7 @@ Input [3]: [cs_item_sk#19, cs_sold_date_sk#20, d_date_sk#21] Output [4]: [i_item_sk#22, i_brand_id#23, i_class_id#24, i_category_id#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (28) FilterExecTransformer @@ -375,7 +375,7 @@ Output [2]: [ws_item_sk#32, ws_sold_date_sk#33] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#33), dynamicpruningexpression(ws_sold_date_sk#33 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -510,7 +510,7 @@ Input [5]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4, d_d Output [4]: [i_item_sk#42, i_brand_id#43, i_class_id#44, i_category_id#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (96) FilterExecTransformer @@ -604,7 +604,7 @@ Output [4]: [ss_item_sk#60, ss_quantity#61, ss_list_price#62, ss_sold_date_sk#63 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#63), dynamicpruningexpression(ss_sold_date_sk#63 IN dynamicpruning#64)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (118) FilterExecTransformer @@ -925,7 +925,7 @@ ColumnarBroadcastExchange (189) Output [2]: [d_date_sk#41, d_week_seq#109] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#110), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#110), *IsNotNull(d_date_sk)] ReadSchema: struct (186) FilterExecTransformer @@ -957,7 +957,7 @@ VeloxColumnarToRow (194) Output [4]: [d_week_seq#111, d_year#112, d_moy#113, d_dom#114] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,2000), EqualTo(d_moy,12), EqualTo(d_dom,11)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,2000), *EqualTo(d_moy,12), *EqualTo(d_dom,11)] ReadSchema: struct (191) FilterExecTransformer @@ -988,7 +988,7 @@ ColumnarBroadcastExchange (199) Output [2]: [d_date_sk#13, d_year#115] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1999), LessThanOrEqual(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1999), *LessThanOrEqual(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (196) FilterExecTransformer @@ -1024,7 +1024,7 @@ ColumnarBroadcastExchange (204) Output [2]: [d_date_sk#66, d_week_seq#116] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#117), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#117), *IsNotNull(d_date_sk)] ReadSchema: struct (201) FilterExecTransformer @@ -1056,7 +1056,7 @@ VeloxColumnarToRow (209) Output [4]: [d_week_seq#118, d_year#119, d_moy#120, d_dom#121] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,1999), EqualTo(d_moy,12), EqualTo(d_dom,11)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,1999), *EqualTo(d_moy,12), *EqualTo(d_dom,11)] ReadSchema: struct (206) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b/explain.txt index a3f78bd5150..83c88654806 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q14b/explain.txt @@ -110,7 +110,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -121,7 +121,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -133,7 +133,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -144,7 +144,7 @@ Arguments: isnotnull(ss_item_sk#10) Output [4]: [i_item_sk#13, i_brand_id#14, i_class_id#15, i_category_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (8) FilterExecTransformer @@ -156,7 +156,7 @@ Output [2]: [cs_item_sk#17, cs_sold_date_sk#18] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#18), dynamicpruningexpression(cs_sold_date_sk#18 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -167,7 +167,7 @@ Arguments: isnotnull(cs_item_sk#17) Output [4]: [i_item_sk#19, i_brand_id#20, i_class_id#21, i_category_id#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -320,7 +320,7 @@ Output [2]: [ws_item_sk#29, ws_sold_date_sk#30] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#30), dynamicpruningexpression(ws_sold_date_sk#30 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (49) FilterExecTransformer @@ -433,7 +433,7 @@ Join condition: None Output [4]: [i_item_sk#37, i_brand_id#38, i_class_id#39, i_category_id#40] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (77) FilterExecTransformer @@ -546,7 +546,7 @@ Output [4]: [ss_item_sk#56, ss_quantity#57, ss_list_price#58, ss_sold_date_sk#59 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#59), dynamicpruningexpression(ss_sold_date_sk#59 IN dynamicpruning#60)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (104) FilterExecTransformer @@ -867,7 +867,7 @@ ColumnarBroadcastExchange (175) Output [2]: [d_date_sk#41, d_week_seq#105] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#106), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#106), *IsNotNull(d_date_sk)] ReadSchema: struct (172) FilterExecTransformer @@ -899,7 +899,7 @@ VeloxColumnarToRow (180) Output [4]: [d_week_seq#107, d_year#108, d_moy#109, d_dom#110] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,2000), EqualTo(d_moy,12), EqualTo(d_dom,11)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,2000), *EqualTo(d_moy,12), *EqualTo(d_dom,11)] ReadSchema: struct (177) FilterExecTransformer @@ -930,7 +930,7 @@ ColumnarBroadcastExchange (185) Output [2]: [d_date_sk#24, d_year#111] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1999), LessThanOrEqual(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1999), *LessThanOrEqual(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (182) FilterExecTransformer @@ -966,7 +966,7 @@ ColumnarBroadcastExchange (190) Output [2]: [d_date_sk#66, d_week_seq#112] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#113), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#113), *IsNotNull(d_date_sk)] ReadSchema: struct (187) FilterExecTransformer @@ -998,7 +998,7 @@ VeloxColumnarToRow (195) Output [4]: [d_week_seq#114, d_year#115, d_moy#116, d_dom#117] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,1999), EqualTo(d_moy,12), EqualTo(d_dom,11)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,1999), *EqualTo(d_moy,12), *EqualTo(d_dom,11)] ReadSchema: struct (192) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15.sf100/explain.txt index 58c0b2f3e9d..59fdedf6452 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15.sf100/explain.txt @@ -43,7 +43,7 @@ Output [3]: [cs_bill_customer_sk#1, cs_sales_price#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [2]: [cs_bill_customer_sk#1, cs_sales_price#2] Output [2]: [c_customer_sk#7, c_current_addr_sk#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -122,7 +122,7 @@ Input [2]: [c_customer_sk#7, c_current_addr_sk#8] Output [3]: [ca_address_sk#10, ca_state#11, ca_zip#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -250,7 +250,7 @@ ColumnarBroadcastExchange (54) Output [3]: [d_date_sk#5, d_year#21, d_qoy#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (51) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15/explain.txt index 6eb128c620d..c8b094eb78e 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q15/explain.txt @@ -33,7 +33,7 @@ Output [3]: [cs_bill_customer_sk#1, cs_sales_price#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -44,7 +44,7 @@ Arguments: isnotnull(cs_bill_customer_sk#1) Output [2]: [c_customer_sk#5, c_current_addr_sk#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -79,7 +79,7 @@ Input [5]: [cs_bill_customer_sk#1, cs_sales_price#2, cs_sold_date_sk#3, c_custom Output [3]: [ca_address_sk#7, ca_state#8, ca_zip#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -192,7 +192,7 @@ ColumnarBroadcastExchange (40) Output [3]: [d_date_sk#10, d_year#17, d_qoy#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16.sf100/explain.txt index e61e86016cf..1bf6c4547cd 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16.sf100/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (59) Output [8]: [cs_ship_date_sk#1, cs_ship_addr_sk#2, cs_call_center_sk#3, cs_warehouse_sk#4, cs_order_number#5, cs_ext_ship_cost#6, cs_net_profit#7, cs_sold_date_sk#8] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_ship_date_sk), IsNotNull(cs_ship_addr_sk), IsNotNull(cs_call_center_sk)] +PushedFilters: [*IsNotNull(cs_ship_date_sk), *IsNotNull(cs_ship_addr_sk), *IsNotNull(cs_call_center_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -153,7 +153,7 @@ Join condition: None Output [2]: [ca_address_sk#20, ca_state#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,GA), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,GA), *IsNotNull(ca_address_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -192,7 +192,7 @@ Input [7]: [cs_ship_date_sk#1, cs_ship_addr_sk#2, cs_call_center_sk#3, cs_order_ Output [2]: [cc_call_center_sk#22, cc_county#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_county), EqualTo(cc_county,Williamson County), IsNotNull(cc_call_center_sk)] +PushedFilters: [*IsNotNull(cc_county), *EqualTo(cc_county,Williamson County), *IsNotNull(cc_call_center_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -231,7 +231,7 @@ Input [6]: [cs_ship_date_sk#1, cs_call_center_sk#3, cs_order_number#5, cs_ext_sh Output [2]: [d_date_sk#24, d_date#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2002-02-01), LessThanOrEqual(d_date,2002-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2002-02-01), *LessThanOrEqual(d_date,2002-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer @@ -323,7 +323,7 @@ VeloxColumnarToRow (71) Output [2]: [ca_address_sk#20, ca_state#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,GA), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,GA), *IsNotNull(ca_address_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -388,7 +388,7 @@ VeloxColumnarToRow (83) Output [2]: [cc_call_center_sk#22, cc_county#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_county), EqualTo(cc_county,Williamson County), IsNotNull(cc_call_center_sk)] +PushedFilters: [*IsNotNull(cc_county), *EqualTo(cc_county,Williamson County), *IsNotNull(cc_call_center_sk)] ReadSchema: struct (73) FilterExecTransformer @@ -453,7 +453,7 @@ VeloxColumnarToRow (95) Output [2]: [d_date_sk#24, d_date#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2002-02-01), LessThanOrEqual(d_date,2002-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2002-02-01), *LessThanOrEqual(d_date,2002-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (85) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16/explain.txt index 94729a38495..23d4bc34f3c 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q16/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (59) Output [8]: [cs_ship_date_sk#1, cs_ship_addr_sk#2, cs_call_center_sk#3, cs_warehouse_sk#4, cs_order_number#5, cs_ext_ship_cost#6, cs_net_profit#7, cs_sold_date_sk#8] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_ship_date_sk), IsNotNull(cs_ship_addr_sk), IsNotNull(cs_call_center_sk)] +PushedFilters: [*IsNotNull(cs_ship_date_sk), *IsNotNull(cs_ship_addr_sk), *IsNotNull(cs_call_center_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -153,7 +153,7 @@ Join condition: None Output [2]: [d_date_sk#17, d_date#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2002-02-01), LessThanOrEqual(d_date,2002-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2002-02-01), *LessThanOrEqual(d_date,2002-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -192,7 +192,7 @@ Input [7]: [cs_ship_date_sk#1, cs_ship_addr_sk#2, cs_call_center_sk#3, cs_order_ Output [2]: [ca_address_sk#19, ca_state#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,GA), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,GA), *IsNotNull(ca_address_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -231,7 +231,7 @@ Input [6]: [cs_ship_addr_sk#2, cs_call_center_sk#3, cs_order_number#5, cs_ext_sh Output [2]: [cc_call_center_sk#21, cc_county#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_county), EqualTo(cc_county,Williamson County), IsNotNull(cc_call_center_sk)] +PushedFilters: [*IsNotNull(cc_county), *EqualTo(cc_county,Williamson County), *IsNotNull(cc_call_center_sk)] ReadSchema: struct (45) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17.sf100/explain.txt index 531c2089c04..c790da13fb9 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17.sf100/explain.txt @@ -66,7 +66,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [2]: [s_store_sk#9, s_state#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -148,7 +148,7 @@ Input [5]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#4, ss_quantity#5, s Output [3]: [i_item_sk#12, i_item_id#13, i_item_desc#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -208,7 +208,7 @@ Output [5]: [sr_item_sk#17, sr_customer_sk#18, sr_ticket_number#19, sr_return_qu Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#21), dynamicpruningexpression(sr_returned_date_sk#21 IN dynamicpruning#22)] -PushedFilters: [IsNotNull(sr_customer_sk), IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_customer_sk), *IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (37) FilterExecTransformer @@ -283,7 +283,7 @@ Output [4]: [cs_bill_customer_sk#26, cs_item_sk#27, cs_quantity#28, cs_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#29), dynamicpruningexpression(cs_sold_date_sk#29 IN dynamicpruning#22)] -PushedFilters: [IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (56) FilterExecTransformer @@ -399,7 +399,7 @@ ColumnarBroadcastExchange (85) Output [2]: [d_date_sk#8, d_quarter_name#93] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_quarter_name), EqualTo(d_quarter_name,2001Q1), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_quarter_name), *EqualTo(d_quarter_name,2001Q1), *IsNotNull(d_date_sk)] ReadSchema: struct (82) FilterExecTransformer @@ -429,7 +429,7 @@ ColumnarBroadcastExchange (90) Output [2]: [d_date_sk#23, d_quarter_name#94] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_quarter_name, [2001Q1,2001Q2,2001Q3]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_quarter_name, [2001Q1,2001Q2,2001Q3]), *IsNotNull(d_date_sk)] ReadSchema: struct (87) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17/explain.txt index 84ec479748b..cba2acd94e4 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q17/explain.txt @@ -53,7 +53,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -65,7 +65,7 @@ Output [5]: [sr_item_sk#8, sr_customer_sk#9, sr_ticket_number#10, sr_return_quan Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#12), dynamicpruningexpression(sr_returned_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(sr_customer_sk), IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_customer_sk), *IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (4) FilterExecTransformer @@ -101,7 +101,7 @@ Output [4]: [cs_bill_customer_sk#14, cs_item_sk#15, cs_quantity#16, cs_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#17), dynamicpruningexpression(cs_sold_date_sk#17 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -193,7 +193,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#5, sr_return_quantity#11, c Output [2]: [s_store_sk#21, s_state#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -228,7 +228,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#5, sr_return_quantity#11, c Output [3]: [i_item_sk#23, i_item_id#24, i_item_desc#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -322,7 +322,7 @@ ColumnarBroadcastExchange (66) Output [2]: [d_date_sk#18, d_quarter_name#87] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_quarter_name), EqualTo(d_quarter_name,2001Q1), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_quarter_name), *EqualTo(d_quarter_name,2001Q1), *IsNotNull(d_date_sk)] ReadSchema: struct (63) FilterExecTransformer @@ -352,7 +352,7 @@ ColumnarBroadcastExchange (71) Output [2]: [d_date_sk#19, d_quarter_name#88] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_quarter_name, [2001Q1,2001Q2,2001Q3]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_quarter_name, [2001Q1,2001Q2,2001Q3]), *IsNotNull(d_date_sk)] ReadSchema: struct (68) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18.sf100/explain.txt index 896ccd37c51..9880f7b238c 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18.sf100/explain.txt @@ -64,7 +64,7 @@ Output [9]: [cs_bill_customer_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#3, cs_quantit Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#9), dynamicpruningexpression(cs_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -75,7 +75,7 @@ Arguments: ((isnotnull(cs_bill_cdemo_sk#2) AND isnotnull(cs_bill_customer_sk#1)) Output [4]: [cd_demo_sk#11, cd_gender#12, cd_education_status#13, cd_dep_count#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_education_status,Unknown ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_education_status,Unknown ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -133,7 +133,7 @@ Input [10]: [cs_bill_customer_sk#1, cs_item_sk#3, cs_quantity#4, cs_list_price#5 Output [2]: [i_item_sk#16, i_item_id#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -185,7 +185,7 @@ Input [8]: [cs_bill_customer_sk#1, cs_quantity#4, cs_list_price#5, cs_sales_pric Output [5]: [c_customer_sk#19, c_current_cdemo_sk#20, c_current_addr_sk#21, c_birth_month#22, c_birth_year#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [In(c_birth_month, [1,12,2,6,8,9]), IsNotNull(c_customer_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*In(c_birth_month, [1,12,2,6,8,9]), *IsNotNull(c_customer_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (31) FilterExecTransformer @@ -200,7 +200,7 @@ Input [5]: [c_customer_sk#19, c_current_cdemo_sk#20, c_current_addr_sk#21, c_bir Output [4]: [ca_address_sk#24, ca_county#25, ca_state#26, ca_country#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [IN,MS,ND,NM,OK,VA]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [IN,MS,ND,NM,OK,VA]), *IsNotNull(ca_address_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -252,7 +252,7 @@ Input [6]: [c_customer_sk#19, c_current_cdemo_sk#20, c_birth_year#23, ca_county# Output [1]: [cd_demo_sk#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -388,7 +388,7 @@ ColumnarBroadcastExchange (81) Output [2]: [d_date_sk#15, d_year#87] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (78) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18/explain.txt index 579075497d5..732739e9549 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q18/explain.txt @@ -55,7 +55,7 @@ Output [9]: [cs_bill_customer_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#3, cs_quantit Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#9), dynamicpruningexpression(cs_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -66,7 +66,7 @@ Arguments: ((isnotnull(cs_bill_cdemo_sk#2) AND isnotnull(cs_bill_customer_sk#1)) Output [4]: [cd_demo_sk#11, cd_gender#12, cd_education_status#13, cd_dep_count#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_education_status,Unknown ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_education_status,Unknown ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -105,7 +105,7 @@ Input [11]: [cs_bill_customer_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#3, cs_quantit Output [5]: [c_customer_sk#15, c_current_cdemo_sk#16, c_current_addr_sk#17, c_birth_month#18, c_birth_year#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [In(c_birth_month, [1,12,2,6,8,9]), IsNotNull(c_customer_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*In(c_birth_month, [1,12,2,6,8,9]), *IsNotNull(c_customer_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -144,7 +144,7 @@ Input [13]: [cs_bill_customer_sk#1, cs_item_sk#3, cs_quantity#4, cs_list_price#5 Output [1]: [cd_demo_sk#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -179,7 +179,7 @@ Input [12]: [cs_item_sk#3, cs_quantity#4, cs_list_price#5, cs_sales_price#6, cs_ Output [4]: [ca_address_sk#21, ca_county#22, ca_state#23, ca_country#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [IN,MS,ND,NM,OK,VA]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [IN,MS,ND,NM,OK,VA]), *IsNotNull(ca_address_sk)] ReadSchema: struct (30) FilterExecTransformer @@ -233,7 +233,7 @@ Input [13]: [cs_item_sk#3, cs_quantity#4, cs_list_price#5, cs_sales_price#6, cs_ Output [2]: [i_item_sk#26, i_item_id#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -335,7 +335,7 @@ ColumnarBroadcastExchange (68) Output [2]: [d_date_sk#25, d_year#83] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (65) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19.sf100/explain.txt index 4673eaea70a..030a1506ccf 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19.sf100/explain.txt @@ -56,7 +56,7 @@ Output [5]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ext_sales_price#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -67,7 +67,7 @@ Arguments: ((isnotnull(ss_item_sk#1) AND isnotnull(ss_customer_sk#2)) AND isnotn Output [6]: [i_item_sk#7, i_brand_id#8, i_brand#9, i_manufact_id#10, i_manufact#11, i_manager_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,8), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,8), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -125,7 +125,7 @@ Input [9]: [ss_customer_sk#2, ss_store_sk#3, ss_ext_sales_price#4, ss_sold_date_ Output [2]: [s_store_sk#14, s_zip#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_zip), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_zip), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -177,7 +177,7 @@ Input [7]: [ss_customer_sk#2, ss_ext_sales_price#4, i_brand_id#8, i_brand#9, i_m Output [2]: [c_customer_sk#17, c_current_addr_sk#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (31) FilterExecTransformer @@ -209,7 +209,7 @@ Input [2]: [c_customer_sk#17, c_current_addr_sk#18] Output [2]: [ca_address_sk#20, ca_zip#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_zip)] ReadSchema: struct (39) FilterExecTransformer @@ -337,7 +337,7 @@ ColumnarBroadcastExchange (71) Output [3]: [d_date_sk#13, d_year#32, d_moy#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (68) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19/explain.txt index a353f1da3c6..17b2b736a15 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q19/explain.txt @@ -48,7 +48,7 @@ VeloxColumnarToRow (56) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -64,7 +64,7 @@ Output [5]: [ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -99,7 +99,7 @@ Input [6]: [d_date_sk#1, ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_s Output [6]: [i_item_sk#9, i_brand_id#10, i_brand#11, i_manufact_id#12, i_manufact#13, i_manager_id#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,8), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,8), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -138,7 +138,7 @@ Input [9]: [ss_item_sk#4, ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7, Output [2]: [c_customer_sk#15, c_current_addr_sk#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -173,7 +173,7 @@ Input [9]: [ss_customer_sk#5, ss_store_sk#6, ss_ext_sales_price#7, i_brand_id#10 Output [2]: [ca_address_sk#17, ca_zip#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_zip)] ReadSchema: struct (30) FilterExecTransformer @@ -208,7 +208,7 @@ Input [9]: [ss_store_sk#6, ss_ext_sales_price#7, i_brand_id#10, i_brand#11, i_ma Output [2]: [s_store_sk#19, s_zip#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_zip), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_zip), *IsNotNull(s_store_sk)] ReadSchema: struct (38) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2.sf100/explain.txt index ab0b2aee1cb..36424bc8262 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2.sf100/explain.txt @@ -105,7 +105,7 @@ Input [2]: [sold_date_sk#3, sales_price#4] Output [3]: [d_date_sk#9, d_week_seq#10, d_day_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (11) FilterExecTransformer @@ -179,7 +179,7 @@ Input [8]: [d_week_seq#10, sum(UnscaledValue(CASE WHEN (d_day_name#11 = Sunday Output [2]: [d_week_seq#49, d_year#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_week_seq)] ReadSchema: struct (28) FilterExecTransformer @@ -257,7 +257,7 @@ Input [2]: [sold_date_sk#61, sales_price#62] Output [3]: [d_date_sk#67, d_week_seq#68, d_day_name#69] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (46) FilterExecTransformer @@ -331,7 +331,7 @@ Input [8]: [d_week_seq#68, sum(UnscaledValue(CASE WHEN (d_day_name#69 = Sunday Output [2]: [d_week_seq#100, d_year#101] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_week_seq)] ReadSchema: struct (63) FilterExecTransformer @@ -436,7 +436,7 @@ VeloxColumnarToRow (96) Output [2]: [d_week_seq#49, d_year#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_week_seq)] ReadSchema: struct (86) FilterExecTransformer @@ -513,7 +513,7 @@ VeloxColumnarToRow (108) Output [2]: [d_week_seq#100, d_year#101] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_week_seq)] ReadSchema: struct (98) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2/explain.txt index ea03354f0b3..4a4a6454d75 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q2/explain.txt @@ -90,7 +90,7 @@ Input [2]: [sold_date_sk#3, sales_price#4] Output [3]: [d_date_sk#9, d_week_seq#10, d_day_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (11) FilterExecTransformer @@ -164,7 +164,7 @@ Input [8]: [d_week_seq#10, sum(UnscaledValue(CASE WHEN (d_day_name#11 = Sunday Output [2]: [d_week_seq#48, d_year#49] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_week_seq)] ReadSchema: struct (28) FilterExecTransformer @@ -223,7 +223,7 @@ Input [8]: [d_week_seq#58, sum(UnscaledValue(CASE WHEN (d_day_name#66 = Sunday Output [2]: [d_week_seq#75, d_year#76] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_week_seq)] ReadSchema: struct (42) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20.sf100/explain.txt index 54ebf55bafe..4248430677e 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20.sf100/explain.txt @@ -39,7 +39,7 @@ Output [3]: [cs_item_sk#1, cs_ext_sales_price#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -71,7 +71,7 @@ Input [3]: [cs_item_sk#1, cs_ext_sales_price#2, cs_sold_date_sk#3] Output [6]: [i_item_sk#6, i_item_id#7, i_item_desc#8, i_current_price#9, i_class#10, i_category#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -220,7 +220,7 @@ ColumnarBroadcastExchange (48) Output [2]: [d_date_sk#13, d_date#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20/explain.txt index bfd93ff7496..45a5f800090 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q20/explain.txt @@ -33,7 +33,7 @@ Output [3]: [cs_item_sk#1, cs_ext_sales_price#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -44,7 +44,7 @@ Arguments: isnotnull(cs_item_sk#1) Output [6]: [i_item_sk#5, i_item_id#6, i_item_desc#7, i_current_price#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -186,7 +186,7 @@ ColumnarBroadcastExchange (40) Output [2]: [d_date_sk#11, d_date#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21.sf100/explain.txt index 71c83398d7f..de4f5114344 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21.sf100/explain.txt @@ -34,7 +34,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_warehouse_sk), IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_warehouse_sk), *IsNotNull(inv_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -45,7 +45,7 @@ Arguments: (isnotnull(inv_warehouse_sk#2) AND isnotnull(inv_item_sk#1)) Output [3]: [i_item_sk#6, i_item_id#7, i_current_price#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,0.99), LessThanOrEqual(i_current_price,1.49), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,0.99), *LessThanOrEqual(i_current_price,1.49), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -103,7 +103,7 @@ Input [6]: [inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_sk#4, i_item_id Output [2]: [w_warehouse_sk#11, w_warehouse_name#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -196,7 +196,7 @@ ColumnarBroadcastExchange (40) Output [2]: [d_date_sk#9, d_date#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-02-10), LessThanOrEqual(d_date,2000-04-10), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-02-10), *LessThanOrEqual(d_date,2000-04-10), *IsNotNull(d_date_sk)] ReadSchema: struct (38) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21/explain.txt index 38dd09f2385..f7dccaf7a0f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q21/explain.txt @@ -34,7 +34,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_warehouse_sk), IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_warehouse_sk), *IsNotNull(inv_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -45,7 +45,7 @@ Arguments: (isnotnull(inv_warehouse_sk#2) AND isnotnull(inv_item_sk#1)) Output [2]: [w_warehouse_sk#6, w_warehouse_name#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -80,7 +80,7 @@ Input [6]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_ Output [3]: [i_item_sk#8, i_item_id#9, i_current_price#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,0.99), LessThanOrEqual(i_current_price,1.49), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,0.99), *LessThanOrEqual(i_current_price,1.49), *IsNotNull(i_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -196,7 +196,7 @@ ColumnarBroadcastExchange (40) Output [2]: [d_date_sk#11, d_date#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-02-10), LessThanOrEqual(d_date,2000-04-10), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-02-10), *LessThanOrEqual(d_date,2000-04-10), *IsNotNull(d_date_sk)] ReadSchema: struct (38) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22.sf100/explain.txt index cf37f5c23cf..d774c422fd3 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22.sf100/explain.txt @@ -39,7 +39,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -50,7 +50,7 @@ Arguments: (isnotnull(inv_item_sk#1) AND isnotnull(inv_warehouse_sk#2)) Output [1]: [w_warehouse_sk#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -121,7 +121,7 @@ Input [2]: [inv_item_sk#1, inv_quantity_on_hand#3] Output [5]: [i_item_sk#9, i_brand#10, i_class#11, i_category#12, i_product_name#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -226,7 +226,7 @@ ColumnarBroadcastExchange (48) Output [2]: [d_date_sk#7, d_month_seq#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22/explain.txt index cf82cb487dd..ee99f05d2e1 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q22/explain.txt @@ -34,7 +34,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -64,7 +64,7 @@ Input [5]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_ Output [5]: [i_item_sk#7, i_brand#8, i_class#9, i_category#10, i_product_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -99,7 +99,7 @@ Input [8]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, i_item_sk Output [1]: [w_warehouse_sk#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -197,7 +197,7 @@ ColumnarBroadcastExchange (41) Output [2]: [d_date_sk#6, d_month_seq#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (38) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a.sf100/explain.txt index 7c93a1fc9f8..d059943baf7 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a.sf100/explain.txt @@ -131,7 +131,7 @@ Output [2]: [ss_item_sk#8, ss_sold_date_sk#9] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#9), dynamicpruningexpression(ss_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -178,7 +178,7 @@ Input [2]: [ss_item_sk#8, d_date#12] Output [2]: [i_item_sk#14, i_item_desc#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -266,7 +266,7 @@ Input [4]: [cs_bill_customer_sk#1, cs_quantity#3, cs_list_price#4, cs_sold_date_ Output [4]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24, ss_sold_date_sk#25] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -298,7 +298,7 @@ Input [3]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24] Output [1]: [c_customer_sk#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (50) FilterExecTransformer @@ -622,7 +622,7 @@ ColumnarBroadcastExchange (131) Output [3]: [d_date_sk#33, d_year#63, d_moy#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (128) FilterExecTransformer @@ -652,7 +652,7 @@ ColumnarBroadcastExchange (136) Output [3]: [d_date_sk#11, d_date#12, d_year#65] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (133) FilterExecTransformer @@ -696,7 +696,7 @@ Output [4]: [ss_customer_sk#66, ss_quantity#67, ss_sales_price#68, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#69), dynamicpruningexpression(ss_sold_date_sk#69 IN dynamicpruning#70)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (138) FilterExecTransformer @@ -794,7 +794,7 @@ ColumnarBroadcastExchange (163) Output [2]: [d_date_sk#71, d_year#79] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (160) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a/explain.txt index e12754e423c..242874dd3c0 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23a/explain.txt @@ -92,7 +92,7 @@ Output [2]: [ss_item_sk#7, ss_sold_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (3) FilterExecTransformer @@ -122,7 +122,7 @@ Input [4]: [ss_item_sk#7, ss_sold_date_sk#8, d_date_sk#10, d_date#11] Output [2]: [i_item_sk#12, i_item_desc#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -245,7 +245,7 @@ Input [4]: [cs_bill_customer_sk#1, cs_quantity#3, cs_list_price#4, cs_sold_date_ Output [4]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24, ss_sold_date_sk#25] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -260,7 +260,7 @@ Input [4]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24, ss_sold_date_s Output [1]: [c_customer_sk#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -527,7 +527,7 @@ ColumnarBroadcastExchange (109) Output [3]: [d_date_sk#36, d_year#59, d_moy#60] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (106) FilterExecTransformer @@ -557,7 +557,7 @@ ColumnarBroadcastExchange (114) Output [3]: [d_date_sk#10, d_date#11, d_year#61] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (111) FilterExecTransformer @@ -603,7 +603,7 @@ Output [4]: [ss_customer_sk#62, ss_quantity#63, ss_sales_price#64, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#65), dynamicpruningexpression(ss_sold_date_sk#65 IN dynamicpruning#66)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (116) FilterExecTransformer @@ -712,7 +712,7 @@ ColumnarBroadcastExchange (143) Output [2]: [d_date_sk#68, d_year#79] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (140) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b.sf100/explain.txt index bc18ed631a7..b30c8f08976 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b.sf100/explain.txt @@ -142,7 +142,7 @@ Output [5]: [cs_bill_customer_sk#1, cs_item_sk#2, cs_quantity#3, cs_list_price#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -175,7 +175,7 @@ Output [2]: [ss_item_sk#8, ss_sold_date_sk#9] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#9), dynamicpruningexpression(ss_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -222,7 +222,7 @@ Input [2]: [ss_item_sk#8, d_date#12] Output [2]: [i_item_sk#14, i_item_desc#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -310,7 +310,7 @@ Input [4]: [cs_bill_customer_sk#1, cs_quantity#3, cs_list_price#4, cs_sold_date_ Output [4]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24, ss_sold_date_sk#25] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -342,7 +342,7 @@ Input [3]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24] Output [1]: [c_customer_sk#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -424,7 +424,7 @@ Input [5]: [cs_bill_customer_sk#1, cs_quantity#3, cs_list_price#4, cs_sold_date_ Output [3]: [c_customer_sk#34, c_first_name#35, c_last_name#36] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -555,7 +555,7 @@ Output [5]: [ws_item_sk#47, ws_bill_customer_sk#48, ws_quantity#49, ws_list_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#51), dynamicpruningexpression(ws_sold_date_sk#51 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (101) FilterExecTransformer @@ -855,7 +855,7 @@ ColumnarBroadcastExchange (177) Output [3]: [d_date_sk#33, d_year#80, d_moy#81] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (174) FilterExecTransformer @@ -885,7 +885,7 @@ ColumnarBroadcastExchange (182) Output [3]: [d_date_sk#11, d_date#12, d_year#82] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (179) FilterExecTransformer @@ -929,7 +929,7 @@ Output [4]: [ss_customer_sk#83, ss_quantity#84, ss_sales_price#85, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#86), dynamicpruningexpression(ss_sold_date_sk#86 IN dynamicpruning#87)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (184) FilterExecTransformer @@ -1027,7 +1027,7 @@ ColumnarBroadcastExchange (209) Output [2]: [d_date_sk#88, d_year#96] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (206) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b/explain.txt index ebcbb4e8482..fd89e93cfd4 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q23b/explain.txt @@ -112,7 +112,7 @@ Output [5]: [cs_bill_customer_sk#1, cs_item_sk#2, cs_quantity#3, cs_list_price#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -124,7 +124,7 @@ Output [2]: [ss_item_sk#7, ss_sold_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -154,7 +154,7 @@ Input [4]: [ss_item_sk#7, ss_sold_date_sk#8, d_date_sk#10, d_date#11] Output [2]: [i_item_sk#12, i_item_desc#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (11) FilterExecTransformer @@ -277,7 +277,7 @@ Input [4]: [cs_bill_customer_sk#1, cs_quantity#3, cs_list_price#4, cs_sold_date_ Output [4]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24, ss_sold_date_sk#25] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -292,7 +292,7 @@ Input [4]: [ss_customer_sk#22, ss_quantity#23, ss_sales_price#24, ss_sold_date_s Output [1]: [c_customer_sk#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -376,7 +376,7 @@ Join condition: None Output [3]: [c_customer_sk#36, c_first_name#37, c_last_name#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (63) FilterExecTransformer @@ -521,7 +521,7 @@ Output [5]: [ws_item_sk#49, ws_bill_customer_sk#50, ws_quantity#51, ws_list_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#53), dynamicpruningexpression(ws_sold_date_sk#53 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (98) FilterExecTransformer @@ -694,7 +694,7 @@ ColumnarBroadcastExchange (142) Output [3]: [d_date_sk#40, d_year#74, d_moy#75] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (139) FilterExecTransformer @@ -724,7 +724,7 @@ ColumnarBroadcastExchange (147) Output [3]: [d_date_sk#10, d_date#11, d_year#76] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (144) FilterExecTransformer @@ -770,7 +770,7 @@ Output [4]: [ss_customer_sk#77, ss_quantity#78, ss_sales_price#79, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#80), dynamicpruningexpression(ss_sold_date_sk#80 IN dynamicpruning#81)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (149) FilterExecTransformer @@ -879,7 +879,7 @@ ColumnarBroadcastExchange (176) Output [2]: [d_date_sk#83, d_year#94] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [2000,2001,2002,2003]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [2000,2001,2002,2003]), *IsNotNull(d_date_sk)] ReadSchema: struct (173) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a.sf100/explain.txt index fe7d345292d..e9c4054ee8a 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a.sf100/explain.txt @@ -64,7 +64,7 @@ VeloxColumnarToRow (78) Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, ss_sold_date_sk#6] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -79,7 +79,7 @@ Input [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [6]: [i_item_sk#8, i_current_price#9, i_size#10, i_color#11, i_units#12, i_manager_id#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_color), EqualTo(i_color,pale ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_color), *EqualTo(i_color,pale ), *IsNotNull(i_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -131,7 +131,7 @@ Input [10]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [c_customer_sk#15, c_first_name#16, c_last_name#17, c_birth_country#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_birth_country)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_birth_country)] ReadSchema: struct (18) FilterExecTransformer @@ -190,7 +190,7 @@ Input [12]: [ss_item_sk#1, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, i_c Output [3]: [sr_item_sk#21, sr_ticket_number#22, sr_returned_date_sk#23] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (33) FilterExecTransformer @@ -232,7 +232,7 @@ Input [14]: [ss_item_sk#1, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, i_c Output [5]: [s_store_sk#25, s_store_name#26, s_market_id#27, s_state#28, s_zip#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (43) FilterExecTransformer @@ -261,7 +261,7 @@ Input [4]: [s_store_sk#25, s_store_name#26, s_state#28, s_zip#29] Output [3]: [ca_state#30, ca_zip#31, ca_country#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (50) FilterExecTransformer @@ -452,7 +452,7 @@ VeloxColumnarToRow (153) Output [6]: [ss_item_sk#47, ss_customer_sk#48, ss_store_sk#49, ss_ticket_number#50, ss_net_paid#51, ss_sold_date_sk#52] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -467,7 +467,7 @@ Input [6]: [ss_item_sk#47, ss_customer_sk#48, ss_store_sk#49, ss_ticket_number#5 Output [5]: [s_store_sk#53, s_store_name#54, s_market_id#55, s_state#56, s_zip#57] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (83) FilterExecTransformer @@ -523,7 +523,7 @@ Input [7]: [ss_item_sk#47, ss_customer_sk#48, ss_ticket_number#50, ss_net_paid#5 Output [6]: [i_item_sk#59, i_current_price#60, i_size#61, i_color#62, i_units#63, i_manager_id#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -654,7 +654,7 @@ Input [12]: [ss_net_paid#51, s_store_name#54, s_state#56, s_zip#57, i_current_pr Output [3]: [ca_state#75, ca_zip#76, ca_country#77] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (132) FilterExecTransformer @@ -765,7 +765,7 @@ VeloxColumnarToRow (165) Output [3]: [s_store_sk#25, s_market_id#27, s_zip#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (155) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a/explain.txt index 12a255a5773..b04425ad17c 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24a/explain.txt @@ -59,7 +59,7 @@ VeloxColumnarToRow (71) Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, ss_sold_date_sk#6] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -91,7 +91,7 @@ Input [5]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [3]: [sr_item_sk#8, sr_ticket_number#9, sr_returned_date_sk#10] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -133,7 +133,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [5]: [s_store_sk#12, s_store_name#13, s_market_id#14, s_state#15, s_zip#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (20) FilterExecTransformer @@ -172,7 +172,7 @@ Input [8]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_net_paid#5, s_stor Output [6]: [i_item_sk#17, i_current_price#18, i_size#19, i_color#20, i_units#21, i_manager_id#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_color), EqualTo(i_color,pale ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_color), *EqualTo(i_color,pale ), *IsNotNull(i_item_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -207,7 +207,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_net_paid#5, s_store_name#13, s_s Output [4]: [c_customer_sk#23, c_first_name#24, c_last_name#25, c_birth_country#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_birth_country)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_birth_country)] ReadSchema: struct (37) FilterExecTransformer @@ -242,7 +242,7 @@ Input [14]: [ss_customer_sk#2, ss_net_paid#5, s_store_name#13, s_state#15, s_zip Output [3]: [ca_state#27, ca_zip#28, ca_country#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (45) FilterExecTransformer @@ -448,7 +448,7 @@ Input [8]: [ss_item_sk#44, ss_customer_sk#45, ss_store_sk#46, ss_net_paid#48, s_ Output [6]: [i_item_sk#55, i_current_price#56, i_size#57, i_color#58, i_units#59, i_manager_id#60] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (86) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b.sf100/explain.txt index 08005c5d689..d7bbd8afe04 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b.sf100/explain.txt @@ -64,7 +64,7 @@ VeloxColumnarToRow (78) Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, ss_sold_date_sk#6] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -79,7 +79,7 @@ Input [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [6]: [i_item_sk#8, i_current_price#9, i_size#10, i_color#11, i_units#12, i_manager_id#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_color), EqualTo(i_color,chiffon ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_color), *EqualTo(i_color,chiffon ), *IsNotNull(i_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -131,7 +131,7 @@ Input [10]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [c_customer_sk#15, c_first_name#16, c_last_name#17, c_birth_country#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_birth_country)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_birth_country)] ReadSchema: struct (18) FilterExecTransformer @@ -190,7 +190,7 @@ Input [12]: [ss_item_sk#1, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, i_c Output [3]: [sr_item_sk#21, sr_ticket_number#22, sr_returned_date_sk#23] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (33) FilterExecTransformer @@ -232,7 +232,7 @@ Input [14]: [ss_item_sk#1, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, i_c Output [5]: [s_store_sk#25, s_store_name#26, s_market_id#27, s_state#28, s_zip#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (43) FilterExecTransformer @@ -261,7 +261,7 @@ Input [4]: [s_store_sk#25, s_store_name#26, s_state#28, s_zip#29] Output [3]: [ca_state#30, ca_zip#31, ca_country#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (50) FilterExecTransformer @@ -452,7 +452,7 @@ VeloxColumnarToRow (153) Output [6]: [ss_item_sk#47, ss_customer_sk#48, ss_store_sk#49, ss_ticket_number#50, ss_net_paid#51, ss_sold_date_sk#52] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -467,7 +467,7 @@ Input [6]: [ss_item_sk#47, ss_customer_sk#48, ss_store_sk#49, ss_ticket_number#5 Output [5]: [s_store_sk#53, s_store_name#54, s_market_id#55, s_state#56, s_zip#57] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (83) FilterExecTransformer @@ -523,7 +523,7 @@ Input [7]: [ss_item_sk#47, ss_customer_sk#48, ss_ticket_number#50, ss_net_paid#5 Output [6]: [i_item_sk#59, i_current_price#60, i_size#61, i_color#62, i_units#63, i_manager_id#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -654,7 +654,7 @@ Input [12]: [ss_net_paid#51, s_store_name#54, s_state#56, s_zip#57, i_current_pr Output [3]: [ca_state#75, ca_zip#76, ca_country#77] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (132) FilterExecTransformer @@ -765,7 +765,7 @@ VeloxColumnarToRow (165) Output [3]: [s_store_sk#25, s_market_id#27, s_zip#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (155) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b/explain.txt index a290e3613d4..87f98514f12 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q24b/explain.txt @@ -59,7 +59,7 @@ VeloxColumnarToRow (71) Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, ss_sold_date_sk#6] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -91,7 +91,7 @@ Input [5]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [3]: [sr_item_sk#8, sr_ticket_number#9, sr_returned_date_sk#10] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -133,7 +133,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [5]: [s_store_sk#12, s_store_name#13, s_market_id#14, s_state#15, s_zip#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (20) FilterExecTransformer @@ -172,7 +172,7 @@ Input [8]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_net_paid#5, s_stor Output [6]: [i_item_sk#17, i_current_price#18, i_size#19, i_color#20, i_units#21, i_manager_id#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_color), EqualTo(i_color,chiffon ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_color), *EqualTo(i_color,chiffon ), *IsNotNull(i_item_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -207,7 +207,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_net_paid#5, s_store_name#13, s_s Output [4]: [c_customer_sk#23, c_first_name#24, c_last_name#25, c_birth_country#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_birth_country)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_birth_country)] ReadSchema: struct (37) FilterExecTransformer @@ -242,7 +242,7 @@ Input [14]: [ss_customer_sk#2, ss_net_paid#5, s_store_name#13, s_state#15, s_zip Output [3]: [ca_state#27, ca_zip#28, ca_country#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (45) FilterExecTransformer @@ -448,7 +448,7 @@ Input [8]: [ss_item_sk#44, ss_customer_sk#45, ss_store_sk#46, ss_net_paid#48, s_ Output [6]: [i_item_sk#55, i_current_price#56, i_size#57, i_color#58, i_units#59, i_manager_id#60] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (86) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25.sf100/explain.txt index 82a034d75d4..49ac71dbe11 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25.sf100/explain.txt @@ -66,7 +66,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [3]: [s_store_sk#9, s_store_id#10, s_store_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -148,7 +148,7 @@ Input [6]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#4, ss_net_profit#5, Output [3]: [i_item_sk#13, i_item_id#14, i_item_desc#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -208,7 +208,7 @@ Output [5]: [sr_item_sk#18, sr_customer_sk#19, sr_ticket_number#20, sr_net_loss# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#22), dynamicpruningexpression(sr_returned_date_sk#22 IN dynamicpruning#23)] -PushedFilters: [IsNotNull(sr_customer_sk), IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_customer_sk), *IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (37) FilterExecTransformer @@ -283,7 +283,7 @@ Output [4]: [cs_bill_customer_sk#27, cs_item_sk#28, cs_net_profit#29, cs_sold_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#30), dynamicpruningexpression(cs_sold_date_sk#30 IN dynamicpruning#23)] -PushedFilters: [IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (56) FilterExecTransformer @@ -399,7 +399,7 @@ ColumnarBroadcastExchange (85) Output [3]: [d_date_sk#8, d_year#49, d_moy#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,4), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,4), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (82) FilterExecTransformer @@ -429,7 +429,7 @@ ColumnarBroadcastExchange (90) Output [3]: [d_date_sk#24, d_year#51, d_moy#52] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,10), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,10), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (87) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25/explain.txt index e0485a9f6e6..f0ce913ec59 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q25/explain.txt @@ -53,7 +53,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -65,7 +65,7 @@ Output [5]: [sr_item_sk#8, sr_customer_sk#9, sr_ticket_number#10, sr_net_loss#11 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#12), dynamicpruningexpression(sr_returned_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(sr_customer_sk), IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_customer_sk), *IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (4) FilterExecTransformer @@ -101,7 +101,7 @@ Output [4]: [cs_bill_customer_sk#14, cs_item_sk#15, cs_net_profit#16, cs_sold_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#17), dynamicpruningexpression(cs_sold_date_sk#17 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -193,7 +193,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#3, ss_net_profit#5, sr_net_loss#11, cs_net Output [3]: [s_store_sk#21, s_store_id#22, s_store_name#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -228,7 +228,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_net_profit#5, sr_net_loss#11, cs_net Output [3]: [i_item_sk#24, i_item_id#25, i_item_desc#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -322,7 +322,7 @@ ColumnarBroadcastExchange (66) Output [3]: [d_date_sk#18, d_year#43, d_moy#44] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,4), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,4), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (63) FilterExecTransformer @@ -352,7 +352,7 @@ ColumnarBroadcastExchange (71) Output [3]: [d_date_sk#19, d_year#45, d_moy#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,10), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,10), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (68) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26.sf100/explain.txt index ce654053e95..3896a4f89b2 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26.sf100/explain.txt @@ -41,7 +41,7 @@ Output [8]: [cs_bill_cdemo_sk#1, cs_item_sk#2, cs_promo_sk#3, cs_quantity#4, cs_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#8), dynamicpruningexpression(cs_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_item_sk), IsNotNull(cs_promo_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_item_sk), *IsNotNull(cs_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Arguments: ((isnotnull(cs_bill_cdemo_sk#1) AND isnotnull(cs_item_sk#2)) AND isno Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_marital_status,S), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_marital_status,S), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -91,7 +91,7 @@ Input [9]: [cs_bill_cdemo_sk#1, cs_item_sk#2, cs_promo_sk#3, cs_quantity#4, cs_l Output [3]: [p_promo_sk#14, p_channel_email#15, p_channel_event#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), *IsNotNull(p_promo_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -149,7 +149,7 @@ Input [7]: [cs_item_sk#2, cs_quantity#4, cs_list_price#5, cs_sales_price#6, cs_c Output [2]: [i_item_sk#18, i_item_id#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [2]: [d_date_sk#17, d_year#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26/explain.txt index 772a3b705c3..01bcfbe67cc 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q26/explain.txt @@ -41,7 +41,7 @@ Output [8]: [cs_bill_cdemo_sk#1, cs_item_sk#2, cs_promo_sk#3, cs_quantity#4, cs_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#8), dynamicpruningexpression(cs_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_item_sk), IsNotNull(cs_promo_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_item_sk), *IsNotNull(cs_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Arguments: ((isnotnull(cs_bill_cdemo_sk#1) AND isnotnull(cs_item_sk#2)) AND isno Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_marital_status,S), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_marital_status,S), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -110,7 +110,7 @@ Input [8]: [cs_item_sk#2, cs_promo_sk#3, cs_quantity#4, cs_list_price#5, cs_sale Output [2]: [i_item_sk#15, i_item_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -145,7 +145,7 @@ Input [8]: [cs_item_sk#2, cs_promo_sk#3, cs_quantity#4, cs_list_price#5, cs_sale Output [3]: [p_promo_sk#17, p_channel_email#18, p_channel_event#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), *IsNotNull(p_promo_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [2]: [d_date_sk#14, d_year#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27.sf100/explain.txt index ef56730396d..26e1b5d249c 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27.sf100/explain.txt @@ -42,7 +42,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -53,7 +53,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_store_sk#3)) AND isnotnul Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_marital_status,S), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_marital_status,S), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -111,7 +111,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [s_store_sk#15, s_state#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -146,7 +146,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#17, i_item_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -248,7 +248,7 @@ ColumnarBroadcastExchange (51) Output [2]: [d_date_sk#14, d_year#51] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (48) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27/explain.txt index ef56730396d..26e1b5d249c 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q27/explain.txt @@ -42,7 +42,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -53,7 +53,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_store_sk#3)) AND isnotnul Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_marital_status,S), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_marital_status,S), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -111,7 +111,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [s_store_sk#15, s_state#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -146,7 +146,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#17, i_item_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -248,7 +248,7 @@ ColumnarBroadcastExchange (51) Output [2]: [d_date_sk#14, d_year#51] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (48) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28.sf100/explain.txt index 01e6d6b8fad..d837e954810 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28.sf100/explain.txt @@ -93,7 +93,7 @@ VeloxColumnarToRow (111) Output [5]: [ss_quantity#1, ss_wholesale_cost#2, ss_list_price#3, ss_coupon_amt#4, ss_sold_date_sk#5] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,0), LessThanOrEqual(ss_quantity,5), Or(Or(And(GreaterThanOrEqual(ss_list_price,8.00),LessThanOrEqual(ss_list_price,18.00)),And(GreaterThanOrEqual(ss_coupon_amt,459.00),LessThanOrEqual(ss_coupon_amt,1459.00))),And(GreaterThanOrEqual(ss_wholesale_cost,57.00),LessThanOrEqual(ss_wholesale_cost,77.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,0), *LessThanOrEqual(ss_quantity,5), *Or(Or(And(GreaterThanOrEqual(ss_list_price,8.00),LessThanOrEqual(ss_list_price,18.00)),And(GreaterThanOrEqual(ss_coupon_amt,459.00),LessThanOrEqual(ss_coupon_amt,1459.00))),And(GreaterThanOrEqual(ss_wholesale_cost,57.00),LessThanOrEqual(ss_wholesale_cost,77.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -161,7 +161,7 @@ Input [3]: [avg(UnscaledValue(ss_list_price#3))#7, count(ss_list_price#3)#8, cou Output [5]: [ss_quantity#18, ss_wholesale_cost#19, ss_list_price#20, ss_coupon_amt#21, ss_sold_date_sk#22] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,6), LessThanOrEqual(ss_quantity,10), Or(Or(And(GreaterThanOrEqual(ss_list_price,90.00),LessThanOrEqual(ss_list_price,100.00)),And(GreaterThanOrEqual(ss_coupon_amt,2323.00),LessThanOrEqual(ss_coupon_amt,3323.00))),And(GreaterThanOrEqual(ss_wholesale_cost,31.00),LessThanOrEqual(ss_wholesale_cost,51.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,6), *LessThanOrEqual(ss_quantity,10), *Or(Or(And(GreaterThanOrEqual(ss_list_price,90.00),LessThanOrEqual(ss_list_price,100.00)),And(GreaterThanOrEqual(ss_coupon_amt,2323.00),LessThanOrEqual(ss_coupon_amt,3323.00))),And(GreaterThanOrEqual(ss_wholesale_cost,31.00),LessThanOrEqual(ss_wholesale_cost,51.00)))] ReadSchema: struct (16) FilterExecTransformer @@ -247,7 +247,7 @@ Join condition: None Output [5]: [ss_quantity#35, ss_wholesale_cost#36, ss_list_price#37, ss_coupon_amt#38, ss_sold_date_sk#39] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,11), LessThanOrEqual(ss_quantity,15), Or(Or(And(GreaterThanOrEqual(ss_list_price,142.00),LessThanOrEqual(ss_list_price,152.00)),And(GreaterThanOrEqual(ss_coupon_amt,12214.00),LessThanOrEqual(ss_coupon_amt,13214.00))),And(GreaterThanOrEqual(ss_wholesale_cost,79.00),LessThanOrEqual(ss_wholesale_cost,99.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,11), *LessThanOrEqual(ss_quantity,15), *Or(Or(And(GreaterThanOrEqual(ss_list_price,142.00),LessThanOrEqual(ss_list_price,152.00)),And(GreaterThanOrEqual(ss_coupon_amt,12214.00),LessThanOrEqual(ss_coupon_amt,13214.00))),And(GreaterThanOrEqual(ss_wholesale_cost,79.00),LessThanOrEqual(ss_wholesale_cost,99.00)))] ReadSchema: struct (35) FilterExecTransformer @@ -333,7 +333,7 @@ Join condition: None Output [5]: [ss_quantity#52, ss_wholesale_cost#53, ss_list_price#54, ss_coupon_amt#55, ss_sold_date_sk#56] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,16), LessThanOrEqual(ss_quantity,20), Or(Or(And(GreaterThanOrEqual(ss_list_price,135.00),LessThanOrEqual(ss_list_price,145.00)),And(GreaterThanOrEqual(ss_coupon_amt,6071.00),LessThanOrEqual(ss_coupon_amt,7071.00))),And(GreaterThanOrEqual(ss_wholesale_cost,38.00),LessThanOrEqual(ss_wholesale_cost,58.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,16), *LessThanOrEqual(ss_quantity,20), *Or(Or(And(GreaterThanOrEqual(ss_list_price,135.00),LessThanOrEqual(ss_list_price,145.00)),And(GreaterThanOrEqual(ss_coupon_amt,6071.00),LessThanOrEqual(ss_coupon_amt,7071.00))),And(GreaterThanOrEqual(ss_wholesale_cost,38.00),LessThanOrEqual(ss_wholesale_cost,58.00)))] ReadSchema: struct (54) FilterExecTransformer @@ -419,7 +419,7 @@ Join condition: None Output [5]: [ss_quantity#69, ss_wholesale_cost#70, ss_list_price#71, ss_coupon_amt#72, ss_sold_date_sk#73] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,21), LessThanOrEqual(ss_quantity,25), Or(Or(And(GreaterThanOrEqual(ss_list_price,122.00),LessThanOrEqual(ss_list_price,132.00)),And(GreaterThanOrEqual(ss_coupon_amt,836.00),LessThanOrEqual(ss_coupon_amt,1836.00))),And(GreaterThanOrEqual(ss_wholesale_cost,17.00),LessThanOrEqual(ss_wholesale_cost,37.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,21), *LessThanOrEqual(ss_quantity,25), *Or(Or(And(GreaterThanOrEqual(ss_list_price,122.00),LessThanOrEqual(ss_list_price,132.00)),And(GreaterThanOrEqual(ss_coupon_amt,836.00),LessThanOrEqual(ss_coupon_amt,1836.00))),And(GreaterThanOrEqual(ss_wholesale_cost,17.00),LessThanOrEqual(ss_wholesale_cost,37.00)))] ReadSchema: struct (73) FilterExecTransformer @@ -505,7 +505,7 @@ Join condition: None Output [5]: [ss_quantity#86, ss_wholesale_cost#87, ss_list_price#88, ss_coupon_amt#89, ss_sold_date_sk#90] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,26), LessThanOrEqual(ss_quantity,30), Or(Or(And(GreaterThanOrEqual(ss_list_price,154.00),LessThanOrEqual(ss_list_price,164.00)),And(GreaterThanOrEqual(ss_coupon_amt,7326.00),LessThanOrEqual(ss_coupon_amt,8326.00))),And(GreaterThanOrEqual(ss_wholesale_cost,7.00),LessThanOrEqual(ss_wholesale_cost,27.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,26), *LessThanOrEqual(ss_quantity,30), *Or(Or(And(GreaterThanOrEqual(ss_list_price,154.00),LessThanOrEqual(ss_list_price,164.00)),And(GreaterThanOrEqual(ss_coupon_amt,7326.00),LessThanOrEqual(ss_coupon_amt,8326.00))),And(GreaterThanOrEqual(ss_wholesale_cost,7.00),LessThanOrEqual(ss_wholesale_cost,27.00)))] ReadSchema: struct (92) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28/explain.txt index 01e6d6b8fad..d837e954810 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q28/explain.txt @@ -93,7 +93,7 @@ VeloxColumnarToRow (111) Output [5]: [ss_quantity#1, ss_wholesale_cost#2, ss_list_price#3, ss_coupon_amt#4, ss_sold_date_sk#5] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,0), LessThanOrEqual(ss_quantity,5), Or(Or(And(GreaterThanOrEqual(ss_list_price,8.00),LessThanOrEqual(ss_list_price,18.00)),And(GreaterThanOrEqual(ss_coupon_amt,459.00),LessThanOrEqual(ss_coupon_amt,1459.00))),And(GreaterThanOrEqual(ss_wholesale_cost,57.00),LessThanOrEqual(ss_wholesale_cost,77.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,0), *LessThanOrEqual(ss_quantity,5), *Or(Or(And(GreaterThanOrEqual(ss_list_price,8.00),LessThanOrEqual(ss_list_price,18.00)),And(GreaterThanOrEqual(ss_coupon_amt,459.00),LessThanOrEqual(ss_coupon_amt,1459.00))),And(GreaterThanOrEqual(ss_wholesale_cost,57.00),LessThanOrEqual(ss_wholesale_cost,77.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -161,7 +161,7 @@ Input [3]: [avg(UnscaledValue(ss_list_price#3))#7, count(ss_list_price#3)#8, cou Output [5]: [ss_quantity#18, ss_wholesale_cost#19, ss_list_price#20, ss_coupon_amt#21, ss_sold_date_sk#22] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,6), LessThanOrEqual(ss_quantity,10), Or(Or(And(GreaterThanOrEqual(ss_list_price,90.00),LessThanOrEqual(ss_list_price,100.00)),And(GreaterThanOrEqual(ss_coupon_amt,2323.00),LessThanOrEqual(ss_coupon_amt,3323.00))),And(GreaterThanOrEqual(ss_wholesale_cost,31.00),LessThanOrEqual(ss_wholesale_cost,51.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,6), *LessThanOrEqual(ss_quantity,10), *Or(Or(And(GreaterThanOrEqual(ss_list_price,90.00),LessThanOrEqual(ss_list_price,100.00)),And(GreaterThanOrEqual(ss_coupon_amt,2323.00),LessThanOrEqual(ss_coupon_amt,3323.00))),And(GreaterThanOrEqual(ss_wholesale_cost,31.00),LessThanOrEqual(ss_wholesale_cost,51.00)))] ReadSchema: struct (16) FilterExecTransformer @@ -247,7 +247,7 @@ Join condition: None Output [5]: [ss_quantity#35, ss_wholesale_cost#36, ss_list_price#37, ss_coupon_amt#38, ss_sold_date_sk#39] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,11), LessThanOrEqual(ss_quantity,15), Or(Or(And(GreaterThanOrEqual(ss_list_price,142.00),LessThanOrEqual(ss_list_price,152.00)),And(GreaterThanOrEqual(ss_coupon_amt,12214.00),LessThanOrEqual(ss_coupon_amt,13214.00))),And(GreaterThanOrEqual(ss_wholesale_cost,79.00),LessThanOrEqual(ss_wholesale_cost,99.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,11), *LessThanOrEqual(ss_quantity,15), *Or(Or(And(GreaterThanOrEqual(ss_list_price,142.00),LessThanOrEqual(ss_list_price,152.00)),And(GreaterThanOrEqual(ss_coupon_amt,12214.00),LessThanOrEqual(ss_coupon_amt,13214.00))),And(GreaterThanOrEqual(ss_wholesale_cost,79.00),LessThanOrEqual(ss_wholesale_cost,99.00)))] ReadSchema: struct (35) FilterExecTransformer @@ -333,7 +333,7 @@ Join condition: None Output [5]: [ss_quantity#52, ss_wholesale_cost#53, ss_list_price#54, ss_coupon_amt#55, ss_sold_date_sk#56] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,16), LessThanOrEqual(ss_quantity,20), Or(Or(And(GreaterThanOrEqual(ss_list_price,135.00),LessThanOrEqual(ss_list_price,145.00)),And(GreaterThanOrEqual(ss_coupon_amt,6071.00),LessThanOrEqual(ss_coupon_amt,7071.00))),And(GreaterThanOrEqual(ss_wholesale_cost,38.00),LessThanOrEqual(ss_wholesale_cost,58.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,16), *LessThanOrEqual(ss_quantity,20), *Or(Or(And(GreaterThanOrEqual(ss_list_price,135.00),LessThanOrEqual(ss_list_price,145.00)),And(GreaterThanOrEqual(ss_coupon_amt,6071.00),LessThanOrEqual(ss_coupon_amt,7071.00))),And(GreaterThanOrEqual(ss_wholesale_cost,38.00),LessThanOrEqual(ss_wholesale_cost,58.00)))] ReadSchema: struct (54) FilterExecTransformer @@ -419,7 +419,7 @@ Join condition: None Output [5]: [ss_quantity#69, ss_wholesale_cost#70, ss_list_price#71, ss_coupon_amt#72, ss_sold_date_sk#73] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,21), LessThanOrEqual(ss_quantity,25), Or(Or(And(GreaterThanOrEqual(ss_list_price,122.00),LessThanOrEqual(ss_list_price,132.00)),And(GreaterThanOrEqual(ss_coupon_amt,836.00),LessThanOrEqual(ss_coupon_amt,1836.00))),And(GreaterThanOrEqual(ss_wholesale_cost,17.00),LessThanOrEqual(ss_wholesale_cost,37.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,21), *LessThanOrEqual(ss_quantity,25), *Or(Or(And(GreaterThanOrEqual(ss_list_price,122.00),LessThanOrEqual(ss_list_price,132.00)),And(GreaterThanOrEqual(ss_coupon_amt,836.00),LessThanOrEqual(ss_coupon_amt,1836.00))),And(GreaterThanOrEqual(ss_wholesale_cost,17.00),LessThanOrEqual(ss_wholesale_cost,37.00)))] ReadSchema: struct (73) FilterExecTransformer @@ -505,7 +505,7 @@ Join condition: None Output [5]: [ss_quantity#86, ss_wholesale_cost#87, ss_list_price#88, ss_coupon_amt#89, ss_sold_date_sk#90] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,26), LessThanOrEqual(ss_quantity,30), Or(Or(And(GreaterThanOrEqual(ss_list_price,154.00),LessThanOrEqual(ss_list_price,164.00)),And(GreaterThanOrEqual(ss_coupon_amt,7326.00),LessThanOrEqual(ss_coupon_amt,8326.00))),And(GreaterThanOrEqual(ss_wholesale_cost,7.00),LessThanOrEqual(ss_wholesale_cost,27.00)))] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,26), *LessThanOrEqual(ss_quantity,30), *Or(Or(And(GreaterThanOrEqual(ss_list_price,154.00),LessThanOrEqual(ss_list_price,164.00)),And(GreaterThanOrEqual(ss_coupon_amt,7326.00),LessThanOrEqual(ss_coupon_amt,8326.00))),And(GreaterThanOrEqual(ss_wholesale_cost,7.00),LessThanOrEqual(ss_wholesale_cost,27.00)))] ReadSchema: struct (92) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29.sf100/explain.txt index dcdf16b7082..2ef92a6ce6f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29.sf100/explain.txt @@ -65,7 +65,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -95,7 +95,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [3]: [s_store_sk#9, s_store_id#10, s_store_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -147,7 +147,7 @@ Input [6]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#4, ss_quantity#5, s Output [3]: [i_item_sk#13, i_item_id#14, i_item_desc#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -207,7 +207,7 @@ Output [5]: [sr_item_sk#18, sr_customer_sk#19, sr_ticket_number#20, sr_return_qu Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#22), dynamicpruningexpression(sr_returned_date_sk#22 IN dynamicpruning#23)] -PushedFilters: [IsNotNull(sr_customer_sk), IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_customer_sk), *IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (37) FilterExecTransformer @@ -282,7 +282,7 @@ Output [4]: [cs_bill_customer_sk#27, cs_item_sk#28, cs_quantity#29, cs_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#30), dynamicpruningexpression(cs_sold_date_sk#30 IN dynamicpruning#31)] -PushedFilters: [IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (56) FilterExecTransformer @@ -394,7 +394,7 @@ ColumnarBroadcastExchange (84) Output [3]: [d_date_sk#8, d_year#47, d_moy#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,9), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,9), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (81) FilterExecTransformer @@ -424,7 +424,7 @@ ColumnarBroadcastExchange (89) Output [3]: [d_date_sk#24, d_year#49, d_moy#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), GreaterThanOrEqual(d_moy,9), LessThanOrEqual(d_moy,12), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *GreaterThanOrEqual(d_moy,9), *LessThanOrEqual(d_moy,12), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (86) FilterExecTransformer @@ -454,7 +454,7 @@ ColumnarBroadcastExchange (94) Output [2]: [d_date_sk#32, d_year#51] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (91) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29/explain.txt index 23aecdad670..efcf36928d5 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q29/explain.txt @@ -52,7 +52,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -64,7 +64,7 @@ Output [5]: [sr_item_sk#8, sr_customer_sk#9, sr_ticket_number#10, sr_return_quan Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#12), dynamicpruningexpression(sr_returned_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(sr_customer_sk), IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_customer_sk), *IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (4) FilterExecTransformer @@ -100,7 +100,7 @@ Output [4]: [cs_bill_customer_sk#14, cs_item_sk#15, cs_quantity#16, cs_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#17), dynamicpruningexpression(cs_sold_date_sk#17 IN dynamicpruning#18)] -PushedFilters: [IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -192,7 +192,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#5, sr_return_quantity#11, c Output [3]: [s_store_sk#22, s_store_id#23, s_store_name#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -227,7 +227,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#5, sr_return_quantity#11, c Output [3]: [i_item_sk#25, i_item_id#26, i_item_desc#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -317,7 +317,7 @@ ColumnarBroadcastExchange (65) Output [3]: [d_date_sk#19, d_year#41, d_moy#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,9), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,9), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -347,7 +347,7 @@ ColumnarBroadcastExchange (70) Output [3]: [d_date_sk#20, d_year#43, d_moy#44] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), GreaterThanOrEqual(d_moy,9), LessThanOrEqual(d_moy,12), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *GreaterThanOrEqual(d_moy,9), *LessThanOrEqual(d_moy,12), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (67) FilterExecTransformer @@ -377,7 +377,7 @@ ColumnarBroadcastExchange (75) Output [2]: [d_date_sk#21, d_year#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (72) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3.sf100/explain.txt index bd7edb84258..d02521ae6de 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3.sf100/explain.txt @@ -28,7 +28,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -39,7 +39,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#5, i_brand_id#6, i_brand#7, i_manufact_id#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,128), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,128), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -156,7 +156,7 @@ ColumnarBroadcastExchange (33) Output [3]: [d_date_sk#9, d_year#10, d_moy#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (30) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3/explain.txt index 86fe7fdc8f3..eb23d8581ac 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q3/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_d Output [4]: [i_item_sk#7, i_brand_id#8, i_brand#9, i_manufact_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,128), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,128), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30.sf100/explain.txt index 69b466f0c62..cd02a463dc5 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30.sf100/explain.txt @@ -77,7 +77,7 @@ VeloxColumnarToRow (94) Output [14]: [c_customer_sk#1, c_customer_id#2, c_current_addr_sk#3, c_salutation#4, c_first_name#5, c_last_name#6, c_preferred_cust_flag#7, c_birth_day#8, c_birth_month#9, c_birth_year#10, c_birth_country#11, c_login#12, c_email_address#13, c_last_review_date#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -88,7 +88,7 @@ Arguments: (isnotnull(c_customer_sk#1) AND isnotnull(c_current_addr_sk#3)) Output [2]: [ca_address_sk#15, ca_state#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,GA), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,GA), *IsNotNull(ca_address_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -142,7 +142,7 @@ Output [4]: [wr_returning_customer_sk#17, wr_returning_addr_sk#18, wr_return_amt Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#20), dynamicpruningexpression(wr_returned_date_sk#20 IN dynamicpruning#21)] -PushedFilters: [IsNotNull(wr_returning_addr_sk), IsNotNull(wr_returning_customer_sk)] +PushedFilters: [*IsNotNull(wr_returning_addr_sk), *IsNotNull(wr_returning_customer_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -189,7 +189,7 @@ Input [3]: [wr_returning_customer_sk#17, wr_returning_addr_sk#18, wr_return_amt# Output [2]: [ca_address_sk#24, ca_state#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_state)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_state)] ReadSchema: struct (29) FilterExecTransformer @@ -285,7 +285,7 @@ Output [4]: [wr_returning_customer_sk#35, wr_returning_addr_sk#36, wr_return_amt Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#38), dynamicpruningexpression(wr_returned_date_sk#38 IN dynamicpruning#21)] -PushedFilters: [IsNotNull(wr_returning_addr_sk)] +PushedFilters: [*IsNotNull(wr_returning_addr_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -477,7 +477,7 @@ ColumnarBroadcastExchange (99) Output [2]: [d_date_sk#22, d_year#56] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (96) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30/explain.txt index 5a31f295d41..4323fe4776b 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q30/explain.txt @@ -70,7 +70,7 @@ Output [4]: [wr_returning_customer_sk#1, wr_returning_addr_sk#2, wr_return_amt#3 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#4), dynamicpruningexpression(wr_returned_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(wr_returning_addr_sk), IsNotNull(wr_returning_customer_sk)] +PushedFilters: [*IsNotNull(wr_returning_addr_sk), *IsNotNull(wr_returning_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -100,7 +100,7 @@ Input [5]: [wr_returning_customer_sk#1, wr_returning_addr_sk#2, wr_return_amt#3, Output [2]: [ca_address_sk#7, ca_state#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_state)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_state)] ReadSchema: struct (9) FilterExecTransformer @@ -179,7 +179,7 @@ Output [4]: [wr_returning_customer_sk#17, wr_returning_addr_sk#18, wr_return_amt Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#20), dynamicpruningexpression(wr_returned_date_sk#20 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(wr_returning_addr_sk)] +PushedFilters: [*IsNotNull(wr_returning_addr_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -334,7 +334,7 @@ Input [5]: [ctr_customer_sk#14, ctr_state#15, ctr_total_return#16, (avg(ctr_tota Output [14]: [c_customer_sk#37, c_customer_id#38, c_current_addr_sk#39, c_salutation#40, c_first_name#41, c_last_name#42, c_preferred_cust_flag#43, c_birth_day#44, c_birth_month#45, c_birth_year#46, c_birth_country#47, c_login#48, c_email_address#49, c_last_review_date#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (64) FilterExecTransformer @@ -369,7 +369,7 @@ Input [16]: [ctr_customer_sk#14, ctr_total_return#16, c_customer_sk#37, c_custom Output [2]: [ca_address_sk#51, ca_state#52] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,GA), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,GA), *IsNotNull(ca_address_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -428,7 +428,7 @@ ColumnarBroadcastExchange (87) Output [2]: [d_date_sk#6, d_year#53] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (84) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31.sf100/explain.txt index 24adcddb960..b1c3133462e 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31.sf100/explain.txt @@ -155,7 +155,7 @@ Output [3]: [ss_addr_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -202,7 +202,7 @@ Input [4]: [ss_addr_sk#1, ss_ext_sales_price#2, d_year#6, d_qoy#7] Output [2]: [ca_address_sk#9, ca_county#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_county)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_county)] ReadSchema: struct (14) FilterExecTransformer @@ -284,7 +284,7 @@ Output [3]: [ss_addr_sk#18, ss_ext_sales_price#19, ss_sold_date_sk#20] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#20), dynamicpruningexpression(ss_sold_date_sk#20 IN dynamicpruning#21)] -PushedFilters: [IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk)] ReadSchema: struct (33) FilterExecTransformer @@ -414,7 +414,7 @@ Output [3]: [ss_addr_sk#33, ss_ext_sales_price#34, ss_sold_date_sk#35] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#35), dynamicpruningexpression(ss_sold_date_sk#35 IN dynamicpruning#36)] -PushedFilters: [IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk)] ReadSchema: struct (65) FilterExecTransformer @@ -544,7 +544,7 @@ Output [3]: [ws_bill_addr_sk#48, ws_ext_sales_price#49, ws_sold_date_sk#50] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#50), dynamicpruningexpression(ws_sold_date_sk#50 IN dynamicpruning#36)] -PushedFilters: [IsNotNull(ws_bill_addr_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -650,7 +650,7 @@ Output [3]: [ws_bill_addr_sk#63, ws_ext_sales_price#64, ws_sold_date_sk#65] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#65), dynamicpruningexpression(ws_sold_date_sk#65 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_bill_addr_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk)] ReadSchema: struct (123) FilterExecTransformer @@ -780,7 +780,7 @@ Output [3]: [ws_bill_addr_sk#77, ws_ext_sales_price#78, ws_sold_date_sk#79] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#79), dynamicpruningexpression(ws_sold_date_sk#79 IN dynamicpruning#21)] -PushedFilters: [IsNotNull(ws_bill_addr_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk)] ReadSchema: struct (155) FilterExecTransformer @@ -969,7 +969,7 @@ ColumnarBroadcastExchange (203) Output [3]: [d_date_sk#5, d_year#6, d_qoy#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (201) FilterExecTransformer @@ -994,7 +994,7 @@ ColumnarBroadcastExchange (207) Output [3]: [d_date_sk#22, d_year#23, d_qoy#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,3), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,3), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (205) FilterExecTransformer @@ -1019,7 +1019,7 @@ ColumnarBroadcastExchange (211) Output [3]: [d_date_sk#37, d_year#38, d_qoy#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,1), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,1), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (209) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31/explain.txt index 8a4100c4b38..e05f98e7e53 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q31/explain.txt @@ -133,7 +133,7 @@ Output [3]: [ss_addr_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -163,7 +163,7 @@ Input [6]: [ss_addr_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3, d_date_sk#5, Output [2]: [ca_address_sk#8, ca_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_county)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_county)] ReadSchema: struct (9) FilterExecTransformer @@ -238,7 +238,7 @@ Output [3]: [ss_addr_sk#16, ss_ext_sales_price#17, ss_sold_date_sk#18] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#18), dynamicpruningexpression(ss_sold_date_sk#18 IN dynamicpruning#19)] -PushedFilters: [IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -347,7 +347,7 @@ Output [3]: [ss_addr_sk#30, ss_ext_sales_price#31, ss_sold_date_sk#32] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#32), dynamicpruningexpression(ss_sold_date_sk#32 IN dynamicpruning#33)] -PushedFilters: [IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk)] ReadSchema: struct (52) FilterExecTransformer @@ -460,7 +460,7 @@ Output [3]: [ws_bill_addr_sk#44, ws_ext_sales_price#45, ws_sold_date_sk#46] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#46), dynamicpruningexpression(ws_sold_date_sk#46 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_bill_addr_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -569,7 +569,7 @@ Output [3]: [ws_bill_addr_sk#58, ws_ext_sales_price#59, ws_sold_date_sk#60] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#60), dynamicpruningexpression(ws_sold_date_sk#60 IN dynamicpruning#19)] -PushedFilters: [IsNotNull(ws_bill_addr_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk)] ReadSchema: struct (105) FilterExecTransformer @@ -682,7 +682,7 @@ Output [3]: [ws_bill_addr_sk#71, ws_ext_sales_price#72, ws_sold_date_sk#73] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#73), dynamicpruningexpression(ws_sold_date_sk#73 IN dynamicpruning#33)] -PushedFilters: [IsNotNull(ws_bill_addr_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk)] ReadSchema: struct (132) FilterExecTransformer @@ -830,7 +830,7 @@ ColumnarBroadcastExchange (169) Output [3]: [d_date_sk#5, d_year#6, d_qoy#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,1), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,1), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (167) FilterExecTransformer @@ -855,7 +855,7 @@ ColumnarBroadcastExchange (173) Output [3]: [d_date_sk#20, d_year#21, d_qoy#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (171) FilterExecTransformer @@ -880,7 +880,7 @@ ColumnarBroadcastExchange (177) Output [3]: [d_date_sk#34, d_year#35, d_qoy#36] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,3), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,3), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (175) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32.sf100/explain.txt index bbef819d481..f13fc0c963e 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32.sf100/explain.txt @@ -43,7 +43,7 @@ VeloxColumnarToRow (49) Output [2]: [i_item_sk#1, i_manufact_id#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,977), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,977), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Output [3]: [cs_item_sk#3, cs_ext_discount_amt#4, cs_sold_date_sk#5] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -171,7 +171,7 @@ Output [3]: [cs_item_sk#17, cs_ext_discount_amt#18, cs_sold_date_sk#19] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#19), dynamicpruningexpression(cs_sold_date_sk#19 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_ext_discount_amt)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_ext_discount_amt)] ReadSchema: struct (32) FilterExecTransformer @@ -267,7 +267,7 @@ VeloxColumnarToRow (61) Output [2]: [i_item_sk#1, i_manufact_id#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,977), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,977), *IsNotNull(i_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -327,7 +327,7 @@ ColumnarBroadcastExchange (66) Output [2]: [d_date_sk#8, d_date#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-01-27), LessThanOrEqual(d_date,2000-04-26), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-01-27), *LessThanOrEqual(d_date,2000-04-26), *IsNotNull(d_date_sk)] ReadSchema: struct (63) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32/explain.txt index 7fe998f6249..2b9a0fbc56c 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q32/explain.txt @@ -44,7 +44,7 @@ Output [3]: [cs_item_sk#1, cs_ext_discount_amt#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_ext_discount_amt)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_ext_discount_amt)] ReadSchema: struct (2) FilterExecTransformer @@ -55,7 +55,7 @@ Arguments: (isnotnull(cs_item_sk#1) AND isnotnull(cs_ext_discount_amt#2)) Output [2]: [i_item_sk#5, i_manufact_id#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,977), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,977), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -95,7 +95,7 @@ Output [3]: [cs_item_sk#7, cs_ext_discount_amt#8, cs_sold_date_sk#9] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#9), dynamicpruningexpression(cs_sold_date_sk#9 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -262,7 +262,7 @@ ColumnarBroadcastExchange (54) Output [2]: [d_date_sk#19, d_date#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-01-27), LessThanOrEqual(d_date,2000-04-26), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-01-27), *LessThanOrEqual(d_date,2000-04-26), *IsNotNull(d_date_sk)] ReadSchema: struct (51) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33.sf100/explain.txt index ffc7c76e9d8..a599ccaacbb 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33.sf100/explain.txt @@ -85,7 +85,7 @@ Output [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_addr_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -115,7 +115,7 @@ Input [5]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4, Output [2]: [i_item_sk#7, i_manufact_id#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -126,7 +126,7 @@ Arguments: isnotnull(i_item_sk#7) Output [2]: [i_category#9, i_manufact_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Electronics )] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Electronics )] ReadSchema: struct (11) FilterExecTransformer @@ -185,7 +185,7 @@ Input [5]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, i_item_sk#7, i_man Output [2]: [ca_address_sk#11, ca_gmt_offset#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -268,7 +268,7 @@ Output [4]: [cs_bill_addr_sk#19, cs_item_sk#20, cs_ext_sales_price#21, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#22), dynamicpruningexpression(cs_sold_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_bill_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -380,7 +380,7 @@ Output [4]: [ws_item_sk#33, ws_bill_addr_sk#34, ws_ext_sales_price#35, ws_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#36), dynamicpruningexpression(ws_sold_date_sk#36 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_addr_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -527,7 +527,7 @@ ColumnarBroadcastExchange (108) Output [3]: [d_date_sk#6, d_year#49, d_moy#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,5), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,5), *IsNotNull(d_date_sk)] ReadSchema: struct (105) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33/explain.txt index ec4ff117650..523d2faa845 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q33/explain.txt @@ -85,7 +85,7 @@ Output [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_addr_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -115,7 +115,7 @@ Input [5]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4, Output [2]: [ca_address_sk#7, ca_gmt_offset#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -154,7 +154,7 @@ Input [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ca_address_sk#7] Output [2]: [i_item_sk#9, i_manufact_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -165,7 +165,7 @@ Arguments: isnotnull(i_item_sk#9) Output [2]: [i_category#11, i_manufact_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Electronics )] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Electronics )] ReadSchema: struct (20) FilterExecTransformer @@ -268,7 +268,7 @@ Output [4]: [cs_bill_addr_sk#19, cs_item_sk#20, cs_ext_sales_price#21, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#22), dynamicpruningexpression(cs_sold_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_bill_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -380,7 +380,7 @@ Output [4]: [ws_item_sk#33, ws_bill_addr_sk#34, ws_ext_sales_price#35, ws_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#36), dynamicpruningexpression(ws_sold_date_sk#36 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_addr_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -527,7 +527,7 @@ ColumnarBroadcastExchange (108) Output [3]: [d_date_sk#6, d_year#49, d_moy#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,5), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,5), *IsNotNull(d_date_sk)] ReadSchema: struct (105) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34.sf100/explain.txt index f9ce7fdda22..591c310e502 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34.sf100/explain.txt @@ -50,7 +50,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -80,7 +80,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_county), EqualTo(s_county,Williamson County), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_county), *EqualTo(s_county,Williamson County), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -119,7 +119,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -218,7 +218,7 @@ Input [3]: [ss_ticket_number#4, ss_customer_sk#1, cnt#18] Output [5]: [c_customer_sk#20, c_salutation#21, c_first_name#22, c_last_name#23, c_preferred_cust_flag#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -297,7 +297,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#7, d_year#26, d_dom#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34/explain.txt index 96ff9f88d7b..f831f6ee73d 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q34/explain.txt @@ -44,7 +44,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_county), EqualTo(s_county,Williamson County), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_county), *EqualTo(s_county,Williamson County), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -113,7 +113,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -191,7 +191,7 @@ Arguments: ((cnt#18 >= 15) AND (cnt#18 <= 20)) Output [5]: [c_customer_sk#19, c_salutation#20, c_first_name#21, c_last_name#22, c_preferred_cust_flag#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -263,7 +263,7 @@ ColumnarBroadcastExchange (55) Output [3]: [d_date_sk#7, d_year#24, d_dom#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35.sf100/explain.txt index 7a70048c0ba..859b6341902 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35.sf100/explain.txt @@ -71,7 +71,7 @@ VeloxColumnarToRow (88) Output [3]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -275,7 +275,7 @@ Input [2]: [c_current_cdemo_sk#4, c_current_addr_sk#5] Output [2]: [ca_address_sk#21, ca_state#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (53) FilterExecTransformer @@ -334,7 +334,7 @@ Input [2]: [c_current_cdemo_sk#4, ca_state#22] Output [6]: [cd_demo_sk#25, cd_gender#26, cd_marital_status#27, cd_dep_count#28, cd_dep_employed_count#29, cd_dep_college_count#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (68) FilterExecTransformer @@ -435,7 +435,7 @@ ColumnarBroadcastExchange (93) Output [3]: [d_date_sk#10, d_year#81, d_qoy#82] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_qoy), EqualTo(d_year,2002), LessThan(d_qoy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_qoy), *EqualTo(d_year,2002), *LessThan(d_qoy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (90) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35/explain.txt index e7ad21cf4e9..bf2d0c4a028 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q35/explain.txt @@ -54,7 +54,7 @@ VeloxColumnarToRow (65) Output [3]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -211,7 +211,7 @@ Input [5]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5, exists#2 Output [2]: [ca_address_sk#16, ca_state#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (39) FilterExecTransformer @@ -246,7 +246,7 @@ Input [4]: [c_current_cdemo_sk#4, c_current_addr_sk#5, ca_address_sk#16, ca_stat Output [6]: [cd_demo_sk#18, cd_gender#19, cd_marital_status#20, cd_dep_count#21, cd_dep_employed_count#22, cd_dep_college_count#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -340,7 +340,7 @@ ColumnarBroadcastExchange (70) Output [3]: [d_date_sk#9, d_year#73, d_qoy#74] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_qoy), EqualTo(d_year,2002), LessThan(d_qoy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_qoy), *EqualTo(d_year,2002), *LessThan(d_qoy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (67) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36.sf100/explain.txt index bc54214d79c..9a94d7e5248 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36.sf100/explain.txt @@ -43,7 +43,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Input [6]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [2]: [s_store_sk#8, s_state#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -112,7 +112,7 @@ Input [5]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [3]: [i_item_sk#10, i_class#11, i_category#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -247,7 +247,7 @@ ColumnarBroadcastExchange (52) Output [2]: [d_date_sk#7, d_year#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (49) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36/explain.txt index 036bd92c8b7..bb92b98667a 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q36/explain.txt @@ -43,7 +43,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Input [6]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [3]: [i_item_sk#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -108,7 +108,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [2]: [s_store_sk#11, s_state#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -247,7 +247,7 @@ ColumnarBroadcastExchange (52) Output [2]: [d_date_sk#7, d_year#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (49) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37.sf100/explain.txt index 3904e74fad9..af19ddbbcf0 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37.sf100/explain.txt @@ -38,7 +38,7 @@ VeloxColumnarToRow (43) Output [5]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,68.00), LessThanOrEqual(i_current_price,98.00), In(i_manufact_id, [677,694,808,940]), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,68.00), *LessThanOrEqual(i_current_price,98.00), *In(i_manufact_id, [677,694,808,940]), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -68,7 +68,7 @@ Output [3]: [inv_item_sk#6, inv_quantity_on_hand#7, inv_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#8), dynamicpruningexpression(inv_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), GreaterThanOrEqual(inv_quantity_on_hand,100), LessThanOrEqual(inv_quantity_on_hand,500), IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *GreaterThanOrEqual(inv_quantity_on_hand,100), *LessThanOrEqual(inv_quantity_on_hand,500), *IsNotNull(inv_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -129,7 +129,7 @@ Input [4]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4] Output [2]: [cs_item_sk#12, cs_sold_date_sk#13] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (24) FilterExecTransformer @@ -226,7 +226,7 @@ ColumnarBroadcastExchange (48) Output [2]: [d_date_sk#10, d_date#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-02-01), LessThanOrEqual(d_date,2000-04-01), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-02-01), *LessThanOrEqual(d_date,2000-04-01), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer @@ -261,7 +261,7 @@ VeloxColumnarToRow (60) Output [3]: [i_item_sk#1, i_current_price#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,68.00), LessThanOrEqual(i_current_price,98.00), In(i_manufact_id, [677,694,808,940]), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,68.00), *LessThanOrEqual(i_current_price,98.00), *In(i_manufact_id, [677,694,808,940]), *IsNotNull(i_item_sk)] ReadSchema: struct (50) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37/explain.txt index 2994703eec3..da17b3abbb0 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q37/explain.txt @@ -34,7 +34,7 @@ VeloxColumnarToRow (37) Output [5]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,68.00), LessThanOrEqual(i_current_price,98.00), In(i_manufact_id, [677,694,808,940]), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,68.00), *LessThanOrEqual(i_current_price,98.00), *In(i_manufact_id, [677,694,808,940]), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -50,7 +50,7 @@ Output [3]: [inv_item_sk#6, inv_quantity_on_hand#7, inv_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#8), dynamicpruningexpression(inv_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), GreaterThanOrEqual(inv_quantity_on_hand,100), LessThanOrEqual(inv_quantity_on_hand,500), IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *GreaterThanOrEqual(inv_quantity_on_hand,100), *LessThanOrEqual(inv_quantity_on_hand,500), *IsNotNull(inv_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -122,7 +122,7 @@ Input [4]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4] Output [2]: [cs_item_sk#11, cs_sold_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -202,7 +202,7 @@ ColumnarBroadcastExchange (42) Output [2]: [d_date_sk#10, d_date#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-02-01), LessThanOrEqual(d_date,2000-04-01), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-02-01), *LessThanOrEqual(d_date,2000-04-01), *IsNotNull(d_date_sk)] ReadSchema: struct (39) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38.sf100/explain.txt index 45ca6514e70..f7f3d17b0da 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38.sf100/explain.txt @@ -84,7 +84,7 @@ Output [2]: [ss_customer_sk#1, ss_sold_date_sk#2] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#2), dynamicpruningexpression(ss_sold_date_sk#2 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -131,7 +131,7 @@ Input [2]: [ss_customer_sk#1, d_date#5] Output [3]: [c_customer_sk#7, c_first_name#8, c_last_name#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -230,7 +230,7 @@ Output [2]: [cs_bill_customer_sk#13, cs_sold_date_sk#14] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#14), dynamicpruningexpression(cs_sold_date_sk#14 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -359,7 +359,7 @@ Output [2]: [ws_bill_customer_sk#23, ws_sold_date_sk#24] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#24), dynamicpruningexpression(ws_sold_date_sk#24 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -514,7 +514,7 @@ ColumnarBroadcastExchange (109) Output [3]: [d_date_sk#4, d_date#5, d_month_seq#35] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (106) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38/explain.txt index b738ab920dc..f34b790efe9 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q38/explain.txt @@ -65,7 +65,7 @@ Output [2]: [ss_customer_sk#1, ss_sold_date_sk#2] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#2), dynamicpruningexpression(ss_sold_date_sk#2 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -95,7 +95,7 @@ Input [4]: [ss_customer_sk#1, ss_sold_date_sk#2, d_date_sk#4, d_date#5] Output [3]: [c_customer_sk#6, c_first_name#7, c_last_name#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -166,7 +166,7 @@ Output [2]: [cs_bill_customer_sk#10, cs_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#11), dynamicpruningexpression(cs_sold_date_sk#11 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -271,7 +271,7 @@ Output [2]: [ws_bill_customer_sk#18, ws_sold_date_sk#19] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#19), dynamicpruningexpression(ws_sold_date_sk#19 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (50) FilterExecTransformer @@ -402,7 +402,7 @@ ColumnarBroadcastExchange (82) Output [3]: [d_date_sk#4, d_date#5, d_month_seq#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (79) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a.sf100/explain.txt index 354bcd33a48..4f08ab36feb 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a.sf100/explain.txt @@ -68,7 +68,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -98,7 +98,7 @@ Input [6]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_ Output [1]: [i_item_sk#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -133,7 +133,7 @@ Input [5]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, d_moy#7, Output [2]: [w_warehouse_sk#9, w_warehouse_name#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -233,7 +233,7 @@ Output [4]: [inv_item_sk#29, inv_warehouse_sk#30, inv_quantity_on_hand#31, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#32), dynamicpruningexpression(inv_date_sk#32 IN dynamicpruning#33)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -408,7 +408,7 @@ ColumnarBroadcastExchange (86) Output [3]: [d_date_sk#6, d_year#55, d_moy#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,1), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,1), *IsNotNull(d_date_sk)] ReadSchema: struct (83) FilterExecTransformer @@ -438,7 +438,7 @@ ColumnarBroadcastExchange (91) Output [3]: [d_date_sk#34, d_year#56, d_moy#35] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (88) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a/explain.txt index 4afa1031f45..f8f2ab3f470 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39a/explain.txt @@ -64,7 +64,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -75,7 +75,7 @@ Arguments: (isnotnull(inv_item_sk#1) AND isnotnull(inv_warehouse_sk#2)) Output [1]: [i_item_sk#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -110,7 +110,7 @@ Input [5]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_ Output [2]: [w_warehouse_sk#7, w_warehouse_name#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -212,7 +212,7 @@ Output [4]: [inv_item_sk#28, inv_warehouse_sk#29, inv_quantity_on_hand#30, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#31), dynamicpruningexpression(inv_date_sk#31 IN dynamicpruning#32)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -384,7 +384,7 @@ ColumnarBroadcastExchange (80) Output [3]: [d_date_sk#9, d_year#53, d_moy#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,1), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,1), *IsNotNull(d_date_sk)] ReadSchema: struct (77) FilterExecTransformer @@ -414,7 +414,7 @@ ColumnarBroadcastExchange (85) Output [3]: [d_date_sk#36, d_year#54, d_moy#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (82) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b.sf100/explain.txt index 8b7a5f162bb..f76e1227fce 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b.sf100/explain.txt @@ -68,7 +68,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -98,7 +98,7 @@ Input [6]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_ Output [1]: [i_item_sk#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -133,7 +133,7 @@ Input [5]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, d_moy#7, Output [2]: [w_warehouse_sk#9, w_warehouse_name#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -233,7 +233,7 @@ Output [4]: [inv_item_sk#29, inv_warehouse_sk#30, inv_quantity_on_hand#31, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#32), dynamicpruningexpression(inv_date_sk#32 IN dynamicpruning#33)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -408,7 +408,7 @@ ColumnarBroadcastExchange (86) Output [3]: [d_date_sk#6, d_year#55, d_moy#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,1), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,1), *IsNotNull(d_date_sk)] ReadSchema: struct (83) FilterExecTransformer @@ -438,7 +438,7 @@ ColumnarBroadcastExchange (91) Output [3]: [d_date_sk#34, d_year#56, d_moy#35] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (88) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b/explain.txt index 7a5a203f9af..73cfee64958 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q39b/explain.txt @@ -64,7 +64,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -75,7 +75,7 @@ Arguments: (isnotnull(inv_item_sk#1) AND isnotnull(inv_warehouse_sk#2)) Output [1]: [i_item_sk#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -110,7 +110,7 @@ Input [5]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_ Output [2]: [w_warehouse_sk#7, w_warehouse_name#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -212,7 +212,7 @@ Output [4]: [inv_item_sk#28, inv_warehouse_sk#29, inv_quantity_on_hand#30, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#31), dynamicpruningexpression(inv_date_sk#31 IN dynamicpruning#32)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -384,7 +384,7 @@ ColumnarBroadcastExchange (80) Output [3]: [d_date_sk#9, d_year#53, d_moy#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,1), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,1), *IsNotNull(d_date_sk)] ReadSchema: struct (77) FilterExecTransformer @@ -414,7 +414,7 @@ ColumnarBroadcastExchange (85) Output [3]: [d_date_sk#36, d_year#54, d_moy#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (82) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4.sf100/explain.txt index abab4226c6d..0209d6a6910 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4.sf100/explain.txt @@ -165,7 +165,7 @@ Output [6]: [ss_customer_sk#1, ss_ext_discount_amt#2, ss_ext_sales_price#3, ss_e Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -212,7 +212,7 @@ Input [6]: [ss_customer_sk#1, ss_ext_discount_amt#2, ss_ext_sales_price#3, ss_ex Output [8]: [c_customer_sk#11, c_customer_id#12, c_first_name#13, c_last_name#14, c_preferred_cust_flag#15, c_birth_country#16, c_login#17, c_email_address#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (14) FilterExecTransformer @@ -319,7 +319,7 @@ Output [6]: [ss_customer_sk#30, ss_ext_discount_amt#31, ss_ext_sales_price#32, s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#35), dynamicpruningexpression(ss_sold_date_sk#35 IN dynamicpruning#36)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -448,7 +448,7 @@ Output [6]: [cs_bill_customer_sk#63, cs_ext_discount_amt#64, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#68), dynamicpruningexpression(cs_sold_date_sk#68 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -589,7 +589,7 @@ Output [6]: [cs_bill_customer_sk#90, cs_ext_discount_amt#91, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#95), dynamicpruningexpression(cs_sold_date_sk#95 IN dynamicpruning#36)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (107) FilterExecTransformer @@ -722,7 +722,7 @@ Output [6]: [ws_bill_customer_sk#116, ws_ext_discount_amt#117, ws_ext_sales_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#121), dynamicpruningexpression(ws_sold_date_sk#121 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (140) FilterExecTransformer @@ -863,7 +863,7 @@ Output [6]: [ws_bill_customer_sk#143, ws_ext_discount_amt#144, ws_ext_sales_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#148), dynamicpruningexpression(ws_sold_date_sk#148 IN dynamicpruning#36)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (175) FilterExecTransformer @@ -1014,7 +1014,7 @@ ColumnarBroadcastExchange (213) Output [2]: [d_date_sk#8, d_year#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (211) FilterExecTransformer @@ -1039,7 +1039,7 @@ ColumnarBroadcastExchange (217) Output [2]: [d_date_sk#37, d_year#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (215) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4/explain.txt index 7260ff8cf61..7786419b8f3 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q4/explain.txt @@ -143,7 +143,7 @@ VeloxColumnarToRow (179) Output [8]: [c_customer_sk#1, c_customer_id#2, c_first_name#3, c_last_name#4, c_preferred_cust_flag#5, c_birth_country#6, c_login#7, c_email_address#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (2) FilterExecTransformer @@ -155,7 +155,7 @@ Output [6]: [ss_customer_sk#9, ss_ext_discount_amt#10, ss_ext_sales_price#11, ss Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#14), dynamicpruningexpression(ss_sold_date_sk#14 IN dynamicpruning#15)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -252,7 +252,7 @@ Arguments: (isnotnull(year_total#26) AND (year_total#26 > 0.000000)) Output [8]: [c_customer_sk#27, c_customer_id#28, c_first_name#29, c_last_name#30, c_preferred_cust_flag#31, c_birth_country#32, c_login#33, c_email_address#34] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (27) FilterExecTransformer @@ -264,7 +264,7 @@ Output [6]: [ss_customer_sk#35, ss_ext_discount_amt#36, ss_ext_sales_price#37, s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#40), dynamicpruningexpression(ss_sold_date_sk#40 IN dynamicpruning#41)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -377,7 +377,7 @@ Join condition: None Output [8]: [c_customer_sk#58, c_customer_id#59, c_first_name#60, c_last_name#61, c_preferred_cust_flag#62, c_birth_country#63, c_login#64, c_email_address#65] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (56) FilterExecTransformer @@ -389,7 +389,7 @@ Output [6]: [cs_bill_customer_sk#66, cs_ext_discount_amt#67, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#71), dynamicpruningexpression(cs_sold_date_sk#71 IN dynamicpruning#15)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (58) FilterExecTransformer @@ -510,7 +510,7 @@ Input [12]: [customer_id#25, year_total#26, customer_id#50, customer_first_name# Output [8]: [c_customer_sk#83, c_customer_id#84, c_first_name#85, c_last_name#86, c_preferred_cust_flag#87, c_birth_country#88, c_login#89, c_email_address#90] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (87) FilterExecTransformer @@ -522,7 +522,7 @@ Output [6]: [cs_bill_customer_sk#91, cs_ext_discount_amt#92, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#96), dynamicpruningexpression(cs_sold_date_sk#96 IN dynamicpruning#41)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (89) FilterExecTransformer @@ -639,7 +639,7 @@ Input [13]: [customer_id#25, year_total#26, customer_id#50, customer_first_name# Output [8]: [c_customer_sk#107, c_customer_id#108, c_first_name#109, c_last_name#110, c_preferred_cust_flag#111, c_birth_country#112, c_login#113, c_email_address#114] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (117) FilterExecTransformer @@ -651,7 +651,7 @@ Output [6]: [ws_bill_customer_sk#115, ws_ext_discount_amt#116, ws_ext_sales_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#120), dynamicpruningexpression(ws_sold_date_sk#120 IN dynamicpruning#15)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (119) FilterExecTransformer @@ -772,7 +772,7 @@ Input [12]: [customer_id#25, customer_id#50, customer_first_name#51, customer_la Output [8]: [c_customer_sk#132, c_customer_id#133, c_first_name#134, c_last_name#135, c_preferred_cust_flag#136, c_birth_country#137, c_login#138, c_email_address#139] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (148) FilterExecTransformer @@ -784,7 +784,7 @@ Output [6]: [ws_bill_customer_sk#140, ws_ext_discount_amt#141, ws_ext_sales_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#145), dynamicpruningexpression(ws_sold_date_sk#145 IN dynamicpruning#41)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (150) FilterExecTransformer @@ -920,7 +920,7 @@ ColumnarBroadcastExchange (183) Output [2]: [d_date_sk#16, d_year#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (181) FilterExecTransformer @@ -945,7 +945,7 @@ ColumnarBroadcastExchange (187) Output [2]: [d_date_sk#42, d_year#43] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (185) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40.sf100/explain.txt index 66fa78dda7d..fa2d5357a23 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40.sf100/explain.txt @@ -45,7 +45,7 @@ Output [5]: [cs_warehouse_sk#1, cs_item_sk#2, cs_order_number#3, cs_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_warehouse_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_warehouse_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Input [5]: [cs_warehouse_sk#1, cs_item_sk#2, cs_order_number#3, cs_sales_price#4 Output [4]: [cr_item_sk#9, cr_order_number#10, cr_refunded_cash#11, cr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -119,7 +119,7 @@ Input [8]: [cs_warehouse_sk#1, cs_item_sk#2, cs_order_number#3, cs_sales_price#4 Output [3]: [i_item_sk#14, i_item_id#15, i_current_price#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,0.99), LessThanOrEqual(i_current_price,1.49), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,0.99), *LessThanOrEqual(i_current_price,1.49), *IsNotNull(i_item_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -177,7 +177,7 @@ Input [7]: [cs_warehouse_sk#1, cs_sales_price#4, cs_sold_date_sk#5, cr_refunded_ Output [2]: [w_warehouse_sk#19, w_state#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -272,7 +272,7 @@ VeloxColumnarToRow (63) Output [2]: [i_item_sk#14, i_current_price#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,0.99), LessThanOrEqual(i_current_price,1.49), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,0.99), *LessThanOrEqual(i_current_price,1.49), *IsNotNull(i_item_sk)] ReadSchema: struct (53) FilterExecTransformer @@ -331,7 +331,7 @@ ColumnarBroadcastExchange (67) Output [2]: [d_date_sk#17, d_date#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-02-10), LessThanOrEqual(d_date,2000-04-10), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-02-10), *LessThanOrEqual(d_date,2000-04-10), *IsNotNull(d_date_sk)] ReadSchema: struct (65) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40/explain.txt index fc6008467be..04a741adf79 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q40/explain.txt @@ -45,7 +45,7 @@ Output [5]: [cs_warehouse_sk#1, cs_item_sk#2, cs_order_number#3, cs_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_warehouse_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_warehouse_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Input [5]: [cs_warehouse_sk#1, cs_item_sk#2, cs_order_number#3, cs_sales_price#4 Output [4]: [cr_item_sk#8, cr_order_number#9, cr_refunded_cash#10, cr_returned_date_sk#11] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -119,7 +119,7 @@ Input [8]: [cs_warehouse_sk#1, cs_item_sk#2, cs_order_number#3, cs_sales_price#4 Output [2]: [w_warehouse_sk#13, w_state#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -154,7 +154,7 @@ Input [7]: [cs_warehouse_sk#1, cs_item_sk#2, cs_sales_price#4, cs_sold_date_sk#5 Output [3]: [i_item_sk#15, i_item_id#16, i_current_price#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,0.99), LessThanOrEqual(i_current_price,1.49), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,0.99), *LessThanOrEqual(i_current_price,1.49), *IsNotNull(i_item_sk)] ReadSchema: struct (28) FilterExecTransformer @@ -266,7 +266,7 @@ ColumnarBroadcastExchange (55) Output [2]: [d_date_sk#18, d_date#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-02-10), LessThanOrEqual(d_date,2000-04-10), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-02-10), *LessThanOrEqual(d_date,2000-04-10), *IsNotNull(d_date_sk)] ReadSchema: struct (53) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41.sf100/explain.txt index 3ee9ade24a2..6d7bebb85ec 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41.sf100/explain.txt @@ -32,7 +32,7 @@ VeloxColumnarToRow (34) Output [3]: [i_manufact_id#1, i_manufact#2, i_product_name#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), GreaterThanOrEqual(i_manufact_id,738), LessThanOrEqual(i_manufact_id,778), IsNotNull(i_manufact)] +PushedFilters: [*IsNotNull(i_manufact_id), *GreaterThanOrEqual(i_manufact_id,738), *LessThanOrEqual(i_manufact_id,778), *IsNotNull(i_manufact)] ReadSchema: struct (2) FilterExecTransformer @@ -47,7 +47,7 @@ Input [3]: [i_manufact_id#1, i_manufact#2, i_product_name#3] Output [5]: [i_category#4, i_manufact#5, i_size#6, i_color#7, i_units#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,powder ),EqualTo(i_color,khaki )),Or(EqualTo(i_units,Ounce ),EqualTo(i_units,Oz ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,brown ),EqualTo(i_color,honeydew )),Or(EqualTo(i_units,Bunch ),EqualTo(i_units,Ton ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,floral ),EqualTo(i_color,deep )),Or(EqualTo(i_units,N/A ),EqualTo(i_units,Dozen ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,light ),EqualTo(i_color,cornflower )),Or(EqualTo(i_units,Box ),EqualTo(i_units,Pound ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large )))))),Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,midnight ),EqualTo(i_color,snow )),Or(EqualTo(i_units,Pallet ),EqualTo(i_units,Gross ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,cyan ),EqualTo(i_color,papaya )),Or(EqualTo(i_units,Cup ),EqualTo(i_units,Dram ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,orange ),EqualTo(i_color,frosted )),Or(EqualTo(i_units,Each ),EqualTo(i_units,Tbl ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,forest ),EqualTo(i_color,ghost )),Or(EqualTo(i_units,Lb ),EqualTo(i_units,Bundle ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))))))), IsNotNull(i_manufact)] +PushedFilters: [*Or(Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,powder ),EqualTo(i_color,khaki )),Or(EqualTo(i_units,Ounce ),EqualTo(i_units,Oz ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,brown ),EqualTo(i_color,honeydew )),Or(EqualTo(i_units,Bunch ),EqualTo(i_units,Ton ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,floral ),EqualTo(i_color,deep )),Or(EqualTo(i_units,N/A ),EqualTo(i_units,Dozen ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,light ),EqualTo(i_color,cornflower )),Or(EqualTo(i_units,Box ),EqualTo(i_units,Pound ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large )))))),Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,midnight ),EqualTo(i_color,snow )),Or(EqualTo(i_units,Pallet ),EqualTo(i_units,Gross ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,cyan ),EqualTo(i_color,papaya )),Or(EqualTo(i_units,Cup ),EqualTo(i_units,Dram ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,orange ),EqualTo(i_color,frosted )),Or(EqualTo(i_units,Each ),EqualTo(i_units,Tbl ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,forest ),EqualTo(i_color,ghost )),Or(EqualTo(i_units,Lb ),EqualTo(i_units,Bundle ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))))))), *IsNotNull(i_manufact)] ReadSchema: struct (5) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41/explain.txt index 3ee9ade24a2..6d7bebb85ec 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q41/explain.txt @@ -32,7 +32,7 @@ VeloxColumnarToRow (34) Output [3]: [i_manufact_id#1, i_manufact#2, i_product_name#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), GreaterThanOrEqual(i_manufact_id,738), LessThanOrEqual(i_manufact_id,778), IsNotNull(i_manufact)] +PushedFilters: [*IsNotNull(i_manufact_id), *GreaterThanOrEqual(i_manufact_id,738), *LessThanOrEqual(i_manufact_id,778), *IsNotNull(i_manufact)] ReadSchema: struct (2) FilterExecTransformer @@ -47,7 +47,7 @@ Input [3]: [i_manufact_id#1, i_manufact#2, i_product_name#3] Output [5]: [i_category#4, i_manufact#5, i_size#6, i_color#7, i_units#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,powder ),EqualTo(i_color,khaki )),Or(EqualTo(i_units,Ounce ),EqualTo(i_units,Oz ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,brown ),EqualTo(i_color,honeydew )),Or(EqualTo(i_units,Bunch ),EqualTo(i_units,Ton ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,floral ),EqualTo(i_color,deep )),Or(EqualTo(i_units,N/A ),EqualTo(i_units,Dozen ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,light ),EqualTo(i_color,cornflower )),Or(EqualTo(i_units,Box ),EqualTo(i_units,Pound ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large )))))),Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,midnight ),EqualTo(i_color,snow )),Or(EqualTo(i_units,Pallet ),EqualTo(i_units,Gross ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,cyan ),EqualTo(i_color,papaya )),Or(EqualTo(i_units,Cup ),EqualTo(i_units,Dram ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,orange ),EqualTo(i_color,frosted )),Or(EqualTo(i_units,Each ),EqualTo(i_units,Tbl ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,forest ),EqualTo(i_color,ghost )),Or(EqualTo(i_units,Lb ),EqualTo(i_units,Bundle ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))))))), IsNotNull(i_manufact)] +PushedFilters: [*Or(Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,powder ),EqualTo(i_color,khaki )),Or(EqualTo(i_units,Ounce ),EqualTo(i_units,Oz ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,brown ),EqualTo(i_color,honeydew )),Or(EqualTo(i_units,Bunch ),EqualTo(i_units,Ton ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,floral ),EqualTo(i_color,deep )),Or(EqualTo(i_units,N/A ),EqualTo(i_units,Dozen ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,light ),EqualTo(i_color,cornflower )),Or(EqualTo(i_units,Box ),EqualTo(i_units,Pound ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large )))))),Or(And(EqualTo(i_category,Women ),Or(And(And(Or(EqualTo(i_color,midnight ),EqualTo(i_color,snow )),Or(EqualTo(i_units,Pallet ),EqualTo(i_units,Gross ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))),And(And(Or(EqualTo(i_color,cyan ),EqualTo(i_color,papaya )),Or(EqualTo(i_units,Cup ),EqualTo(i_units,Dram ))),Or(EqualTo(i_size,N/A ),EqualTo(i_size,small ))))),And(EqualTo(i_category,Men ),Or(And(And(Or(EqualTo(i_color,orange ),EqualTo(i_color,frosted )),Or(EqualTo(i_units,Each ),EqualTo(i_units,Tbl ))),Or(EqualTo(i_size,petite ),EqualTo(i_size,large ))),And(And(Or(EqualTo(i_color,forest ),EqualTo(i_color,ghost )),Or(EqualTo(i_units,Lb ),EqualTo(i_units,Bundle ))),Or(EqualTo(i_size,medium ),EqualTo(i_size,extra large ))))))), *IsNotNull(i_manufact)] ReadSchema: struct (5) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42.sf100/explain.txt index 11748f4d6ce..f7698f7ee27 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42.sf100/explain.txt @@ -28,7 +28,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -39,7 +39,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#5, i_category_id#6, i_category#7, i_manager_id#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -156,7 +156,7 @@ ColumnarBroadcastExchange (33) Output [3]: [d_date_sk#9, d_year#10, d_moy#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (30) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42/explain.txt index 0d61710a556..6ee3b47ef1a 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q42/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_d Output [4]: [i_item_sk#7, i_category_id#8, i_category#9, i_manager_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43.sf100/explain.txt index db7303e98f8..fa727fe9a91 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43.sf100/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_day_name#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -60,7 +60,7 @@ Output [3]: [ss_store_sk#4, ss_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_day_name#3, ss_store_sk#4, ss_sales_price#5, ss_sold_ Output [4]: [s_store_sk#8, s_store_id#9, s_store_name#10, s_gmt_offset#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_gmt_offset), EqualTo(s_gmt_offset,-5.00), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_gmt_offset), *EqualTo(s_gmt_offset,-5.00), *IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43/explain.txt index e18ae39df70..9f27fd3d602 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q43/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_day_name#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_store_sk#4, ss_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_day_name#3, ss_store_sk#4, ss_sales_price#5, ss_sold_ Output [4]: [s_store_sk#7, s_store_id#8, s_store_name#9, s_gmt_offset#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_gmt_offset), EqualTo(s_gmt_offset,-5.00), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_gmt_offset), *EqualTo(s_gmt_offset,-5.00), *IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44.sf100/explain.txt index 485169f3dac..65bb105aaa5 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44.sf100/explain.txt @@ -47,7 +47,7 @@ VeloxColumnarToRow (51) Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_net_profit#3, ss_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_store_sk), EqualTo(ss_store_sk,4)] +PushedFilters: [*IsNotNull(ss_store_sk), *EqualTo(ss_store_sk,4)] ReadSchema: struct (2) FilterExecTransformer @@ -193,7 +193,7 @@ Input [4]: [item_sk#12, rnk#15, item_sk#21, rnk#23] Output [2]: [i_item_sk#24, i_product_name#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (37) FilterExecTransformer @@ -274,7 +274,7 @@ VeloxColumnarToRow (65) Output [4]: [ss_addr_sk#30, ss_store_sk#31, ss_net_profit#32, ss_sold_date_sk#33] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_store_sk), EqualTo(ss_store_sk,4), IsNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *EqualTo(ss_store_sk,4), *IsNull(ss_addr_sk)] ReadSchema: struct (53) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44/explain.txt index cd4eab38f71..6d693d3fa34 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q44/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (57) Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_net_profit#3, ss_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_store_sk), EqualTo(ss_store_sk,4)] +PushedFilters: [*IsNotNull(ss_store_sk), *EqualTo(ss_store_sk,4)] ReadSchema: struct (2) FilterExecTransformer @@ -217,7 +217,7 @@ Input [4]: [item_sk#12, rnk#15, item_sk#22, rnk#24] Output [2]: [i_item_sk#26, i_product_name#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -298,7 +298,7 @@ VeloxColumnarToRow (71) Output [4]: [ss_addr_sk#32, ss_store_sk#33, ss_net_profit#34, ss_sold_date_sk#35] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_store_sk), EqualTo(ss_store_sk,4), IsNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *EqualTo(ss_store_sk,4), *IsNull(ss_addr_sk)] ReadSchema: struct (59) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45.sf100/explain.txt index 85e1b889d68..0b2bcc2ccb2 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45.sf100/explain.txt @@ -57,7 +57,7 @@ Output [4]: [ws_item_sk#2, ws_bill_customer_sk#3, ws_sales_price#4, ws_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#5), dynamicpruningexpression(ws_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_bill_customer_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -87,7 +87,7 @@ Input [5]: [ws_item_sk#2, ws_bill_customer_sk#3, ws_sales_price#4, ws_sold_date_ Output [2]: [i_item_sk#8, i_item_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -139,7 +139,7 @@ Input [3]: [ws_bill_customer_sk#3, ws_sales_price#4, i_item_id#9] Output [2]: [c_customer_sk#11, c_current_addr_sk#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -171,7 +171,7 @@ Input [2]: [c_customer_sk#11, c_current_addr_sk#12] Output [3]: [ca_address_sk#14, ca_city#15, ca_zip#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (30) FilterExecTransformer @@ -240,7 +240,7 @@ Input [6]: [ws_bill_customer_sk#3, ws_sales_price#4, i_item_id#9, c_customer_sk# Output [2]: [i_item_sk#19, i_item_id#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_item_sk, [11,13,17,19,2,23,29,3,5,7])] +PushedFilters: [*In(i_item_sk, [11,13,17,19,2,23,29,3,5,7])] ReadSchema: struct (47) FilterExecTransformer @@ -342,7 +342,7 @@ ColumnarBroadcastExchange (72) Output [3]: [d_date_sk#7, d_year#27, d_qoy#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (69) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45/explain.txt index 6870b4692b1..ba770087d57 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q45/explain.txt @@ -47,7 +47,7 @@ Output [4]: [ws_item_sk#2, ws_bill_customer_sk#3, ws_sales_price#4, ws_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#5), dynamicpruningexpression(ws_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_bill_customer_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -58,7 +58,7 @@ Arguments: (isnotnull(ws_bill_customer_sk#3) AND isnotnull(ws_item_sk#2)) Output [2]: [c_customer_sk#7, c_current_addr_sk#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -93,7 +93,7 @@ Input [6]: [ws_item_sk#2, ws_bill_customer_sk#3, ws_sales_price#4, ws_sold_date_ Output [3]: [ca_address_sk#9, ca_city#10, ca_zip#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -147,7 +147,7 @@ Input [6]: [ws_item_sk#2, ws_sales_price#4, ws_sold_date_sk#5, ca_city#10, ca_zi Output [2]: [i_item_sk#13, i_item_id#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -182,7 +182,7 @@ Input [6]: [ws_item_sk#2, ws_sales_price#4, ca_city#10, ca_zip#11, i_item_sk#13, Output [2]: [i_item_sk#15, i_item_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_item_sk, [11,13,17,19,2,23,29,3,5,7])] +PushedFilters: [*In(i_item_sk, [11,13,17,19,2,23,29,3,5,7])] ReadSchema: struct (33) FilterExecTransformer @@ -284,7 +284,7 @@ ColumnarBroadcastExchange (58) Output [3]: [d_date_sk#12, d_year#23, d_qoy#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (55) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46.sf100/explain.txt index d910f8b70e4..7244d2b69bc 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46.sf100/explain.txt @@ -58,7 +58,7 @@ VeloxColumnarToRow (70) Output [4]: [c_customer_sk#1, c_current_addr_sk#2, c_first_name#3, c_last_name#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [4]: [c_customer_sk#1, c_current_addr_sk#2, c_first_name#3, c_last_name#4] Output [2]: [ca_address_sk#6, ca_city#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (10) FilterExecTransformer @@ -150,7 +150,7 @@ Output [8]: [ss_customer_sk#10, ss_hdemo_sk#11, ss_addr_sk#12, ss_store_sk#13, s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#17), dynamicpruningexpression(ss_sold_date_sk#17 IN dynamicpruning#18)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -180,7 +180,7 @@ Input [9]: [ss_customer_sk#10, ss_hdemo_sk#11, ss_addr_sk#12, ss_store_sk#13, ss Output [2]: [s_store_sk#20, s_city#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Fairview,Midway]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Fairview,Midway]), *IsNotNull(s_store_sk)] ReadSchema: struct (32) FilterExecTransformer @@ -219,7 +219,7 @@ Input [8]: [ss_customer_sk#10, ss_hdemo_sk#11, ss_addr_sk#12, ss_store_sk#13, ss Output [3]: [hd_demo_sk#22, hd_dep_count#23, hd_vehicle_count#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -352,7 +352,7 @@ ColumnarBroadcastExchange (75) Output [3]: [d_date_sk#19, d_year#36, d_dow#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_dow, [0,6]), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_dow, [0,6]), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (72) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46/explain.txt index 4d3033a5f0f..bb340823b01 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q46/explain.txt @@ -51,7 +51,7 @@ Output [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [2]: [s_store_sk#11, s_city#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Fairview,Midway]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Fairview,Midway]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -120,7 +120,7 @@ Input [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#13, hd_dep_count#14, hd_vehicle_count#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -159,7 +159,7 @@ Input [7]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_ticket_number#5, s Output [2]: [ca_address_sk#16, ca_city#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (27) FilterExecTransformer @@ -233,7 +233,7 @@ Input [6]: [ss_ticket_number#5, ss_customer_sk#1, ss_addr_sk#3, ca_city#17, sum( Output [4]: [c_customer_sk#30, c_current_addr_sk#31, c_first_name#32, c_last_name#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -307,7 +307,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#10, d_year#36, d_dow#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_dow, [0,6]), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_dow, [0,6]), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47.sf100/explain.txt index 7155d454bb3..67066ea7c75 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47.sf100/explain.txt @@ -75,7 +75,7 @@ Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -105,7 +105,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4, d_ Output [3]: [s_store_sk#9, s_store_name#10, s_company_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_company_name)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_company_name)] ReadSchema: struct (9) FilterExecTransformer @@ -157,7 +157,7 @@ Input [6]: [ss_item_sk#1, ss_sales_price#3, d_year#7, d_moy#8, s_store_name#10, Output [3]: [i_item_sk#13, i_brand#14, i_category#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (22) FilterExecTransformer @@ -439,7 +439,7 @@ ColumnarBroadcastExchange (95) Output [3]: [d_date_sk#6, d_year#7, d_moy#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (93) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47/explain.txt index ea13e029402..7cd614d0ea8 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q47/explain.txt @@ -64,7 +64,7 @@ VeloxColumnarToRow (77) Output [3]: [i_item_sk#1, i_brand#2, i_category#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Output [4]: [ss_item_sk#4, ss_store_sk#5, ss_sales_price#6, ss_sold_date_sk#7] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -130,7 +130,7 @@ Input [8]: [i_brand#2, i_category#3, ss_store_sk#5, ss_sales_price#6, ss_sold_da Output [3]: [s_store_sk#12, s_store_name#13, s_company_name#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_company_name)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_company_name)] ReadSchema: struct (17) FilterExecTransformer @@ -382,7 +382,7 @@ ColumnarBroadcastExchange (81) Output [3]: [d_date_sk#9, d_year#10, d_moy#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (79) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48.sf100/explain.txt index c654e586875..dba42406bad 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48.sf100/explain.txt @@ -37,7 +37,7 @@ Output [7]: [ss_cdemo_sk#1, ss_addr_sk#2, ss_store_sk#3, ss_quantity#4, ss_sales Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_addr_sk), Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00))), Or(Or(And(GreaterThanOrEqual(ss_net_profit,0.00),LessThanOrEqual(ss_net_profit,2000.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,3000.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,25000.00)))] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_addr_sk), *Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00))), *Or(Or(And(GreaterThanOrEqual(ss_net_profit,0.00),LessThanOrEqual(ss_net_profit,2000.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,3000.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,25000.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -48,7 +48,7 @@ Arguments: ((((isnotnull(ss_store_sk#3) AND isnotnull(ss_cdemo_sk#1)) AND isnotn Output [1]: [s_store_sk#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -83,7 +83,7 @@ Input [8]: [ss_cdemo_sk#1, ss_addr_sk#2, ss_store_sk#3, ss_quantity#4, ss_sales_ Output [3]: [cd_demo_sk#10, cd_marital_status#11, cd_education_status#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,4 yr Degree )),And(EqualTo(cd_marital_status,D),EqualTo(cd_education_status,2 yr Degree ))),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College )))] +PushedFilters: [*IsNotNull(cd_demo_sk), *Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,4 yr Degree )),And(EqualTo(cd_marital_status,D),EqualTo(cd_education_status,2 yr Degree ))),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College )))] ReadSchema: struct (12) FilterExecTransformer @@ -118,7 +118,7 @@ Input [9]: [ss_cdemo_sk#1, ss_addr_sk#2, ss_quantity#4, ss_sales_price#5, ss_net Output [3]: [ca_address_sk#13, ca_state#14, ca_country#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), EqualTo(ca_country,United States), IsNotNull(ca_address_sk), Or(Or(In(ca_state, [CO,OH,TX]),In(ca_state, [KY,MN,OR])),In(ca_state, [CA,MS,VA]))] +PushedFilters: [*IsNotNull(ca_country), *EqualTo(ca_country,United States), *IsNotNull(ca_address_sk), *Or(Or(In(ca_state, [CO,OH,TX]),In(ca_state, [KY,MN,OR])),In(ca_state, [CA,MS,VA]))] ReadSchema: struct (20) FilterExecTransformer @@ -223,7 +223,7 @@ ColumnarBroadcastExchange (46) Output [2]: [d_date_sk#16, d_year#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (43) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48/explain.txt index c654e586875..dba42406bad 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q48/explain.txt @@ -37,7 +37,7 @@ Output [7]: [ss_cdemo_sk#1, ss_addr_sk#2, ss_store_sk#3, ss_quantity#4, ss_sales Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_addr_sk), Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00))), Or(Or(And(GreaterThanOrEqual(ss_net_profit,0.00),LessThanOrEqual(ss_net_profit,2000.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,3000.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,25000.00)))] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_addr_sk), *Or(Or(And(GreaterThanOrEqual(ss_sales_price,100.00),LessThanOrEqual(ss_sales_price,150.00)),And(GreaterThanOrEqual(ss_sales_price,50.00),LessThanOrEqual(ss_sales_price,100.00))),And(GreaterThanOrEqual(ss_sales_price,150.00),LessThanOrEqual(ss_sales_price,200.00))), *Or(Or(And(GreaterThanOrEqual(ss_net_profit,0.00),LessThanOrEqual(ss_net_profit,2000.00)),And(GreaterThanOrEqual(ss_net_profit,150.00),LessThanOrEqual(ss_net_profit,3000.00))),And(GreaterThanOrEqual(ss_net_profit,50.00),LessThanOrEqual(ss_net_profit,25000.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -48,7 +48,7 @@ Arguments: ((((isnotnull(ss_store_sk#3) AND isnotnull(ss_cdemo_sk#1)) AND isnotn Output [1]: [s_store_sk#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -83,7 +83,7 @@ Input [8]: [ss_cdemo_sk#1, ss_addr_sk#2, ss_store_sk#3, ss_quantity#4, ss_sales_ Output [3]: [cd_demo_sk#10, cd_marital_status#11, cd_education_status#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,4 yr Degree )),And(EqualTo(cd_marital_status,D),EqualTo(cd_education_status,2 yr Degree ))),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College )))] +PushedFilters: [*IsNotNull(cd_demo_sk), *Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,4 yr Degree )),And(EqualTo(cd_marital_status,D),EqualTo(cd_education_status,2 yr Degree ))),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College )))] ReadSchema: struct (12) FilterExecTransformer @@ -118,7 +118,7 @@ Input [9]: [ss_cdemo_sk#1, ss_addr_sk#2, ss_quantity#4, ss_sales_price#5, ss_net Output [3]: [ca_address_sk#13, ca_state#14, ca_country#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), EqualTo(ca_country,United States), IsNotNull(ca_address_sk), Or(Or(In(ca_state, [CO,OH,TX]),In(ca_state, [KY,MN,OR])),In(ca_state, [CA,MS,VA]))] +PushedFilters: [*IsNotNull(ca_country), *EqualTo(ca_country,United States), *IsNotNull(ca_address_sk), *Or(Or(In(ca_state, [CO,OH,TX]),In(ca_state, [KY,MN,OR])),In(ca_state, [CA,MS,VA]))] ReadSchema: struct (20) FilterExecTransformer @@ -223,7 +223,7 @@ ColumnarBroadcastExchange (46) Output [2]: [d_date_sk#16, d_year#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (43) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49.sf100/explain.txt index 7b906399879..9942ee8abe7 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49.sf100/explain.txt @@ -109,7 +109,7 @@ Output [6]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4, ws_n Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#6), dynamicpruningexpression(ws_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ws_net_profit), IsNotNull(ws_net_paid), IsNotNull(ws_quantity), GreaterThan(ws_net_profit,1.00), GreaterThan(ws_net_paid,0.00), GreaterThan(ws_quantity,0), IsNotNull(ws_order_number), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_net_profit), *IsNotNull(ws_net_paid), *IsNotNull(ws_quantity), *GreaterThan(ws_net_profit,1.00), *GreaterThan(ws_net_paid,0.00), *GreaterThan(ws_quantity,0), *IsNotNull(ws_order_number), *IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -160,7 +160,7 @@ Input [4]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4] Output [5]: [wr_item_sk#10, wr_order_number#11, wr_return_quantity#12, wr_return_amt#13, wr_returned_date_sk#14] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_return_amt), GreaterThan(wr_return_amt,10000.00), IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_return_amt), *GreaterThan(wr_return_amt,10000.00), *IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (15) FilterExecTransformer @@ -270,7 +270,7 @@ Output [6]: [cs_item_sk#43, cs_order_number#44, cs_quantity#45, cs_net_paid#46, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#48), dynamicpruningexpression(cs_sold_date_sk#48 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(cs_net_profit), IsNotNull(cs_net_paid), IsNotNull(cs_quantity), GreaterThan(cs_net_profit,1.00), GreaterThan(cs_net_paid,0.00), GreaterThan(cs_quantity,0), IsNotNull(cs_order_number), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_net_profit), *IsNotNull(cs_net_paid), *IsNotNull(cs_quantity), *GreaterThan(cs_net_profit,1.00), *GreaterThan(cs_net_paid,0.00), *GreaterThan(cs_quantity,0), *IsNotNull(cs_order_number), *IsNotNull(cs_item_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -321,7 +321,7 @@ Input [4]: [cs_item_sk#43, cs_order_number#44, cs_quantity#45, cs_net_paid#46] Output [5]: [cr_item_sk#51, cr_order_number#52, cr_return_quantity#53, cr_return_amount#54, cr_returned_date_sk#55] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_return_amount), GreaterThan(cr_return_amount,10000.00), IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_return_amount), *GreaterThan(cr_return_amount,10000.00), *IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (54) FilterExecTransformer @@ -431,7 +431,7 @@ Output [6]: [ss_item_sk#84, ss_ticket_number#85, ss_quantity#86, ss_net_paid#87, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#89), dynamicpruningexpression(ss_sold_date_sk#89 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_net_profit), IsNotNull(ss_net_paid), IsNotNull(ss_quantity), GreaterThan(ss_net_profit,1.00), GreaterThan(ss_net_paid,0.00), GreaterThan(ss_quantity,0), IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_net_profit), *IsNotNull(ss_net_paid), *IsNotNull(ss_quantity), *GreaterThan(ss_net_profit,1.00), *GreaterThan(ss_net_paid,0.00), *GreaterThan(ss_quantity,0), *IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -482,7 +482,7 @@ Input [4]: [ss_item_sk#84, ss_ticket_number#85, ss_quantity#86, ss_net_paid#87] Output [5]: [sr_item_sk#92, sr_ticket_number#93, sr_return_quantity#94, sr_return_amt#95, sr_returned_date_sk#96] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_return_amt), GreaterThan(sr_return_amt,10000.00), IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_return_amt), *GreaterThan(sr_return_amt,10000.00), *IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (93) FilterExecTransformer @@ -655,7 +655,7 @@ ColumnarBroadcastExchange (136) Output [3]: [d_date_sk#8, d_year#126, d_moy#127] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,12), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,12), *IsNotNull(d_date_sk)] ReadSchema: struct (133) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49/explain.txt index 656594415cb..85eb363d68f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q49/explain.txt @@ -97,7 +97,7 @@ Output [6]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4, ws_n Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#6), dynamicpruningexpression(ws_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ws_net_profit), IsNotNull(ws_net_paid), IsNotNull(ws_quantity), GreaterThan(ws_net_profit,1.00), GreaterThan(ws_net_paid,0.00), GreaterThan(ws_quantity,0), IsNotNull(ws_order_number), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_net_profit), *IsNotNull(ws_net_paid), *IsNotNull(ws_quantity), *GreaterThan(ws_net_profit,1.00), *GreaterThan(ws_net_paid,0.00), *GreaterThan(ws_quantity,0), *IsNotNull(ws_order_number), *IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -126,7 +126,7 @@ Input [5]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4, ws_so Output [5]: [wr_item_sk#8, wr_order_number#9, wr_return_quantity#10, wr_return_amt#11, wr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_return_amt), GreaterThan(wr_return_amt,10000.00), IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_return_amt), *GreaterThan(wr_return_amt,10000.00), *IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -238,7 +238,7 @@ Output [6]: [cs_item_sk#41, cs_order_number#42, cs_quantity#43, cs_net_paid#44, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#46), dynamicpruningexpression(cs_sold_date_sk#46 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(cs_net_profit), IsNotNull(cs_net_paid), IsNotNull(cs_quantity), GreaterThan(cs_net_profit,1.00), GreaterThan(cs_net_paid,0.00), GreaterThan(cs_quantity,0), IsNotNull(cs_order_number), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_net_profit), *IsNotNull(cs_net_paid), *IsNotNull(cs_quantity), *GreaterThan(cs_net_profit,1.00), *GreaterThan(cs_net_paid,0.00), *GreaterThan(cs_quantity,0), *IsNotNull(cs_order_number), *IsNotNull(cs_item_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -267,7 +267,7 @@ Input [5]: [cs_item_sk#41, cs_order_number#42, cs_quantity#43, cs_net_paid#44, c Output [5]: [cr_item_sk#47, cr_order_number#48, cr_return_quantity#49, cr_return_amount#50, cr_returned_date_sk#51] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_return_amount), GreaterThan(cr_return_amount,10000.00), IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_return_amount), *GreaterThan(cr_return_amount,10000.00), *IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -379,7 +379,7 @@ Output [6]: [ss_item_sk#80, ss_ticket_number#81, ss_quantity#82, ss_net_paid#83, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#85), dynamicpruningexpression(ss_sold_date_sk#85 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_net_profit), IsNotNull(ss_net_paid), IsNotNull(ss_quantity), GreaterThan(ss_net_profit,1.00), GreaterThan(ss_net_paid,0.00), GreaterThan(ss_quantity,0), IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_net_profit), *IsNotNull(ss_net_paid), *IsNotNull(ss_quantity), *GreaterThan(ss_net_profit,1.00), *GreaterThan(ss_net_paid,0.00), *GreaterThan(ss_quantity,0), *IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk)] ReadSchema: struct (68) FilterExecTransformer @@ -408,7 +408,7 @@ Input [5]: [ss_item_sk#80, ss_ticket_number#81, ss_quantity#82, ss_net_paid#83, Output [5]: [sr_item_sk#86, sr_ticket_number#87, sr_return_quantity#88, sr_return_amt#89, sr_returned_date_sk#90] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_return_amt), GreaterThan(sr_return_amt,10000.00), IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_return_amt), *GreaterThan(sr_return_amt,10000.00), *IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (75) FilterExecTransformer @@ -583,7 +583,7 @@ ColumnarBroadcastExchange (118) Output [3]: [d_date_sk#13, d_year#120, d_moy#121] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,12), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,12), *IsNotNull(d_date_sk)] ReadSchema: struct (115) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5.sf100/explain.txt index d77313f733a..6a3344e2c6f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5.sf100/explain.txt @@ -103,7 +103,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -123,7 +123,7 @@ Output [4]: [sr_store_sk#12, sr_return_amt#13, sr_net_loss#14, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#15), dynamicpruningexpression(sr_returned_date_sk#15 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -151,7 +151,7 @@ Input [6]: [store_sk#6, date_sk#7, sales_price#8, profit#9, return_amt#10, net_l Output [2]: [s_store_sk#22, s_store_id#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -249,7 +249,7 @@ Output [4]: [cs_catalog_page_sk#47, cs_ext_sales_price#48, cs_net_profit#49, cs_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#50), dynamicpruningexpression(cs_sold_date_sk#50 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_catalog_page_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -269,7 +269,7 @@ Output [4]: [cr_catalog_page_sk#57, cr_return_amount#58, cr_net_loss#59, cr_retu Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#60), dynamicpruningexpression(cr_returned_date_sk#60 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cr_catalog_page_sk)] +PushedFilters: [*IsNotNull(cr_catalog_page_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -297,7 +297,7 @@ Input [6]: [page_sk#51, date_sk#52, sales_price#53, profit#54, return_amt#55, ne Output [2]: [cp_catalog_page_sk#67, cp_catalog_page_id#68] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -395,7 +395,7 @@ Output [4]: [ws_web_site_sk#92, ws_ext_sales_price#93, ws_net_profit#94, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#95), dynamicpruningexpression(ws_sold_date_sk#95 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -442,7 +442,7 @@ Input [5]: [wr_item_sk#102, wr_order_number#103, wr_return_amt#104, wr_net_loss# Output [4]: [ws_item_sk#108, ws_web_site_sk#109, ws_order_number#110, ws_sold_date_sk#111] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_order_number), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_order_number), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (81) FilterExecTransformer @@ -497,7 +497,7 @@ Input [6]: [wsr_web_site_sk#96, date_sk#97, sales_price#98, profit#99, return_am Output [2]: [web_site_sk#119, web_site_id#120] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (95) FilterExecTransformer @@ -666,7 +666,7 @@ ColumnarBroadcastExchange (137) Output [2]: [d_date_sk#24, d_date#166] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-08-23), LessThanOrEqual(d_date,2000-09-06), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-08-23), *LessThanOrEqual(d_date,2000-09-06), *IsNotNull(d_date_sk)] ReadSchema: struct (134) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5/explain.txt index a80d13ddbae..0ae2a7f6f47 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q5/explain.txt @@ -98,7 +98,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -118,7 +118,7 @@ Output [4]: [sr_store_sk#12, sr_return_amt#13, sr_net_loss#14, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#15), dynamicpruningexpression(sr_returned_date_sk#15 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -165,7 +165,7 @@ Input [7]: [store_sk#6, date_sk#7, sales_price#8, profit#9, return_amt#10, net_l Output [2]: [s_store_sk#23, s_store_id#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -244,7 +244,7 @@ Output [4]: [cs_catalog_page_sk#47, cs_ext_sales_price#48, cs_net_profit#49, cs_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#50), dynamicpruningexpression(cs_sold_date_sk#50 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_catalog_page_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -264,7 +264,7 @@ Output [4]: [cr_catalog_page_sk#57, cr_return_amount#58, cr_net_loss#59, cr_retu Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#60), dynamicpruningexpression(cr_returned_date_sk#60 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cr_catalog_page_sk)] +PushedFilters: [*IsNotNull(cr_catalog_page_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -311,7 +311,7 @@ Input [7]: [page_sk#51, date_sk#52, sales_price#53, profit#54, return_amt#55, ne Output [2]: [cp_catalog_page_sk#68, cp_catalog_page_id#69] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (52) FilterExecTransformer @@ -390,7 +390,7 @@ Output [4]: [ws_web_site_sk#92, ws_ext_sales_price#93, ws_net_profit#94, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#95), dynamicpruningexpression(ws_sold_date_sk#95 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -430,7 +430,7 @@ Input [5]: [wr_item_sk#102, wr_order_number#103, wr_return_amt#104, wr_net_loss# Output [4]: [ws_item_sk#107, ws_web_site_sk#108, ws_order_number#109, ws_sold_date_sk#110] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_order_number), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_order_number), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -487,7 +487,7 @@ Input [7]: [wsr_web_site_sk#96, date_sk#97, sales_price#98, profit#99, return_am Output [2]: [web_site_sk#118, web_site_id#119] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (93) FilterExecTransformer @@ -637,7 +637,7 @@ ColumnarBroadcastExchange (130) Output [2]: [d_date_sk#22, d_date#164] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-08-23), LessThanOrEqual(d_date,2000-09-06), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-08-23), *LessThanOrEqual(d_date,2000-09-06), *IsNotNull(d_date_sk)] ReadSchema: struct (127) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50.sf100/explain.txt index 5a96d900977..a3cddf4c054 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50.sf100/explain.txt @@ -43,7 +43,7 @@ Output [4]: [sr_item_sk#1, sr_customer_sk#2, sr_ticket_number#3, sr_returned_dat Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#4), dynamicpruningexpression(sr_returned_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk), IsNotNull(sr_customer_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk), *IsNotNull(sr_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -91,7 +91,7 @@ Output [5]: [ss_item_sk#8, ss_customer_sk#9, ss_store_sk#10, ss_ticket_number#11 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#12)] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -133,7 +133,7 @@ Input [9]: [sr_item_sk#1, sr_customer_sk#2, sr_ticket_number#3, sr_returned_date Output [1]: [d_date_sk#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (24) FilterExecTransformer @@ -168,7 +168,7 @@ Input [4]: [sr_returned_date_sk#4, ss_store_sk#10, ss_sold_date_sk#12, d_date_sk Output [11]: [s_store_sk#15, s_store_name#16, s_company_id#17, s_street_number#18, s_street_name#19, s_street_type#20, s_suite_number#21, s_city#22, s_county#23, s_state#24, s_zip#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (32) FilterExecTransformer @@ -258,7 +258,7 @@ ColumnarBroadcastExchange (54) Output [3]: [d_date_sk#6, d_year#52, d_moy#53] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,8), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,8), *IsNotNull(d_date_sk)] ReadSchema: struct (51) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50/explain.txt index 971378d3312..a5fb580d58c 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q50/explain.txt @@ -38,7 +38,7 @@ Output [5]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5)] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -50,7 +50,7 @@ Output [4]: [sr_item_sk#6, sr_customer_sk#7, sr_ticket_number#8, sr_returned_dat Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#9), dynamicpruningexpression(sr_returned_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk), IsNotNull(sr_customer_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk), *IsNotNull(sr_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -85,7 +85,7 @@ Input [9]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [11]: [s_store_sk#11, s_store_name#12, s_company_id#13, s_street_number#14, s_street_name#15, s_street_type#16, s_suite_number#17, s_city#18, s_county#19, s_state#20, s_zip#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -120,7 +120,7 @@ Input [14]: [ss_store_sk#3, ss_sold_date_sk#5, sr_returned_date_sk#9, s_store_sk Output [1]: [d_date_sk#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -229,7 +229,7 @@ ColumnarBroadcastExchange (47) Output [3]: [d_date_sk#23, d_year#50, d_moy#51] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,8), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,8), *IsNotNull(d_date_sk)] ReadSchema: struct (44) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51.sf100/explain.txt index 58c0bf6439d..ecf59f8c26d 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51.sf100/explain.txt @@ -60,7 +60,7 @@ Output [3]: [ws_item_sk#1, ws_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -176,7 +176,7 @@ Output [3]: [ss_item_sk#17, ss_sales_price#18, ss_sold_date_sk#19] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#19), dynamicpruningexpression(ss_sold_date_sk#19 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (31) FilterExecTransformer @@ -350,7 +350,7 @@ ColumnarBroadcastExchange (76) Output [3]: [d_date_sk#5, d_date#6, d_month_seq#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (73) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51/explain.txt index e6fa6903a6d..3ef5e23d89a 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q51/explain.txt @@ -60,7 +60,7 @@ Output [3]: [ws_item_sk#1, ws_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -176,7 +176,7 @@ Output [3]: [ss_item_sk#17, ss_sales_price#18, ss_sold_date_sk#19] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#19), dynamicpruningexpression(ss_sold_date_sk#19 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (31) FilterExecTransformer @@ -350,7 +350,7 @@ ColumnarBroadcastExchange (76) Output [3]: [d_date_sk#5, d_date#6, d_month_seq#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (73) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52.sf100/explain.txt index 823771f885e..6404f39e9df 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52.sf100/explain.txt @@ -28,7 +28,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -39,7 +39,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#5, i_brand_id#6, i_brand#7, i_manager_id#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -156,7 +156,7 @@ ColumnarBroadcastExchange (33) Output [3]: [d_date_sk#9, d_year#10, d_moy#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (30) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52/explain.txt index ea06c1e620e..ce2fd3d1dfa 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q52/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [5]: [d_date_sk#1, d_year#2, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_d Output [4]: [i_item_sk#7, i_brand_id#8, i_brand#9, i_manager_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53.sf100/explain.txt index a4a7d50b0ad..9c5759090e5 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53.sf100/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -70,7 +70,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -91,7 +91,7 @@ Input [6]: [i_item_sk#1, i_manufact_id#5, ss_item_sk#10, ss_store_sk#11, ss_sale Output [1]: [s_store_sk#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#16, d_month_seq#27, d_qoy#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53/explain.txt index 5b8469f76d3..329406d2d19 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q53/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,reference ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -56,7 +56,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -110,7 +110,7 @@ Input [6]: [i_manufact_id#5, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk# Output [1]: [s_store_sk#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#15, d_month_seq#27, d_qoy#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54.sf100/explain.txt index 28f1093f49f..9812faf570f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54.sf100/explain.txt @@ -70,7 +70,7 @@ VeloxColumnarToRow (85) Output [3]: [ca_address_sk#1, ca_county#2, ca_state#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_county), IsNotNull(ca_state)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_county), *IsNotNull(ca_state)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Arguments: ((isnotnull(ca_address_sk#1) AND isnotnull(ca_county#2)) AND isnotnul Output [2]: [s_county#4, s_state#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_county), IsNotNull(s_state)] +PushedFilters: [*IsNotNull(s_county), *IsNotNull(s_state)] ReadSchema: struct (4) FilterExecTransformer @@ -131,7 +131,7 @@ Output [3]: [cs_bill_customer_sk#6, cs_item_sk#7, cs_sold_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#8), dynamicpruningexpression(cs_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (16) FilterExecTransformer @@ -151,7 +151,7 @@ Output [3]: [ws_item_sk#13, ws_bill_customer_sk#14, ws_sold_date_sk#15] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#15), dynamicpruningexpression(ws_sold_date_sk#15 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -198,7 +198,7 @@ Input [4]: [sold_date_sk#10, customer_sk#11, item_sk#12, d_date_sk#19] Output [3]: [i_item_sk#20, i_class#21, i_category#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), IsNotNull(i_class), EqualTo(i_category,Women ), EqualTo(i_class,maternity ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_category), *IsNotNull(i_class), *EqualTo(i_category,Women ), *EqualTo(i_class,maternity ), *IsNotNull(i_item_sk)] ReadSchema: struct (32) FilterExecTransformer @@ -254,7 +254,7 @@ Input [1]: [customer_sk#11] Output [2]: [c_customer_sk#24, c_current_addr_sk#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (46) FilterExecTransformer @@ -314,7 +314,7 @@ Output [3]: [ss_customer_sk#27, ss_ext_sales_price#28, ss_sold_date_sk#29] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#29), dynamicpruningexpression(ss_sold_date_sk#29 IN dynamicpruning#30)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (59) FilterExecTransformer @@ -441,7 +441,7 @@ ColumnarBroadcastExchange (90) Output [3]: [d_date_sk#19, d_year#42, d_moy#43] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,12), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,12), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (87) FilterExecTransformer @@ -473,7 +473,7 @@ ColumnarBroadcastExchange (95) Output [2]: [d_date_sk#31, d_month_seq#44] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,ScalarSubquery#45), LessThanOrEqual(d_month_seq,ScalarSubquery#46), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,ScalarSubquery#45), *LessThanOrEqual(d_month_seq,ScalarSubquery#46), *IsNotNull(d_date_sk)] ReadSchema: struct (92) FilterExecTransformer @@ -513,7 +513,7 @@ VeloxColumnarToRow (108) Output [3]: [d_month_seq#47, d_year#48, d_moy#49] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,12)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,12)] ReadSchema: struct (97) FilterExecTransformer @@ -583,7 +583,7 @@ VeloxColumnarToRow (121) Output [3]: [d_month_seq#52, d_year#53, d_moy#54] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,12)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,12)] ReadSchema: struct (110) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54/explain.txt index 6c62d91cbb9..5777b378396 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q54/explain.txt @@ -75,7 +75,7 @@ Output [3]: [cs_bill_customer_sk#1, cs_item_sk#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -95,7 +95,7 @@ Output [3]: [ws_item_sk#8, ws_bill_customer_sk#9, ws_sold_date_sk#10] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#10), dynamicpruningexpression(ws_sold_date_sk#10 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -123,7 +123,7 @@ Input [3]: [sold_date_sk#5, customer_sk#6, item_sk#7] Output [3]: [i_item_sk#14, i_class#15, i_category#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), IsNotNull(i_class), EqualTo(i_category,Women ), EqualTo(i_class,maternity ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_category), *IsNotNull(i_class), *EqualTo(i_category,Women ), *EqualTo(i_class,maternity ), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -181,7 +181,7 @@ Input [3]: [sold_date_sk#5, customer_sk#6, d_date_sk#17] Output [2]: [c_customer_sk#18, c_current_addr_sk#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -252,7 +252,7 @@ Output [3]: [ss_customer_sk#21, ss_ext_sales_price#22, ss_sold_date_sk#23] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#23), dynamicpruningexpression(ss_sold_date_sk#23 IN dynamicpruning#24)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -287,7 +287,7 @@ Input [5]: [c_customer_sk#18, c_current_addr_sk#19, ss_customer_sk#21, ss_ext_sa Output [3]: [ca_address_sk#25, ca_county#26, ca_state#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_county), IsNotNull(ca_state)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_county), *IsNotNull(ca_state)] ReadSchema: struct (51) FilterExecTransformer @@ -322,7 +322,7 @@ Input [7]: [c_customer_sk#18, c_current_addr_sk#19, ss_ext_sales_price#22, ss_so Output [2]: [s_county#28, s_state#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_county), IsNotNull(s_state)] +PushedFilters: [*IsNotNull(s_county), *IsNotNull(s_state)] ReadSchema: struct (59) FilterExecTransformer @@ -474,7 +474,7 @@ ColumnarBroadcastExchange (96) Output [3]: [d_date_sk#17, d_year#43, d_moy#44] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,12), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,12), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (93) FilterExecTransformer @@ -506,7 +506,7 @@ ColumnarBroadcastExchange (101) Output [2]: [d_date_sk#30, d_month_seq#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,ScalarSubquery#46), LessThanOrEqual(d_month_seq,ScalarSubquery#47), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,ScalarSubquery#46), *LessThanOrEqual(d_month_seq,ScalarSubquery#47), *IsNotNull(d_date_sk)] ReadSchema: struct (98) FilterExecTransformer @@ -546,7 +546,7 @@ VeloxColumnarToRow (114) Output [3]: [d_month_seq#48, d_year#49, d_moy#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,12)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,12)] ReadSchema: struct (103) FilterExecTransformer @@ -616,7 +616,7 @@ VeloxColumnarToRow (127) Output [3]: [d_month_seq#53, d_year#54, d_moy#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,12)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,12)] ReadSchema: struct (116) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55.sf100/explain.txt index 8f201497e2b..235b668e022 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55.sf100/explain.txt @@ -28,7 +28,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -39,7 +39,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#5, i_brand_id#6, i_brand#7, i_manager_id#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,28), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,28), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -156,7 +156,7 @@ ColumnarBroadcastExchange (33) Output [3]: [d_date_sk#9, d_year#18, d_moy#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (30) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55/explain.txt index f89dc8028a5..53ddf67b279 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q55/explain.txt @@ -30,7 +30,7 @@ VeloxColumnarToRow (32) Output [3]: [d_date_sk#1, d_year#2, d_moy#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ Output [3]: [ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -81,7 +81,7 @@ Input [4]: [d_date_sk#1, ss_item_sk#4, ss_ext_sales_price#5, ss_sold_date_sk#6] Output [4]: [i_item_sk#7, i_brand_id#8, i_brand#9, i_manager_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,28), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,28), *IsNotNull(i_item_sk)] ReadSchema: struct (13) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56.sf100/explain.txt index 791ebf6bf04..20f1763ba89 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56.sf100/explain.txt @@ -85,7 +85,7 @@ Output [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_addr_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -115,7 +115,7 @@ Input [5]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4, Output [2]: [ca_address_sk#7, ca_gmt_offset#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -154,7 +154,7 @@ Input [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ca_address_sk#7] Output [2]: [i_item_sk#9, i_item_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -165,7 +165,7 @@ Arguments: isnotnull(i_item_sk#9) Output [2]: [i_item_id#11, i_color#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_color, [blanched ,burnished ,slate ])] +PushedFilters: [*In(i_color, [blanched ,burnished ,slate ])] ReadSchema: struct (20) FilterExecTransformer @@ -268,7 +268,7 @@ Output [4]: [cs_bill_addr_sk#19, cs_item_sk#20, cs_ext_sales_price#21, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#22), dynamicpruningexpression(cs_sold_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_bill_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -380,7 +380,7 @@ Output [4]: [ws_item_sk#33, ws_bill_addr_sk#34, ws_ext_sales_price#35, ws_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#36), dynamicpruningexpression(ws_sold_date_sk#36 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_addr_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -527,7 +527,7 @@ ColumnarBroadcastExchange (108) Output [3]: [d_date_sk#6, d_year#49, d_moy#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (105) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56/explain.txt index 791ebf6bf04..20f1763ba89 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q56/explain.txt @@ -85,7 +85,7 @@ Output [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_addr_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -115,7 +115,7 @@ Input [5]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4, Output [2]: [ca_address_sk#7, ca_gmt_offset#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -154,7 +154,7 @@ Input [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ca_address_sk#7] Output [2]: [i_item_sk#9, i_item_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -165,7 +165,7 @@ Arguments: isnotnull(i_item_sk#9) Output [2]: [i_item_id#11, i_color#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_color, [blanched ,burnished ,slate ])] +PushedFilters: [*In(i_color, [blanched ,burnished ,slate ])] ReadSchema: struct (20) FilterExecTransformer @@ -268,7 +268,7 @@ Output [4]: [cs_bill_addr_sk#19, cs_item_sk#20, cs_ext_sales_price#21, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#22), dynamicpruningexpression(cs_sold_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_bill_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -380,7 +380,7 @@ Output [4]: [ws_item_sk#33, ws_bill_addr_sk#34, ws_ext_sales_price#35, ws_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#36), dynamicpruningexpression(ws_sold_date_sk#36 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_addr_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -527,7 +527,7 @@ ColumnarBroadcastExchange (108) Output [3]: [d_date_sk#6, d_year#49, d_moy#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,2), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,2), *IsNotNull(d_date_sk)] ReadSchema: struct (105) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57.sf100/explain.txt index f1d9a1e45db..4f4bf5c1812 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57.sf100/explain.txt @@ -75,7 +75,7 @@ Output [4]: [cs_call_center_sk#1, cs_item_sk#2, cs_sales_price#3, cs_sold_date_s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#4), dynamicpruningexpression(cs_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_call_center_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_call_center_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -105,7 +105,7 @@ Input [7]: [cs_call_center_sk#1, cs_item_sk#2, cs_sales_price#3, cs_sold_date_sk Output [2]: [cc_call_center_sk#9, cc_name#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk), IsNotNull(cc_name)] +PushedFilters: [*IsNotNull(cc_call_center_sk), *IsNotNull(cc_name)] ReadSchema: struct (9) FilterExecTransformer @@ -157,7 +157,7 @@ Input [5]: [cs_item_sk#2, cs_sales_price#3, d_year#7, d_moy#8, cc_name#10] Output [3]: [i_item_sk#12, i_brand#13, i_category#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (22) FilterExecTransformer @@ -439,7 +439,7 @@ ColumnarBroadcastExchange (95) Output [3]: [d_date_sk#6, d_year#7, d_moy#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (93) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57/explain.txt index cc92bd87357..fc72d0c1647 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q57/explain.txt @@ -64,7 +64,7 @@ VeloxColumnarToRow (77) Output [3]: [i_item_sk#1, i_brand#2, i_category#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Output [4]: [cs_call_center_sk#4, cs_item_sk#5, cs_sales_price#6, cs_sold_date_s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#7), dynamicpruningexpression(cs_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_call_center_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_call_center_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -130,7 +130,7 @@ Input [8]: [i_brand#2, i_category#3, cs_call_center_sk#4, cs_sales_price#6, cs_s Output [2]: [cc_call_center_sk#12, cc_name#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk), IsNotNull(cc_name)] +PushedFilters: [*IsNotNull(cc_call_center_sk), *IsNotNull(cc_name)] ReadSchema: struct (17) FilterExecTransformer @@ -382,7 +382,7 @@ ColumnarBroadcastExchange (81) Output [3]: [d_date_sk#9, d_year#10, d_moy#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (79) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58.sf100/explain.txt index b9dab67cc8c..06516c55b17 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58.sf100/explain.txt @@ -72,7 +72,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -102,7 +102,7 @@ Input [4]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3, d_date_sk#5] Output [2]: [i_item_sk#6, i_item_id#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_item_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_item_id)] ReadSchema: struct (9) FilterExecTransformer @@ -181,7 +181,7 @@ Output [3]: [cs_item_sk#15, cs_ext_sales_price#16, cs_sold_date_sk#17] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#17), dynamicpruningexpression(cs_sold_date_sk#17 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -298,7 +298,7 @@ Output [3]: [ws_item_sk#28, ws_ext_sales_price#29, ws_sold_date_sk#30] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#30), dynamicpruningexpression(ws_sold_date_sk#30 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (55) FilterExecTransformer @@ -440,7 +440,7 @@ ColumnarBroadcastExchange (97) Output [2]: [d_date_sk#5, d_date#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (86) FilterExecTransformer @@ -451,7 +451,7 @@ Arguments: isnotnull(d_date_sk#5) Output [2]: [d_date#46, d_week_seq#47] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#48)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#48)] ReadSchema: struct (88) FilterExecTransformer @@ -507,7 +507,7 @@ VeloxColumnarToRow (102) Output [2]: [d_date#49, d_week_seq#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), EqualTo(d_date,2000-01-03)] +PushedFilters: [*IsNotNull(d_date), *EqualTo(d_date,2000-01-03)] ReadSchema: struct (99) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58/explain.txt index d4ec11b1365..143c700ba75 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q58/explain.txt @@ -72,7 +72,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -83,7 +83,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [2]: [i_item_sk#5, i_item_id#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_item_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_item_id)] ReadSchema: struct (4) FilterExecTransformer @@ -181,7 +181,7 @@ Output [3]: [cs_item_sk#15, cs_ext_sales_price#16, cs_sold_date_sk#17] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#17), dynamicpruningexpression(cs_sold_date_sk#17 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -298,7 +298,7 @@ Output [3]: [ws_item_sk#28, ws_ext_sales_price#29, ws_sold_date_sk#30] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#30), dynamicpruningexpression(ws_sold_date_sk#30 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (55) FilterExecTransformer @@ -440,7 +440,7 @@ ColumnarBroadcastExchange (97) Output [2]: [d_date_sk#7, d_date#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (86) FilterExecTransformer @@ -451,7 +451,7 @@ Arguments: isnotnull(d_date_sk#7) Output [2]: [d_date#46, d_week_seq#47] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#48)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#48)] ReadSchema: struct (88) FilterExecTransformer @@ -507,7 +507,7 @@ VeloxColumnarToRow (102) Output [2]: [d_date#49, d_week_seq#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), EqualTo(d_date,2000-01-03)] +PushedFilters: [*IsNotNull(d_date), *EqualTo(d_date,2000-01-03)] ReadSchema: struct (99) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59.sf100/explain.txt index 9cad260d52c..3d3d6abc890 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59.sf100/explain.txt @@ -68,7 +68,7 @@ Output [3]: [ss_store_sk#1, ss_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -79,7 +79,7 @@ Arguments: isnotnull(ss_store_sk#1) Output [3]: [d_date_sk#4, d_week_seq#5, d_day_name#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (4) FilterExecTransformer @@ -153,7 +153,7 @@ Input [9]: [d_week_seq#5, ss_store_sk#1, sum(UnscaledValue(CASE WHEN (d_day_name Output [3]: [s_store_sk#44, s_store_id#45, s_store_name#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (21) FilterExecTransformer @@ -188,7 +188,7 @@ Input [12]: [d_week_seq#5, ss_store_sk#1, sun_sales#37, mon_sales#38, tue_sales# Output [2]: [d_month_seq#47, d_week_seq#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_week_seq)] ReadSchema: struct (29) FilterExecTransformer @@ -228,7 +228,7 @@ Output [3]: [ss_store_sk#59, ss_sales_price#60, ss_sold_date_sk#61] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#61)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -239,7 +239,7 @@ Arguments: isnotnull(ss_store_sk#59) Output [3]: [d_date_sk#62, d_week_seq#63, d_day_name#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (40) FilterExecTransformer @@ -313,7 +313,7 @@ Input [9]: [d_week_seq#63, ss_store_sk#59, sum(UnscaledValue(CASE WHEN (d_day_na Output [2]: [s_store_sk#95, s_store_id#96] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (57) FilterExecTransformer @@ -348,7 +348,7 @@ Input [11]: [d_week_seq#63, ss_store_sk#59, sun_sales#88, mon_sales#89, tue_sale Output [2]: [d_month_seq#97, d_week_seq#98] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1224), LessThanOrEqual(d_month_seq,1235), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1224), *LessThanOrEqual(d_month_seq,1235), *IsNotNull(d_week_seq)] ReadSchema: struct (65) FilterExecTransformer @@ -436,7 +436,7 @@ VeloxColumnarToRow (93) Output [2]: [d_month_seq#47, d_week_seq#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_week_seq)] ReadSchema: struct (83) FilterExecTransformer @@ -513,7 +513,7 @@ VeloxColumnarToRow (105) Output [2]: [d_month_seq#97, d_week_seq#98] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1224), LessThanOrEqual(d_month_seq,1235), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1224), *LessThanOrEqual(d_month_seq,1235), *IsNotNull(d_week_seq)] ReadSchema: struct (95) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59/explain.txt index 5609d4f9746..0eec887c1e7 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q59/explain.txt @@ -57,7 +57,7 @@ Output [3]: [ss_store_sk#1, ss_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -68,7 +68,7 @@ Arguments: isnotnull(ss_store_sk#1) Output [3]: [d_date_sk#4, d_week_seq#5, d_day_name#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_date_sk), *IsNotNull(d_week_seq)] ReadSchema: struct (4) FilterExecTransformer @@ -142,7 +142,7 @@ Input [9]: [d_week_seq#5, ss_store_sk#1, sum(UnscaledValue(CASE WHEN (d_day_name Output [3]: [s_store_sk#43, s_store_id#44, s_store_name#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (21) FilterExecTransformer @@ -177,7 +177,7 @@ Input [12]: [d_week_seq#5, ss_store_sk#1, sun_sales#36, mon_sales#37, tue_sales# Output [2]: [d_month_seq#46, d_week_seq#47] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_week_seq)] ReadSchema: struct (29) FilterExecTransformer @@ -236,7 +236,7 @@ Input [9]: [d_week_seq#58, ss_store_sk#59, sum(UnscaledValue(CASE WHEN (d_day_na Output [2]: [s_store_sk#76, s_store_id#77] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_id)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_id)] ReadSchema: struct (43) FilterExecTransformer @@ -271,7 +271,7 @@ Input [11]: [d_week_seq#58, ss_store_sk#59, sun_sales#69, mon_sales#70, tue_sale Output [2]: [d_month_seq#78, d_week_seq#79] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1224), LessThanOrEqual(d_month_seq,1235), IsNotNull(d_week_seq)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1224), *LessThanOrEqual(d_month_seq,1235), *IsNotNull(d_week_seq)] ReadSchema: struct (51) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6.sf100/explain.txt index b8f55945d98..a37ef74eeb7 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6.sf100/explain.txt @@ -63,7 +63,7 @@ VeloxColumnarToRow (76) Output [3]: [i_item_sk#1, i_current_price#2, i_category#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), IsNotNull(i_category), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *IsNotNull(i_category), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Arguments: ((isnotnull(i_current_price#2) AND isnotnull(i_category#3)) AND isnot Output [2]: [i_current_price#4, i_category#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category)] +PushedFilters: [*IsNotNull(i_category)] ReadSchema: struct (4) FilterExecTransformer @@ -171,7 +171,7 @@ Output [3]: [ss_item_sk#14, ss_customer_sk#15, ss_sold_date_sk#16] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#16), dynamicpruningexpression(ss_sold_date_sk#16 IN dynamicpruning#17)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -228,7 +228,7 @@ Input [1]: [ss_customer_sk#15] Output [2]: [ca_address_sk#20, ca_state#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -260,7 +260,7 @@ Input [2]: [ca_address_sk#20, ca_state#21] Output [2]: [c_customer_sk#23, c_current_addr_sk#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_customer_sk)] ReadSchema: struct (49) FilterExecTransformer @@ -388,7 +388,7 @@ ColumnarBroadcastExchange (81) Output [2]: [d_date_sk#18, d_month_seq#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), EqualTo(d_month_seq,ScalarSubquery#34), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *EqualTo(d_month_seq,ScalarSubquery#34), *IsNotNull(d_date_sk)] ReadSchema: struct (78) FilterExecTransformer @@ -426,7 +426,7 @@ VeloxColumnarToRow (94) Output [3]: [d_month_seq#35, d_year#36, d_moy#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,1)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,1)] ReadSchema: struct (83) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6/explain.txt index 63efc35c30f..9041b82e8f3 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q6/explain.txt @@ -53,7 +53,7 @@ VeloxColumnarToRow (62) Output [2]: [ca_address_sk#1, ca_state#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -64,7 +64,7 @@ Arguments: isnotnull(ca_address_sk#1) Output [2]: [c_customer_sk#3, c_current_addr_sk#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -100,7 +100,7 @@ Output [3]: [ss_item_sk#5, ss_customer_sk#6, ss_sold_date_sk#7] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -154,7 +154,7 @@ Input [4]: [ca_state#2, ss_item_sk#5, ss_sold_date_sk#7, d_date_sk#9] Output [3]: [i_item_sk#10, i_current_price#11, i_category#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), IsNotNull(i_category), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *IsNotNull(i_category), *IsNotNull(i_item_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -165,7 +165,7 @@ Arguments: ((isnotnull(i_current_price#11) AND isnotnull(i_category#12)) AND isn Output [2]: [i_current_price#13, i_category#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category)] +PushedFilters: [*IsNotNull(i_category)] ReadSchema: struct (27) FilterExecTransformer @@ -330,7 +330,7 @@ ColumnarBroadcastExchange (67) Output [2]: [d_date_sk#9, d_month_seq#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), EqualTo(d_month_seq,ScalarSubquery#30), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *EqualTo(d_month_seq,ScalarSubquery#30), *IsNotNull(d_date_sk)] ReadSchema: struct (64) FilterExecTransformer @@ -368,7 +368,7 @@ VeloxColumnarToRow (80) Output [3]: [d_month_seq#31, d_year#32, d_moy#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,1)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,1)] ReadSchema: struct (69) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60.sf100/explain.txt index bfd8896e09e..e9a30be1852 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60.sf100/explain.txt @@ -85,7 +85,7 @@ Output [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_addr_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -115,7 +115,7 @@ Input [5]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4, Output [2]: [ca_address_sk#7, ca_gmt_offset#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -154,7 +154,7 @@ Input [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ca_address_sk#7] Output [2]: [i_item_sk#9, i_item_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -165,7 +165,7 @@ Arguments: isnotnull(i_item_sk#9) Output [2]: [i_item_id#11, i_category#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Music )] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Music )] ReadSchema: struct (20) FilterExecTransformer @@ -268,7 +268,7 @@ Output [4]: [cs_bill_addr_sk#19, cs_item_sk#20, cs_ext_sales_price#21, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#22), dynamicpruningexpression(cs_sold_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_bill_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -380,7 +380,7 @@ Output [4]: [ws_item_sk#33, ws_bill_addr_sk#34, ws_ext_sales_price#35, ws_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#36), dynamicpruningexpression(ws_sold_date_sk#36 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_addr_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -527,7 +527,7 @@ ColumnarBroadcastExchange (108) Output [3]: [d_date_sk#6, d_year#49, d_moy#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,9), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,9), *IsNotNull(d_date_sk)] ReadSchema: struct (105) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60/explain.txt index bfd8896e09e..e9a30be1852 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q60/explain.txt @@ -85,7 +85,7 @@ Output [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_addr_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_addr_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -115,7 +115,7 @@ Input [5]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4, Output [2]: [ca_address_sk#7, ca_gmt_offset#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -154,7 +154,7 @@ Input [4]: [ss_item_sk#1, ss_addr_sk#2, ss_ext_sales_price#3, ca_address_sk#7] Output [2]: [i_item_sk#9, i_item_id#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -165,7 +165,7 @@ Arguments: isnotnull(i_item_sk#9) Output [2]: [i_item_id#11, i_category#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Music )] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Music )] ReadSchema: struct (20) FilterExecTransformer @@ -268,7 +268,7 @@ Output [4]: [cs_bill_addr_sk#19, cs_item_sk#20, cs_ext_sales_price#21, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#22), dynamicpruningexpression(cs_sold_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_bill_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -380,7 +380,7 @@ Output [4]: [ws_item_sk#33, ws_bill_addr_sk#34, ws_ext_sales_price#35, ws_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#36), dynamicpruningexpression(ws_sold_date_sk#36 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_addr_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_bill_addr_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -527,7 +527,7 @@ ColumnarBroadcastExchange (108) Output [3]: [d_date_sk#6, d_year#49, d_moy#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,9), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,9), *IsNotNull(d_date_sk)] ReadSchema: struct (105) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61.sf100/explain.txt index 7e035fe8b08..b515b5a80af 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61.sf100/explain.txt @@ -81,7 +81,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_promo_sk#4, ss_ex Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -111,7 +111,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_promo_sk#4, ss_ext Output [2]: [i_item_sk#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Jewelry ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Jewelry ), *IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -150,7 +150,7 @@ Input [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_promo_sk#4, ss_ext Output [4]: [p_promo_sk#11, p_channel_dmail#12, p_channel_email#13, p_channel_tv#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(Or(EqualTo(p_channel_dmail,Y),EqualTo(p_channel_email,Y)),EqualTo(p_channel_tv,Y)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(Or(EqualTo(p_channel_dmail,Y),EqualTo(p_channel_email,Y)),EqualTo(p_channel_tv,Y)), *IsNotNull(p_promo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -189,7 +189,7 @@ Input [5]: [ss_customer_sk#2, ss_store_sk#3, ss_promo_sk#4, ss_ext_sales_price#5 Output [2]: [s_store_sk#15, s_gmt_offset#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_gmt_offset), EqualTo(s_gmt_offset,-5.00), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_gmt_offset), *EqualTo(s_gmt_offset,-5.00), *IsNotNull(s_store_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -228,7 +228,7 @@ Input [4]: [ss_customer_sk#2, ss_store_sk#3, ss_ext_sales_price#5, s_store_sk#15 Output [2]: [c_customer_sk#17, c_current_addr_sk#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -239,7 +239,7 @@ Arguments: (isnotnull(c_customer_sk#17) AND isnotnull(c_current_addr_sk#18)) Output [2]: [ca_address_sk#19, ca_gmt_offset#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -338,7 +338,7 @@ Output [5]: [ss_item_sk#26, ss_customer_sk#27, ss_store_sk#28, ss_ext_sales_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#30), dynamicpruningexpression(ss_sold_date_sk#30 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -498,7 +498,7 @@ ColumnarBroadcastExchange (102) Output [3]: [d_date_sk#8, d_year#41, d_moy#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (99) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61/explain.txt index b63209f801d..4629a700eee 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q61/explain.txt @@ -85,7 +85,7 @@ Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_promo_sk#4, ss_ex Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Arguments: (((isnotnull(ss_store_sk#3) AND isnotnull(ss_promo_sk#4)) AND isnotnu Output [2]: [s_store_sk#8, s_gmt_offset#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_gmt_offset), EqualTo(s_gmt_offset,-5.00), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_gmt_offset), *EqualTo(s_gmt_offset,-5.00), *IsNotNull(s_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -135,7 +135,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_promo_sk#4, ss_ext Output [4]: [p_promo_sk#10, p_channel_dmail#11, p_channel_email#12, p_channel_tv#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(Or(EqualTo(p_channel_dmail,Y),EqualTo(p_channel_email,Y)),EqualTo(p_channel_tv,Y)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(Or(EqualTo(p_channel_dmail,Y),EqualTo(p_channel_email,Y)),EqualTo(p_channel_tv,Y)), *IsNotNull(p_promo_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -193,7 +193,7 @@ Input [5]: [ss_item_sk#1, ss_customer_sk#2, ss_ext_sales_price#5, ss_sold_date_s Output [2]: [c_customer_sk#15, c_current_addr_sk#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -228,7 +228,7 @@ Input [5]: [ss_item_sk#1, ss_customer_sk#2, ss_ext_sales_price#5, c_customer_sk# Output [2]: [ca_address_sk#17, ca_gmt_offset#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-5.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-5.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -267,7 +267,7 @@ Input [4]: [ss_item_sk#1, ss_ext_sales_price#5, c_current_addr_sk#16, ca_address Output [2]: [i_item_sk#19, i_category#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Jewelry ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Jewelry ), *IsNotNull(i_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -342,7 +342,7 @@ Output [5]: [ss_item_sk#26, ss_customer_sk#27, ss_store_sk#28, ss_ext_sales_pric Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#30), dynamicpruningexpression(ss_sold_date_sk#30 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -521,7 +521,7 @@ ColumnarBroadcastExchange (107) Output [3]: [d_date_sk#14, d_year#43, d_moy#44] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (104) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62.sf100/explain.txt index b79120500f7..7b5f9270e15 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62.sf100/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (46) Output [5]: [ws_ship_date_sk#1, ws_web_site_sk#2, ws_ship_mode_sk#3, ws_warehouse_sk#4, ws_sold_date_sk#5] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_warehouse_sk), IsNotNull(ws_ship_mode_sk), IsNotNull(ws_web_site_sk), IsNotNull(ws_ship_date_sk)] +PushedFilters: [*IsNotNull(ws_warehouse_sk), *IsNotNull(ws_ship_mode_sk), *IsNotNull(ws_web_site_sk), *IsNotNull(ws_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Arguments: (((isnotnull(ws_warehouse_sk#4) AND isnotnull(ws_ship_mode_sk#3)) AND Output [2]: [d_date_sk#6, d_month_seq#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -90,7 +90,7 @@ Input [6]: [ws_ship_date_sk#1, ws_web_site_sk#2, ws_ship_mode_sk#3, ws_warehouse Output [2]: [web_site_sk#8, web_name#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -125,7 +125,7 @@ Input [7]: [ws_ship_date_sk#1, ws_web_site_sk#2, ws_ship_mode_sk#3, ws_warehouse Output [2]: [sm_ship_mode_sk#10, sm_type#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/ship_mode] -PushedFilters: [IsNotNull(sm_ship_mode_sk)] +PushedFilters: [*IsNotNull(sm_ship_mode_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -160,7 +160,7 @@ Input [7]: [ws_ship_date_sk#1, ws_ship_mode_sk#3, ws_warehouse_sk#4, ws_sold_dat Output [2]: [w_warehouse_sk#12, w_warehouse_name#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (29) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62/explain.txt index 02661d834bc..7d4ac6a9b8b 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q62/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (46) Output [5]: [ws_ship_date_sk#1, ws_web_site_sk#2, ws_ship_mode_sk#3, ws_warehouse_sk#4, ws_sold_date_sk#5] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_warehouse_sk), IsNotNull(ws_ship_mode_sk), IsNotNull(ws_web_site_sk), IsNotNull(ws_ship_date_sk)] +PushedFilters: [*IsNotNull(ws_warehouse_sk), *IsNotNull(ws_ship_mode_sk), *IsNotNull(ws_web_site_sk), *IsNotNull(ws_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Arguments: (((isnotnull(ws_warehouse_sk#4) AND isnotnull(ws_ship_mode_sk#3)) AND Output [2]: [w_warehouse_sk#6, w_warehouse_name#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -86,7 +86,7 @@ Input [7]: [ws_ship_date_sk#1, ws_web_site_sk#2, ws_ship_mode_sk#3, ws_warehouse Output [2]: [sm_ship_mode_sk#8, sm_type#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/ship_mode] -PushedFilters: [IsNotNull(sm_ship_mode_sk)] +PushedFilters: [*IsNotNull(sm_ship_mode_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -121,7 +121,7 @@ Input [7]: [ws_ship_date_sk#1, ws_web_site_sk#2, ws_ship_mode_sk#3, ws_sold_date Output [2]: [web_site_sk#10, web_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -156,7 +156,7 @@ Input [7]: [ws_ship_date_sk#1, ws_web_site_sk#2, ws_sold_date_sk#5, w_warehouse_ Output [2]: [d_date_sk#12, d_month_seq#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (28) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63.sf100/explain.txt index 7f4785f5ac7..fa9958525f1 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63.sf100/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manager_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,refernece ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,refernece ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -70,7 +70,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -91,7 +91,7 @@ Input [6]: [i_item_sk#1, i_manager_id#5, ss_item_sk#10, ss_store_sk#11, ss_sales Output [1]: [s_store_sk#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#16, d_month_seq#27, d_moy#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63/explain.txt index 69d6f64b4a6..98852b39119 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q63/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (45) Output [5]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4, i_manager_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,refernece ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(And(In(i_category, [Books ,Children ,Electronics ]),In(i_class, [personal ,portable ,refernece ,self-help ])),In(i_brand, [exportiunivamalg #6 ,scholaramalgamalg #7 ,scholaramalgamalg #8 ,scholaramalgamalg #6 ])),And(And(In(i_category, [Men ,Music ,Women ]),In(i_class, [accessories ,classical ,fragrances ,pants ])),In(i_brand, [amalgimporto #9 ,edu packscholar #9 ,exportiimporto #9 ,importoamalg #9 ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -56,7 +56,7 @@ Output [4]: [ss_item_sk#10, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#13), dynamicpruningexpression(ss_sold_date_sk#13 IN dynamicpruning#14)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -110,7 +110,7 @@ Input [6]: [i_manager_id#5, ss_store_sk#11, ss_sales_price#12, ss_sold_date_sk#1 Output [1]: [s_store_sk#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -237,7 +237,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#15, d_month_seq#27, d_moy#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), IsNotNull(d_date_sk)] +PushedFilters: [*In(d_month_seq, [1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211]), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64.sf100/explain.txt index c5274e2b1e5..590f61e202e 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64.sf100/explain.txt @@ -263,7 +263,7 @@ Output [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_a Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#12), dynamicpruningexpression(ss_sold_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -295,7 +295,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [sr_item_sk#16, sr_ticket_number#17, sr_returned_date_sk#18] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (10) FilterExecTransformer @@ -337,7 +337,7 @@ Input [14]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [4]: [cs_item_sk#20, cs_order_number#21, cs_ext_list_price#22, cs_sold_date_sk#23] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_order_number)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_order_number)] ReadSchema: struct (20) FilterExecTransformer @@ -369,7 +369,7 @@ Input [3]: [cs_item_sk#20, cs_order_number#21, cs_ext_list_price#22] Output [6]: [cr_item_sk#25, cr_order_number#26, cr_refunded_cash#27, cr_reversed_charge#28, cr_store_credit#29, cr_returned_date_sk#30] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (28) FilterExecTransformer @@ -501,7 +501,7 @@ Input [13]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [s_store_sk#47, s_store_name#48, s_zip#49] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_zip)] ReadSchema: struct (60) FilterExecTransformer @@ -553,7 +553,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [6]: [c_customer_sk#51, c_current_cdemo_sk#52, c_current_hdemo_sk#53, c_current_addr_sk#54, c_first_shipto_date_sk#55, c_first_sales_date_sk#56] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_first_sales_date_sk), IsNotNull(c_first_shipto_date_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_first_sales_date_sk), *IsNotNull(c_first_shipto_date_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (73) FilterExecTransformer @@ -595,7 +595,7 @@ Input [18]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [2]: [d_date_sk#58, d_year#59] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (83) FilterExecTransformer @@ -666,7 +666,7 @@ Input [16]: [ss_item_sk#1, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_ Output [2]: [cd_demo_sk#63, cd_marital_status#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status)] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status)] ReadSchema: struct (101) FilterExecTransformer @@ -744,7 +744,7 @@ Input [18]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [1]: [p_promo_sk#69] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (121) FilterExecTransformer @@ -779,7 +779,7 @@ Input [15]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [2]: [hd_demo_sk#70, hd_income_band_sk#71] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)] +PushedFilters: [*IsNotNull(hd_demo_sk), *IsNotNull(hd_income_band_sk)] ReadSchema: struct (129) FilterExecTransformer @@ -850,7 +850,7 @@ Input [13]: [ss_item_sk#1, ss_addr_sk#5, ss_wholesale_cost#9, ss_list_price#10, Output [5]: [ca_address_sk#75, ca_street_number#76, ca_street_name#77, ca_city#78, ca_zip#79] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (147) FilterExecTransformer @@ -928,7 +928,7 @@ Input [21]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [1]: [ib_income_band_sk#87] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/income_band] -PushedFilters: [IsNotNull(ib_income_band_sk)] +PushedFilters: [*IsNotNull(ib_income_band_sk)] ReadSchema: struct (167) FilterExecTransformer @@ -982,7 +982,7 @@ Input [19]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [4]: [i_item_sk#89, i_current_price#90, i_color#91, i_product_name#92] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), *GreaterThanOrEqual(i_current_price,64.00), *LessThanOrEqual(i_current_price,74.00), *GreaterThanOrEqual(i_current_price,65.00), *LessThanOrEqual(i_current_price,79.00), *IsNotNull(i_item_sk)] ReadSchema: struct (180) FilterExecTransformer @@ -1078,7 +1078,7 @@ Output [12]: [ss_item_sk#127, ss_customer_sk#128, ss_cdemo_sk#129, ss_hdemo_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#138), dynamicpruningexpression(ss_sold_date_sk#138 IN dynamicpruning#139)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (203) FilterExecTransformer @@ -1626,7 +1626,7 @@ VeloxColumnarToRow (355) Output [3]: [i_item_sk#89, i_current_price#90, i_color#91] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), *GreaterThanOrEqual(i_current_price,64.00), *LessThanOrEqual(i_current_price,74.00), *GreaterThanOrEqual(i_current_price,65.00), *LessThanOrEqual(i_current_price,79.00), *IsNotNull(i_item_sk)] ReadSchema: struct (345) FilterExecTransformer @@ -1685,7 +1685,7 @@ ColumnarBroadcastExchange (359) Output [2]: [d_date_sk#45, d_year#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (357) FilterExecTransformer @@ -1724,7 +1724,7 @@ ColumnarBroadcastExchange (363) Output [2]: [d_date_sk#144, d_year#145] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (361) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64/explain.txt index 7f52bda6330..e8f6fba5f3f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q64/explain.txt @@ -219,7 +219,7 @@ Output [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_a Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#12), dynamicpruningexpression(ss_sold_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -244,7 +244,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [sr_item_sk#14, sr_ticket_number#15, sr_returned_date_sk#16] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (8) FilterExecTransformer @@ -286,7 +286,7 @@ Input [11]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [4]: [cs_item_sk#18, cs_order_number#19, cs_ext_list_price#20, cs_sold_date_sk#21] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_order_number)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_order_number)] ReadSchema: struct (18) FilterExecTransformer @@ -318,7 +318,7 @@ Input [3]: [cs_item_sk#18, cs_order_number#19, cs_ext_list_price#20] Output [6]: [cr_item_sk#23, cr_order_number#24, cr_refunded_cash#25, cr_reversed_charge#26, cr_store_credit#27, cr_returned_date_sk#28] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (26) FilterExecTransformer @@ -436,7 +436,7 @@ Input [13]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [s_store_sk#45, s_store_name#46, s_zip#47] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_zip)] ReadSchema: struct (54) FilterExecTransformer @@ -471,7 +471,7 @@ Input [14]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [6]: [c_customer_sk#48, c_current_cdemo_sk#49, c_current_hdemo_sk#50, c_current_addr_sk#51, c_first_shipto_date_sk#52, c_first_sales_date_sk#53] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_first_sales_date_sk), IsNotNull(c_first_shipto_date_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_first_sales_date_sk), *IsNotNull(c_first_shipto_date_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -506,7 +506,7 @@ Input [18]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [2]: [d_date_sk#54, d_year#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -560,7 +560,7 @@ Input [18]: [ss_item_sk#1, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_ Output [2]: [cd_demo_sk#58, cd_marital_status#59] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status)] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status)] ReadSchema: struct (83) FilterExecTransformer @@ -614,7 +614,7 @@ Input [18]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [1]: [p_promo_sk#62] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (96) FilterExecTransformer @@ -649,7 +649,7 @@ Input [15]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [2]: [hd_demo_sk#63, hd_income_band_sk#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)] +PushedFilters: [*IsNotNull(hd_demo_sk), *IsNotNull(hd_income_band_sk)] ReadSchema: struct (104) FilterExecTransformer @@ -703,7 +703,7 @@ Input [15]: [ss_item_sk#1, ss_addr_sk#5, ss_wholesale_cost#9, ss_list_price#10, Output [5]: [ca_address_sk#67, ca_street_number#68, ca_street_name#69, ca_city#70, ca_zip#71] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (117) FilterExecTransformer @@ -757,7 +757,7 @@ Input [21]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [1]: [ib_income_band_sk#77] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/income_band] -PushedFilters: [IsNotNull(ib_income_band_sk)] +PushedFilters: [*IsNotNull(ib_income_band_sk)] ReadSchema: struct (130) FilterExecTransformer @@ -811,7 +811,7 @@ Input [19]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [4]: [i_item_sk#79, i_current_price#80, i_color#81, i_product_name#82] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), *GreaterThanOrEqual(i_current_price,64.00), *LessThanOrEqual(i_current_price,74.00), *GreaterThanOrEqual(i_current_price,65.00), *LessThanOrEqual(i_current_price,79.00), *IsNotNull(i_item_sk)] ReadSchema: struct (143) FilterExecTransformer @@ -879,7 +879,7 @@ Output [12]: [ss_item_sk#108, ss_customer_sk#109, ss_cdemo_sk#110, ss_hdemo_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#119), dynamicpruningexpression(ss_sold_date_sk#119 IN dynamicpruning#120)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (159) FilterExecTransformer @@ -904,7 +904,7 @@ Input [12]: [ss_item_sk#108, ss_customer_sk#109, ss_cdemo_sk#110, ss_hdemo_sk#11 Output [3]: [sr_item_sk#121, sr_ticket_number#122, sr_returned_date_sk#123] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (165) FilterExecTransformer @@ -1343,7 +1343,7 @@ ColumnarBroadcastExchange (278) Output [2]: [d_date_sk#43, d_year#44] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (276) FilterExecTransformer @@ -1368,7 +1368,7 @@ ColumnarBroadcastExchange (282) Output [2]: [d_date_sk#135, d_year#136] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (280) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65.sf100/explain.txt index 9677c4c4f53..8c04063ff62 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65.sf100/explain.txt @@ -63,7 +63,7 @@ Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -137,7 +137,7 @@ Output [4]: [ss_item_sk#13, ss_store_sk#14, ss_sales_price#15, ss_sold_date_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#16), dynamicpruningexpression(ss_sold_date_sk#16 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (19) FilterExecTransformer @@ -269,7 +269,7 @@ Input [5]: [ss_store_sk#2, ss_item_sk#1, revenue#12, ss_store_sk#14, ave#30] Output [2]: [s_store_sk#31, s_store_name#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (50) FilterExecTransformer @@ -321,7 +321,7 @@ Input [3]: [ss_item_sk#1, revenue#12, s_store_name#32] Output [5]: [i_item_sk#34, i_item_desc#35, i_current_price#36, i_wholesale_cost#37, i_brand#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (63) FilterExecTransformer @@ -383,7 +383,7 @@ ColumnarBroadcastExchange (79) Output [2]: [d_date_sk#6, d_month_seq#40] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1176), LessThanOrEqual(d_month_seq,1187), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1176), *LessThanOrEqual(d_month_seq,1187), *IsNotNull(d_date_sk)] ReadSchema: struct (76) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65/explain.txt index 660366ed761..9e4446697c5 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q65/explain.txt @@ -57,7 +57,7 @@ VeloxColumnarToRow (67) Output [2]: [s_store_sk#1, s_store_name#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -69,7 +69,7 @@ Output [4]: [ss_item_sk#3, ss_store_sk#4, ss_sales_price#5, ss_sold_date_sk#6] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#6), dynamicpruningexpression(ss_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -166,7 +166,7 @@ Input [5]: [s_store_sk#1, s_store_name#2, ss_store_sk#4, ss_item_sk#3, revenue#1 Output [5]: [i_item_sk#15, i_item_desc#16, i_current_price#17, i_wholesale_cost#18, i_brand#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -202,7 +202,7 @@ Output [4]: [ss_item_sk#20, ss_store_sk#21, ss_sales_price#22, ss_sold_date_sk#2 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#23), dynamicpruningexpression(ss_sold_date_sk#23 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -354,7 +354,7 @@ ColumnarBroadcastExchange (72) Output [2]: [d_date_sk#8, d_month_seq#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1176), LessThanOrEqual(d_month_seq,1187), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1176), *LessThanOrEqual(d_month_seq,1187), *IsNotNull(d_date_sk)] ReadSchema: struct (69) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66.sf100/explain.txt index 727a6261d50..8736e3c8199 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66.sf100/explain.txt @@ -70,7 +70,7 @@ Output [7]: [ws_sold_time_sk#1, ws_ship_mode_sk#2, ws_warehouse_sk#3, ws_quantit Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#7), dynamicpruningexpression(ws_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_warehouse_sk), IsNotNull(ws_sold_time_sk), IsNotNull(ws_ship_mode_sk)] +PushedFilters: [*IsNotNull(ws_warehouse_sk), *IsNotNull(ws_sold_time_sk), *IsNotNull(ws_ship_mode_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Arguments: ((isnotnull(ws_warehouse_sk#3) AND isnotnull(ws_sold_time_sk#1)) AND Output [2]: [sm_ship_mode_sk#9, sm_carrier#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/ship_mode] -PushedFilters: [In(sm_carrier, [BARIAN ,DHL ]), IsNotNull(sm_ship_mode_sk)] +PushedFilters: [*In(sm_carrier, [BARIAN ,DHL ]), *IsNotNull(sm_ship_mode_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -120,7 +120,7 @@ Input [8]: [ws_sold_time_sk#1, ws_ship_mode_sk#2, ws_warehouse_sk#3, ws_quantity Output [2]: [t_time_sk#11, t_time#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_time), GreaterThanOrEqual(t_time,30838), LessThanOrEqual(t_time,59638), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_time), *GreaterThanOrEqual(t_time,30838), *LessThanOrEqual(t_time,59638), *IsNotNull(t_time_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -178,7 +178,7 @@ Input [8]: [ws_warehouse_sk#3, ws_quantity#4, ws_ext_sales_price#5, ws_net_paid# Output [7]: [w_warehouse_sk#16, w_warehouse_name#17, w_warehouse_sq_ft#18, w_city#19, w_county#20, w_state#21, w_country#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -257,7 +257,7 @@ Output [7]: [cs_sold_time_sk#194, cs_ship_mode_sk#195, cs_warehouse_sk#196, cs_q Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#200), dynamicpruningexpression(cs_sold_date_sk#200 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_warehouse_sk), IsNotNull(cs_sold_time_sk), IsNotNull(cs_ship_mode_sk)] +PushedFilters: [*IsNotNull(cs_warehouse_sk), *IsNotNull(cs_sold_time_sk), *IsNotNull(cs_ship_mode_sk)] ReadSchema: struct (45) FilterExecTransformer @@ -426,7 +426,7 @@ ColumnarBroadcastExchange (87) Output [3]: [d_date_sk#13, d_year#14, d_moy#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (85) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66/explain.txt index a5329e51cc3..594760f7829 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q66/explain.txt @@ -70,7 +70,7 @@ Output [7]: [ws_sold_time_sk#1, ws_ship_mode_sk#2, ws_warehouse_sk#3, ws_quantit Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#7), dynamicpruningexpression(ws_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_warehouse_sk), IsNotNull(ws_sold_time_sk), IsNotNull(ws_ship_mode_sk)] +PushedFilters: [*IsNotNull(ws_warehouse_sk), *IsNotNull(ws_sold_time_sk), *IsNotNull(ws_ship_mode_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Arguments: ((isnotnull(ws_warehouse_sk#3) AND isnotnull(ws_sold_time_sk#1)) AND Output [7]: [w_warehouse_sk#9, w_warehouse_name#10, w_warehouse_sq_ft#11, w_city#12, w_county#13, w_state#14, w_country#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -135,7 +135,7 @@ Input [15]: [ws_sold_time_sk#1, ws_ship_mode_sk#2, ws_quantity#4, ws_ext_sales_p Output [2]: [t_time_sk#19, t_time#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_time), GreaterThanOrEqual(t_time,30838), LessThanOrEqual(t_time,59638), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_time), *GreaterThanOrEqual(t_time,30838), *LessThanOrEqual(t_time,59638), *IsNotNull(t_time_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -174,7 +174,7 @@ Input [14]: [ws_sold_time_sk#1, ws_ship_mode_sk#2, ws_quantity#4, ws_ext_sales_p Output [2]: [sm_ship_mode_sk#21, sm_carrier#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/ship_mode] -PushedFilters: [In(sm_carrier, [BARIAN ,DHL ]), IsNotNull(sm_ship_mode_sk)] +PushedFilters: [*In(sm_carrier, [BARIAN ,DHL ]), *IsNotNull(sm_ship_mode_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -257,7 +257,7 @@ Output [7]: [cs_sold_time_sk#194, cs_ship_mode_sk#195, cs_warehouse_sk#196, cs_q Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#200), dynamicpruningexpression(cs_sold_date_sk#200 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_warehouse_sk), IsNotNull(cs_sold_time_sk), IsNotNull(cs_ship_mode_sk)] +PushedFilters: [*IsNotNull(cs_warehouse_sk), *IsNotNull(cs_sold_time_sk), *IsNotNull(cs_ship_mode_sk)] ReadSchema: struct (45) FilterExecTransformer @@ -426,7 +426,7 @@ ColumnarBroadcastExchange (87) Output [3]: [d_date_sk#16, d_year#17, d_moy#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (85) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67.sf100/explain.txt index d9f598dde50..f8f1fd66799 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67.sf100/explain.txt @@ -49,7 +49,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -79,7 +79,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_sol Output [2]: [s_store_sk#11, s_store_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -131,7 +131,7 @@ Input [7]: [ss_item_sk#1, ss_quantity#3, ss_sales_price#4, d_year#8, d_moy#9, d_ Output [5]: [i_item_sk#14, i_brand#15, i_class#16, i_category#17, i_product_name#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -281,7 +281,7 @@ ColumnarBroadcastExchange (60) Output [5]: [d_date_sk#7, d_month_seq#39, d_year#8, d_moy#9, d_qoy#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (57) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67/explain.txt index 251bc59c566..e428e69b87f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q67/explain.txt @@ -44,7 +44,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_sol Output [2]: [s_store_sk#11, s_store_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -109,7 +109,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, d_year Output [5]: [i_item_sk#13, i_brand#14, i_class#15, i_category#16, i_product_name#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -252,7 +252,7 @@ ColumnarBroadcastExchange (53) Output [5]: [d_date_sk#7, d_month_seq#37, d_year#8, d_moy#9, d_qoy#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (50) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68.sf100/explain.txt index b951a6e7793..e84c21cccbe 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68.sf100/explain.txt @@ -58,7 +58,7 @@ VeloxColumnarToRow (70) Output [4]: [c_customer_sk#1, c_current_addr_sk#2, c_first_name#3, c_last_name#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [4]: [c_customer_sk#1, c_current_addr_sk#2, c_first_name#3, c_last_name#4] Output [2]: [ca_address_sk#6, ca_city#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (10) FilterExecTransformer @@ -150,7 +150,7 @@ Output [9]: [ss_customer_sk#10, ss_hdemo_sk#11, ss_addr_sk#12, ss_store_sk#13, s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#18), dynamicpruningexpression(ss_sold_date_sk#18 IN dynamicpruning#19)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -180,7 +180,7 @@ Input [10]: [ss_customer_sk#10, ss_hdemo_sk#11, ss_addr_sk#12, ss_store_sk#13, s Output [2]: [s_store_sk#21, s_city#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Fairview,Midway]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Fairview,Midway]), *IsNotNull(s_store_sk)] ReadSchema: struct (32) FilterExecTransformer @@ -219,7 +219,7 @@ Input [9]: [ss_customer_sk#10, ss_hdemo_sk#11, ss_addr_sk#12, ss_store_sk#13, ss Output [3]: [hd_demo_sk#23, hd_dep_count#24, hd_vehicle_count#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -352,7 +352,7 @@ ColumnarBroadcastExchange (75) Output [3]: [d_date_sk#20, d_year#40, d_dom#41] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (72) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68/explain.txt index 82654b55b08..ec6c277320a 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q68/explain.txt @@ -51,7 +51,7 @@ Output [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#9), dynamicpruningexpression(ss_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Input [10]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Output [2]: [s_store_sk#12, s_city#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_city, [Fairview,Midway]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_city, [Fairview,Midway]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -120,7 +120,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#14, hd_dep_count#15, hd_vehicle_count#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,4),EqualTo(hd_vehicle_count,3)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -159,7 +159,7 @@ Input [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_ticket_number#5, s Output [2]: [ca_address_sk#17, ca_city#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_city)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_city)] ReadSchema: struct (27) FilterExecTransformer @@ -233,7 +233,7 @@ Input [7]: [ss_ticket_number#5, ss_customer_sk#1, ss_addr_sk#3, ca_city#18, sum( Output [4]: [c_customer_sk#36, c_current_addr_sk#37, c_first_name#38, c_last_name#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -307,7 +307,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#11, d_year#42, d_dom#43] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69.sf100/explain.txt index 3bff9222f5c..9b219acf806 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69.sf100/explain.txt @@ -61,7 +61,7 @@ VeloxColumnarToRow (74) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -244,7 +244,7 @@ Input [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#19, ca_state#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [GA,KY,NM]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [GA,KY,NM]), *IsNotNull(ca_address_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -297,7 +297,7 @@ Input [1]: [c_current_cdemo_sk#2] Output [6]: [cd_demo_sk#21, cd_gender#22, cd_marital_status#23, cd_education_status#24, cd_purchase_estimate#25, cd_credit_rating#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (60) FilterExecTransformer @@ -382,7 +382,7 @@ VeloxColumnarToRow (86) Output [2]: [ca_address_sk#19, ca_state#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [GA,KY,NM]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [GA,KY,NM]), *IsNotNull(ca_address_sk)] ReadSchema: struct (76) FilterExecTransformer @@ -454,7 +454,7 @@ ColumnarBroadcastExchange (91) Output [3]: [d_date_sk#9, d_year#39, d_moy#40] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,6), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,6), *IsNotNull(d_date_sk)] ReadSchema: struct (88) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69/explain.txt index 6eab87393ff..2d670b62cde 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q69/explain.txt @@ -54,7 +54,7 @@ VeloxColumnarToRow (65) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -207,7 +207,7 @@ Input [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#14, ca_state#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [GA,KY,NM]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [GA,KY,NM]), *IsNotNull(ca_address_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -246,7 +246,7 @@ Input [3]: [c_current_cdemo_sk#2, c_current_addr_sk#3, ca_address_sk#14] Output [6]: [cd_demo_sk#16, cd_gender#17, cd_marital_status#18, cd_education_status#19, cd_purchase_estimate#20, cd_credit_rating#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -340,7 +340,7 @@ ColumnarBroadcastExchange (70) Output [3]: [d_date_sk#7, d_year#29, d_moy#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,6), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,6), *IsNotNull(d_date_sk)] ReadSchema: struct (67) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7.sf100/explain.txt index 88364517ab3..dca460a5180 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7.sf100/explain.txt @@ -41,7 +41,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_promo_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_item_sk#1)) AND isnotnull Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_marital_status,S), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_marital_status,S), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -91,7 +91,7 @@ Input [9]: [ss_item_sk#1, ss_cdemo_sk#2, ss_promo_sk#3, ss_quantity#4, ss_list_p Output [3]: [p_promo_sk#14, p_channel_email#15, p_channel_event#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), *IsNotNull(p_promo_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -149,7 +149,7 @@ Input [7]: [ss_item_sk#1, ss_quantity#4, ss_list_price#5, ss_sales_price#6, ss_c Output [2]: [i_item_sk#18, i_item_id#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [2]: [d_date_sk#17, d_year#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7/explain.txt index 01f2a7c9c11..09bc135d405 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q7/explain.txt @@ -41,7 +41,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_promo_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -52,7 +52,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_item_sk#1)) AND isnotnull Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_marital_status,S), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_marital_status,S), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -110,7 +110,7 @@ Input [8]: [ss_item_sk#1, ss_promo_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#15, i_item_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -145,7 +145,7 @@ Input [8]: [ss_item_sk#1, ss_promo_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [3]: [p_promo_sk#17, p_channel_email#18, p_channel_event#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), IsNotNull(p_promo_sk)] +PushedFilters: [*Or(EqualTo(p_channel_email,N),EqualTo(p_channel_event,N)), *IsNotNull(p_promo_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [2]: [d_date_sk#14, d_year#48] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70.sf100/explain.txt index fba1f4cc701..67e4ce474ae 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70.sf100/explain.txt @@ -63,7 +63,7 @@ Output [3]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -93,7 +93,7 @@ Input [4]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3, d_date_sk#5] Output [3]: [s_store_sk#6, s_county#7, s_state#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -105,7 +105,7 @@ Output [3]: [ss_store_sk#9, ss_net_profit#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (11) FilterExecTransformer @@ -135,7 +135,7 @@ Input [4]: [ss_store_sk#9, ss_net_profit#10, ss_sold_date_sk#11, d_date_sk#12] Output [2]: [s_store_sk#13, s_state#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -373,7 +373,7 @@ ColumnarBroadcastExchange (77) Output [2]: [d_date_sk#5, d_month_seq#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (74) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70/explain.txt index 366294288fd..070b917501f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q70/explain.txt @@ -63,7 +63,7 @@ Output [3]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -93,7 +93,7 @@ Input [4]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3, d_date_sk#5] Output [3]: [s_store_sk#6, s_county#7, s_state#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -105,7 +105,7 @@ Output [3]: [ss_store_sk#9, ss_net_profit#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (11) FilterExecTransformer @@ -116,7 +116,7 @@ Arguments: isnotnull(ss_store_sk#9) Output [2]: [s_store_sk#12, s_state#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -373,7 +373,7 @@ ColumnarBroadcastExchange (77) Output [2]: [d_date_sk#5, d_month_seq#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (74) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71.sf100/explain.txt index 09b87109829..d66a7279464 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71.sf100/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (62) Output [4]: [i_item_sk#1, i_brand_id#2, i_brand#3, i_manager_id#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Output [4]: [ws_sold_time_sk#5, ws_item_sk#6, ws_ext_sales_price#7, ws_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#8), dynamicpruningexpression(ws_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_sold_time_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_sold_time_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -116,7 +116,7 @@ Output [4]: [cs_sold_time_sk#14, cs_item_sk#15, cs_ext_sales_price#16, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#17), dynamicpruningexpression(cs_sold_date_sk#17 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_sold_time_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_sold_time_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -151,7 +151,7 @@ Output [4]: [ss_sold_time_sk#22, ss_item_sk#23, ss_ext_sales_price#24, ss_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#25), dynamicpruningexpression(ss_sold_date_sk#25 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_sold_time_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_sold_time_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -204,7 +204,7 @@ Input [6]: [i_item_sk#1, i_brand_id#2, i_brand#3, ext_price#11, sold_item_sk#12, Output [4]: [t_time_sk#30, t_hour#31, t_minute#32, t_meal_time#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [Or(EqualTo(t_meal_time,breakfast ),EqualTo(t_meal_time,dinner )), IsNotNull(t_time_sk)] +PushedFilters: [*Or(EqualTo(t_meal_time,breakfast ),EqualTo(t_meal_time,dinner )), *IsNotNull(t_time_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -319,7 +319,7 @@ ColumnarBroadcastExchange (67) Output [3]: [d_date_sk#10, d_year#42, d_moy#43] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (64) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71/explain.txt index 09b87109829..d66a7279464 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q71/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (62) Output [4]: [i_item_sk#1, i_brand_id#2, i_brand#3, i_manager_id#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manager_id), EqualTo(i_manager_id,1), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manager_id), *EqualTo(i_manager_id,1), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -81,7 +81,7 @@ Output [4]: [ws_sold_time_sk#5, ws_item_sk#6, ws_ext_sales_price#7, ws_sold_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#8), dynamicpruningexpression(ws_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_sold_time_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_sold_time_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -116,7 +116,7 @@ Output [4]: [cs_sold_time_sk#14, cs_item_sk#15, cs_ext_sales_price#16, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#17), dynamicpruningexpression(cs_sold_date_sk#17 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_sold_time_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_sold_time_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -151,7 +151,7 @@ Output [4]: [ss_sold_time_sk#22, ss_item_sk#23, ss_ext_sales_price#24, ss_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#25), dynamicpruningexpression(ss_sold_date_sk#25 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_sold_time_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_sold_time_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -204,7 +204,7 @@ Input [6]: [i_item_sk#1, i_brand_id#2, i_brand#3, ext_price#11, sold_item_sk#12, Output [4]: [t_time_sk#30, t_hour#31, t_minute#32, t_meal_time#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [Or(EqualTo(t_meal_time,breakfast ),EqualTo(t_meal_time,dinner )), IsNotNull(t_time_sk)] +PushedFilters: [*Or(EqualTo(t_meal_time,breakfast ),EqualTo(t_meal_time,dinner )), *IsNotNull(t_time_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -319,7 +319,7 @@ ColumnarBroadcastExchange (67) Output [3]: [d_date_sk#10, d_year#42, d_moy#43] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_moy), IsNotNull(d_year), EqualTo(d_moy,11), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_moy), *IsNotNull(d_year), *EqualTo(d_moy,11), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (64) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72.sf100/explain.txt index 6cb6a816629..b9f9857a4fc 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72.sf100/explain.txt @@ -85,7 +85,7 @@ Output [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#8), dynamicpruningexpression(cs_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_quantity), IsNotNull(cs_item_sk), IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_hdemo_sk), IsNotNull(cs_ship_date_sk)] +PushedFilters: [*IsNotNull(cs_quantity), *IsNotNull(cs_item_sk), *IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_hdemo_sk), *IsNotNull(cs_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Arguments: ((((isnotnull(cs_quantity#7) AND isnotnull(cs_item_sk#4)) AND isnotnu Output [2]: [hd_demo_sk#10, hd_buy_potential#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_buy_potential), EqualTo(hd_buy_potential,>10000 ), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_buy_potential), *EqualTo(hd_buy_potential,>10000 ), *IsNotNull(hd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -135,7 +135,7 @@ Input [9]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_s Output [2]: [cd_demo_sk#12, cd_marital_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_marital_status), EqualTo(cd_marital_status,D), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_marital_status), *EqualTo(cd_marital_status,D), *IsNotNull(cd_demo_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -174,7 +174,7 @@ Input [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#4, cs_promo_sk#5, Output [2]: [d_date_sk#14, d_date#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *IsNotNull(d_date_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -226,7 +226,7 @@ Input [6]: [cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_quantity#7, cs_so Output [2]: [i_item_sk#17, i_item_desc#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -305,7 +305,7 @@ Output [4]: [inv_item_sk#25, inv_warehouse_sk#26, inv_quantity_on_hand#27, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#28), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (55) FilterExecTransformer @@ -316,7 +316,7 @@ Arguments: ((isnotnull(inv_quantity_on_hand#27) AND isnotnull(inv_item_sk#25)) A Output [2]: [w_warehouse_sk#29, w_warehouse_name#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (57) FilterExecTransformer @@ -378,7 +378,7 @@ Input [11]: [cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_quantity#7, i_it Output [1]: [p_promo_sk#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -430,7 +430,7 @@ Input [5]: [cs_item_sk#4, cs_order_number#6, w_warehouse_name#30, i_item_desc#18 Output [3]: [cr_item_sk#34, cr_order_number#35, cr_returned_date_sk#36] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (85) FilterExecTransformer @@ -537,7 +537,7 @@ ColumnarBroadcastExchange (118) Output [4]: [d_date_sk#20, d_date#21, d_week_seq#22, d_year#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk), IsNotNull(d_week_seq), IsNotNull(d_date)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk), *IsNotNull(d_week_seq), *IsNotNull(d_date)] ReadSchema: struct (107) FilterExecTransformer @@ -566,7 +566,7 @@ Input [3]: [d_date_sk#20, d_date#21, d_week_seq#22] Output [2]: [d_date_sk#23, d_week_seq#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *IsNotNull(d_date_sk)] ReadSchema: struct (114) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72/explain.txt index 3a539d60cf9..664eeee3fb5 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q72/explain.txt @@ -82,7 +82,7 @@ Output [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#8), dynamicpruningexpression(cs_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_quantity), IsNotNull(cs_item_sk), IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_hdemo_sk), IsNotNull(cs_ship_date_sk)] +PushedFilters: [*IsNotNull(cs_quantity), *IsNotNull(cs_item_sk), *IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_hdemo_sk), *IsNotNull(cs_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -94,7 +94,7 @@ Output [4]: [inv_item_sk#10, inv_warehouse_sk#11, inv_quantity_on_hand#12, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#13)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -129,7 +129,7 @@ Input [12]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [w_warehouse_sk#14, w_warehouse_name#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -164,7 +164,7 @@ Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [i_item_sk#16, i_item_desc#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -199,7 +199,7 @@ Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [cd_demo_sk#18, cd_marital_status#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_marital_status), EqualTo(cd_marital_status,D), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_marital_status), *EqualTo(cd_marital_status,D), *IsNotNull(cd_demo_sk)] ReadSchema: struct (28) FilterExecTransformer @@ -238,7 +238,7 @@ Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [hd_demo_sk#20, hd_buy_potential#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_buy_potential), EqualTo(hd_buy_potential,>10000 ), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_buy_potential), *EqualTo(hd_buy_potential,>10000 ), *IsNotNull(hd_demo_sk)] ReadSchema: struct (37) FilterExecTransformer @@ -296,7 +296,7 @@ Input [11]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, Output [2]: [d_date_sk#25, d_week_seq#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *IsNotNull(d_date_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -331,7 +331,7 @@ Input [11]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, Output [2]: [d_date_sk#27, d_date#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *IsNotNull(d_date_sk)] ReadSchema: struct (59) FilterExecTransformer @@ -366,7 +366,7 @@ Input [10]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, Output [1]: [p_promo_sk#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (67) FilterExecTransformer @@ -418,7 +418,7 @@ Input [5]: [cs_item_sk#4, cs_order_number#6, w_warehouse_name#15, i_item_desc#17 Output [3]: [cr_item_sk#31, cr_order_number#32, cr_returned_date_sk#33] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (80) FilterExecTransformer @@ -519,7 +519,7 @@ ColumnarBroadcastExchange (105) Output [4]: [d_date_sk#22, d_date#23, d_week_seq#24, d_year#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk), IsNotNull(d_week_seq), IsNotNull(d_date)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk), *IsNotNull(d_week_seq), *IsNotNull(d_date)] ReadSchema: struct (102) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73.sf100/explain.txt index 4f7d5d8a520..c1dcbd3d6a0 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73.sf100/explain.txt @@ -50,7 +50,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -80,7 +80,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_county, [Bronx County,Franklin Parish,Orange County,Williamson County]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_county, [Bronx County,Franklin Parish,Orange County,Williamson County]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -119,7 +119,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -218,7 +218,7 @@ Input [3]: [ss_ticket_number#4, ss_customer_sk#1, cnt#18] Output [5]: [c_customer_sk#20, c_salutation#21, c_first_name#22, c_last_name#23, c_preferred_cust_flag#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -297,7 +297,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#7, d_year#26, d_dom#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73/explain.txt index e7b1d36cd08..72e5c950ea1 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q73/explain.txt @@ -44,7 +44,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [In(s_county, [Bronx County,Franklin Parish,Orange County,Williamson County]), IsNotNull(s_store_sk)] +PushedFilters: [*In(s_county, [Bronx County,Franklin Parish,Orange County,Williamson County]), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -113,7 +113,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -191,7 +191,7 @@ Arguments: ((cnt#18 >= 1) AND (cnt#18 <= 5)) Output [5]: [c_customer_sk#19, c_salutation#20, c_first_name#21, c_last_name#22, c_preferred_cust_flag#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -263,7 +263,7 @@ ColumnarBroadcastExchange (55) Output [3]: [d_date_sk#7, d_year#24, d_dom#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dom), GreaterThanOrEqual(d_dom,1), LessThanOrEqual(d_dom,2), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dom), *GreaterThanOrEqual(d_dom,1), *LessThanOrEqual(d_dom,2), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74.sf100/explain.txt index 1865baa904e..ea96934b486 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74.sf100/explain.txt @@ -113,7 +113,7 @@ Output [3]: [ss_customer_sk#1, ss_net_paid#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -160,7 +160,7 @@ Input [3]: [ss_customer_sk#1, ss_net_paid#2, d_year#6] Output [4]: [c_customer_sk#8, c_customer_id#9, c_first_name#10, c_last_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (14) FilterExecTransformer @@ -267,7 +267,7 @@ Output [3]: [ss_customer_sk#21, ss_net_paid#22, ss_sold_date_sk#23] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#23), dynamicpruningexpression(ss_sold_date_sk#23 IN dynamicpruning#24)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -396,7 +396,7 @@ Output [3]: [ws_bill_customer_sk#41, ws_net_paid#42, ws_sold_date_sk#43] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#43), dynamicpruningexpression(ws_sold_date_sk#43 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -537,7 +537,7 @@ Output [3]: [ws_bill_customer_sk#59, ws_net_paid#60, ws_sold_date_sk#61] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#61), dynamicpruningexpression(ws_sold_date_sk#61 IN dynamicpruning#24)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (107) FilterExecTransformer @@ -688,7 +688,7 @@ ColumnarBroadcastExchange (145) Output [2]: [d_date_sk#5, d_year#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (143) FilterExecTransformer @@ -713,7 +713,7 @@ ColumnarBroadcastExchange (149) Output [2]: [d_date_sk#25, d_year#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (147) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74/explain.txt index a38b744c0bf..ea087db668d 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q74/explain.txt @@ -96,7 +96,7 @@ VeloxColumnarToRow (118) Output [4]: [c_customer_sk#1, c_customer_id#2, c_first_name#3, c_last_name#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (2) FilterExecTransformer @@ -108,7 +108,7 @@ Output [3]: [ss_customer_sk#5, ss_net_paid#6, ss_sold_date_sk#7] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -205,7 +205,7 @@ Arguments: (isnotnull(year_total#17) AND (year_total#17 > 0.00)) Output [4]: [c_customer_sk#18, c_customer_id#19, c_first_name#20, c_last_name#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (27) FilterExecTransformer @@ -217,7 +217,7 @@ Output [3]: [ss_customer_sk#22, ss_net_paid#23, ss_sold_date_sk#24] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#24), dynamicpruningexpression(ss_sold_date_sk#24 IN dynamicpruning#25)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -330,7 +330,7 @@ Join condition: None Output [4]: [c_customer_sk#36, c_customer_id#37, c_first_name#38, c_last_name#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (56) FilterExecTransformer @@ -342,7 +342,7 @@ Output [3]: [ws_bill_customer_sk#40, ws_net_paid#41, ws_sold_date_sk#42] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#42), dynamicpruningexpression(ws_sold_date_sk#42 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (58) FilterExecTransformer @@ -463,7 +463,7 @@ Input [8]: [customer_id#16, year_total#17, customer_id#32, customer_first_name#3 Output [4]: [c_customer_sk#52, c_customer_id#53, c_first_name#54, c_last_name#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (87) FilterExecTransformer @@ -475,7 +475,7 @@ Output [3]: [ws_bill_customer_sk#56, ws_net_paid#57, ws_sold_date_sk#58] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#58), dynamicpruningexpression(ws_sold_date_sk#58 IN dynamicpruning#25)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (89) FilterExecTransformer @@ -611,7 +611,7 @@ ColumnarBroadcastExchange (122) Output [2]: [d_date_sk#9, d_year#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (120) FilterExecTransformer @@ -636,7 +636,7 @@ ColumnarBroadcastExchange (126) Output [2]: [d_date_sk#26, d_year#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (124) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75.sf100/explain.txt index cb552ad62dc..21907aa6177 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75.sf100/explain.txt @@ -169,7 +169,7 @@ Output [5]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -180,7 +180,7 @@ Arguments: isnotnull(cs_item_sk#1) Output [6]: [i_item_sk#7, i_brand_id#8, i_class_id#9, i_category_id#10, i_category#11, i_manufact_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Books ), IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id), IsNotNull(i_manufact_id)] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Books ), *IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id), *IsNotNull(i_manufact_id)] ReadSchema: struct (4) FilterExecTransformer @@ -255,7 +255,7 @@ Input [9]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price#4 Output [5]: [cr_item_sk#16, cr_order_number#17, cr_return_quantity#18, cr_return_amount#19, cr_returned_date_sk#20] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -302,7 +302,7 @@ Output [5]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pr Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#28), dynamicpruningexpression(ss_sold_date_sk#28 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -368,7 +368,7 @@ Input [9]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pri Output [5]: [sr_item_sk#37, sr_ticket_number#38, sr_return_quantity#39, sr_return_amt#40, sr_returned_date_sk#41] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -415,7 +415,7 @@ Output [5]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#49), dynamicpruningexpression(ws_sold_date_sk#49 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -481,7 +481,7 @@ Input [9]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pric Output [5]: [wr_item_sk#58, wr_order_number#59, wr_return_quantity#60, wr_return_amt#61, wr_returned_date_sk#62] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -640,7 +640,7 @@ Output [5]: [cs_item_sk#78, cs_order_number#79, cs_quantity#80, cs_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#82), dynamicpruningexpression(cs_sold_date_sk#82 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (118) FilterExecTransformer @@ -730,7 +730,7 @@ Output [5]: [ss_item_sk#98, ss_ticket_number#99, ss_quantity#100, ss_ext_sales_p Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#102), dynamicpruningexpression(ss_sold_date_sk#102 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (141) FilterExecTransformer @@ -820,7 +820,7 @@ Output [5]: [ws_item_sk#117, ws_order_number#118, ws_quantity#119, ws_ext_sales_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#121), dynamicpruningexpression(ws_sold_date_sk#121 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (164) FilterExecTransformer @@ -1050,7 +1050,7 @@ ColumnarBroadcastExchange (222) Output [2]: [d_date_sk#13, d_year#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (220) FilterExecTransformer @@ -1079,7 +1079,7 @@ ColumnarBroadcastExchange (226) Output [2]: [d_date_sk#89, d_year#90] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (224) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75/explain.txt index 409a4077943..fc6b5b4350c 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q75/explain.txt @@ -169,7 +169,7 @@ Output [5]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -180,7 +180,7 @@ Arguments: isnotnull(cs_item_sk#1) Output [6]: [i_item_sk#7, i_brand_id#8, i_class_id#9, i_category_id#10, i_category#11, i_manufact_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Books ), IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id), IsNotNull(i_manufact_id)] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Books ), *IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id), *IsNotNull(i_manufact_id)] ReadSchema: struct (4) FilterExecTransformer @@ -255,7 +255,7 @@ Input [9]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price#4 Output [5]: [cr_item_sk#16, cr_order_number#17, cr_return_quantity#18, cr_return_amount#19, cr_returned_date_sk#20] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -302,7 +302,7 @@ Output [5]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pr Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#28), dynamicpruningexpression(ss_sold_date_sk#28 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -368,7 +368,7 @@ Input [9]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pri Output [5]: [sr_item_sk#37, sr_ticket_number#38, sr_return_quantity#39, sr_return_amt#40, sr_returned_date_sk#41] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -415,7 +415,7 @@ Output [5]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#49), dynamicpruningexpression(ws_sold_date_sk#49 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -481,7 +481,7 @@ Input [9]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pric Output [5]: [wr_item_sk#58, wr_order_number#59, wr_return_quantity#60, wr_return_amt#61, wr_returned_date_sk#62] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -640,7 +640,7 @@ Output [5]: [cs_item_sk#78, cs_order_number#79, cs_quantity#80, cs_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#82), dynamicpruningexpression(cs_sold_date_sk#82 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (118) FilterExecTransformer @@ -730,7 +730,7 @@ Output [5]: [ss_item_sk#98, ss_ticket_number#99, ss_quantity#100, ss_ext_sales_p Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#102), dynamicpruningexpression(ss_sold_date_sk#102 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (141) FilterExecTransformer @@ -820,7 +820,7 @@ Output [5]: [ws_item_sk#117, ws_order_number#118, ws_quantity#119, ws_ext_sales_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#121), dynamicpruningexpression(ws_sold_date_sk#121 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (164) FilterExecTransformer @@ -1050,7 +1050,7 @@ ColumnarBroadcastExchange (222) Output [2]: [d_date_sk#13, d_year#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (220) FilterExecTransformer @@ -1079,7 +1079,7 @@ ColumnarBroadcastExchange (226) Output [2]: [d_date_sk#89, d_year#90] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (224) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76.sf100/explain.txt index d577b187932..b31bfb4d196 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76.sf100/explain.txt @@ -56,7 +56,7 @@ Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_sold_date_sk# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4)] -PushedFilters: [IsNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -67,7 +67,7 @@ Arguments: (isnull(ss_store_sk#2) AND isnotnull(ss_item_sk#1)) Output [3]: [d_date_sk#5, d_year#6, d_qoy#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -102,7 +102,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Output [2]: [i_item_sk#8, i_category#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -142,7 +142,7 @@ Output [4]: [ws_item_sk#13, ws_ship_customer_sk#14, ws_ext_sales_price#15, ws_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#16)] -PushedFilters: [IsNull(ws_ship_customer_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNull(ws_ship_customer_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -167,7 +167,7 @@ Input [4]: [ws_item_sk#13, ws_ship_customer_sk#14, ws_ext_sales_price#15, ws_sol Output [3]: [d_date_sk#17, d_year#18, d_qoy#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -202,7 +202,7 @@ Input [5]: [ws_item_sk#13, ws_ship_customer_sk#14, ws_ext_sales_price#15, d_year Output [2]: [i_item_sk#20, i_category#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -228,7 +228,7 @@ Output [4]: [cs_ship_addr_sk#25, cs_item_sk#26, cs_ext_sales_price#27, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#28)] -PushedFilters: [IsNull(cs_ship_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNull(cs_ship_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (40) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76/explain.txt index b789c6023fb..aec8ca1f312 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q76/explain.txt @@ -52,7 +52,7 @@ Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_sold_date_sk# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4)] -PushedFilters: [IsNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -63,7 +63,7 @@ Arguments: (isnull(ss_store_sk#2) AND isnotnull(ss_item_sk#1)) Output [2]: [i_item_sk#5, i_category#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -98,7 +98,7 @@ Input [6]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_sold_date_sk#4 Output [3]: [d_date_sk#7, d_year#8, d_qoy#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -138,7 +138,7 @@ Output [4]: [ws_item_sk#13, ws_ship_customer_sk#14, ws_ext_sales_price#15, ws_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#16)] -PushedFilters: [IsNull(ws_ship_customer_sk), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNull(ws_ship_customer_sk), *IsNotNull(ws_item_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -192,7 +192,7 @@ Output [4]: [cs_ship_addr_sk#25, cs_item_sk#26, cs_ext_sales_price#27, cs_sold_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#28)] -PushedFilters: [IsNull(cs_ship_addr_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNull(cs_ship_addr_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (34) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77.sf100/explain.txt index ff6d1d554f4..2ab05b28573 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77.sf100/explain.txt @@ -125,7 +125,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -155,7 +155,7 @@ Input [5]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_s Output [1]: [s_store_sk#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -230,7 +230,7 @@ Output [4]: [sr_store_sk#19, sr_return_amt#20, sr_net_loss#21, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#22), dynamicpruningexpression(sr_returned_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -499,7 +499,7 @@ Output [4]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#76), dynamicpruningexpression(ws_sold_date_sk#76 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_web_page_sk)] ReadSchema: struct (90) FilterExecTransformer @@ -529,7 +529,7 @@ Input [5]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold_ Output [1]: [wp_web_page_sk#78] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_web_page_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -604,7 +604,7 @@ Output [4]: [wr_web_page_sk#90, wr_return_amt#91, wr_net_loss#92, wr_returned_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#93), dynamicpruningexpression(wr_returned_date_sk#93 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(wr_web_page_sk)] +PushedFilters: [*IsNotNull(wr_web_page_sk)] ReadSchema: struct (114) FilterExecTransformer @@ -792,7 +792,7 @@ ColumnarBroadcastExchange (161) Output [2]: [d_date_sk#6, d_date#133] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-08-03), LessThanOrEqual(d_date,2000-09-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-08-03), *LessThanOrEqual(d_date,2000-09-02), *IsNotNull(d_date_sk)] ReadSchema: struct (158) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77/explain.txt index c0b92fca55b..7c1c9f48cc3 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q77/explain.txt @@ -125,7 +125,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -155,7 +155,7 @@ Input [5]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_s Output [1]: [s_store_sk#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -230,7 +230,7 @@ Output [4]: [sr_store_sk#19, sr_return_amt#20, sr_net_loss#21, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#22), dynamicpruningexpression(sr_returned_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -499,7 +499,7 @@ Output [4]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#76), dynamicpruningexpression(ws_sold_date_sk#76 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_web_page_sk)] ReadSchema: struct (90) FilterExecTransformer @@ -529,7 +529,7 @@ Input [5]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold_ Output [1]: [wp_web_page_sk#78] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_web_page_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -604,7 +604,7 @@ Output [4]: [wr_web_page_sk#90, wr_return_amt#91, wr_net_loss#92, wr_returned_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#93), dynamicpruningexpression(wr_returned_date_sk#93 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(wr_web_page_sk)] +PushedFilters: [*IsNotNull(wr_web_page_sk)] ReadSchema: struct (114) FilterExecTransformer @@ -792,7 +792,7 @@ ColumnarBroadcastExchange (161) Output [2]: [d_date_sk#6, d_date#133] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-08-03), LessThanOrEqual(d_date,2000-09-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-08-03), *LessThanOrEqual(d_date,2000-09-02), *IsNotNull(d_date_sk)] ReadSchema: struct (158) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78.sf100/explain.txt index 97eae827132..4f95a476fc2 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78.sf100/explain.txt @@ -92,7 +92,7 @@ Output [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -124,7 +124,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, s Output [3]: [sr_item_sk#10, sr_ticket_number#11, sr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -229,7 +229,7 @@ Output [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#38), dynamicpruningexpression(ws_sold_date_sk#38 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -261,7 +261,7 @@ Input [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quanti Output [3]: [wr_item_sk#40, wr_order_number#41, wr_returned_date_sk#42] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -380,7 +380,7 @@ Output [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#69), dynamicpruningexpression(cs_sold_date_sk#69 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -412,7 +412,7 @@ Input [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quanti Output [3]: [cr_item_sk#71, cr_order_number#72, cr_returned_date_sk#73] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -549,7 +549,7 @@ ColumnarBroadcastExchange (112) Output [2]: [d_date_sk#14, d_year#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (110) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78/explain.txt index 74aa39fb359..409080368e9 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q78/explain.txt @@ -92,7 +92,7 @@ Output [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -124,7 +124,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, s Output [3]: [sr_item_sk#10, sr_ticket_number#11, sr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -229,7 +229,7 @@ Output [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#38), dynamicpruningexpression(ws_sold_date_sk#38 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -261,7 +261,7 @@ Input [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quanti Output [3]: [wr_item_sk#40, wr_order_number#41, wr_returned_date_sk#42] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -380,7 +380,7 @@ Output [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#69), dynamicpruningexpression(cs_sold_date_sk#69 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -412,7 +412,7 @@ Input [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quanti Output [3]: [cr_item_sk#71, cr_order_number#72, cr_returned_date_sk#73] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -549,7 +549,7 @@ ColumnarBroadcastExchange (112) Output [2]: [d_date_sk#14, d_year#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (110) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79.sf100/explain.txt index 0d6660f1ba3..32ae3d860ea 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79.sf100/explain.txt @@ -46,7 +46,7 @@ Output [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,6),GreaterThan(hd_vehicle_count,2)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,6),GreaterThan(hd_vehicle_count,2)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -115,7 +115,7 @@ Input [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [s_store_sk#14, s_number_employees#15, s_city#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_number_employees), GreaterThanOrEqual(s_number_employees,200), LessThanOrEqual(s_number_employees,295), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_number_employees), *GreaterThanOrEqual(s_number_employees,200), *LessThanOrEqual(s_number_employees,295), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -210,7 +210,7 @@ Input [5]: [ss_ticket_number#5, ss_customer_sk#1, s_city#16, amt#27, profit#28] Output [3]: [c_customer_sk#29, c_first_name#30, c_last_name#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -272,7 +272,7 @@ ColumnarBroadcastExchange (57) Output [3]: [d_date_sk#10, d_year#35, d_dow#36] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dow), EqualTo(d_dow,1), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dow), *EqualTo(d_dow,1), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (54) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79/explain.txt index 5ba24432f05..f260645ddb4 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q79/explain.txt @@ -41,7 +41,7 @@ Output [8]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_ti Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -71,7 +71,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [s_store_sk#11, s_number_employees#12, s_city#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_number_employees), GreaterThanOrEqual(s_number_employees,200), LessThanOrEqual(s_number_employees,295), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_number_employees), *GreaterThanOrEqual(s_number_employees,200), *LessThanOrEqual(s_number_employees,295), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -110,7 +110,7 @@ Input [9]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_addr_sk#3, ss_store_sk#4, ss_tic Output [3]: [hd_demo_sk#14, hd_dep_count#15, hd_vehicle_count#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(EqualTo(hd_dep_count,6),GreaterThan(hd_vehicle_count,2)), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(EqualTo(hd_dep_count,6),GreaterThan(hd_vehicle_count,2)), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -188,7 +188,7 @@ Input [6]: [ss_ticket_number#5, ss_customer_sk#1, ss_addr_sk#3, s_city#13, sum(U Output [3]: [c_customer_sk#28, c_first_name#29, c_last_name#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -243,7 +243,7 @@ ColumnarBroadcastExchange (50) Output [3]: [d_date_sk#10, d_year#33, d_dow#34] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_dow), EqualTo(d_dow,1), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_dow), *EqualTo(d_dow,1), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8.sf100/explain.txt index 50a9868bc45..c80896b55fb 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8.sf100/explain.txt @@ -71,7 +71,7 @@ Output [3]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -101,7 +101,7 @@ Input [4]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3, d_date_sk#5] Output [3]: [s_store_sk#6, s_store_name#7, s_zip#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (9) FilterExecTransformer @@ -167,7 +167,7 @@ Input [1]: [ca_zip#10] Output [2]: [ca_address_sk#12, ca_zip#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -199,7 +199,7 @@ Input [2]: [ca_address_sk#12, ca_zip#13] Output [2]: [c_current_addr_sk#15, c_preferred_cust_flag#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_preferred_cust_flag), EqualTo(c_preferred_cust_flag,Y), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_preferred_cust_flag), *EqualTo(c_preferred_cust_flag,Y), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (33) FilterExecTransformer @@ -433,7 +433,7 @@ ColumnarBroadcastExchange (90) Output [3]: [d_date_sk#5, d_year#32, d_qoy#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (87) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8/explain.txt index 3a4a6ed582d..886d6b7c3a9 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q8/explain.txt @@ -61,7 +61,7 @@ Output [3]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -91,7 +91,7 @@ Input [4]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3, d_date_sk#5] Output [3]: [s_store_sk#6, s_store_name#7, s_zip#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (9) FilterExecTransformer @@ -140,7 +140,7 @@ Input [1]: [ca_zip#9] Output [2]: [ca_address_sk#11, ca_zip#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -151,7 +151,7 @@ Arguments: isnotnull(ca_address_sk#11) Output [2]: [c_current_addr_sk#13, c_preferred_cust_flag#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_preferred_cust_flag), EqualTo(c_preferred_cust_flag,Y), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_preferred_cust_flag), *EqualTo(c_preferred_cust_flag,Y), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -375,7 +375,7 @@ ColumnarBroadcastExchange (76) Output [3]: [d_date_sk#5, d_year#28, d_qoy#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_qoy), IsNotNull(d_year), EqualTo(d_qoy,2), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_qoy), *IsNotNull(d_year), *EqualTo(d_qoy,2), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (73) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80.sf100/explain.txt index 50d4f70a590..9b166d10847 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80.sf100/explain.txt @@ -141,7 +141,7 @@ Output [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -173,7 +173,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_e Output [5]: [sr_item_sk#12, sr_ticket_number#13, sr_return_amt#14, sr_net_loss#15, sr_returned_date_sk#16] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (10) FilterExecTransformer @@ -215,7 +215,7 @@ Input [11]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_ Output [2]: [i_item_sk#18, i_current_price#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThan(i_current_price,50.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThan(i_current_price,50.00), *IsNotNull(i_item_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -254,7 +254,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ext_sales_price#5, ss Output [2]: [p_promo_sk#20, p_channel_tv#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_channel_tv), EqualTo(p_channel_tv,N), IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_channel_tv), *EqualTo(p_channel_tv,N), *IsNotNull(p_promo_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -312,7 +312,7 @@ Input [7]: [ss_store_sk#2, ss_ext_sales_price#5, ss_net_profit#6, ss_sold_date_s Output [2]: [s_store_sk#23, s_store_id#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -391,7 +391,7 @@ Output [7]: [cs_catalog_page_sk#47, cs_item_sk#48, cs_promo_sk#49, cs_order_numb Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#53), dynamicpruningexpression(cs_sold_date_sk#53 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_catalog_page_sk), IsNotNull(cs_item_sk), IsNotNull(cs_promo_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk), *IsNotNull(cs_item_sk), *IsNotNull(cs_promo_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -423,7 +423,7 @@ Input [7]: [cs_catalog_page_sk#47, cs_item_sk#48, cs_promo_sk#49, cs_order_numbe Output [5]: [cr_item_sk#55, cr_order_number#56, cr_return_amount#57, cr_net_loss#58, cr_returned_date_sk#59] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (69) FilterExecTransformer @@ -522,7 +522,7 @@ Input [7]: [cs_catalog_page_sk#47, cs_ext_sales_price#51, cs_net_profit#52, cs_s Output [2]: [cp_catalog_page_sk#64, cp_catalog_page_id#65] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (94) FilterExecTransformer @@ -601,7 +601,7 @@ Output [7]: [ws_item_sk#88, ws_web_site_sk#89, ws_promo_sk#90, ws_order_number#9 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#94), dynamicpruningexpression(ws_sold_date_sk#94 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_web_site_sk), IsNotNull(ws_item_sk), IsNotNull(ws_promo_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk), *IsNotNull(ws_item_sk), *IsNotNull(ws_promo_sk)] ReadSchema: struct (112) FilterExecTransformer @@ -633,7 +633,7 @@ Input [7]: [ws_item_sk#88, ws_web_site_sk#89, ws_promo_sk#90, ws_order_number#91 Output [5]: [wr_item_sk#96, wr_order_number#97, wr_return_amt#98, wr_net_loss#99, wr_returned_date_sk#100] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_item_sk), IsNotNull(wr_order_number)] +PushedFilters: [*IsNotNull(wr_item_sk), *IsNotNull(wr_order_number)] ReadSchema: struct (120) FilterExecTransformer @@ -732,7 +732,7 @@ Input [7]: [ws_web_site_sk#89, ws_ext_sales_price#92, ws_net_profit#93, ws_sold_ Output [2]: [web_site_sk#105, web_site_id#106] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (145) FilterExecTransformer @@ -887,7 +887,7 @@ VeloxColumnarToRow (189) Output [2]: [i_item_sk#18, i_current_price#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThan(i_current_price,50.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThan(i_current_price,50.00), *IsNotNull(i_item_sk)] ReadSchema: struct (179) FilterExecTransformer @@ -952,7 +952,7 @@ VeloxColumnarToRow (201) Output [2]: [p_promo_sk#20, p_channel_tv#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_channel_tv), EqualTo(p_channel_tv,N), IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_channel_tv), *EqualTo(p_channel_tv,N), *IsNotNull(p_promo_sk)] ReadSchema: struct (191) FilterExecTransformer @@ -1012,7 +1012,7 @@ ColumnarBroadcastExchange (206) Output [2]: [d_date_sk#22, d_date#161] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-08-23), LessThanOrEqual(d_date,2000-09-22), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-08-23), *LessThanOrEqual(d_date,2000-09-22), *IsNotNull(d_date_sk)] ReadSchema: struct (203) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80/explain.txt index 90554e247cd..37069f4f9af 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q80/explain.txt @@ -141,7 +141,7 @@ Output [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -173,7 +173,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_e Output [5]: [sr_item_sk#10, sr_ticket_number#11, sr_return_amt#12, sr_net_loss#13, sr_returned_date_sk#14] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (10) FilterExecTransformer @@ -234,7 +234,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ext_sales_price#5, ss Output [2]: [s_store_sk#17, s_store_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -269,7 +269,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ext_sales_price#5, ss Output [2]: [i_item_sk#19, i_current_price#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThan(i_current_price,50.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThan(i_current_price,50.00), *IsNotNull(i_item_sk)] ReadSchema: struct (33) FilterExecTransformer @@ -308,7 +308,7 @@ Input [8]: [ss_item_sk#1, ss_promo_sk#3, ss_ext_sales_price#5, ss_net_profit#6, Output [2]: [p_promo_sk#21, p_channel_tv#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_channel_tv), EqualTo(p_channel_tv,N), IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_channel_tv), *EqualTo(p_channel_tv,N), *IsNotNull(p_promo_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -391,7 +391,7 @@ Output [7]: [cs_catalog_page_sk#45, cs_item_sk#46, cs_promo_sk#47, cs_order_numb Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#51), dynamicpruningexpression(cs_sold_date_sk#51 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_catalog_page_sk), IsNotNull(cs_item_sk), IsNotNull(cs_promo_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk), *IsNotNull(cs_item_sk), *IsNotNull(cs_promo_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -423,7 +423,7 @@ Input [7]: [cs_catalog_page_sk#45, cs_item_sk#46, cs_promo_sk#47, cs_order_numbe Output [5]: [cr_item_sk#53, cr_order_number#54, cr_return_amount#55, cr_net_loss#56, cr_returned_date_sk#57] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (69) FilterExecTransformer @@ -484,7 +484,7 @@ Input [9]: [cs_catalog_page_sk#45, cs_item_sk#46, cs_promo_sk#47, cs_ext_sales_p Output [2]: [cp_catalog_page_sk#60, cp_catalog_page_id#61] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (84) FilterExecTransformer @@ -601,7 +601,7 @@ Output [7]: [ws_item_sk#86, ws_web_site_sk#87, ws_promo_sk#88, ws_order_number#8 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#92), dynamicpruningexpression(ws_sold_date_sk#92 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_web_site_sk), IsNotNull(ws_item_sk), IsNotNull(ws_promo_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk), *IsNotNull(ws_item_sk), *IsNotNull(ws_promo_sk)] ReadSchema: struct (112) FilterExecTransformer @@ -633,7 +633,7 @@ Input [7]: [ws_item_sk#86, ws_web_site_sk#87, ws_promo_sk#88, ws_order_number#89 Output [5]: [wr_item_sk#94, wr_order_number#95, wr_return_amt#96, wr_net_loss#97, wr_returned_date_sk#98] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_item_sk), IsNotNull(wr_order_number)] +PushedFilters: [*IsNotNull(wr_item_sk), *IsNotNull(wr_order_number)] ReadSchema: struct (120) FilterExecTransformer @@ -694,7 +694,7 @@ Input [9]: [ws_item_sk#86, ws_web_site_sk#87, ws_promo_sk#88, ws_ext_sales_price Output [2]: [web_site_sk#101, web_site_id#102] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (135) FilterExecTransformer @@ -882,7 +882,7 @@ ColumnarBroadcastExchange (182) Output [2]: [d_date_sk#16, d_date#149] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-08-23), LessThanOrEqual(d_date,2000-09-22), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-08-23), *LessThanOrEqual(d_date,2000-09-22), *IsNotNull(d_date_sk)] ReadSchema: struct (179) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81.sf100/explain.txt index fa2fc3862a2..6a177bfda26 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81.sf100/explain.txt @@ -81,7 +81,7 @@ VeloxColumnarToRow (100) Output [6]: [c_customer_sk#1, c_customer_id#2, c_current_addr_sk#3, c_salutation#4, c_first_name#5, c_last_name#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -92,7 +92,7 @@ Arguments: (isnotnull(c_customer_sk#1) AND isnotnull(c_current_addr_sk#3)) Output [12]: [ca_address_sk#7, ca_street_number#8, ca_street_name#9, ca_street_type#10, ca_suite_number#11, ca_city#12, ca_county#13, ca_state#14, ca_zip#15, ca_country#16, ca_gmt_offset#17, ca_location_type#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,GA), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,GA), *IsNotNull(ca_address_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -145,7 +145,7 @@ Output [4]: [cr_returning_customer_sk#20, cr_returning_addr_sk#21, cr_return_amt Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#23), dynamicpruningexpression(cr_returned_date_sk#23 IN dynamicpruning#24)] -PushedFilters: [IsNotNull(cr_returning_addr_sk), IsNotNull(cr_returning_customer_sk)] +PushedFilters: [*IsNotNull(cr_returning_addr_sk), *IsNotNull(cr_returning_customer_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -192,7 +192,7 @@ Input [3]: [cr_returning_customer_sk#20, cr_returning_addr_sk#21, cr_return_amt_ Output [2]: [ca_address_sk#27, ca_state#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_state)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_state)] ReadSchema: struct (29) FilterExecTransformer @@ -309,7 +309,7 @@ Output [4]: [cr_returning_customer_sk#39, cr_returning_addr_sk#40, cr_return_amt Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#42), dynamicpruningexpression(cr_returned_date_sk#42 IN dynamicpruning#24)] -PushedFilters: [IsNotNull(cr_returning_addr_sk)] +PushedFilters: [*IsNotNull(cr_returning_addr_sk)] ReadSchema: struct (57) FilterExecTransformer @@ -501,7 +501,7 @@ ColumnarBroadcastExchange (105) Output [2]: [d_date_sk#25, d_year#60] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (102) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81/explain.txt index 2b411480b16..0d7429002fd 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q81/explain.txt @@ -69,7 +69,7 @@ Output [4]: [cr_returning_customer_sk#1, cr_returning_addr_sk#2, cr_return_amt_i Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#4), dynamicpruningexpression(cr_returned_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cr_returning_addr_sk), IsNotNull(cr_returning_customer_sk)] +PushedFilters: [*IsNotNull(cr_returning_addr_sk), *IsNotNull(cr_returning_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -99,7 +99,7 @@ Input [5]: [cr_returning_customer_sk#1, cr_returning_addr_sk#2, cr_return_amt_in Output [2]: [ca_address_sk#7, ca_state#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_state)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_state)] ReadSchema: struct (9) FilterExecTransformer @@ -178,7 +178,7 @@ Output [4]: [cr_returning_customer_sk#17, cr_returning_addr_sk#18, cr_return_amt Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#20), dynamicpruningexpression(cr_returned_date_sk#20 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cr_returning_addr_sk)] +PushedFilters: [*IsNotNull(cr_returning_addr_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -333,7 +333,7 @@ Input [5]: [ctr_customer_sk#14, ctr_state#15, ctr_total_return#16, (avg(ctr_tota Output [6]: [c_customer_sk#37, c_customer_id#38, c_current_addr_sk#39, c_salutation#40, c_first_name#41, c_last_name#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (64) FilterExecTransformer @@ -368,7 +368,7 @@ Input [8]: [ctr_customer_sk#14, ctr_total_return#16, c_customer_sk#37, c_custome Output [12]: [ca_address_sk#43, ca_street_number#44, ca_street_name#45, ca_street_type#46, ca_suite_number#47, ca_city#48, ca_county#49, ca_state#50, ca_zip#51, ca_country#52, ca_gmt_offset#53, ca_location_type#54] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,GA), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,GA), *IsNotNull(ca_address_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -423,7 +423,7 @@ ColumnarBroadcastExchange (86) Output [2]: [d_date_sk#6, d_year#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (83) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82.sf100/explain.txt index 647f0909d54..3a8bc3607f3 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82.sf100/explain.txt @@ -38,7 +38,7 @@ VeloxColumnarToRow (43) Output [5]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,62.00), LessThanOrEqual(i_current_price,92.00), In(i_manufact_id, [129,270,423,821]), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,62.00), *LessThanOrEqual(i_current_price,92.00), *In(i_manufact_id, [129,270,423,821]), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -68,7 +68,7 @@ Output [3]: [inv_item_sk#6, inv_quantity_on_hand#7, inv_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#8), dynamicpruningexpression(inv_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), GreaterThanOrEqual(inv_quantity_on_hand,100), LessThanOrEqual(inv_quantity_on_hand,500), IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *GreaterThanOrEqual(inv_quantity_on_hand,100), *LessThanOrEqual(inv_quantity_on_hand,500), *IsNotNull(inv_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -129,7 +129,7 @@ Input [4]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4] Output [2]: [ss_item_sk#12, ss_sold_date_sk#13] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (24) FilterExecTransformer @@ -226,7 +226,7 @@ ColumnarBroadcastExchange (48) Output [2]: [d_date_sk#10, d_date#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-05-25), LessThanOrEqual(d_date,2000-07-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-05-25), *LessThanOrEqual(d_date,2000-07-24), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer @@ -261,7 +261,7 @@ VeloxColumnarToRow (60) Output [3]: [i_item_sk#1, i_current_price#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,62.00), LessThanOrEqual(i_current_price,92.00), In(i_manufact_id, [129,270,423,821]), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,62.00), *LessThanOrEqual(i_current_price,92.00), *In(i_manufact_id, [129,270,423,821]), *IsNotNull(i_item_sk)] ReadSchema: struct (50) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82/explain.txt index 5a6c95d4363..67eccb02728 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q82/explain.txt @@ -34,7 +34,7 @@ VeloxColumnarToRow (37) Output [5]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4, i_manufact_id#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThanOrEqual(i_current_price,62.00), LessThanOrEqual(i_current_price,92.00), In(i_manufact_id, [129,270,423,821]), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThanOrEqual(i_current_price,62.00), *LessThanOrEqual(i_current_price,92.00), *In(i_manufact_id, [129,270,423,821]), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -50,7 +50,7 @@ Output [3]: [inv_item_sk#6, inv_quantity_on_hand#7, inv_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#8), dynamicpruningexpression(inv_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), GreaterThanOrEqual(inv_quantity_on_hand,100), LessThanOrEqual(inv_quantity_on_hand,500), IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *GreaterThanOrEqual(inv_quantity_on_hand,100), *LessThanOrEqual(inv_quantity_on_hand,500), *IsNotNull(inv_item_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -122,7 +122,7 @@ Input [4]: [i_item_sk#1, i_item_id#2, i_item_desc#3, i_current_price#4] Output [2]: [ss_item_sk#11, ss_sold_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -202,7 +202,7 @@ ColumnarBroadcastExchange (42) Output [2]: [d_date_sk#10, d_date#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-05-25), LessThanOrEqual(d_date,2000-07-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-05-25), *LessThanOrEqual(d_date,2000-07-24), *IsNotNull(d_date_sk)] ReadSchema: struct (39) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83.sf100/explain.txt index 96ab49c98bc..1038aebfc2d 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83.sf100/explain.txt @@ -66,7 +66,7 @@ Output [3]: [sr_item_sk#1, sr_return_quantity#2, sr_returned_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#3), dynamicpruningexpression(sr_returned_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Input [4]: [sr_item_sk#1, sr_return_quantity#2, sr_returned_date_sk#3, d_date_sk Output [2]: [i_item_sk#6, i_item_id#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_item_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_item_id)] ReadSchema: struct (9) FilterExecTransformer @@ -167,7 +167,7 @@ Output [3]: [cr_item_sk#14, cr_return_quantity#15, cr_returned_date_sk#16] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#16), dynamicpruningexpression(cr_returned_date_sk#16 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_item_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -276,7 +276,7 @@ Output [3]: [wr_item_sk#26, wr_return_quantity#27, wr_returned_date_sk#28] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#28), dynamicpruningexpression(wr_returned_date_sk#28 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -415,7 +415,7 @@ ColumnarBroadcastExchange (98) Output [2]: [d_date_sk#5, d_date#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (80) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83/explain.txt index a0bb529011c..04df4fdc5a8 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q83/explain.txt @@ -66,7 +66,7 @@ Output [3]: [sr_item_sk#1, sr_return_quantity#2, sr_returned_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#3), dynamicpruningexpression(sr_returned_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Arguments: isnotnull(sr_item_sk#1) Output [2]: [i_item_sk#5, i_item_id#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_item_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_item_id)] ReadSchema: struct (4) FilterExecTransformer @@ -167,7 +167,7 @@ Output [3]: [cr_item_sk#14, cr_return_quantity#15, cr_returned_date_sk#16] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#16), dynamicpruningexpression(cr_returned_date_sk#16 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_item_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -276,7 +276,7 @@ Output [3]: [wr_item_sk#26, wr_return_quantity#27, wr_returned_date_sk#28] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#28), dynamicpruningexpression(wr_returned_date_sk#28 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -415,7 +415,7 @@ ColumnarBroadcastExchange (98) Output [2]: [d_date_sk#7, d_date#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (80) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84.sf100/explain.txt index 5fb0c06650d..8a788eab12f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84.sf100/explain.txt @@ -42,7 +42,7 @@ VeloxColumnarToRow (48) Output [6]: [c_customer_id#1, c_current_cdemo_sk#2, c_current_hdemo_sk#3, c_current_addr_sk#4, c_first_name#5, c_last_name#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -53,7 +53,7 @@ Arguments: ((isnotnull(c_current_addr_sk#4) AND isnotnull(c_current_cdemo_sk#2)) Output [2]: [ca_address_sk#7, ca_city#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_city), EqualTo(ca_city,Edgewood), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_city), *EqualTo(ca_city,Edgewood), *IsNotNull(ca_address_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -92,7 +92,7 @@ Input [7]: [c_customer_id#1, c_current_cdemo_sk#2, c_current_hdemo_sk#3, c_curre Output [2]: [hd_demo_sk#9, hd_income_band_sk#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)] +PushedFilters: [*IsNotNull(hd_demo_sk), *IsNotNull(hd_income_band_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -103,7 +103,7 @@ Arguments: (isnotnull(hd_demo_sk#9) AND isnotnull(hd_income_band_sk#10)) Output [3]: [ib_income_band_sk#11, ib_lower_bound#12, ib_upper_bound#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/income_band] -PushedFilters: [IsNotNull(ib_lower_bound), IsNotNull(ib_upper_bound), GreaterThanOrEqual(ib_lower_bound,38128), LessThanOrEqual(ib_upper_bound,88128), IsNotNull(ib_income_band_sk)] +PushedFilters: [*IsNotNull(ib_lower_bound), *IsNotNull(ib_upper_bound), *GreaterThanOrEqual(ib_lower_bound,38128), *LessThanOrEqual(ib_upper_bound,88128), *IsNotNull(ib_income_band_sk)] ReadSchema: struct (15) FilterExecTransformer @@ -180,7 +180,7 @@ Input [4]: [c_customer_id#1, c_current_cdemo_sk#2, c_first_name#5, c_last_name#6 Output [1]: [cd_demo_sk#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -215,7 +215,7 @@ Input [4]: [c_customer_id#1, c_first_name#5, c_last_name#6, cd_demo_sk#14] Output [2]: [sr_cdemo_sk#15, sr_returned_date_sk#16] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_cdemo_sk)] +PushedFilters: [*IsNotNull(sr_cdemo_sk)] ReadSchema: struct (42) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84/explain.txt index e82a51b7cff..fe602c65bb7 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q84/explain.txt @@ -42,7 +42,7 @@ VeloxColumnarToRow (48) Output [6]: [c_customer_id#1, c_current_cdemo_sk#2, c_current_hdemo_sk#3, c_current_addr_sk#4, c_first_name#5, c_last_name#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -53,7 +53,7 @@ Arguments: ((isnotnull(c_current_addr_sk#4) AND isnotnull(c_current_cdemo_sk#2)) Output [2]: [ca_address_sk#7, ca_city#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_city), EqualTo(ca_city,Edgewood), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_city), *EqualTo(ca_city,Edgewood), *IsNotNull(ca_address_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -92,7 +92,7 @@ Input [7]: [c_customer_id#1, c_current_cdemo_sk#2, c_current_hdemo_sk#3, c_curre Output [1]: [cd_demo_sk#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -127,7 +127,7 @@ Input [6]: [c_customer_id#1, c_current_cdemo_sk#2, c_current_hdemo_sk#3, c_first Output [2]: [hd_demo_sk#10, hd_income_band_sk#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)] +PushedFilters: [*IsNotNull(hd_demo_sk), *IsNotNull(hd_income_band_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -162,7 +162,7 @@ Input [7]: [c_customer_id#1, c_current_hdemo_sk#3, c_first_name#5, c_last_name#6 Output [3]: [ib_income_band_sk#12, ib_lower_bound#13, ib_upper_bound#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/income_band] -PushedFilters: [IsNotNull(ib_lower_bound), IsNotNull(ib_upper_bound), GreaterThanOrEqual(ib_lower_bound,38128), LessThanOrEqual(ib_upper_bound,88128), IsNotNull(ib_income_band_sk)] +PushedFilters: [*IsNotNull(ib_lower_bound), *IsNotNull(ib_upper_bound), *GreaterThanOrEqual(ib_lower_bound,38128), *LessThanOrEqual(ib_upper_bound,88128), *IsNotNull(ib_income_band_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -215,7 +215,7 @@ Input [4]: [c_customer_id#1, c_first_name#5, c_last_name#6, cd_demo_sk#9] Output [2]: [sr_cdemo_sk#15, sr_returned_date_sk#16] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_cdemo_sk)] +PushedFilters: [*IsNotNull(sr_cdemo_sk)] ReadSchema: struct (42) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85.sf100/explain.txt index a86faf8a5b6..3c0283223d8 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85.sf100/explain.txt @@ -68,7 +68,7 @@ Output [7]: [ws_item_sk#1, ws_web_page_sk#2, ws_order_number#3, ws_quantity#4, w Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#7), dynamicpruningexpression(ws_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_order_number), IsNotNull(ws_web_page_sk), Or(Or(And(GreaterThanOrEqual(ws_sales_price,100.00),LessThanOrEqual(ws_sales_price,150.00)),And(GreaterThanOrEqual(ws_sales_price,50.00),LessThanOrEqual(ws_sales_price,100.00))),And(GreaterThanOrEqual(ws_sales_price,150.00),LessThanOrEqual(ws_sales_price,200.00))), Or(Or(And(GreaterThanOrEqual(ws_net_profit,100.00),LessThanOrEqual(ws_net_profit,200.00)),And(GreaterThanOrEqual(ws_net_profit,150.00),LessThanOrEqual(ws_net_profit,300.00))),And(GreaterThanOrEqual(ws_net_profit,50.00),LessThanOrEqual(ws_net_profit,250.00)))] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_order_number), *IsNotNull(ws_web_page_sk), *Or(Or(And(GreaterThanOrEqual(ws_sales_price,100.00),LessThanOrEqual(ws_sales_price,150.00)),And(GreaterThanOrEqual(ws_sales_price,50.00),LessThanOrEqual(ws_sales_price,100.00))),And(GreaterThanOrEqual(ws_sales_price,150.00),LessThanOrEqual(ws_sales_price,200.00))), *Or(Or(And(GreaterThanOrEqual(ws_net_profit,100.00),LessThanOrEqual(ws_net_profit,200.00)),And(GreaterThanOrEqual(ws_net_profit,150.00),LessThanOrEqual(ws_net_profit,300.00))),And(GreaterThanOrEqual(ws_net_profit,50.00),LessThanOrEqual(ws_net_profit,250.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -79,7 +79,7 @@ Arguments: ((((isnotnull(ws_item_sk#1) AND isnotnull(ws_order_number#3)) AND isn Output [1]: [wp_web_page_sk#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_web_page_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -131,7 +131,7 @@ Input [6]: [ws_item_sk#1, ws_order_number#3, ws_quantity#4, ws_sales_price#5, ws Output [9]: [wr_item_sk#11, wr_refunded_cdemo_sk#12, wr_refunded_addr_sk#13, wr_returning_cdemo_sk#14, wr_reason_sk#15, wr_order_number#16, wr_fee#17, wr_refunded_cash#18, wr_returned_date_sk#19] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_item_sk), IsNotNull(wr_order_number), IsNotNull(wr_refunded_cdemo_sk), IsNotNull(wr_returning_cdemo_sk), IsNotNull(wr_refunded_addr_sk), IsNotNull(wr_reason_sk)] +PushedFilters: [*IsNotNull(wr_item_sk), *IsNotNull(wr_order_number), *IsNotNull(wr_refunded_cdemo_sk), *IsNotNull(wr_returning_cdemo_sk), *IsNotNull(wr_refunded_addr_sk), *IsNotNull(wr_reason_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -173,7 +173,7 @@ Input [14]: [ws_item_sk#1, ws_order_number#3, ws_quantity#4, ws_sales_price#5, w Output [3]: [cd_demo_sk#23, cd_marital_status#24, cd_education_status#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] ReadSchema: struct (27) FilterExecTransformer @@ -225,7 +225,7 @@ Input [10]: [ws_quantity#4, ws_net_profit#6, ws_sold_date_sk#7, wr_refunded_addr Output [3]: [cd_demo_sk#27, cd_marital_status#28, cd_education_status#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status), IsNotNull(cd_education_status)] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status)] ReadSchema: struct (40) FilterExecTransformer @@ -267,7 +267,7 @@ Input [13]: [ws_quantity#4, ws_net_profit#6, ws_sold_date_sk#7, wr_refunded_addr Output [3]: [ca_address_sk#31, ca_state#32, ca_country#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), EqualTo(ca_country,United States), IsNotNull(ca_address_sk), Or(Or(In(ca_state, [IN,NJ,OH]),In(ca_state, [CT,KY,WI])),In(ca_state, [AR,IA,LA]))] +PushedFilters: [*IsNotNull(ca_country), *EqualTo(ca_country,United States), *IsNotNull(ca_address_sk), *Or(Or(In(ca_state, [IN,NJ,OH]),In(ca_state, [CT,KY,WI])),In(ca_state, [AR,IA,LA]))] ReadSchema: struct (50) FilterExecTransformer @@ -325,7 +325,7 @@ Input [6]: [ws_quantity#4, ws_sold_date_sk#7, wr_reason_sk#15, wr_fee#17, wr_ref Output [2]: [r_reason_sk#35, r_reason_desc#36] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/reason] -PushedFilters: [IsNotNull(r_reason_sk)] +PushedFilters: [*IsNotNull(r_reason_sk)] ReadSchema: struct (64) FilterExecTransformer @@ -419,7 +419,7 @@ ColumnarBroadcastExchange (87) Output [2]: [d_date_sk#34, d_year#59] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (84) FilterExecTransformer @@ -454,7 +454,7 @@ VeloxColumnarToRow (99) Output [3]: [cd_demo_sk#23, cd_marital_status#24, cd_education_status#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] ReadSchema: struct (89) FilterExecTransformer @@ -519,7 +519,7 @@ VeloxColumnarToRow (111) Output [3]: [ca_address_sk#31, ca_state#32, ca_country#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), EqualTo(ca_country,United States), IsNotNull(ca_address_sk), Or(Or(In(ca_state, [IN,NJ,OH]),In(ca_state, [CT,KY,WI])),In(ca_state, [AR,IA,LA]))] +PushedFilters: [*IsNotNull(ca_country), *EqualTo(ca_country,United States), *IsNotNull(ca_address_sk), *Or(Or(In(ca_state, [IN,NJ,OH]),In(ca_state, [CT,KY,WI])),In(ca_state, [AR,IA,LA]))] ReadSchema: struct (101) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85/explain.txt index 1cbdc981143..fb9538860ee 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q85/explain.txt @@ -59,7 +59,7 @@ Output [7]: [ws_item_sk#1, ws_web_page_sk#2, ws_order_number#3, ws_quantity#4, w Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#7), dynamicpruningexpression(ws_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_order_number), IsNotNull(ws_web_page_sk), Or(Or(And(GreaterThanOrEqual(ws_sales_price,100.00),LessThanOrEqual(ws_sales_price,150.00)),And(GreaterThanOrEqual(ws_sales_price,50.00),LessThanOrEqual(ws_sales_price,100.00))),And(GreaterThanOrEqual(ws_sales_price,150.00),LessThanOrEqual(ws_sales_price,200.00))), Or(Or(And(GreaterThanOrEqual(ws_net_profit,100.00),LessThanOrEqual(ws_net_profit,200.00)),And(GreaterThanOrEqual(ws_net_profit,150.00),LessThanOrEqual(ws_net_profit,300.00))),And(GreaterThanOrEqual(ws_net_profit,50.00),LessThanOrEqual(ws_net_profit,250.00)))] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_order_number), *IsNotNull(ws_web_page_sk), *Or(Or(And(GreaterThanOrEqual(ws_sales_price,100.00),LessThanOrEqual(ws_sales_price,150.00)),And(GreaterThanOrEqual(ws_sales_price,50.00),LessThanOrEqual(ws_sales_price,100.00))),And(GreaterThanOrEqual(ws_sales_price,150.00),LessThanOrEqual(ws_sales_price,200.00))), *Or(Or(And(GreaterThanOrEqual(ws_net_profit,100.00),LessThanOrEqual(ws_net_profit,200.00)),And(GreaterThanOrEqual(ws_net_profit,150.00),LessThanOrEqual(ws_net_profit,300.00))),And(GreaterThanOrEqual(ws_net_profit,50.00),LessThanOrEqual(ws_net_profit,250.00)))] ReadSchema: struct (2) FilterExecTransformer @@ -84,7 +84,7 @@ Input [7]: [ws_item_sk#1, ws_web_page_sk#2, ws_order_number#3, ws_quantity#4, ws Output [9]: [wr_item_sk#9, wr_refunded_cdemo_sk#10, wr_refunded_addr_sk#11, wr_returning_cdemo_sk#12, wr_reason_sk#13, wr_order_number#14, wr_fee#15, wr_refunded_cash#16, wr_returned_date_sk#17] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_item_sk), IsNotNull(wr_order_number), IsNotNull(wr_refunded_cdemo_sk), IsNotNull(wr_returning_cdemo_sk), IsNotNull(wr_refunded_addr_sk), IsNotNull(wr_reason_sk)] +PushedFilters: [*IsNotNull(wr_item_sk), *IsNotNull(wr_order_number), *IsNotNull(wr_refunded_cdemo_sk), *IsNotNull(wr_returning_cdemo_sk), *IsNotNull(wr_refunded_addr_sk), *IsNotNull(wr_reason_sk)] ReadSchema: struct (8) FilterExecTransformer @@ -109,7 +109,7 @@ Input [15]: [ws_item_sk#1, ws_web_page_sk#2, ws_order_number#3, ws_quantity#4, w Output [1]: [wp_web_page_sk#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_web_page_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -144,7 +144,7 @@ Input [12]: [ws_web_page_sk#2, ws_quantity#4, ws_sales_price#5, ws_net_profit#6, Output [3]: [cd_demo_sk#19, cd_marital_status#20, cd_education_status#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *Or(Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Advanced Degree )),And(EqualTo(cd_marital_status,S),EqualTo(cd_education_status,College ))),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,2 yr Degree )))] ReadSchema: struct (21) FilterExecTransformer @@ -179,7 +179,7 @@ Input [13]: [ws_quantity#4, ws_sales_price#5, ws_net_profit#6, ws_sold_date_sk#7 Output [3]: [cd_demo_sk#22, cd_marital_status#23, cd_education_status#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status), IsNotNull(cd_education_status)] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status)] ReadSchema: struct (29) FilterExecTransformer @@ -214,7 +214,7 @@ Input [13]: [ws_quantity#4, ws_net_profit#6, ws_sold_date_sk#7, wr_refunded_addr Output [3]: [ca_address_sk#25, ca_state#26, ca_country#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_country), EqualTo(ca_country,United States), IsNotNull(ca_address_sk), Or(Or(In(ca_state, [IN,NJ,OH]),In(ca_state, [CT,KY,WI])),In(ca_state, [AR,IA,LA]))] +PushedFilters: [*IsNotNull(ca_country), *EqualTo(ca_country,United States), *IsNotNull(ca_address_sk), *Or(Or(In(ca_state, [IN,NJ,OH]),In(ca_state, [CT,KY,WI])),In(ca_state, [AR,IA,LA]))] ReadSchema: struct (37) FilterExecTransformer @@ -272,7 +272,7 @@ Input [6]: [ws_quantity#4, ws_sold_date_sk#7, wr_reason_sk#13, wr_fee#15, wr_ref Output [2]: [r_reason_sk#29, r_reason_desc#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/reason] -PushedFilters: [IsNotNull(r_reason_sk)] +PushedFilters: [*IsNotNull(r_reason_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -366,7 +366,7 @@ ColumnarBroadcastExchange (74) Output [2]: [d_date_sk#28, d_year#53] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (71) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86.sf100/explain.txt index 350b7c89e5d..4d151026331 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86.sf100/explain.txt @@ -36,7 +36,7 @@ Output [3]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -66,7 +66,7 @@ Input [4]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3, d_date_sk#5] Output [3]: [i_item_sk#6, i_class#7, i_category#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -201,7 +201,7 @@ ColumnarBroadcastExchange (43) Output [2]: [d_date_sk#5, d_month_seq#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (40) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86/explain.txt index 350b7c89e5d..4d151026331 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q86/explain.txt @@ -36,7 +36,7 @@ Output [3]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -66,7 +66,7 @@ Input [4]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3, d_date_sk#5] Output [3]: [i_item_sk#6, i_class#7, i_category#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -201,7 +201,7 @@ ColumnarBroadcastExchange (43) Output [2]: [d_date_sk#5, d_month_seq#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (40) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87.sf100/explain.txt index f8ee9104cfc..48b5633ac89 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87.sf100/explain.txt @@ -84,7 +84,7 @@ Output [2]: [ss_customer_sk#1, ss_sold_date_sk#2] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#2), dynamicpruningexpression(ss_sold_date_sk#2 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -131,7 +131,7 @@ Input [2]: [ss_customer_sk#1, d_date#5] Output [3]: [c_customer_sk#7, c_first_name#8, c_last_name#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -230,7 +230,7 @@ Output [2]: [cs_bill_customer_sk#13, cs_sold_date_sk#14] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#14), dynamicpruningexpression(cs_sold_date_sk#14 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (38) FilterExecTransformer @@ -359,7 +359,7 @@ Output [2]: [ws_bill_customer_sk#23, ws_sold_date_sk#24] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#24), dynamicpruningexpression(ws_sold_date_sk#24 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -514,7 +514,7 @@ ColumnarBroadcastExchange (109) Output [3]: [d_date_sk#4, d_date#5, d_month_seq#35] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (106) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87/explain.txt index bdcfc2754ea..b2fc7abcb2e 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q87/explain.txt @@ -65,7 +65,7 @@ Output [2]: [ss_customer_sk#1, ss_sold_date_sk#2] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#2), dynamicpruningexpression(ss_sold_date_sk#2 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -95,7 +95,7 @@ Input [4]: [ss_customer_sk#1, ss_sold_date_sk#2, d_date_sk#4, d_date#5] Output [3]: [c_customer_sk#6, c_first_name#7, c_last_name#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -166,7 +166,7 @@ Output [2]: [cs_bill_customer_sk#10, cs_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#11), dynamicpruningexpression(cs_sold_date_sk#11 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -271,7 +271,7 @@ Output [2]: [ws_bill_customer_sk#18, ws_sold_date_sk#19] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#19), dynamicpruningexpression(ws_sold_date_sk#19 IN dynamicpruning#3)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (50) FilterExecTransformer @@ -402,7 +402,7 @@ ColumnarBroadcastExchange (82) Output [3]: [d_date_sk#4, d_date#5, d_month_seq#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (79) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88.sf100/explain.txt index 7023bffc4de..11a67b1063c 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88.sf100/explain.txt @@ -217,7 +217,7 @@ VeloxColumnarToRow (277) Output [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -232,7 +232,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Output [3]: [t_time_sk#5, t_hour#6, t_minute#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,8), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,8), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -271,7 +271,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, t_time_sk#5] Output [2]: [s_store_sk#8, s_store_name#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_name), EqualTo(s_store_name,ese), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_name), *EqualTo(s_store_name,ese), *IsNotNull(s_store_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -310,7 +310,7 @@ Input [3]: [ss_hdemo_sk#2, ss_store_sk#3, s_store_sk#8] Output [3]: [hd_demo_sk#10, hd_dep_count#11, hd_vehicle_count#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(Or(And(EqualTo(hd_dep_count,4),LessThanOrEqual(hd_vehicle_count,6)),And(EqualTo(hd_dep_count,2),LessThanOrEqual(hd_vehicle_count,4))),And(EqualTo(hd_dep_count,0),LessThanOrEqual(hd_vehicle_count,2))), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(Or(And(EqualTo(hd_dep_count,4),LessThanOrEqual(hd_vehicle_count,6)),And(EqualTo(hd_dep_count,2),LessThanOrEqual(hd_vehicle_count,4))),And(EqualTo(hd_dep_count,0),LessThanOrEqual(hd_vehicle_count,2))), *IsNotNull(hd_demo_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -380,7 +380,7 @@ Results [1]: [count(1)#15 AS h8_30_to_9#16] Output [4]: [ss_sold_time_sk#17, ss_hdemo_sk#18, ss_store_sk#19, ss_sold_date_sk#20] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (39) FilterExecTransformer @@ -395,7 +395,7 @@ Input [4]: [ss_sold_time_sk#17, ss_hdemo_sk#18, ss_store_sk#19, ss_sold_date_sk# Output [3]: [t_time_sk#21, t_hour#22, t_minute#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,9), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,9), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -521,7 +521,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#30, ss_hdemo_sk#31, ss_store_sk#32, ss_sold_date_sk#33] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (73) FilterExecTransformer @@ -536,7 +536,7 @@ Input [4]: [ss_sold_time_sk#30, ss_hdemo_sk#31, ss_store_sk#32, ss_sold_date_sk# Output [3]: [t_time_sk#34, t_hour#35, t_minute#36] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,9), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,9), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (76) FilterExecTransformer @@ -662,7 +662,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#43, ss_hdemo_sk#44, ss_store_sk#45, ss_sold_date_sk#46] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (107) FilterExecTransformer @@ -677,7 +677,7 @@ Input [4]: [ss_sold_time_sk#43, ss_hdemo_sk#44, ss_store_sk#45, ss_sold_date_sk# Output [3]: [t_time_sk#47, t_hour#48, t_minute#49] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,10), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,10), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (110) FilterExecTransformer @@ -803,7 +803,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#56, ss_hdemo_sk#57, ss_store_sk#58, ss_sold_date_sk#59] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (141) FilterExecTransformer @@ -818,7 +818,7 @@ Input [4]: [ss_sold_time_sk#56, ss_hdemo_sk#57, ss_store_sk#58, ss_sold_date_sk# Output [3]: [t_time_sk#60, t_hour#61, t_minute#62] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,10), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,10), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (144) FilterExecTransformer @@ -944,7 +944,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#69, ss_hdemo_sk#70, ss_store_sk#71, ss_sold_date_sk#72] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (175) FilterExecTransformer @@ -959,7 +959,7 @@ Input [4]: [ss_sold_time_sk#69, ss_hdemo_sk#70, ss_store_sk#71, ss_sold_date_sk# Output [3]: [t_time_sk#73, t_hour#74, t_minute#75] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,11), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,11), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (178) FilterExecTransformer @@ -1085,7 +1085,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#82, ss_hdemo_sk#83, ss_store_sk#84, ss_sold_date_sk#85] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (209) FilterExecTransformer @@ -1100,7 +1100,7 @@ Input [4]: [ss_sold_time_sk#82, ss_hdemo_sk#83, ss_store_sk#84, ss_sold_date_sk# Output [3]: [t_time_sk#86, t_hour#87, t_minute#88] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,11), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,11), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (212) FilterExecTransformer @@ -1226,7 +1226,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#95, ss_hdemo_sk#96, ss_store_sk#97, ss_sold_date_sk#98] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (243) FilterExecTransformer @@ -1241,7 +1241,7 @@ Input [4]: [ss_sold_time_sk#95, ss_hdemo_sk#96, ss_store_sk#97, ss_sold_date_sk# Output [3]: [t_time_sk#99, t_hour#100, t_minute#101] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,12), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,12), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (246) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88/explain.txt index aee9531aad7..8f2e990482d 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q88/explain.txt @@ -217,7 +217,7 @@ VeloxColumnarToRow (277) Output [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -232,7 +232,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Output [3]: [hd_demo_sk#5, hd_dep_count#6, hd_vehicle_count#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [Or(Or(And(EqualTo(hd_dep_count,4),LessThanOrEqual(hd_vehicle_count,6)),And(EqualTo(hd_dep_count,2),LessThanOrEqual(hd_vehicle_count,4))),And(EqualTo(hd_dep_count,0),LessThanOrEqual(hd_vehicle_count,2))), IsNotNull(hd_demo_sk)] +PushedFilters: [*Or(Or(And(EqualTo(hd_dep_count,4),LessThanOrEqual(hd_vehicle_count,6)),And(EqualTo(hd_dep_count,2),LessThanOrEqual(hd_vehicle_count,4))),And(EqualTo(hd_dep_count,0),LessThanOrEqual(hd_vehicle_count,2))), *IsNotNull(hd_demo_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -271,7 +271,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, hd_demo_sk#5] Output [3]: [t_time_sk#8, t_hour#9, t_minute#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,8), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,8), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -310,7 +310,7 @@ Input [3]: [ss_sold_time_sk#1, ss_store_sk#3, t_time_sk#8] Output [2]: [s_store_sk#11, s_store_name#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_name), EqualTo(s_store_name,ese), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_name), *EqualTo(s_store_name,ese), *IsNotNull(s_store_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -380,7 +380,7 @@ Results [1]: [count(1)#15 AS h8_30_to_9#16] Output [4]: [ss_sold_time_sk#17, ss_hdemo_sk#18, ss_store_sk#19, ss_sold_date_sk#20] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (39) FilterExecTransformer @@ -414,7 +414,7 @@ Input [4]: [ss_sold_time_sk#17, ss_hdemo_sk#18, ss_store_sk#19, hd_demo_sk#21] Output [3]: [t_time_sk#22, t_hour#23, t_minute#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,9), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,9), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -521,7 +521,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#30, ss_hdemo_sk#31, ss_store_sk#32, ss_sold_date_sk#33] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (73) FilterExecTransformer @@ -555,7 +555,7 @@ Input [4]: [ss_sold_time_sk#30, ss_hdemo_sk#31, ss_store_sk#32, hd_demo_sk#34] Output [3]: [t_time_sk#35, t_hour#36, t_minute#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,9), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,9), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (81) FilterExecTransformer @@ -662,7 +662,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#43, ss_hdemo_sk#44, ss_store_sk#45, ss_sold_date_sk#46] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (107) FilterExecTransformer @@ -696,7 +696,7 @@ Input [4]: [ss_sold_time_sk#43, ss_hdemo_sk#44, ss_store_sk#45, hd_demo_sk#47] Output [3]: [t_time_sk#48, t_hour#49, t_minute#50] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,10), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,10), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (115) FilterExecTransformer @@ -803,7 +803,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#56, ss_hdemo_sk#57, ss_store_sk#58, ss_sold_date_sk#59] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (141) FilterExecTransformer @@ -837,7 +837,7 @@ Input [4]: [ss_sold_time_sk#56, ss_hdemo_sk#57, ss_store_sk#58, hd_demo_sk#60] Output [3]: [t_time_sk#61, t_hour#62, t_minute#63] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,10), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,10), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (149) FilterExecTransformer @@ -944,7 +944,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#69, ss_hdemo_sk#70, ss_store_sk#71, ss_sold_date_sk#72] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (175) FilterExecTransformer @@ -978,7 +978,7 @@ Input [4]: [ss_sold_time_sk#69, ss_hdemo_sk#70, ss_store_sk#71, hd_demo_sk#73] Output [3]: [t_time_sk#74, t_hour#75, t_minute#76] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,11), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,11), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (183) FilterExecTransformer @@ -1085,7 +1085,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#82, ss_hdemo_sk#83, ss_store_sk#84, ss_sold_date_sk#85] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (209) FilterExecTransformer @@ -1119,7 +1119,7 @@ Input [4]: [ss_sold_time_sk#82, ss_hdemo_sk#83, ss_store_sk#84, hd_demo_sk#86] Output [3]: [t_time_sk#87, t_hour#88, t_minute#89] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,11), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,11), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (217) FilterExecTransformer @@ -1226,7 +1226,7 @@ Join condition: None Output [4]: [ss_sold_time_sk#95, ss_hdemo_sk#96, ss_store_sk#97, ss_sold_date_sk#98] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (243) FilterExecTransformer @@ -1260,7 +1260,7 @@ Input [4]: [ss_sold_time_sk#95, ss_hdemo_sk#96, ss_store_sk#97, hd_demo_sk#99] Output [3]: [t_time_sk#100, t_hour#101, t_minute#102] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,12), LessThan(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,12), *LessThan(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (251) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89.sf100/explain.txt index 0438365e65b..ae94c7c3d98 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89.sf100/explain.txt @@ -39,7 +39,7 @@ VeloxColumnarToRow (44) Output [4]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(In(i_category, [Books ,Electronics ,Sports ]),In(i_class, [computers ,football ,stereo ])),And(In(i_category, [Jewelry ,Men ,Women ]),In(i_class, [birdal ,dresses ,shirts ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(In(i_category, [Books ,Electronics ,Sports ]),In(i_class, [computers ,football ,stereo ])),And(In(i_category, [Jewelry ,Men ,Women ]),In(i_class, [birdal ,dresses ,shirts ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -65,7 +65,7 @@ Output [4]: [ss_item_sk#5, ss_store_sk#6, ss_sales_price#7, ss_sold_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (8) FilterExecTransformer @@ -105,7 +105,7 @@ Input [8]: [i_brand#2, i_class#3, i_category#4, ss_store_sk#6, ss_sales_price#7, Output [3]: [s_store_sk#12, s_store_name#13, s_company_name#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -232,7 +232,7 @@ ColumnarBroadcastExchange (49) Output [3]: [d_date_sk#10, d_year#25, d_moy#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (46) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89/explain.txt index f76fb453983..b5d0eea9178 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q89/explain.txt @@ -39,7 +39,7 @@ VeloxColumnarToRow (44) Output [4]: [i_item_sk#1, i_brand#2, i_class#3, i_category#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [Or(And(In(i_category, [Books ,Electronics ,Sports ]),In(i_class, [computers ,football ,stereo ])),And(In(i_category, [Jewelry ,Men ,Women ]),In(i_class, [birdal ,dresses ,shirts ]))), IsNotNull(i_item_sk)] +PushedFilters: [*Or(And(In(i_category, [Books ,Electronics ,Sports ]),In(i_class, [computers ,football ,stereo ])),And(In(i_category, [Jewelry ,Men ,Women ]),In(i_class, [birdal ,dresses ,shirts ]))), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Output [4]: [ss_item_sk#5, ss_store_sk#6, ss_sales_price#7, ss_sold_date_sk#8] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -105,7 +105,7 @@ Input [8]: [i_brand#2, i_class#3, i_category#4, ss_store_sk#6, ss_sales_price#7, Output [3]: [s_store_sk#12, s_store_name#13, s_company_name#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -232,7 +232,7 @@ ColumnarBroadcastExchange (49) Output [3]: [d_date_sk#10, d_year#25, d_moy#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (46) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9.sf100/explain.txt index 95366f4c925..13964d3ce24 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9.sf100/explain.txt @@ -9,7 +9,7 @@ VeloxColumnarToRow (5) Output [1]: [r_reason_sk#1] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/reason] -PushedFilters: [IsNotNull(r_reason_sk), EqualTo(r_reason_sk,1)] +PushedFilters: [*IsNotNull(r_reason_sk), *EqualTo(r_reason_sk,1)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ VeloxColumnarToRow (18) Output [4]: [ss_quantity#12, ss_ext_discount_amt#13, ss_net_paid#14, ss_sold_date_sk#15] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,1), LessThanOrEqual(ss_quantity,20)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,1), *LessThanOrEqual(ss_quantity,20)] ReadSchema: struct (7) FilterExecTransformer @@ -120,7 +120,7 @@ VeloxColumnarToRow (31) Output [4]: [ss_quantity#32, ss_ext_discount_amt#33, ss_net_paid#34, ss_sold_date_sk#35] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,21), LessThanOrEqual(ss_quantity,40)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,21), *LessThanOrEqual(ss_quantity,40)] ReadSchema: struct (20) FilterExecTransformer @@ -194,7 +194,7 @@ VeloxColumnarToRow (44) Output [4]: [ss_quantity#52, ss_ext_discount_amt#53, ss_net_paid#54, ss_sold_date_sk#55] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,41), LessThanOrEqual(ss_quantity,60)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,41), *LessThanOrEqual(ss_quantity,60)] ReadSchema: struct (33) FilterExecTransformer @@ -268,7 +268,7 @@ VeloxColumnarToRow (57) Output [4]: [ss_quantity#72, ss_ext_discount_amt#73, ss_net_paid#74, ss_sold_date_sk#75] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,61), LessThanOrEqual(ss_quantity,80)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,61), *LessThanOrEqual(ss_quantity,80)] ReadSchema: struct (46) FilterExecTransformer @@ -342,7 +342,7 @@ VeloxColumnarToRow (70) Output [4]: [ss_quantity#92, ss_ext_discount_amt#93, ss_net_paid#94, ss_sold_date_sk#95] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,81), LessThanOrEqual(ss_quantity,100)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,81), *LessThanOrEqual(ss_quantity,100)] ReadSchema: struct (59) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9/explain.txt index 95366f4c925..13964d3ce24 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q9/explain.txt @@ -9,7 +9,7 @@ VeloxColumnarToRow (5) Output [1]: [r_reason_sk#1] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/reason] -PushedFilters: [IsNotNull(r_reason_sk), EqualTo(r_reason_sk,1)] +PushedFilters: [*IsNotNull(r_reason_sk), *EqualTo(r_reason_sk,1)] ReadSchema: struct (2) FilterExecTransformer @@ -46,7 +46,7 @@ VeloxColumnarToRow (18) Output [4]: [ss_quantity#12, ss_ext_discount_amt#13, ss_net_paid#14, ss_sold_date_sk#15] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,1), LessThanOrEqual(ss_quantity,20)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,1), *LessThanOrEqual(ss_quantity,20)] ReadSchema: struct (7) FilterExecTransformer @@ -120,7 +120,7 @@ VeloxColumnarToRow (31) Output [4]: [ss_quantity#32, ss_ext_discount_amt#33, ss_net_paid#34, ss_sold_date_sk#35] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,21), LessThanOrEqual(ss_quantity,40)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,21), *LessThanOrEqual(ss_quantity,40)] ReadSchema: struct (20) FilterExecTransformer @@ -194,7 +194,7 @@ VeloxColumnarToRow (44) Output [4]: [ss_quantity#52, ss_ext_discount_amt#53, ss_net_paid#54, ss_sold_date_sk#55] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,41), LessThanOrEqual(ss_quantity,60)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,41), *LessThanOrEqual(ss_quantity,60)] ReadSchema: struct (33) FilterExecTransformer @@ -268,7 +268,7 @@ VeloxColumnarToRow (57) Output [4]: [ss_quantity#72, ss_ext_discount_amt#73, ss_net_paid#74, ss_sold_date_sk#75] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,61), LessThanOrEqual(ss_quantity,80)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,61), *LessThanOrEqual(ss_quantity,80)] ReadSchema: struct (46) FilterExecTransformer @@ -342,7 +342,7 @@ VeloxColumnarToRow (70) Output [4]: [ss_quantity#92, ss_ext_discount_amt#93, ss_net_paid#94, ss_sold_date_sk#95] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_quantity), GreaterThanOrEqual(ss_quantity,81), LessThanOrEqual(ss_quantity,100)] +PushedFilters: [*IsNotNull(ss_quantity), *GreaterThanOrEqual(ss_quantity,81), *LessThanOrEqual(ss_quantity,100)] ReadSchema: struct (59) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90.sf100/explain.txt index 416a39d6259..76359a92386 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90.sf100/explain.txt @@ -62,7 +62,7 @@ VeloxColumnarToRow (74) Output [4]: [ws_sold_time_sk#1, ws_ship_hdemo_sk#2, ws_web_page_sk#3, ws_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_hdemo_sk), IsNotNull(ws_sold_time_sk), IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_ship_hdemo_sk), *IsNotNull(ws_sold_time_sk), *IsNotNull(ws_web_page_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Input [4]: [ws_sold_time_sk#1, ws_ship_hdemo_sk#2, ws_web_page_sk#3, ws_sold_dat Output [2]: [wp_web_page_sk#5, wp_char_count#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_char_count), GreaterThanOrEqual(wp_char_count,5000), LessThanOrEqual(wp_char_count,5200), IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_char_count), *GreaterThanOrEqual(wp_char_count,5000), *LessThanOrEqual(wp_char_count,5200), *IsNotNull(wp_web_page_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -116,7 +116,7 @@ Input [4]: [ws_sold_time_sk#1, ws_ship_hdemo_sk#2, ws_web_page_sk#3, wp_web_page Output [2]: [hd_demo_sk#7, hd_dep_count#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_dep_count), EqualTo(hd_dep_count,6), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_dep_count), *EqualTo(hd_dep_count,6), *IsNotNull(hd_demo_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -155,7 +155,7 @@ Input [3]: [ws_sold_time_sk#1, ws_ship_hdemo_sk#2, hd_demo_sk#7] Output [2]: [t_time_sk#9, t_hour#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), GreaterThanOrEqual(t_hour,8), LessThanOrEqual(t_hour,9), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *GreaterThanOrEqual(t_hour,8), *LessThanOrEqual(t_hour,9), *IsNotNull(t_time_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -225,7 +225,7 @@ Results [1]: [count(1)#13 AS amc#14] Output [4]: [ws_sold_time_sk#15, ws_ship_hdemo_sk#16, ws_web_page_sk#17, ws_sold_date_sk#18] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_hdemo_sk), IsNotNull(ws_sold_time_sk), IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_ship_hdemo_sk), *IsNotNull(ws_sold_time_sk), *IsNotNull(ws_web_page_sk)] ReadSchema: struct (39) FilterExecTransformer @@ -278,7 +278,7 @@ Input [3]: [ws_sold_time_sk#15, ws_ship_hdemo_sk#16, hd_demo_sk#20] Output [2]: [t_time_sk#21, t_hour#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), GreaterThanOrEqual(t_hour,19), LessThanOrEqual(t_hour,20), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *GreaterThanOrEqual(t_hour,19), *LessThanOrEqual(t_hour,20), *IsNotNull(t_time_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90/explain.txt index 934e1618b7a..cd0eca4f8ee 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q90/explain.txt @@ -62,7 +62,7 @@ VeloxColumnarToRow (74) Output [4]: [ws_sold_time_sk#1, ws_ship_hdemo_sk#2, ws_web_page_sk#3, ws_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_hdemo_sk), IsNotNull(ws_sold_time_sk), IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_ship_hdemo_sk), *IsNotNull(ws_sold_time_sk), *IsNotNull(ws_web_page_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -77,7 +77,7 @@ Input [4]: [ws_sold_time_sk#1, ws_ship_hdemo_sk#2, ws_web_page_sk#3, ws_sold_dat Output [2]: [hd_demo_sk#5, hd_dep_count#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_dep_count), EqualTo(hd_dep_count,6), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_dep_count), *EqualTo(hd_dep_count,6), *IsNotNull(hd_demo_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -116,7 +116,7 @@ Input [4]: [ws_sold_time_sk#1, ws_ship_hdemo_sk#2, ws_web_page_sk#3, hd_demo_sk# Output [2]: [t_time_sk#7, t_hour#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), GreaterThanOrEqual(t_hour,8), LessThanOrEqual(t_hour,9), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *GreaterThanOrEqual(t_hour,8), *LessThanOrEqual(t_hour,9), *IsNotNull(t_time_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -155,7 +155,7 @@ Input [3]: [ws_sold_time_sk#1, ws_web_page_sk#3, t_time_sk#7] Output [2]: [wp_web_page_sk#9, wp_char_count#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_char_count), GreaterThanOrEqual(wp_char_count,5000), LessThanOrEqual(wp_char_count,5200), IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_char_count), *GreaterThanOrEqual(wp_char_count,5000), *LessThanOrEqual(wp_char_count,5200), *IsNotNull(wp_web_page_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -225,7 +225,7 @@ Results [1]: [count(1)#13 AS amc#14] Output [4]: [ws_sold_time_sk#15, ws_ship_hdemo_sk#16, ws_web_page_sk#17, ws_sold_date_sk#18] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_hdemo_sk), IsNotNull(ws_sold_time_sk), IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_ship_hdemo_sk), *IsNotNull(ws_sold_time_sk), *IsNotNull(ws_web_page_sk)] ReadSchema: struct (39) FilterExecTransformer @@ -259,7 +259,7 @@ Input [4]: [ws_sold_time_sk#15, ws_ship_hdemo_sk#16, ws_web_page_sk#17, hd_demo_ Output [2]: [t_time_sk#20, t_hour#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), GreaterThanOrEqual(t_hour,19), LessThanOrEqual(t_hour,20), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *GreaterThanOrEqual(t_hour,19), *LessThanOrEqual(t_hour,20), *IsNotNull(t_time_sk)] ReadSchema: struct (47) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91.sf100/explain.txt index 1dd416dcb5c..b7f18b8681f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91.sf100/explain.txt @@ -55,7 +55,7 @@ VeloxColumnarToRow (66) Output [4]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_hdemo_sk#3, c_current_addr_sk#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -66,7 +66,7 @@ Arguments: (((isnotnull(c_customer_sk#1) AND isnotnull(c_current_addr_sk#4)) AND Output [3]: [cd_demo_sk#5, cd_marital_status#6, cd_education_status#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Unknown )),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,Advanced Degree ))), IsNotNull(cd_demo_sk)] +PushedFilters: [*Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Unknown )),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,Advanced Degree ))), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -101,7 +101,7 @@ Input [7]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_hdemo_sk#3, c_curre Output [2]: [hd_demo_sk#8, hd_buy_potential#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_buy_potential), StringStartsWith(hd_buy_potential,Unknown), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_buy_potential), *StringStartsWith(hd_buy_potential,Unknown), *IsNotNull(hd_demo_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -140,7 +140,7 @@ Input [6]: [c_customer_sk#1, c_current_hdemo_sk#3, c_current_addr_sk#4, cd_marit Output [2]: [ca_address_sk#10, ca_gmt_offset#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-7.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-7.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -180,7 +180,7 @@ Output [4]: [cr_returning_customer_sk#12, cr_call_center_sk#13, cr_net_loss#14, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#15), dynamicpruningexpression(cr_returned_date_sk#15 IN dynamicpruning#16)] -PushedFilters: [IsNotNull(cr_call_center_sk), IsNotNull(cr_returning_customer_sk)] +PushedFilters: [*IsNotNull(cr_call_center_sk), *IsNotNull(cr_returning_customer_sk)] ReadSchema: struct (30) FilterExecTransformer @@ -234,7 +234,7 @@ Input [6]: [c_customer_sk#1, cd_marital_status#6, cd_education_status#7, cr_retu Output [4]: [cc_call_center_sk#18, cc_call_center_id#19, cc_name#20, cc_manager#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk)] +PushedFilters: [*IsNotNull(cc_call_center_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -345,7 +345,7 @@ ColumnarBroadcastExchange (71) Output [3]: [d_date_sk#17, d_year#31, d_moy#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (68) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91/explain.txt index 920bb3101ac..216c3a84a6d 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q91/explain.txt @@ -55,7 +55,7 @@ VeloxColumnarToRow (66) Output [4]: [cc_call_center_sk#1, cc_call_center_id#2, cc_name#3, cc_manager#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk)] +PushedFilters: [*IsNotNull(cc_call_center_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -67,7 +67,7 @@ Output [4]: [cr_returning_customer_sk#5, cr_call_center_sk#6, cr_net_loss#7, cr_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#8), dynamicpruningexpression(cr_returned_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cr_call_center_sk), IsNotNull(cr_returning_customer_sk)] +PushedFilters: [*IsNotNull(cr_call_center_sk), *IsNotNull(cr_returning_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -121,7 +121,7 @@ Input [7]: [cc_call_center_id#2, cc_name#3, cc_manager#4, cr_returning_customer_ Output [4]: [c_customer_sk#11, c_current_cdemo_sk#12, c_current_hdemo_sk#13, c_current_addr_sk#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -156,7 +156,7 @@ Input [9]: [cc_call_center_id#2, cc_name#3, cc_manager#4, cr_returning_customer_ Output [2]: [ca_address_sk#15, ca_gmt_offset#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_gmt_offset), EqualTo(ca_gmt_offset,-7.00), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_gmt_offset), *EqualTo(ca_gmt_offset,-7.00), *IsNotNull(ca_address_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -195,7 +195,7 @@ Input [8]: [cc_call_center_id#2, cc_name#3, cc_manager#4, cr_net_loss#7, c_curre Output [3]: [cd_demo_sk#17, cd_marital_status#18, cd_education_status#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Unknown )),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,Advanced Degree ))), IsNotNull(cd_demo_sk)] +PushedFilters: [*Or(And(EqualTo(cd_marital_status,M),EqualTo(cd_education_status,Unknown )),And(EqualTo(cd_marital_status,W),EqualTo(cd_education_status,Advanced Degree ))), *IsNotNull(cd_demo_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -230,7 +230,7 @@ Input [9]: [cc_call_center_id#2, cc_name#3, cc_manager#4, cr_net_loss#7, c_curre Output [2]: [hd_demo_sk#20, hd_buy_potential#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_buy_potential), StringStartsWith(hd_buy_potential,Unknown), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_buy_potential), *StringStartsWith(hd_buy_potential,Unknown), *IsNotNull(hd_demo_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -345,7 +345,7 @@ ColumnarBroadcastExchange (71) Output [3]: [d_date_sk#10, d_year#31, d_moy#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,1998), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,1998), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (68) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92.sf100/explain.txt index 7597830ca83..e68de8de282 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92.sf100/explain.txt @@ -43,7 +43,7 @@ VeloxColumnarToRow (49) Output [2]: [i_item_sk#1, i_manufact_id#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,350), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,350), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -73,7 +73,7 @@ Output [3]: [ws_item_sk#3, ws_ext_discount_amt#4, ws_sold_date_sk#5] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#5), dynamicpruningexpression(ws_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -171,7 +171,7 @@ Output [3]: [ws_item_sk#17, ws_ext_discount_amt#18, ws_sold_date_sk#19] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#19), dynamicpruningexpression(ws_sold_date_sk#19 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_ext_discount_amt)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_ext_discount_amt)] ReadSchema: struct (32) FilterExecTransformer @@ -267,7 +267,7 @@ VeloxColumnarToRow (61) Output [2]: [i_item_sk#1, i_manufact_id#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,350), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,350), *IsNotNull(i_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -327,7 +327,7 @@ ColumnarBroadcastExchange (66) Output [2]: [d_date_sk#8, d_date#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-01-27), LessThanOrEqual(d_date,2000-04-26), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-01-27), *LessThanOrEqual(d_date,2000-04-26), *IsNotNull(d_date_sk)] ReadSchema: struct (63) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92/explain.txt index 03c74f4331e..3967b847703 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q92/explain.txt @@ -44,7 +44,7 @@ Output [3]: [ws_item_sk#1, ws_ext_discount_amt#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_ext_discount_amt)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_ext_discount_amt)] ReadSchema: struct (2) FilterExecTransformer @@ -55,7 +55,7 @@ Arguments: (isnotnull(ws_item_sk#1) AND isnotnull(ws_ext_discount_amt#2)) Output [2]: [i_item_sk#5, i_manufact_id#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_manufact_id), EqualTo(i_manufact_id,350), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_manufact_id), *EqualTo(i_manufact_id,350), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -95,7 +95,7 @@ Output [3]: [ws_item_sk#7, ws_ext_discount_amt#8, ws_sold_date_sk#9] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#9), dynamicpruningexpression(ws_sold_date_sk#9 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -262,7 +262,7 @@ ColumnarBroadcastExchange (54) Output [2]: [d_date_sk#19, d_date#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,2000-01-27), LessThanOrEqual(d_date,2000-04-26), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,2000-01-27), *LessThanOrEqual(d_date,2000-04-26), *IsNotNull(d_date_sk)] ReadSchema: struct (51) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93.sf100/explain.txt index 4b1ffd84766..aa0c601c193 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93.sf100/explain.txt @@ -33,7 +33,7 @@ VeloxColumnarToRow (37) Output [5]: [sr_item_sk#1, sr_reason_sk#2, sr_ticket_number#3, sr_return_quantity#4, sr_returned_date_sk#5] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number), IsNotNull(sr_reason_sk)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number), *IsNotNull(sr_reason_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -48,7 +48,7 @@ Input [5]: [sr_item_sk#1, sr_reason_sk#2, sr_ticket_number#3, sr_return_quantity Output [2]: [r_reason_sk#6, r_reason_desc#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/reason] -PushedFilters: [IsNotNull(r_reason_desc), EqualTo(r_reason_desc,reason 28 ), IsNotNull(r_reason_sk)] +PushedFilters: [*IsNotNull(r_reason_desc), *EqualTo(r_reason_desc,reason 28 ), *IsNotNull(r_reason_sk)] ReadSchema: struct (5) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93/explain.txt index bfee34b4ebd..178894c35ed 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q93/explain.txt @@ -60,7 +60,7 @@ Input [5]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, s Output [5]: [sr_item_sk#8, sr_reason_sk#9, sr_ticket_number#10, sr_return_quantity#11, sr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number), IsNotNull(sr_reason_sk)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number), *IsNotNull(sr_reason_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -102,7 +102,7 @@ Input [9]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, s Output [2]: [r_reason_sk#14, r_reason_desc#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/reason] -PushedFilters: [IsNotNull(r_reason_desc), EqualTo(r_reason_desc,reason 28 ), IsNotNull(r_reason_sk)] +PushedFilters: [*IsNotNull(r_reason_desc), *EqualTo(r_reason_desc,reason 28 ), *IsNotNull(r_reason_sk)] ReadSchema: struct (19) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94.sf100/explain.txt index 97f2376b036..b018114a74f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94.sf100/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (59) Output [8]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_warehouse_sk#4, ws_order_number#5, ws_ext_ship_cost#6, ws_net_profit#7, ws_sold_date_sk#8] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_date_sk), IsNotNull(ws_ship_addr_sk), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_ship_date_sk), *IsNotNull(ws_ship_addr_sk), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -153,7 +153,7 @@ Join condition: None Output [2]: [ca_address_sk#20, ca_state#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,IL), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,IL), *IsNotNull(ca_address_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -192,7 +192,7 @@ Input [7]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_num Output [2]: [web_site_sk#22, web_company_name#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_company_name), EqualTo(web_company_name,pri ), IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_company_name), *EqualTo(web_company_name,pri ), *IsNotNull(web_site_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -231,7 +231,7 @@ Input [6]: [ws_ship_date_sk#1, ws_web_site_sk#3, ws_order_number#5, ws_ext_ship_ Output [2]: [d_date_sk#24, d_date#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-01), LessThanOrEqual(d_date,1999-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-01), *LessThanOrEqual(d_date,1999-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer @@ -323,7 +323,7 @@ VeloxColumnarToRow (71) Output [2]: [ca_address_sk#20, ca_state#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,IL), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,IL), *IsNotNull(ca_address_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -388,7 +388,7 @@ VeloxColumnarToRow (83) Output [2]: [web_site_sk#22, web_company_name#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_company_name), EqualTo(web_company_name,pri ), IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_company_name), *EqualTo(web_company_name,pri ), *IsNotNull(web_site_sk)] ReadSchema: struct (73) FilterExecTransformer @@ -453,7 +453,7 @@ VeloxColumnarToRow (95) Output [2]: [d_date_sk#24, d_date#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-01), LessThanOrEqual(d_date,1999-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-01), *LessThanOrEqual(d_date,1999-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (85) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94/explain.txt index 85b07dc84d2..719ea010219 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q94/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (59) Output [8]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_warehouse_sk#4, ws_order_number#5, ws_ext_ship_cost#6, ws_net_profit#7, ws_sold_date_sk#8] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_date_sk), IsNotNull(ws_ship_addr_sk), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_ship_date_sk), *IsNotNull(ws_ship_addr_sk), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -153,7 +153,7 @@ Join condition: None Output [2]: [d_date_sk#17, d_date#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-01), LessThanOrEqual(d_date,1999-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-01), *LessThanOrEqual(d_date,1999-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -192,7 +192,7 @@ Input [7]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_num Output [2]: [ca_address_sk#19, ca_state#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,IL), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,IL), *IsNotNull(ca_address_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -231,7 +231,7 @@ Input [6]: [ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_number#5, ws_ext_ship_ Output [2]: [web_site_sk#21, web_company_name#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_company_name), EqualTo(web_company_name,pri ), IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_company_name), *EqualTo(web_company_name,pri ), *IsNotNull(web_site_sk)] ReadSchema: struct (45) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95.sf100/explain.txt index e86dddc86f8..d7b46d36ff6 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95.sf100/explain.txt @@ -63,7 +63,7 @@ VeloxColumnarToRow (74) Output [7]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_number#4, ws_ext_ship_cost#5, ws_net_profit#6, ws_sold_date_sk#7] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_date_sk), IsNotNull(ws_ship_addr_sk), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_ship_date_sk), *IsNotNull(ws_ship_addr_sk), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -95,7 +95,7 @@ Input [6]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_num Output [3]: [ws_warehouse_sk#12, ws_order_number#13, ws_sold_date_sk#14] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_order_number), IsNotNull(ws_warehouse_sk)] +PushedFilters: [*IsNotNull(ws_order_number), *IsNotNull(ws_warehouse_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -152,7 +152,7 @@ Join condition: None Output [2]: [wr_order_number#18, wr_returned_date_sk#19] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number)] +PushedFilters: [*IsNotNull(wr_order_number)] ReadSchema: struct (24) FilterExecTransformer @@ -224,7 +224,7 @@ Join condition: None Output [2]: [ca_address_sk#25, ca_state#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,IL), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,IL), *IsNotNull(ca_address_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -263,7 +263,7 @@ Input [7]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_num Output [2]: [web_site_sk#27, web_company_name#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_company_name), EqualTo(web_company_name,pri ), IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_company_name), *EqualTo(web_company_name,pri ), *IsNotNull(web_site_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -302,7 +302,7 @@ Input [6]: [ws_ship_date_sk#1, ws_web_site_sk#3, ws_order_number#4, ws_ext_ship_ Output [2]: [d_date_sk#29, d_date#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-01), LessThanOrEqual(d_date,1999-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-01), *LessThanOrEqual(d_date,1999-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer @@ -394,7 +394,7 @@ VeloxColumnarToRow (86) Output [2]: [ca_address_sk#25, ca_state#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,IL), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,IL), *IsNotNull(ca_address_sk)] ReadSchema: struct (76) FilterExecTransformer @@ -459,7 +459,7 @@ VeloxColumnarToRow (98) Output [2]: [web_site_sk#27, web_company_name#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_company_name), EqualTo(web_company_name,pri ), IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_company_name), *EqualTo(web_company_name,pri ), *IsNotNull(web_site_sk)] ReadSchema: struct (88) FilterExecTransformer @@ -524,7 +524,7 @@ VeloxColumnarToRow (110) Output [2]: [d_date_sk#29, d_date#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-01), LessThanOrEqual(d_date,1999-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-01), *LessThanOrEqual(d_date,1999-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (100) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95/explain.txt index 2ea15db9ddc..11ec0247391 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q95/explain.txt @@ -64,7 +64,7 @@ VeloxColumnarToRow (75) Output [7]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_number#4, ws_ext_ship_cost#5, ws_net_profit#6, ws_sold_date_sk#7] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_ship_date_sk), IsNotNull(ws_ship_addr_sk), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_ship_date_sk), *IsNotNull(ws_ship_addr_sk), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Input [6]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_num Output [3]: [ws_warehouse_sk#9, ws_order_number#10, ws_sold_date_sk#11] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_order_number), IsNotNull(ws_warehouse_sk)] +PushedFilters: [*IsNotNull(ws_order_number), *IsNotNull(ws_warehouse_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -153,7 +153,7 @@ Join condition: None Output [2]: [wr_order_number#15, wr_returned_date_sk#16] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number)] +PushedFilters: [*IsNotNull(wr_order_number)] ReadSchema: struct (24) FilterExecTransformer @@ -229,7 +229,7 @@ Join condition: None Output [2]: [d_date_sk#22, d_date#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-01), LessThanOrEqual(d_date,1999-04-02), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-01), *LessThanOrEqual(d_date,1999-04-02), *IsNotNull(d_date_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -268,7 +268,7 @@ Input [7]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_num Output [2]: [ca_address_sk#24, ca_state#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_state), EqualTo(ca_state,IL), IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_state), *EqualTo(ca_state,IL), *IsNotNull(ca_address_sk)] ReadSchema: struct (52) FilterExecTransformer @@ -307,7 +307,7 @@ Input [6]: [ws_ship_addr_sk#2, ws_web_site_sk#3, ws_order_number#4, ws_ext_ship_ Output [2]: [web_site_sk#26, web_company_name#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_company_name), EqualTo(web_company_name,pri ), IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_company_name), *EqualTo(web_company_name,pri ), *IsNotNull(web_site_sk)] ReadSchema: struct (61) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96.sf100/explain.txt index 46266268bdf..fedc2193fbd 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96.sf100/explain.txt @@ -35,7 +35,7 @@ VeloxColumnarToRow (39) Output [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -50,7 +50,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Output [3]: [t_time_sk#5, t_hour#6, t_minute#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,20), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,20), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -89,7 +89,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, t_time_sk#5] Output [2]: [s_store_sk#8, s_store_name#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_name), EqualTo(s_store_name,ese), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_name), *EqualTo(s_store_name,ese), *IsNotNull(s_store_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -128,7 +128,7 @@ Input [3]: [ss_hdemo_sk#2, ss_store_sk#3, s_store_sk#8] Output [2]: [hd_demo_sk#10, hd_dep_count#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_dep_count), EqualTo(hd_dep_count,7), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_dep_count), *EqualTo(hd_dep_count,7), *IsNotNull(hd_demo_sk)] ReadSchema: struct (23) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96/explain.txt index e4b562b0a78..1b350534fe8 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q96/explain.txt @@ -35,7 +35,7 @@ VeloxColumnarToRow (39) Output [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_hdemo_sk), IsNotNull(ss_sold_time_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_hdemo_sk), *IsNotNull(ss_sold_time_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -50,7 +50,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_sold_date_sk#4] Output [2]: [hd_demo_sk#5, hd_dep_count#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_dep_count), EqualTo(hd_dep_count,7), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_dep_count), *EqualTo(hd_dep_count,7), *IsNotNull(hd_demo_sk)] ReadSchema: struct (5) FilterExecTransformer @@ -89,7 +89,7 @@ Input [4]: [ss_sold_time_sk#1, ss_hdemo_sk#2, ss_store_sk#3, hd_demo_sk#5] Output [3]: [t_time_sk#7, t_hour#8, t_minute#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/time_dim] -PushedFilters: [IsNotNull(t_hour), IsNotNull(t_minute), EqualTo(t_hour,20), GreaterThanOrEqual(t_minute,30), IsNotNull(t_time_sk)] +PushedFilters: [*IsNotNull(t_hour), *IsNotNull(t_minute), *EqualTo(t_hour,20), *GreaterThanOrEqual(t_minute,30), *IsNotNull(t_time_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -128,7 +128,7 @@ Input [3]: [ss_sold_time_sk#1, ss_store_sk#3, t_time_sk#7] Output [2]: [s_store_sk#10, s_store_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_name), EqualTo(s_store_name,ese), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_name), *EqualTo(s_store_name,ese), *IsNotNull(s_store_sk)] ReadSchema: struct (23) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97.sf100/explain.txt index 50f8f339132..58e52d01f3b 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97.sf100/explain.txt @@ -186,7 +186,7 @@ ColumnarBroadcastExchange (38) Output [2]: [d_date_sk#5, d_month_seq#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (35) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97/explain.txt index 50f8f339132..58e52d01f3b 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q97/explain.txt @@ -186,7 +186,7 @@ ColumnarBroadcastExchange (38) Output [2]: [d_date_sk#5, d_month_seq#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (35) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98.sf100/explain.txt index 7321cd491ee..9ab512593fa 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98.sf100/explain.txt @@ -43,7 +43,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -75,7 +75,7 @@ Input [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Output [6]: [i_item_sk#6, i_item_id#7, i_item_desc#8, i_current_price#9, i_class#10, i_category#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -245,7 +245,7 @@ ColumnarBroadcastExchange (54) Output [2]: [d_date_sk#13, d_date#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (51) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98/explain.txt index 32669d499c8..a7db24b2a7e 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q98/explain.txt @@ -37,7 +37,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -48,7 +48,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [6]: [i_item_sk#5, i_item_id#6, i_item_desc#7, i_current_price#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -211,7 +211,7 @@ ColumnarBroadcastExchange (46) Output [2]: [d_date_sk#11, d_date#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (43) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99.sf100/explain.txt index ecbd909507e..82d4c83cbbd 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99.sf100/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (46) Output [5]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_ship_mode_sk#3, cs_warehouse_sk#4, cs_sold_date_sk#5] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_warehouse_sk), IsNotNull(cs_ship_mode_sk), IsNotNull(cs_call_center_sk), IsNotNull(cs_ship_date_sk)] +PushedFilters: [*IsNotNull(cs_warehouse_sk), *IsNotNull(cs_ship_mode_sk), *IsNotNull(cs_call_center_sk), *IsNotNull(cs_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Arguments: (((isnotnull(cs_warehouse_sk#4) AND isnotnull(cs_ship_mode_sk#3)) AND Output [2]: [d_date_sk#6, d_month_seq#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -90,7 +90,7 @@ Input [6]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_ship_mode_sk#3, cs_wareho Output [2]: [sm_ship_mode_sk#8, sm_type#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/ship_mode] -PushedFilters: [IsNotNull(sm_ship_mode_sk)] +PushedFilters: [*IsNotNull(sm_ship_mode_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -125,7 +125,7 @@ Input [7]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_ship_mode_sk#3, cs_wareho Output [2]: [cc_call_center_sk#10, cc_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk)] +PushedFilters: [*IsNotNull(cc_call_center_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -160,7 +160,7 @@ Input [7]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_warehouse_sk#4, cs_sold_d Output [2]: [w_warehouse_sk#12, w_warehouse_name#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (29) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99/explain.txt index 237c79b64b4..26ac9e6c56a 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v1_4/q99/explain.txt @@ -40,7 +40,7 @@ VeloxColumnarToRow (46) Output [5]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_ship_mode_sk#3, cs_warehouse_sk#4, cs_sold_date_sk#5] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_warehouse_sk), IsNotNull(cs_ship_mode_sk), IsNotNull(cs_call_center_sk), IsNotNull(cs_ship_date_sk)] +PushedFilters: [*IsNotNull(cs_warehouse_sk), *IsNotNull(cs_ship_mode_sk), *IsNotNull(cs_call_center_sk), *IsNotNull(cs_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -51,7 +51,7 @@ Arguments: (((isnotnull(cs_warehouse_sk#4) AND isnotnull(cs_ship_mode_sk#3)) AND Output [2]: [w_warehouse_sk#6, w_warehouse_name#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -86,7 +86,7 @@ Input [7]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_ship_mode_sk#3, cs_wareho Output [2]: [sm_ship_mode_sk#8, sm_type#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/ship_mode] -PushedFilters: [IsNotNull(sm_ship_mode_sk)] +PushedFilters: [*IsNotNull(sm_ship_mode_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -121,7 +121,7 @@ Input [7]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_ship_mode_sk#3, cs_sold_d Output [2]: [cc_call_center_sk#10, cc_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk)] +PushedFilters: [*IsNotNull(cc_call_center_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -156,7 +156,7 @@ Input [7]: [cs_ship_date_sk#1, cs_call_center_sk#2, cs_sold_date_sk#5, w_warehou Output [2]: [d_date_sk#12, d_month_seq#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (28) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a.sf100/explain.txt index 1abbd31e210..f9495bb6842 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a.sf100/explain.txt @@ -60,7 +60,7 @@ VeloxColumnarToRow (74) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -241,7 +241,7 @@ Input [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#20, ca_county#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -294,7 +294,7 @@ Input [1]: [c_current_cdemo_sk#2] Output [9]: [cd_demo_sk#22, cd_gender#23, cd_marital_status#24, cd_education_status#25, cd_purchase_estimate#26, cd_credit_rating#27, cd_dep_count#28, cd_dep_employed_count#29, cd_dep_college_count#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (60) FilterExecTransformer @@ -379,7 +379,7 @@ VeloxColumnarToRow (86) Output [2]: [ca_address_sk#20, ca_county#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (76) FilterExecTransformer @@ -451,7 +451,7 @@ ColumnarBroadcastExchange (91) Output [3]: [d_date_sk#9, d_year#46, d_moy#47] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2002), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,7), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2002), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,7), *IsNotNull(d_date_sk)] ReadSchema: struct (88) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a/explain.txt index 8ab983ce495..2e74cf669fd 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q10a/explain.txt @@ -52,7 +52,7 @@ VeloxColumnarToRow (62) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -192,7 +192,7 @@ Input [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#16, ca_county#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_county, [Dona Ana County,Douglas County,Gaines County,Richland County,Walker County]), *IsNotNull(ca_address_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -231,7 +231,7 @@ Input [3]: [c_current_cdemo_sk#2, c_current_addr_sk#3, ca_address_sk#16] Output [9]: [cd_demo_sk#18, cd_gender#19, cd_marital_status#20, cd_education_status#21, cd_purchase_estimate#22, cd_credit_rating#23, cd_dep_count#24, cd_dep_employed_count#25, cd_dep_college_count#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -325,7 +325,7 @@ ColumnarBroadcastExchange (67) Output [3]: [d_date_sk#7, d_year#37, d_moy#38] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2002), GreaterThanOrEqual(d_moy,4), LessThanOrEqual(d_moy,7), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2002), *GreaterThanOrEqual(d_moy,4), *LessThanOrEqual(d_moy,7), *IsNotNull(d_date_sk)] ReadSchema: struct (64) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11.sf100/explain.txt index 890a27a1212..64b4e101bb0 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11.sf100/explain.txt @@ -113,7 +113,7 @@ Output [4]: [ss_customer_sk#1, ss_ext_discount_amt#2, ss_ext_list_price#3, ss_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -160,7 +160,7 @@ Input [4]: [ss_customer_sk#1, ss_ext_discount_amt#2, ss_ext_list_price#3, d_year Output [8]: [c_customer_sk#9, c_customer_id#10, c_first_name#11, c_last_name#12, c_preferred_cust_flag#13, c_birth_country#14, c_login#15, c_email_address#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (14) FilterExecTransformer @@ -267,7 +267,7 @@ Output [4]: [ss_customer_sk#26, ss_ext_discount_amt#27, ss_ext_list_price#28, ss Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#29), dynamicpruningexpression(ss_sold_date_sk#29 IN dynamicpruning#30)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -396,7 +396,7 @@ Output [4]: [ws_bill_customer_sk#52, ws_ext_discount_amt#53, ws_ext_list_price#5 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#55), dynamicpruningexpression(ws_sold_date_sk#55 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -537,7 +537,7 @@ Output [4]: [ws_bill_customer_sk#75, ws_ext_discount_amt#76, ws_ext_list_price#7 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#78), dynamicpruningexpression(ws_sold_date_sk#78 IN dynamicpruning#30)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (107) FilterExecTransformer @@ -688,7 +688,7 @@ ColumnarBroadcastExchange (145) Output [2]: [d_date_sk#6, d_year#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (143) FilterExecTransformer @@ -713,7 +713,7 @@ ColumnarBroadcastExchange (149) Output [2]: [d_date_sk#31, d_year#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (147) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11/explain.txt index 10dea88bacb..e1cdb5a6cad 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q11/explain.txt @@ -96,7 +96,7 @@ VeloxColumnarToRow (118) Output [8]: [c_customer_sk#1, c_customer_id#2, c_first_name#3, c_last_name#4, c_preferred_cust_flag#5, c_birth_country#6, c_login#7, c_email_address#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (2) FilterExecTransformer @@ -108,7 +108,7 @@ Output [4]: [ss_customer_sk#9, ss_ext_discount_amt#10, ss_ext_list_price#11, ss_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#12), dynamicpruningexpression(ss_sold_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -205,7 +205,7 @@ Arguments: (isnotnull(year_total#22) AND (year_total#22 > 0.00)) Output [8]: [c_customer_sk#23, c_customer_id#24, c_first_name#25, c_last_name#26, c_preferred_cust_flag#27, c_birth_country#28, c_login#29, c_email_address#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (27) FilterExecTransformer @@ -217,7 +217,7 @@ Output [4]: [ss_customer_sk#31, ss_ext_discount_amt#32, ss_ext_list_price#33, ss Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#34), dynamicpruningexpression(ss_sold_date_sk#34 IN dynamicpruning#35)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -330,7 +330,7 @@ Join condition: None Output [8]: [c_customer_sk#47, c_customer_id#48, c_first_name#49, c_last_name#50, c_preferred_cust_flag#51, c_birth_country#52, c_login#53, c_email_address#54] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (56) FilterExecTransformer @@ -342,7 +342,7 @@ Output [4]: [ws_bill_customer_sk#55, ws_ext_discount_amt#56, ws_ext_list_price#5 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#58), dynamicpruningexpression(ws_sold_date_sk#58 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (58) FilterExecTransformer @@ -463,7 +463,7 @@ Input [9]: [customer_id#21, year_total#22, customer_id#42, customer_first_name#4 Output [8]: [c_customer_sk#68, c_customer_id#69, c_first_name#70, c_last_name#71, c_preferred_cust_flag#72, c_birth_country#73, c_login#74, c_email_address#75] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (87) FilterExecTransformer @@ -475,7 +475,7 @@ Output [4]: [ws_bill_customer_sk#76, ws_ext_discount_amt#77, ws_ext_list_price#7 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#79), dynamicpruningexpression(ws_sold_date_sk#79 IN dynamicpruning#35)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (89) FilterExecTransformer @@ -611,7 +611,7 @@ ColumnarBroadcastExchange (122) Output [2]: [d_date_sk#14, d_year#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (120) FilterExecTransformer @@ -636,7 +636,7 @@ ColumnarBroadcastExchange (126) Output [2]: [d_date_sk#36, d_year#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (124) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12.sf100/explain.txt index 814b1ecac1a..1427406739b 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12.sf100/explain.txt @@ -39,7 +39,7 @@ Output [3]: [ws_item_sk#1, ws_ext_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -71,7 +71,7 @@ Input [3]: [ws_item_sk#1, ws_ext_sales_price#2, ws_sold_date_sk#3] Output [6]: [i_item_sk#6, i_item_id#7, i_item_desc#8, i_current_price#9, i_class#10, i_category#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -220,7 +220,7 @@ ColumnarBroadcastExchange (48) Output [2]: [d_date_sk#13, d_date#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12/explain.txt index 009dceeb7c3..5c3b03f3e58 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q12/explain.txt @@ -33,7 +33,7 @@ Output [3]: [ws_item_sk#1, ws_ext_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -44,7 +44,7 @@ Arguments: isnotnull(ws_item_sk#1) Output [6]: [i_item_sk#5, i_item_id#6, i_item_desc#7, i_current_price#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -186,7 +186,7 @@ ColumnarBroadcastExchange (40) Output [2]: [d_date_sk#11, d_date#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14.sf100/explain.txt index 295c63b392f..0756a9211dd 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14.sf100/explain.txt @@ -120,7 +120,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -131,7 +131,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -143,7 +143,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -173,7 +173,7 @@ Input [3]: [ss_item_sk#10, ss_sold_date_sk#11, d_date_sk#13] Output [4]: [i_item_sk#14, i_brand_id#15, i_class_id#16, i_category_id#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (13) FilterExecTransformer @@ -206,7 +206,7 @@ Output [2]: [cs_item_sk#19, cs_sold_date_sk#20] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#20), dynamicpruningexpression(cs_sold_date_sk#20 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -236,7 +236,7 @@ Input [3]: [cs_item_sk#19, cs_sold_date_sk#20, d_date_sk#21] Output [4]: [i_item_sk#22, i_brand_id#23, i_class_id#24, i_category_id#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (28) FilterExecTransformer @@ -375,7 +375,7 @@ Output [2]: [ws_item_sk#32, ws_sold_date_sk#33] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#33), dynamicpruningexpression(ws_sold_date_sk#33 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -510,7 +510,7 @@ Input [5]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4, d_d Output [4]: [i_item_sk#42, i_brand_id#43, i_class_id#44, i_category_id#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (96) FilterExecTransformer @@ -604,7 +604,7 @@ Output [4]: [ss_item_sk#60, ss_quantity#61, ss_list_price#62, ss_sold_date_sk#63 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#63), dynamicpruningexpression(ss_sold_date_sk#63 IN dynamicpruning#64)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (118) FilterExecTransformer @@ -925,7 +925,7 @@ ColumnarBroadcastExchange (189) Output [2]: [d_date_sk#41, d_week_seq#109] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#110), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#110), *IsNotNull(d_date_sk)] ReadSchema: struct (186) FilterExecTransformer @@ -957,7 +957,7 @@ VeloxColumnarToRow (194) Output [4]: [d_week_seq#111, d_year#112, d_moy#113, d_dom#114] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,1999), EqualTo(d_moy,12), EqualTo(d_dom,16)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,1999), *EqualTo(d_moy,12), *EqualTo(d_dom,16)] ReadSchema: struct (191) FilterExecTransformer @@ -988,7 +988,7 @@ ColumnarBroadcastExchange (199) Output [2]: [d_date_sk#13, d_year#115] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1998), LessThanOrEqual(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1998), *LessThanOrEqual(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (196) FilterExecTransformer @@ -1024,7 +1024,7 @@ ColumnarBroadcastExchange (204) Output [2]: [d_date_sk#66, d_week_seq#116] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#117), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#117), *IsNotNull(d_date_sk)] ReadSchema: struct (201) FilterExecTransformer @@ -1056,7 +1056,7 @@ VeloxColumnarToRow (209) Output [4]: [d_week_seq#118, d_year#119, d_moy#120, d_dom#121] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,1998), EqualTo(d_moy,12), EqualTo(d_dom,16)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,1998), *EqualTo(d_moy,12), *EqualTo(d_dom,16)] ReadSchema: struct (206) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14/explain.txt index 657975c8dc7..19f24f07ed9 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14/explain.txt @@ -110,7 +110,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -121,7 +121,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -133,7 +133,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -144,7 +144,7 @@ Arguments: isnotnull(ss_item_sk#10) Output [4]: [i_item_sk#13, i_brand_id#14, i_class_id#15, i_category_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (8) FilterExecTransformer @@ -156,7 +156,7 @@ Output [2]: [cs_item_sk#17, cs_sold_date_sk#18] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#18), dynamicpruningexpression(cs_sold_date_sk#18 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -167,7 +167,7 @@ Arguments: isnotnull(cs_item_sk#17) Output [4]: [i_item_sk#19, i_brand_id#20, i_class_id#21, i_category_id#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -320,7 +320,7 @@ Output [2]: [ws_item_sk#29, ws_sold_date_sk#30] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#30), dynamicpruningexpression(ws_sold_date_sk#30 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (49) FilterExecTransformer @@ -433,7 +433,7 @@ Join condition: None Output [4]: [i_item_sk#37, i_brand_id#38, i_class_id#39, i_category_id#40] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (77) FilterExecTransformer @@ -546,7 +546,7 @@ Output [4]: [ss_item_sk#56, ss_quantity#57, ss_list_price#58, ss_sold_date_sk#59 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#59), dynamicpruningexpression(ss_sold_date_sk#59 IN dynamicpruning#60)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (104) FilterExecTransformer @@ -867,7 +867,7 @@ ColumnarBroadcastExchange (175) Output [2]: [d_date_sk#41, d_week_seq#105] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#106), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#106), *IsNotNull(d_date_sk)] ReadSchema: struct (172) FilterExecTransformer @@ -899,7 +899,7 @@ VeloxColumnarToRow (180) Output [4]: [d_week_seq#107, d_year#108, d_moy#109, d_dom#110] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,1999), EqualTo(d_moy,12), EqualTo(d_dom,16)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,1999), *EqualTo(d_moy,12), *EqualTo(d_dom,16)] ReadSchema: struct (177) FilterExecTransformer @@ -930,7 +930,7 @@ ColumnarBroadcastExchange (185) Output [2]: [d_date_sk#24, d_year#111] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1998), LessThanOrEqual(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1998), *LessThanOrEqual(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (182) FilterExecTransformer @@ -966,7 +966,7 @@ ColumnarBroadcastExchange (190) Output [2]: [d_date_sk#66, d_week_seq#112] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), EqualTo(d_week_seq,ScalarSubquery#113), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *EqualTo(d_week_seq,ScalarSubquery#113), *IsNotNull(d_date_sk)] ReadSchema: struct (187) FilterExecTransformer @@ -998,7 +998,7 @@ VeloxColumnarToRow (195) Output [4]: [d_week_seq#114, d_year#115, d_moy#116, d_dom#117] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), IsNotNull(d_dom), EqualTo(d_year,1998), EqualTo(d_moy,12), EqualTo(d_dom,16)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *IsNotNull(d_dom), *EqualTo(d_year,1998), *EqualTo(d_moy,12), *EqualTo(d_dom,16)] ReadSchema: struct (192) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a.sf100/explain.txt index bc14ae597ee..4414322d92f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a.sf100/explain.txt @@ -248,7 +248,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -259,7 +259,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -271,7 +271,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -301,7 +301,7 @@ Input [3]: [ss_item_sk#10, ss_sold_date_sk#11, d_date_sk#13] Output [4]: [i_item_sk#14, i_brand_id#15, i_class_id#16, i_category_id#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (13) FilterExecTransformer @@ -334,7 +334,7 @@ Output [2]: [cs_item_sk#19, cs_sold_date_sk#20] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#20), dynamicpruningexpression(cs_sold_date_sk#20 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (21) FilterExecTransformer @@ -364,7 +364,7 @@ Input [3]: [cs_item_sk#19, cs_sold_date_sk#20, d_date_sk#21] Output [4]: [i_item_sk#22, i_brand_id#23, i_class_id#24, i_category_id#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (28) FilterExecTransformer @@ -503,7 +503,7 @@ Output [2]: [ws_item_sk#32, ws_sold_date_sk#33] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#33), dynamicpruningexpression(ws_sold_date_sk#33 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -638,7 +638,7 @@ Input [5]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4, d_d Output [4]: [i_item_sk#42, i_brand_id#43, i_class_id#44, i_category_id#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (96) FilterExecTransformer @@ -736,7 +736,7 @@ Output [4]: [cs_item_sk#60, cs_quantity#61, cs_list_price#62, cs_sold_date_sk#63 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#63), dynamicpruningexpression(cs_sold_date_sk#63 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (119) FilterExecTransformer @@ -848,7 +848,7 @@ Output [4]: [ws_item_sk#83, ws_quantity#84, ws_list_price#85, ws_sold_date_sk#86 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#86), dynamicpruningexpression(ws_sold_date_sk#86 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (146) FilterExecTransformer @@ -1773,7 +1773,7 @@ ColumnarBroadcastExchange (366) Output [2]: [d_date_sk#296, d_year#312] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1998), LessThanOrEqual(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1998), *LessThanOrEqual(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (363) FilterExecTransformer @@ -1805,7 +1805,7 @@ ColumnarBroadcastExchange (371) Output [3]: [d_date_sk#41, d_year#313, d_moy#314] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (368) FilterExecTransformer @@ -1835,7 +1835,7 @@ ColumnarBroadcastExchange (376) Output [2]: [d_date_sk#13, d_year#315] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1999), LessThanOrEqual(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1999), *LessThanOrEqual(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (373) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a/explain.txt index b1c055bb740..32f90315087 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q14a/explain.txt @@ -238,7 +238,7 @@ Output [4]: [ss_item_sk#1, ss_quantity#2, ss_list_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -249,7 +249,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [4]: [i_item_sk#6, i_brand_id#7, i_class_id#8, i_category_id#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (4) FilterExecTransformer @@ -261,7 +261,7 @@ Output [2]: [ss_item_sk#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -272,7 +272,7 @@ Arguments: isnotnull(ss_item_sk#10) Output [4]: [i_item_sk#13, i_brand_id#14, i_class_id#15, i_category_id#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id)] ReadSchema: struct (8) FilterExecTransformer @@ -284,7 +284,7 @@ Output [2]: [cs_item_sk#17, cs_sold_date_sk#18] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#18), dynamicpruningexpression(cs_sold_date_sk#18 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -295,7 +295,7 @@ Arguments: isnotnull(cs_item_sk#17) Output [4]: [i_item_sk#19, i_brand_id#20, i_class_id#21, i_category_id#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -448,7 +448,7 @@ Output [2]: [ws_item_sk#29, ws_sold_date_sk#30] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#30), dynamicpruningexpression(ws_sold_date_sk#30 IN dynamicpruning#12)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (49) FilterExecTransformer @@ -561,7 +561,7 @@ Join condition: None Output [4]: [i_item_sk#37, i_brand_id#38, i_class_id#39, i_category_id#40] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (77) FilterExecTransformer @@ -678,7 +678,7 @@ Output [4]: [cs_item_sk#56, cs_quantity#57, cs_list_price#58, cs_sold_date_sk#59 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#59), dynamicpruningexpression(cs_sold_date_sk#59 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (105) FilterExecTransformer @@ -790,7 +790,7 @@ Output [4]: [ws_item_sk#79, ws_quantity#80, ws_list_price#81, ws_sold_date_sk#82 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#82), dynamicpruningexpression(ws_sold_date_sk#82 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (132) FilterExecTransformer @@ -1715,7 +1715,7 @@ ColumnarBroadcastExchange (352) Output [2]: [d_date_sk#292, d_year#308] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1998), LessThanOrEqual(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1998), *LessThanOrEqual(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (349) FilterExecTransformer @@ -1747,7 +1747,7 @@ ColumnarBroadcastExchange (357) Output [3]: [d_date_sk#41, d_year#309, d_moy#310] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,11), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,11), *IsNotNull(d_date_sk)] ReadSchema: struct (354) FilterExecTransformer @@ -1777,7 +1777,7 @@ ColumnarBroadcastExchange (362) Output [2]: [d_date_sk#24, d_year#311] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), GreaterThanOrEqual(d_year,1999), LessThanOrEqual(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *GreaterThanOrEqual(d_year,1999), *LessThanOrEqual(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (359) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a.sf100/explain.txt index e5249bb0a40..da9066db0c9 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a.sf100/explain.txt @@ -190,7 +190,7 @@ Output [9]: [cs_bill_customer_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#3, cs_quantit Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#9), dynamicpruningexpression(cs_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -201,7 +201,7 @@ Arguments: ((isnotnull(cs_bill_cdemo_sk#2) AND isnotnull(cs_bill_customer_sk#1)) Output [4]: [cd_demo_sk#11, cd_gender#12, cd_education_status#13, cd_dep_count#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -259,7 +259,7 @@ Input [10]: [cs_bill_customer_sk#1, cs_item_sk#3, cs_quantity#4, cs_list_price#5 Output [2]: [i_item_sk#16, i_item_id#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -311,7 +311,7 @@ Input [8]: [cs_bill_customer_sk#1, cs_quantity#4, cs_list_price#5, cs_sales_pric Output [5]: [c_customer_sk#19, c_current_cdemo_sk#20, c_current_addr_sk#21, c_birth_month#22, c_birth_year#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [In(c_birth_month, [1,10,12,4,5,9]), IsNotNull(c_customer_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*In(c_birth_month, [1,10,12,4,5,9]), *IsNotNull(c_customer_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (31) FilterExecTransformer @@ -326,7 +326,7 @@ Input [5]: [c_customer_sk#19, c_current_cdemo_sk#20, c_current_addr_sk#21, c_bir Output [4]: [ca_address_sk#24, ca_county#25, ca_state#26, ca_country#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -378,7 +378,7 @@ Input [6]: [c_customer_sk#19, c_current_cdemo_sk#20, c_birth_year#23, ca_county# Output [1]: [cd_demo_sk#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -495,7 +495,7 @@ Input [8]: [cs_bill_customer_sk#82, cs_quantity#83, cs_list_price#84, cs_sales_p Output [5]: [c_customer_sk#90, c_current_cdemo_sk#91, c_current_addr_sk#92, c_birth_month#93, c_birth_year#94] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [In(c_birth_month, [1,10,12,4,5,9]), IsNotNull(c_customer_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*In(c_birth_month, [1,10,12,4,5,9]), *IsNotNull(c_customer_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (76) FilterExecTransformer @@ -510,7 +510,7 @@ Input [5]: [c_customer_sk#90, c_current_cdemo_sk#91, c_current_addr_sk#92, c_bir Output [3]: [ca_address_sk#95, ca_state#96, ca_country#97] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -660,7 +660,7 @@ Input [8]: [cs_bill_customer_sk#152, cs_quantity#153, cs_list_price#154, cs_sale Output [5]: [c_customer_sk#160, c_current_cdemo_sk#161, c_current_addr_sk#162, c_birth_month#163, c_birth_year#164] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [In(c_birth_month, [1,10,12,4,5,9]), IsNotNull(c_customer_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*In(c_birth_month, [1,10,12,4,5,9]), *IsNotNull(c_customer_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (117) FilterExecTransformer @@ -675,7 +675,7 @@ Input [5]: [c_customer_sk#160, c_current_cdemo_sk#161, c_current_addr_sk#162, c_ Output [3]: [ca_address_sk#165, ca_state#166, ca_country#167] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (120) FilterExecTransformer @@ -821,7 +821,7 @@ Output [9]: [cs_bill_customer_sk#223, cs_bill_cdemo_sk#224, cs_item_sk#225, cs_q Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#231), dynamicpruningexpression(cs_sold_date_sk#231 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (156) FilterExecTransformer @@ -870,7 +870,7 @@ Input [10]: [cs_bill_customer_sk#223, cs_item_sk#225, cs_quantity#226, cs_list_p Output [5]: [c_customer_sk#235, c_current_cdemo_sk#236, c_current_addr_sk#237, c_birth_month#238, c_birth_year#239] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [In(c_birth_month, [1,10,12,4,5,9]), IsNotNull(c_customer_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*In(c_birth_month, [1,10,12,4,5,9]), *IsNotNull(c_customer_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (168) FilterExecTransformer @@ -885,7 +885,7 @@ Input [5]: [c_customer_sk#235, c_current_cdemo_sk#236, c_current_addr_sk#237, c_ Output [2]: [ca_address_sk#240, ca_state#241] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (171) FilterExecTransformer @@ -938,7 +938,7 @@ Input [3]: [c_customer_sk#235, c_current_cdemo_sk#236, c_birth_year#239] Output [1]: [cd_demo_sk#242] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (184) FilterExecTransformer @@ -1046,7 +1046,7 @@ Output [9]: [cs_bill_customer_sk#298, cs_bill_cdemo_sk#299, cs_item_sk#300, cs_q Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#306), dynamicpruningexpression(cs_sold_date_sk#306 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (209) FilterExecTransformer @@ -1095,7 +1095,7 @@ Input [10]: [cs_bill_customer_sk#298, cs_item_sk#300, cs_quantity#301, cs_list_p Output [1]: [i_item_sk#310] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (221) FilterExecTransformer @@ -1207,7 +1207,7 @@ ColumnarBroadcastExchange (249) Output [2]: [d_date_sk#15, d_year#366] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (246) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a/explain.txt index 35acd435776..c2fe08ab9c7 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q18a/explain.txt @@ -194,7 +194,7 @@ Output [9]: [cs_bill_customer_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#3, cs_quantit Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#9), dynamicpruningexpression(cs_sold_date_sk#9 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -205,7 +205,7 @@ Arguments: ((isnotnull(cs_bill_cdemo_sk#2) AND isnotnull(cs_bill_customer_sk#1)) Output [4]: [cd_demo_sk#11, cd_gender#12, cd_education_status#13, cd_dep_count#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_education_status), EqualTo(cd_gender,M), EqualTo(cd_education_status,College ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_education_status), *EqualTo(cd_gender,M), *EqualTo(cd_education_status,College ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -244,7 +244,7 @@ Input [11]: [cs_bill_customer_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#3, cs_quantit Output [5]: [c_customer_sk#15, c_current_cdemo_sk#16, c_current_addr_sk#17, c_birth_month#18, c_birth_year#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [In(c_birth_month, [1,10,12,4,5,9]), IsNotNull(c_customer_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*In(c_birth_month, [1,10,12,4,5,9]), *IsNotNull(c_customer_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -283,7 +283,7 @@ Input [13]: [cs_bill_customer_sk#1, cs_item_sk#3, cs_quantity#4, cs_list_price#5 Output [1]: [cd_demo_sk#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -318,7 +318,7 @@ Input [12]: [cs_item_sk#3, cs_quantity#4, cs_list_price#5, cs_sales_price#6, cs_ Output [4]: [ca_address_sk#21, ca_county#22, ca_state#23, ca_country#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (30) FilterExecTransformer @@ -372,7 +372,7 @@ Input [13]: [cs_item_sk#3, cs_quantity#4, cs_list_price#5, cs_sales_price#6, cs_ Output [2]: [i_item_sk#26, i_item_id#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -447,7 +447,7 @@ Output [9]: [cs_bill_customer_sk#78, cs_bill_cdemo_sk#79, cs_item_sk#80, cs_quan Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#86), dynamicpruningexpression(cs_sold_date_sk#86 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (60) FilterExecTransformer @@ -515,7 +515,7 @@ Input [12]: [cs_item_sk#80, cs_quantity#81, cs_list_price#82, cs_sales_price#83, Output [3]: [ca_address_sk#94, ca_state#95, ca_country#96] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (77) FilterExecTransformer @@ -632,7 +632,7 @@ Output [9]: [cs_bill_customer_sk#151, cs_bill_cdemo_sk#152, cs_item_sk#153, cs_q Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#159), dynamicpruningexpression(cs_sold_date_sk#159 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (105) FilterExecTransformer @@ -700,7 +700,7 @@ Input [12]: [cs_item_sk#153, cs_quantity#154, cs_list_price#155, cs_sales_price# Output [3]: [ca_address_sk#167, ca_state#168, ca_country#169] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (122) FilterExecTransformer @@ -821,7 +821,7 @@ Output [9]: [cs_bill_customer_sk#225, cs_bill_cdemo_sk#226, cs_item_sk#227, cs_q Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#233), dynamicpruningexpression(cs_sold_date_sk#233 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (151) FilterExecTransformer @@ -889,7 +889,7 @@ Input [12]: [cs_item_sk#227, cs_quantity#228, cs_list_price#229, cs_sales_price# Output [2]: [ca_address_sk#241, ca_state#242] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), IsNotNull(ca_address_sk)] +PushedFilters: [*In(ca_state, [AL,MS,NC,ND,OK,TN,WI]), *IsNotNull(ca_address_sk)] ReadSchema: struct (168) FilterExecTransformer @@ -1010,7 +1010,7 @@ Output [9]: [cs_bill_customer_sk#299, cs_bill_cdemo_sk#300, cs_item_sk#301, cs_q Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#307), dynamicpruningexpression(cs_sold_date_sk#307 IN dynamicpruning#10)] -PushedFilters: [IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_customer_sk), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_customer_sk), *IsNotNull(cs_item_sk)] ReadSchema: struct (197) FilterExecTransformer @@ -1116,7 +1116,7 @@ Input [10]: [cs_item_sk#301, cs_quantity#302, cs_list_price#303, cs_sales_price# Output [1]: [i_item_sk#317] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (224) FilterExecTransformer @@ -1209,7 +1209,7 @@ ColumnarBroadcastExchange (247) Output [2]: [d_date_sk#25, d_year#371] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (244) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20.sf100/explain.txt index 1046b971068..fde54fd6504 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20.sf100/explain.txt @@ -39,7 +39,7 @@ Output [3]: [cs_item_sk#1, cs_ext_sales_price#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -71,7 +71,7 @@ Input [3]: [cs_item_sk#1, cs_ext_sales_price#2, cs_sold_date_sk#3] Output [6]: [i_item_sk#6, i_item_id#7, i_item_desc#8, i_current_price#9, i_class#10, i_category#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -220,7 +220,7 @@ ColumnarBroadcastExchange (48) Output [2]: [d_date_sk#13, d_date#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (45) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20/explain.txt index 610e72b2cc2..6d936ccc19a 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q20/explain.txt @@ -33,7 +33,7 @@ Output [3]: [cs_item_sk#1, cs_ext_sales_price#2, cs_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#3), dynamicpruningexpression(cs_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -44,7 +44,7 @@ Arguments: isnotnull(cs_item_sk#1) Output [6]: [i_item_sk#5, i_item_id#6, i_item_desc#7, i_current_price#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -186,7 +186,7 @@ ColumnarBroadcastExchange (40) Output [2]: [d_date_sk#11, d_date#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22.sf100/explain.txt index b86f2360234..0816e5222b9 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22.sf100/explain.txt @@ -38,7 +38,7 @@ Output [3]: [inv_item_sk#1, inv_quantity_on_hand#2, inv_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#3), dynamicpruningexpression(inv_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -85,7 +85,7 @@ Input [2]: [inv_item_sk#1, inv_quantity_on_hand#2] Output [5]: [i_item_sk#7, i_brand#8, i_class#9, i_category#10, i_product_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (14) FilterExecTransformer @@ -218,7 +218,7 @@ ColumnarBroadcastExchange (47) Output [2]: [d_date_sk#5, d_month_seq#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (44) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22/explain.txt index 8e5c769af5f..341f0694e63 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22/explain.txt @@ -33,7 +33,7 @@ Output [3]: [inv_item_sk#1, inv_quantity_on_hand#2, inv_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#3), dynamicpruningexpression(inv_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(inv_item_sk)] +PushedFilters: [*IsNotNull(inv_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -63,7 +63,7 @@ Input [4]: [inv_item_sk#1, inv_quantity_on_hand#2, inv_date_sk#3, d_date_sk#5] Output [5]: [i_item_sk#6, i_brand#7, i_class#8, i_category#9, i_product_name#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -189,7 +189,7 @@ ColumnarBroadcastExchange (40) Output [2]: [d_date_sk#5, d_month_seq#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1200), LessThanOrEqual(d_month_seq,1211), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1200), *LessThanOrEqual(d_month_seq,1211), *IsNotNull(d_date_sk)] ReadSchema: struct (37) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a.sf100/explain.txt index f37ebb733b1..a91c79a9ecd 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a.sf100/explain.txt @@ -78,7 +78,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -89,7 +89,7 @@ Arguments: (isnotnull(inv_item_sk#1) AND isnotnull(inv_warehouse_sk#2)) Output [1]: [w_warehouse_sk#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -160,7 +160,7 @@ Input [2]: [inv_item_sk#1, inv_quantity_on_hand#3] Output [5]: [i_item_sk#9, i_brand#10, i_class#11, i_category#12, i_product_name#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -491,7 +491,7 @@ ColumnarBroadcastExchange (101) Output [2]: [d_date_sk#7, d_month_seq#93] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (98) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a/explain.txt index 4e1fc59144e..0a4515cbaa5 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q22a/explain.txt @@ -73,7 +73,7 @@ Output [4]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#4), dynamicpruningexpression(inv_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -103,7 +103,7 @@ Input [5]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, inv_date_ Output [5]: [i_item_sk#7, i_brand#8, i_class#9, i_category#10, i_product_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -138,7 +138,7 @@ Input [8]: [inv_item_sk#1, inv_warehouse_sk#2, inv_quantity_on_hand#3, i_item_sk Output [1]: [w_warehouse_sk#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -462,7 +462,7 @@ ColumnarBroadcastExchange (94) Output [2]: [d_date_sk#6, d_month_seq#91] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (91) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24.sf100/explain.txt index ff569f0dc94..1d3db8e6478 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24.sf100/explain.txt @@ -63,7 +63,7 @@ VeloxColumnarToRow (77) Output [5]: [s_store_sk#1, s_store_name#2, s_market_id#3, s_state#4, s_zip#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (2) FilterExecTransformer @@ -92,7 +92,7 @@ Input [4]: [s_store_sk#1, s_store_name#2, s_state#4, s_zip#5] Output [4]: [ca_address_sk#6, ca_state#7, ca_zip#8, ca_country#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (9) FilterExecTransformer @@ -127,7 +127,7 @@ Input [6]: [s_store_sk#1, s_store_name#2, s_state#4, ca_address_sk#6, ca_state#7 Output [5]: [c_customer_sk#10, c_current_addr_sk#11, c_first_name#12, c_last_name#13, c_birth_country#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk), IsNotNull(c_birth_country)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk), *IsNotNull(c_birth_country)] ReadSchema: struct (17) FilterExecTransformer @@ -162,7 +162,7 @@ Input [7]: [s_store_sk#1, s_store_name#2, s_state#4, ca_state#7, c_customer_sk#1 Output [6]: [ss_item_sk#15, ss_customer_sk#16, ss_store_sk#17, ss_ticket_number#18, ss_net_paid#19, ss_sold_date_sk#20] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -187,7 +187,7 @@ Input [12]: [s_store_sk#1, s_store_name#2, s_state#4, ca_state#7, c_customer_sk# Output [6]: [i_item_sk#21, i_current_price#22, i_size#23, i_color#24, i_units#25, i_manager_id#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_color), EqualTo(i_color,pale ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_color), *EqualTo(i_color,pale ), *IsNotNull(i_item_sk)] ReadSchema: struct (30) FilterExecTransformer @@ -239,7 +239,7 @@ Input [13]: [s_store_name#2, s_state#4, ca_state#7, c_first_name#12, c_last_name Output [3]: [sr_item_sk#28, sr_ticket_number#29, sr_returned_date_sk#30] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -436,7 +436,7 @@ Input [7]: [s_store_sk#46, s_store_name#47, s_state#48, ca_state#49, c_customer_ Output [6]: [ss_item_sk#53, ss_customer_sk#54, ss_store_sk#55, ss_ticket_number#56, ss_net_paid#57, ss_sold_date_sk#58] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (82) FilterExecTransformer @@ -478,7 +478,7 @@ Input [8]: [s_store_name#47, s_state#48, ca_state#49, c_first_name#51, c_last_na Output [6]: [i_item_sk#60, i_current_price#61, i_size#62, i_color#63, i_units#64, i_manager_id#65] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (92) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24/explain.txt index 77e14ac0c83..c6a2e654640 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q24/explain.txt @@ -63,7 +63,7 @@ VeloxColumnarToRow (77) Output [6]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, ss_net_paid#5, ss_sold_date_sk#6] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_sales] -PushedFilters: [IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -95,7 +95,7 @@ Input [5]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [3]: [sr_item_sk#8, sr_ticket_number#9, sr_returned_date_sk#10] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -137,7 +137,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_ticket_number#4, s Output [5]: [s_store_sk#12, s_store_name#13, s_market_id#14, s_state#15, s_zip#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_market_id), EqualTo(s_market_id,8), IsNotNull(s_store_sk), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_market_id), *EqualTo(s_market_id,8), *IsNotNull(s_store_sk), *IsNotNull(s_zip)] ReadSchema: struct (20) FilterExecTransformer @@ -176,7 +176,7 @@ Input [8]: [ss_item_sk#1, ss_customer_sk#2, ss_store_sk#3, ss_net_paid#5, s_stor Output [6]: [i_item_sk#17, i_current_price#18, i_size#19, i_color#20, i_units#21, i_manager_id#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_color), EqualTo(i_color,pale ), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_color), *EqualTo(i_color,pale ), *IsNotNull(i_item_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -211,7 +211,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_net_paid#5, s_store_name#13, s_s Output [5]: [c_customer_sk#23, c_current_addr_sk#24, c_first_name#25, c_last_name#26, c_birth_country#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_current_addr_sk), IsNotNull(c_birth_country)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_current_addr_sk), *IsNotNull(c_birth_country)] ReadSchema: struct (37) FilterExecTransformer @@ -246,7 +246,7 @@ Input [15]: [ss_customer_sk#2, ss_net_paid#5, s_store_name#13, s_state#15, s_zip Output [4]: [ca_address_sk#28, ca_state#29, ca_zip#30, ca_country#31] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk), IsNotNull(ca_country), IsNotNull(ca_zip)] +PushedFilters: [*IsNotNull(ca_address_sk), *IsNotNull(ca_country), *IsNotNull(ca_zip)] ReadSchema: struct (45) FilterExecTransformer @@ -473,7 +473,7 @@ Input [8]: [ss_item_sk#46, ss_customer_sk#47, ss_store_sk#48, ss_net_paid#50, s_ Output [6]: [i_item_sk#57, i_current_price#58, i_size#59, i_color#60, i_units#61, i_manager_id#62] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (92) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a.sf100/explain.txt index 6aa07cba054..d7424152f3d 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a.sf100/explain.txt @@ -95,7 +95,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -106,7 +106,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_store_sk#3)) AND isnotnul Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_marital_status,W), EqualTo(cd_education_status,Primary ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_marital_status,W), *EqualTo(cd_education_status,Primary ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -164,7 +164,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [s_store_sk#15, s_state#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -199,7 +199,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#17, i_item_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -278,7 +278,7 @@ Output [8]: [ss_item_sk#52, ss_cdemo_sk#53, ss_store_sk#54, ss_quantity#55, ss_l Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#59), dynamicpruningexpression(ss_sold_date_sk#59 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -308,7 +308,7 @@ Input [9]: [ss_item_sk#52, ss_cdemo_sk#53, ss_store_sk#54, ss_quantity#55, ss_li Output [2]: [s_store_sk#61, s_state#62] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -429,7 +429,7 @@ Output [8]: [ss_item_sk#100, ss_cdemo_sk#101, ss_store_sk#102, ss_quantity#103, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#107), dynamicpruningexpression(ss_sold_date_sk#107 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -497,7 +497,7 @@ Input [7]: [ss_item_sk#100, ss_quantity#103, ss_list_price#104, ss_sales_price#1 Output [1]: [i_item_sk#111] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -590,7 +590,7 @@ ColumnarBroadcastExchange (120) Output [2]: [d_date_sk#14, d_year#146] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (117) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a/explain.txt index 0114a1bc934..886f7114b86 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q27a/explain.txt @@ -95,7 +95,7 @@ Output [8]: [ss_item_sk#1, ss_cdemo_sk#2, ss_store_sk#3, ss_quantity#4, ss_list_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#8), dynamicpruningexpression(ss_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -106,7 +106,7 @@ Arguments: ((isnotnull(ss_cdemo_sk#2) AND isnotnull(ss_store_sk#3)) AND isnotnul Output [4]: [cd_demo_sk#10, cd_gender#11, cd_marital_status#12, cd_education_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_gender), IsNotNull(cd_marital_status), IsNotNull(cd_education_status), EqualTo(cd_gender,F), EqualTo(cd_marital_status,W), EqualTo(cd_education_status,Primary ), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_gender), *IsNotNull(cd_marital_status), *IsNotNull(cd_education_status), *EqualTo(cd_gender,F), *EqualTo(cd_marital_status,W), *EqualTo(cd_education_status,Primary ), *IsNotNull(cd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -164,7 +164,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [s_store_sk#15, s_state#16] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -199,7 +199,7 @@ Input [8]: [ss_item_sk#1, ss_store_sk#3, ss_quantity#4, ss_list_price#5, ss_sale Output [2]: [i_item_sk#17, i_item_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -278,7 +278,7 @@ Output [8]: [ss_item_sk#52, ss_cdemo_sk#53, ss_store_sk#54, ss_quantity#55, ss_l Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#59), dynamicpruningexpression(ss_sold_date_sk#59 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (44) FilterExecTransformer @@ -327,7 +327,7 @@ Input [8]: [ss_item_sk#52, ss_store_sk#54, ss_quantity#55, ss_list_price#56, ss_ Output [2]: [s_store_sk#62, s_state#63] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (56) FilterExecTransformer @@ -429,7 +429,7 @@ Output [8]: [ss_item_sk#100, ss_cdemo_sk#101, ss_store_sk#102, ss_quantity#103, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#107), dynamicpruningexpression(ss_sold_date_sk#107 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(ss_cdemo_sk), IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_cdemo_sk), *IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -497,7 +497,7 @@ Input [7]: [ss_item_sk#100, ss_store_sk#102, ss_quantity#103, ss_list_price#104, Output [1]: [i_item_sk#111] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -590,7 +590,7 @@ ColumnarBroadcastExchange (120) Output [2]: [d_date_sk#14, d_year#146] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1998), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1998), *IsNotNull(d_date_sk)] ReadSchema: struct (117) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34.sf100/explain.txt index 1dd7da0bd49..cb9f0fb38ef 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34.sf100/explain.txt @@ -50,7 +50,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -80,7 +80,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_county), EqualTo(s_county,Williamson County), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_county), *EqualTo(s_county,Williamson County), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -119,7 +119,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -218,7 +218,7 @@ Input [3]: [ss_ticket_number#4, ss_customer_sk#1, cnt#18] Output [5]: [c_customer_sk#20, c_salutation#21, c_first_name#22, c_last_name#23, c_preferred_cust_flag#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -297,7 +297,7 @@ ColumnarBroadcastExchange (63) Output [3]: [d_date_sk#7, d_year#26, d_dom#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (60) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34/explain.txt index df4e2adde5c..5ee23d243bc 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q34/explain.txt @@ -44,7 +44,7 @@ Output [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [6]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [2]: [s_store_sk#8, s_county#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_county), EqualTo(s_county,Williamson County), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_county), *EqualTo(s_county,Williamson County), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -113,7 +113,7 @@ Input [5]: [ss_customer_sk#1, ss_hdemo_sk#2, ss_store_sk#3, ss_ticket_number#4, Output [4]: [hd_demo_sk#10, hd_buy_potential#11, hd_dep_count#12, hd_vehicle_count#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_vehicle_count), Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), GreaterThan(hd_vehicle_count,0), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_vehicle_count), *Or(EqualTo(hd_buy_potential,>10000 ),EqualTo(hd_buy_potential,unknown )), *GreaterThan(hd_vehicle_count,0), *IsNotNull(hd_demo_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -191,7 +191,7 @@ Arguments: ((cnt#18 >= 15) AND (cnt#18 <= 20)) Output [5]: [c_customer_sk#19, c_salutation#20, c_first_name#21, c_last_name#22, c_preferred_cust_flag#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_customer_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -263,7 +263,7 @@ ColumnarBroadcastExchange (55) Output [3]: [d_date_sk#7, d_year#24, d_dom#25] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), In(d_year, [1999,2000,2001]), IsNotNull(d_date_sk)] +PushedFilters: [*Or(And(GreaterThanOrEqual(d_dom,1),LessThanOrEqual(d_dom,3)),And(GreaterThanOrEqual(d_dom,25),LessThanOrEqual(d_dom,28))), *In(d_year, [1999,2000,2001]), *IsNotNull(d_date_sk)] ReadSchema: struct (52) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35.sf100/explain.txt index 3000a8b09da..c8b83cdd3ba 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35.sf100/explain.txt @@ -71,7 +71,7 @@ VeloxColumnarToRow (88) Output [3]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -275,7 +275,7 @@ Input [2]: [c_current_cdemo_sk#4, c_current_addr_sk#5] Output [2]: [ca_address_sk#21, ca_state#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (53) FilterExecTransformer @@ -334,7 +334,7 @@ Input [2]: [c_current_cdemo_sk#4, ca_state#22] Output [6]: [cd_demo_sk#25, cd_gender#26, cd_marital_status#27, cd_dep_count#28, cd_dep_employed_count#29, cd_dep_college_count#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (68) FilterExecTransformer @@ -435,7 +435,7 @@ ColumnarBroadcastExchange (93) Output [3]: [d_date_sk#10, d_year#81, d_qoy#82] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_qoy), EqualTo(d_year,2002), LessThan(d_qoy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_qoy), *EqualTo(d_year,2002), *LessThan(d_qoy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (90) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35/explain.txt index d1400dd6864..41f88b253cd 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35/explain.txt @@ -54,7 +54,7 @@ VeloxColumnarToRow (65) Output [3]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -211,7 +211,7 @@ Input [5]: [c_customer_sk#3, c_current_cdemo_sk#4, c_current_addr_sk#5, exists#2 Output [2]: [ca_address_sk#16, ca_state#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (39) FilterExecTransformer @@ -246,7 +246,7 @@ Input [4]: [c_current_cdemo_sk#4, c_current_addr_sk#5, ca_address_sk#16, ca_stat Output [6]: [cd_demo_sk#18, cd_gender#19, cd_marital_status#20, cd_dep_count#21, cd_dep_employed_count#22, cd_dep_college_count#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -340,7 +340,7 @@ ColumnarBroadcastExchange (70) Output [3]: [d_date_sk#9, d_year#73, d_qoy#74] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_qoy), EqualTo(d_year,2002), LessThan(d_qoy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_qoy), *EqualTo(d_year,2002), *LessThan(d_qoy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (67) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a.sf100/explain.txt index db67fbac8f7..570c238e9ba 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a.sf100/explain.txt @@ -69,7 +69,7 @@ VeloxColumnarToRow (87) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -267,7 +267,7 @@ Input [2]: [c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#20, ca_state#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (52) FilterExecTransformer @@ -326,7 +326,7 @@ Input [2]: [c_current_cdemo_sk#2, ca_state#21] Output [6]: [cd_demo_sk#24, cd_gender#25, cd_marital_status#26, cd_dep_count#27, cd_dep_employed_count#28, cd_dep_college_count#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (67) FilterExecTransformer @@ -427,7 +427,7 @@ ColumnarBroadcastExchange (92) Output [3]: [d_date_sk#8, d_year#80, d_qoy#81] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_qoy), EqualTo(d_year,1999), LessThan(d_qoy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_qoy), *EqualTo(d_year,1999), *LessThan(d_qoy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (89) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a/explain.txt index d3cdb6ee8ce..5e36e57a96f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q35a/explain.txt @@ -51,7 +51,7 @@ VeloxColumnarToRow (61) Output [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_current_cdemo_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_current_cdemo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -191,7 +191,7 @@ Input [3]: [c_customer_sk#1, c_current_cdemo_sk#2, c_current_addr_sk#3] Output [2]: [ca_address_sk#16, ca_state#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -226,7 +226,7 @@ Input [4]: [c_current_cdemo_sk#2, c_current_addr_sk#3, ca_address_sk#16, ca_stat Output [6]: [cd_demo_sk#18, cd_gender#19, cd_marital_status#20, cd_dep_count#21, cd_dep_employed_count#22, cd_dep_college_count#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_demo_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -320,7 +320,7 @@ ColumnarBroadcastExchange (66) Output [3]: [d_date_sk#7, d_year#73, d_qoy#74] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_qoy), EqualTo(d_year,1999), LessThan(d_qoy,4), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_qoy), *EqualTo(d_year,1999), *LessThan(d_qoy,4), *IsNotNull(d_date_sk)] ReadSchema: struct (63) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a.sf100/explain.txt index 15d8c1c6a62..0c4555c2962 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a.sf100/explain.txt @@ -67,7 +67,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -97,7 +97,7 @@ Input [6]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [2]: [s_store_sk#8, s_state#9] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -136,7 +136,7 @@ Input [5]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [3]: [i_item_sk#10, i_class#11, i_category#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -413,7 +413,7 @@ ColumnarBroadcastExchange (86) Output [2]: [d_date_sk#7, d_year#73] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (83) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a/explain.txt index 0f250c25f0a..b6390f401fb 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q36a/explain.txt @@ -67,7 +67,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -97,7 +97,7 @@ Input [6]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [3]: [i_item_sk#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -132,7 +132,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_ext_sales_price#3, ss_net_profit#4, Output [2]: [s_store_sk#11, s_state#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_state), EqualTo(s_state,TN), IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_state), *EqualTo(s_state,TN), *IsNotNull(s_store_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -413,7 +413,7 @@ ColumnarBroadcastExchange (86) Output [2]: [d_date_sk#7, d_year#73] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (83) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47.sf100/explain.txt index 737a3fe7afc..0713cf7f7a7 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47.sf100/explain.txt @@ -75,7 +75,7 @@ Output [4]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -105,7 +105,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_sales_price#3, ss_sold_date_sk#4, d_ Output [3]: [s_store_sk#9, s_store_name#10, s_company_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_company_name)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_company_name)] ReadSchema: struct (9) FilterExecTransformer @@ -157,7 +157,7 @@ Input [6]: [ss_item_sk#1, ss_sales_price#3, d_year#7, d_moy#8, s_store_name#10, Output [3]: [i_item_sk#13, i_brand#14, i_category#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (22) FilterExecTransformer @@ -439,7 +439,7 @@ ColumnarBroadcastExchange (95) Output [3]: [d_date_sk#6, d_year#7, d_moy#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (93) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47/explain.txt index 484eae5a822..a54decfd420 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q47/explain.txt @@ -64,7 +64,7 @@ VeloxColumnarToRow (77) Output [3]: [i_item_sk#1, i_brand#2, i_category#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Output [4]: [ss_item_sk#4, ss_store_sk#5, ss_sales_price#6, ss_sold_date_sk#7] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_store_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -130,7 +130,7 @@ Input [8]: [i_brand#2, i_category#3, ss_store_sk#5, ss_sales_price#6, ss_sold_da Output [3]: [s_store_sk#12, s_store_name#13, s_company_name#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_company_name)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_company_name)] ReadSchema: struct (17) FilterExecTransformer @@ -382,7 +382,7 @@ ColumnarBroadcastExchange (81) Output [3]: [d_date_sk#9, d_year#10, d_moy#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (79) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49.sf100/explain.txt index 92adaddac86..f849271f6c4 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49.sf100/explain.txt @@ -109,7 +109,7 @@ Output [6]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4, ws_n Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#6), dynamicpruningexpression(ws_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ws_net_profit), IsNotNull(ws_net_paid), IsNotNull(ws_quantity), GreaterThan(ws_net_profit,1.00), GreaterThan(ws_net_paid,0.00), GreaterThan(ws_quantity,0), IsNotNull(ws_order_number), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_net_profit), *IsNotNull(ws_net_paid), *IsNotNull(ws_quantity), *GreaterThan(ws_net_profit,1.00), *GreaterThan(ws_net_paid,0.00), *GreaterThan(ws_quantity,0), *IsNotNull(ws_order_number), *IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -160,7 +160,7 @@ Input [4]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4] Output [5]: [wr_item_sk#10, wr_order_number#11, wr_return_quantity#12, wr_return_amt#13, wr_returned_date_sk#14] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_return_amt), GreaterThan(wr_return_amt,10000.00), IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_return_amt), *GreaterThan(wr_return_amt,10000.00), *IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (15) FilterExecTransformer @@ -270,7 +270,7 @@ Output [6]: [cs_item_sk#43, cs_order_number#44, cs_quantity#45, cs_net_paid#46, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#48), dynamicpruningexpression(cs_sold_date_sk#48 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(cs_net_profit), IsNotNull(cs_net_paid), IsNotNull(cs_quantity), GreaterThan(cs_net_profit,1.00), GreaterThan(cs_net_paid,0.00), GreaterThan(cs_quantity,0), IsNotNull(cs_order_number), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_net_profit), *IsNotNull(cs_net_paid), *IsNotNull(cs_quantity), *GreaterThan(cs_net_profit,1.00), *GreaterThan(cs_net_paid,0.00), *GreaterThan(cs_quantity,0), *IsNotNull(cs_order_number), *IsNotNull(cs_item_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -321,7 +321,7 @@ Input [4]: [cs_item_sk#43, cs_order_number#44, cs_quantity#45, cs_net_paid#46] Output [5]: [cr_item_sk#51, cr_order_number#52, cr_return_quantity#53, cr_return_amount#54, cr_returned_date_sk#55] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_return_amount), GreaterThan(cr_return_amount,10000.00), IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_return_amount), *GreaterThan(cr_return_amount,10000.00), *IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (54) FilterExecTransformer @@ -431,7 +431,7 @@ Output [6]: [ss_item_sk#84, ss_ticket_number#85, ss_quantity#86, ss_net_paid#87, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#89), dynamicpruningexpression(ss_sold_date_sk#89 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_net_profit), IsNotNull(ss_net_paid), IsNotNull(ss_quantity), GreaterThan(ss_net_profit,1.00), GreaterThan(ss_net_paid,0.00), GreaterThan(ss_quantity,0), IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_net_profit), *IsNotNull(ss_net_paid), *IsNotNull(ss_quantity), *GreaterThan(ss_net_profit,1.00), *GreaterThan(ss_net_paid,0.00), *GreaterThan(ss_quantity,0), *IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk)] ReadSchema: struct (80) FilterExecTransformer @@ -482,7 +482,7 @@ Input [4]: [ss_item_sk#84, ss_ticket_number#85, ss_quantity#86, ss_net_paid#87] Output [5]: [sr_item_sk#92, sr_ticket_number#93, sr_return_quantity#94, sr_return_amt#95, sr_returned_date_sk#96] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_return_amt), GreaterThan(sr_return_amt,10000.00), IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_return_amt), *GreaterThan(sr_return_amt,10000.00), *IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (93) FilterExecTransformer @@ -655,7 +655,7 @@ ColumnarBroadcastExchange (136) Output [3]: [d_date_sk#8, d_year#126, d_moy#127] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,12), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,12), *IsNotNull(d_date_sk)] ReadSchema: struct (133) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49/explain.txt index 2fef2d9abfb..9018bda5bd3 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q49/explain.txt @@ -97,7 +97,7 @@ Output [6]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4, ws_n Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#6), dynamicpruningexpression(ws_sold_date_sk#6 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ws_net_profit), IsNotNull(ws_net_paid), IsNotNull(ws_quantity), GreaterThan(ws_net_profit,1.00), GreaterThan(ws_net_paid,0.00), GreaterThan(ws_quantity,0), IsNotNull(ws_order_number), IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_net_profit), *IsNotNull(ws_net_paid), *IsNotNull(ws_quantity), *GreaterThan(ws_net_profit,1.00), *GreaterThan(ws_net_paid,0.00), *GreaterThan(ws_quantity,0), *IsNotNull(ws_order_number), *IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -126,7 +126,7 @@ Input [5]: [ws_item_sk#1, ws_order_number#2, ws_quantity#3, ws_net_paid#4, ws_so Output [5]: [wr_item_sk#8, wr_order_number#9, wr_return_quantity#10, wr_return_amt#11, wr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_return_amt), GreaterThan(wr_return_amt,10000.00), IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_return_amt), *GreaterThan(wr_return_amt,10000.00), *IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -238,7 +238,7 @@ Output [6]: [cs_item_sk#41, cs_order_number#42, cs_quantity#43, cs_net_paid#44, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#46), dynamicpruningexpression(cs_sold_date_sk#46 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(cs_net_profit), IsNotNull(cs_net_paid), IsNotNull(cs_quantity), GreaterThan(cs_net_profit,1.00), GreaterThan(cs_net_paid,0.00), GreaterThan(cs_quantity,0), IsNotNull(cs_order_number), IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_net_profit), *IsNotNull(cs_net_paid), *IsNotNull(cs_quantity), *GreaterThan(cs_net_profit,1.00), *GreaterThan(cs_net_paid,0.00), *GreaterThan(cs_quantity,0), *IsNotNull(cs_order_number), *IsNotNull(cs_item_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -267,7 +267,7 @@ Input [5]: [cs_item_sk#41, cs_order_number#42, cs_quantity#43, cs_net_paid#44, c Output [5]: [cr_item_sk#47, cr_order_number#48, cr_return_quantity#49, cr_return_amount#50, cr_returned_date_sk#51] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_return_amount), GreaterThan(cr_return_amount,10000.00), IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_return_amount), *GreaterThan(cr_return_amount,10000.00), *IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -379,7 +379,7 @@ Output [6]: [ss_item_sk#80, ss_ticket_number#81, ss_quantity#82, ss_net_paid#83, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#85), dynamicpruningexpression(ss_sold_date_sk#85 IN dynamicpruning#7)] -PushedFilters: [IsNotNull(ss_net_profit), IsNotNull(ss_net_paid), IsNotNull(ss_quantity), GreaterThan(ss_net_profit,1.00), GreaterThan(ss_net_paid,0.00), GreaterThan(ss_quantity,0), IsNotNull(ss_ticket_number), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_net_profit), *IsNotNull(ss_net_paid), *IsNotNull(ss_quantity), *GreaterThan(ss_net_profit,1.00), *GreaterThan(ss_net_paid,0.00), *GreaterThan(ss_quantity,0), *IsNotNull(ss_ticket_number), *IsNotNull(ss_item_sk)] ReadSchema: struct (68) FilterExecTransformer @@ -408,7 +408,7 @@ Input [5]: [ss_item_sk#80, ss_ticket_number#81, ss_quantity#82, ss_net_paid#83, Output [5]: [sr_item_sk#86, sr_ticket_number#87, sr_return_quantity#88, sr_return_amt#89, sr_returned_date_sk#90] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_return_amt), GreaterThan(sr_return_amt,10000.00), IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_return_amt), *GreaterThan(sr_return_amt,10000.00), *IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (75) FilterExecTransformer @@ -583,7 +583,7 @@ ColumnarBroadcastExchange (118) Output [3]: [d_date_sk#13, d_year#120, d_moy#121] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2001), EqualTo(d_moy,12), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2001), *EqualTo(d_moy,12), *IsNotNull(d_date_sk)] ReadSchema: struct (115) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a.sf100/explain.txt index 07d909db057..540dae34a0b 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a.sf100/explain.txt @@ -99,7 +99,7 @@ Output [3]: [ws_item_sk#1, ws_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -291,7 +291,7 @@ Output [3]: [ss_item_sk#26, ss_sales_price#27, ss_sold_date_sk#28] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#28), dynamicpruningexpression(ss_sold_date_sk#28 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -583,7 +583,7 @@ ColumnarBroadcastExchange (126) Output [3]: [d_date_sk#5, d_date#6, d_month_seq#65] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (123) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a/explain.txt index e2ceb364af5..bc38486bd46 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q51a/explain.txt @@ -103,7 +103,7 @@ Output [3]: [ws_item_sk#1, ws_sales_price#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -303,7 +303,7 @@ Output [3]: [ss_item_sk#29, ss_sales_price#30, ss_sold_date_sk#31] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#31), dynamicpruningexpression(ss_sold_date_sk#31 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (52) FilterExecTransformer @@ -617,7 +617,7 @@ ColumnarBroadcastExchange (132) Output [3]: [d_date_sk#5, d_date#6, d_month_seq#71] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (129) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57.sf100/explain.txt index 9333588fedd..74c402386ac 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57.sf100/explain.txt @@ -75,7 +75,7 @@ Output [4]: [cs_call_center_sk#1, cs_item_sk#2, cs_sales_price#3, cs_sold_date_s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#4), dynamicpruningexpression(cs_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_call_center_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_call_center_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -105,7 +105,7 @@ Input [7]: [cs_call_center_sk#1, cs_item_sk#2, cs_sales_price#3, cs_sold_date_sk Output [2]: [cc_call_center_sk#9, cc_name#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk), IsNotNull(cc_name)] +PushedFilters: [*IsNotNull(cc_call_center_sk), *IsNotNull(cc_name)] ReadSchema: struct (9) FilterExecTransformer @@ -157,7 +157,7 @@ Input [5]: [cs_item_sk#2, cs_sales_price#3, d_year#7, d_moy#8, cc_name#10] Output [3]: [i_item_sk#12, i_brand#13, i_category#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (22) FilterExecTransformer @@ -439,7 +439,7 @@ ColumnarBroadcastExchange (95) Output [3]: [d_date_sk#6, d_year#7, d_moy#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (93) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57/explain.txt index 254c229d7a7..61d44ae12f0 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q57/explain.txt @@ -64,7 +64,7 @@ VeloxColumnarToRow (77) Output [3]: [i_item_sk#1, i_brand#2, i_category#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk), IsNotNull(i_category), IsNotNull(i_brand)] +PushedFilters: [*IsNotNull(i_item_sk), *IsNotNull(i_category), *IsNotNull(i_brand)] ReadSchema: struct (2) FilterExecTransformer @@ -76,7 +76,7 @@ Output [4]: [cs_call_center_sk#4, cs_item_sk#5, cs_sales_price#6, cs_sold_date_s Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#7), dynamicpruningexpression(cs_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_call_center_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_call_center_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -130,7 +130,7 @@ Input [8]: [i_brand#2, i_category#3, cs_call_center_sk#4, cs_sales_price#6, cs_s Output [2]: [cc_call_center_sk#12, cc_name#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/call_center] -PushedFilters: [IsNotNull(cc_call_center_sk), IsNotNull(cc_name)] +PushedFilters: [*IsNotNull(cc_call_center_sk), *IsNotNull(cc_name)] ReadSchema: struct (17) FilterExecTransformer @@ -382,7 +382,7 @@ ColumnarBroadcastExchange (81) Output [3]: [d_date_sk#9, d_year#10, d_moy#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), IsNotNull(d_date_sk)] +PushedFilters: [*Or(Or(EqualTo(d_year,1999),And(EqualTo(d_year,1998),EqualTo(d_moy,12))),And(EqualTo(d_year,2000),EqualTo(d_moy,1))), *IsNotNull(d_date_sk)] ReadSchema: struct (79) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a.sf100/explain.txt index 54212c3b236..a0fcb8f399f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a.sf100/explain.txt @@ -127,7 +127,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -147,7 +147,7 @@ Output [4]: [sr_store_sk#12, sr_return_amt#13, sr_net_loss#14, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#15), dynamicpruningexpression(sr_returned_date_sk#15 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -175,7 +175,7 @@ Input [6]: [store_sk#6, date_sk#7, sales_price#8, profit#9, return_amt#10, net_l Output [2]: [s_store_sk#22, s_store_id#23] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -273,7 +273,7 @@ Output [4]: [cs_catalog_page_sk#47, cs_ext_sales_price#48, cs_net_profit#49, cs_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#50), dynamicpruningexpression(cs_sold_date_sk#50 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_catalog_page_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -293,7 +293,7 @@ Output [4]: [cr_catalog_page_sk#57, cr_return_amount#58, cr_net_loss#59, cr_retu Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#60), dynamicpruningexpression(cr_returned_date_sk#60 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cr_catalog_page_sk)] +PushedFilters: [*IsNotNull(cr_catalog_page_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -321,7 +321,7 @@ Input [6]: [page_sk#51, date_sk#52, sales_price#53, profit#54, return_amt#55, ne Output [2]: [cp_catalog_page_sk#67, cp_catalog_page_id#68] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (47) FilterExecTransformer @@ -419,7 +419,7 @@ Output [4]: [ws_web_site_sk#92, ws_ext_sales_price#93, ws_net_profit#94, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#95), dynamicpruningexpression(ws_sold_date_sk#95 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -466,7 +466,7 @@ Input [5]: [wr_item_sk#102, wr_order_number#103, wr_return_amt#104, wr_net_loss# Output [4]: [ws_item_sk#108, ws_web_site_sk#109, ws_order_number#110, ws_sold_date_sk#111] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_order_number), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_order_number), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (81) FilterExecTransformer @@ -521,7 +521,7 @@ Input [6]: [wsr_web_site_sk#96, date_sk#97, sales_price#98, profit#99, return_am Output [2]: [web_site_sk#119, web_site_id#120] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (95) FilterExecTransformer @@ -832,7 +832,7 @@ ColumnarBroadcastExchange (171) Output [2]: [d_date_sk#24, d_date#220] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1998-08-04), LessThanOrEqual(d_date,1998-08-18), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1998-08-04), *LessThanOrEqual(d_date,1998-08-18), *IsNotNull(d_date_sk)] ReadSchema: struct (168) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a/explain.txt index 41a7954d9ad..cc91f432031 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q5a/explain.txt @@ -122,7 +122,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -142,7 +142,7 @@ Output [4]: [sr_store_sk#12, sr_return_amt#13, sr_net_loss#14, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#15), dynamicpruningexpression(sr_returned_date_sk#15 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (6) FilterExecTransformer @@ -189,7 +189,7 @@ Input [7]: [store_sk#6, date_sk#7, sales_price#8, profit#9, return_amt#10, net_l Output [2]: [s_store_sk#23, s_store_id#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -268,7 +268,7 @@ Output [4]: [cs_catalog_page_sk#47, cs_ext_sales_price#48, cs_net_profit#49, cs_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#50), dynamicpruningexpression(cs_sold_date_sk#50 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cs_catalog_page_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk)] ReadSchema: struct (36) FilterExecTransformer @@ -288,7 +288,7 @@ Output [4]: [cr_catalog_page_sk#57, cr_return_amount#58, cr_net_loss#59, cr_retu Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cr_returned_date_sk#60), dynamicpruningexpression(cr_returned_date_sk#60 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(cr_catalog_page_sk)] +PushedFilters: [*IsNotNull(cr_catalog_page_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -335,7 +335,7 @@ Input [7]: [page_sk#51, date_sk#52, sales_price#53, profit#54, return_amt#55, ne Output [2]: [cp_catalog_page_sk#68, cp_catalog_page_id#69] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (52) FilterExecTransformer @@ -414,7 +414,7 @@ Output [4]: [ws_web_site_sk#92, ws_ext_sales_price#93, ws_net_profit#94, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#95), dynamicpruningexpression(ws_sold_date_sk#95 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -454,7 +454,7 @@ Input [5]: [wr_item_sk#102, wr_order_number#103, wr_return_amt#104, wr_net_loss# Output [4]: [ws_item_sk#107, ws_web_site_sk#108, ws_order_number#109, ws_sold_date_sk#110] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_sales] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_order_number), IsNotNull(ws_web_site_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_order_number), *IsNotNull(ws_web_site_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -511,7 +511,7 @@ Input [7]: [wsr_web_site_sk#96, date_sk#97, sales_price#98, profit#99, return_am Output [2]: [web_site_sk#118, web_site_id#119] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (93) FilterExecTransformer @@ -803,7 +803,7 @@ ColumnarBroadcastExchange (164) Output [2]: [d_date_sk#22, d_date#218] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1998-08-04), LessThanOrEqual(d_date,1998-08-18), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1998-08-04), *LessThanOrEqual(d_date,1998-08-18), *IsNotNull(d_date_sk)] ReadSchema: struct (161) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6.sf100/explain.txt index 6c0c272e0d6..0e6831bbb97 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6.sf100/explain.txt @@ -63,7 +63,7 @@ VeloxColumnarToRow (76) Output [3]: [i_item_sk#1, i_current_price#2, i_category#3] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), IsNotNull(i_category), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *IsNotNull(i_category), *IsNotNull(i_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Arguments: ((isnotnull(i_current_price#2) AND isnotnull(i_category#3)) AND isnot Output [2]: [i_current_price#4, i_category#5] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category)] +PushedFilters: [*IsNotNull(i_category)] ReadSchema: struct (4) FilterExecTransformer @@ -171,7 +171,7 @@ Output [3]: [ss_item_sk#14, ss_customer_sk#15, ss_sold_date_sk#16] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#16), dynamicpruningexpression(ss_sold_date_sk#16 IN dynamicpruning#17)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (27) FilterExecTransformer @@ -228,7 +228,7 @@ Input [1]: [ss_customer_sk#15] Output [2]: [ca_address_sk#20, ca_state#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (41) FilterExecTransformer @@ -260,7 +260,7 @@ Input [2]: [ca_address_sk#20, ca_state#21] Output [2]: [c_customer_sk#23, c_current_addr_sk#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_customer_sk)] ReadSchema: struct (49) FilterExecTransformer @@ -388,7 +388,7 @@ ColumnarBroadcastExchange (81) Output [2]: [d_date_sk#18, d_month_seq#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), EqualTo(d_month_seq,ScalarSubquery#34), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *EqualTo(d_month_seq,ScalarSubquery#34), *IsNotNull(d_date_sk)] ReadSchema: struct (78) FilterExecTransformer @@ -426,7 +426,7 @@ VeloxColumnarToRow (94) Output [3]: [d_month_seq#35, d_year#36, d_moy#37] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,1)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,1)] ReadSchema: struct (83) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6/explain.txt index 61d2509f7ac..1982afc567c 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q6/explain.txt @@ -53,7 +53,7 @@ VeloxColumnarToRow (62) Output [2]: [ca_address_sk#1, ca_state#2] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -64,7 +64,7 @@ Arguments: isnotnull(ca_address_sk#1) Output [2]: [c_customer_sk#3, c_current_addr_sk#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_current_addr_sk), IsNotNull(c_customer_sk)] +PushedFilters: [*IsNotNull(c_current_addr_sk), *IsNotNull(c_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -100,7 +100,7 @@ Output [3]: [ss_item_sk#5, ss_customer_sk#6, ss_sold_date_sk#7] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_customer_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -154,7 +154,7 @@ Input [4]: [ca_state#2, ss_item_sk#5, ss_sold_date_sk#7, d_date_sk#9] Output [3]: [i_item_sk#10, i_current_price#11, i_category#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), IsNotNull(i_category), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *IsNotNull(i_category), *IsNotNull(i_item_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -165,7 +165,7 @@ Arguments: ((isnotnull(i_current_price#11) AND isnotnull(i_category#12)) AND isn Output [2]: [i_current_price#13, i_category#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category)] +PushedFilters: [*IsNotNull(i_category)] ReadSchema: struct (27) FilterExecTransformer @@ -330,7 +330,7 @@ ColumnarBroadcastExchange (67) Output [2]: [d_date_sk#9, d_month_seq#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), EqualTo(d_month_seq,ScalarSubquery#30), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *EqualTo(d_month_seq,ScalarSubquery#30), *IsNotNull(d_date_sk)] ReadSchema: struct (64) FilterExecTransformer @@ -368,7 +368,7 @@ VeloxColumnarToRow (80) Output [3]: [d_month_seq#31, d_year#32, d_moy#33] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), IsNotNull(d_moy), EqualTo(d_year,2000), EqualTo(d_moy,1)] +PushedFilters: [*IsNotNull(d_year), *IsNotNull(d_moy), *EqualTo(d_year,2000), *EqualTo(d_moy,1)] ReadSchema: struct (69) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64.sf100/explain.txt index 8c519e9b938..68442efc7a5 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64.sf100/explain.txt @@ -263,7 +263,7 @@ Output [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_a Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#12), dynamicpruningexpression(ss_sold_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -295,7 +295,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [sr_item_sk#16, sr_ticket_number#17, sr_returned_date_sk#18] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (10) FilterExecTransformer @@ -337,7 +337,7 @@ Input [14]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [4]: [cs_item_sk#20, cs_order_number#21, cs_ext_list_price#22, cs_sold_date_sk#23] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_order_number)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_order_number)] ReadSchema: struct (20) FilterExecTransformer @@ -369,7 +369,7 @@ Input [3]: [cs_item_sk#20, cs_order_number#21, cs_ext_list_price#22] Output [6]: [cr_item_sk#25, cr_order_number#26, cr_refunded_cash#27, cr_reversed_charge#28, cr_store_credit#29, cr_returned_date_sk#30] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (28) FilterExecTransformer @@ -501,7 +501,7 @@ Input [13]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [s_store_sk#47, s_store_name#48, s_zip#49] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_zip)] ReadSchema: struct (60) FilterExecTransformer @@ -553,7 +553,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [6]: [c_customer_sk#51, c_current_cdemo_sk#52, c_current_hdemo_sk#53, c_current_addr_sk#54, c_first_shipto_date_sk#55, c_first_sales_date_sk#56] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_first_sales_date_sk), IsNotNull(c_first_shipto_date_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_first_sales_date_sk), *IsNotNull(c_first_shipto_date_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (73) FilterExecTransformer @@ -595,7 +595,7 @@ Input [18]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [2]: [d_date_sk#58, d_year#59] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (83) FilterExecTransformer @@ -666,7 +666,7 @@ Input [16]: [ss_item_sk#1, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_ Output [2]: [cd_demo_sk#63, cd_marital_status#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status)] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status)] ReadSchema: struct (101) FilterExecTransformer @@ -744,7 +744,7 @@ Input [18]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [1]: [p_promo_sk#69] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (121) FilterExecTransformer @@ -779,7 +779,7 @@ Input [15]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [2]: [hd_demo_sk#70, hd_income_band_sk#71] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)] +PushedFilters: [*IsNotNull(hd_demo_sk), *IsNotNull(hd_income_band_sk)] ReadSchema: struct (129) FilterExecTransformer @@ -850,7 +850,7 @@ Input [13]: [ss_item_sk#1, ss_addr_sk#5, ss_wholesale_cost#9, ss_list_price#10, Output [5]: [ca_address_sk#75, ca_street_number#76, ca_street_name#77, ca_city#78, ca_zip#79] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (147) FilterExecTransformer @@ -928,7 +928,7 @@ Input [21]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [1]: [ib_income_band_sk#87] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/income_band] -PushedFilters: [IsNotNull(ib_income_band_sk)] +PushedFilters: [*IsNotNull(ib_income_band_sk)] ReadSchema: struct (167) FilterExecTransformer @@ -982,7 +982,7 @@ Input [19]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [4]: [i_item_sk#89, i_current_price#90, i_color#91, i_product_name#92] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), *GreaterThanOrEqual(i_current_price,64.00), *LessThanOrEqual(i_current_price,74.00), *GreaterThanOrEqual(i_current_price,65.00), *LessThanOrEqual(i_current_price,79.00), *IsNotNull(i_item_sk)] ReadSchema: struct (180) FilterExecTransformer @@ -1078,7 +1078,7 @@ Output [12]: [ss_item_sk#127, ss_customer_sk#128, ss_cdemo_sk#129, ss_hdemo_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#138), dynamicpruningexpression(ss_sold_date_sk#138 IN dynamicpruning#139)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (203) FilterExecTransformer @@ -1626,7 +1626,7 @@ VeloxColumnarToRow (355) Output [3]: [i_item_sk#89, i_current_price#90, i_color#91] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), *GreaterThanOrEqual(i_current_price,64.00), *LessThanOrEqual(i_current_price,74.00), *GreaterThanOrEqual(i_current_price,65.00), *LessThanOrEqual(i_current_price,79.00), *IsNotNull(i_item_sk)] ReadSchema: struct (345) FilterExecTransformer @@ -1685,7 +1685,7 @@ ColumnarBroadcastExchange (359) Output [2]: [d_date_sk#45, d_year#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (357) FilterExecTransformer @@ -1724,7 +1724,7 @@ ColumnarBroadcastExchange (363) Output [2]: [d_date_sk#144, d_year#145] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (361) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64/explain.txt index 35ca65a0d45..7c97132ee73 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q64/explain.txt @@ -219,7 +219,7 @@ Output [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_a Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#12), dynamicpruningexpression(ss_sold_date_sk#12 IN dynamicpruning#13)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -244,7 +244,7 @@ Input [12]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [sr_item_sk#14, sr_ticket_number#15, sr_returned_date_sk#16] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (8) FilterExecTransformer @@ -286,7 +286,7 @@ Input [11]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [4]: [cs_item_sk#18, cs_order_number#19, cs_ext_list_price#20, cs_sold_date_sk#21] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_sales] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_order_number)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_order_number)] ReadSchema: struct (18) FilterExecTransformer @@ -318,7 +318,7 @@ Input [3]: [cs_item_sk#18, cs_order_number#19, cs_ext_list_price#20] Output [6]: [cr_item_sk#23, cr_order_number#24, cr_refunded_cash#25, cr_reversed_charge#26, cr_store_credit#27, cr_returned_date_sk#28] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (26) FilterExecTransformer @@ -436,7 +436,7 @@ Input [13]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [3]: [s_store_sk#45, s_store_name#46, s_zip#47] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk), IsNotNull(s_store_name), IsNotNull(s_zip)] +PushedFilters: [*IsNotNull(s_store_sk), *IsNotNull(s_store_name), *IsNotNull(s_zip)] ReadSchema: struct (54) FilterExecTransformer @@ -471,7 +471,7 @@ Input [14]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [6]: [c_customer_sk#48, c_current_cdemo_sk#49, c_current_hdemo_sk#50, c_current_addr_sk#51, c_first_shipto_date_sk#52, c_first_sales_date_sk#53] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_first_sales_date_sk), IsNotNull(c_first_shipto_date_sk), IsNotNull(c_current_cdemo_sk), IsNotNull(c_current_hdemo_sk), IsNotNull(c_current_addr_sk)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_first_sales_date_sk), *IsNotNull(c_first_shipto_date_sk), *IsNotNull(c_current_cdemo_sk), *IsNotNull(c_current_hdemo_sk), *IsNotNull(c_current_addr_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -506,7 +506,7 @@ Input [18]: [ss_item_sk#1, ss_customer_sk#2, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_ad Output [2]: [d_date_sk#54, d_year#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date_sk)] ReadSchema: struct (70) FilterExecTransformer @@ -560,7 +560,7 @@ Input [18]: [ss_item_sk#1, ss_cdemo_sk#3, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_ Output [2]: [cd_demo_sk#58, cd_marital_status#59] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_demo_sk), IsNotNull(cd_marital_status)] +PushedFilters: [*IsNotNull(cd_demo_sk), *IsNotNull(cd_marital_status)] ReadSchema: struct (83) FilterExecTransformer @@ -614,7 +614,7 @@ Input [18]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [1]: [p_promo_sk#62] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (96) FilterExecTransformer @@ -649,7 +649,7 @@ Input [15]: [ss_item_sk#1, ss_hdemo_sk#4, ss_addr_sk#5, ss_promo_sk#7, ss_wholes Output [2]: [hd_demo_sk#63, hd_income_band_sk#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_demo_sk), IsNotNull(hd_income_band_sk)] +PushedFilters: [*IsNotNull(hd_demo_sk), *IsNotNull(hd_income_band_sk)] ReadSchema: struct (104) FilterExecTransformer @@ -703,7 +703,7 @@ Input [15]: [ss_item_sk#1, ss_addr_sk#5, ss_wholesale_cost#9, ss_list_price#10, Output [5]: [ca_address_sk#67, ca_street_number#68, ca_street_name#69, ca_city#70, ca_zip#71] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_address] -PushedFilters: [IsNotNull(ca_address_sk)] +PushedFilters: [*IsNotNull(ca_address_sk)] ReadSchema: struct (117) FilterExecTransformer @@ -757,7 +757,7 @@ Input [21]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [1]: [ib_income_band_sk#77] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/income_band] -PushedFilters: [IsNotNull(ib_income_band_sk)] +PushedFilters: [*IsNotNull(ib_income_band_sk)] ReadSchema: struct (130) FilterExecTransformer @@ -811,7 +811,7 @@ Input [19]: [ss_item_sk#1, ss_wholesale_cost#9, ss_list_price#10, ss_coupon_amt# Output [4]: [i_item_sk#79, i_current_price#80, i_color#81, i_product_name#82] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), GreaterThanOrEqual(i_current_price,64.00), LessThanOrEqual(i_current_price,74.00), GreaterThanOrEqual(i_current_price,65.00), LessThanOrEqual(i_current_price,79.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *In(i_color, [burlywood ,floral ,indian ,medium ,purple ,spring ]), *GreaterThanOrEqual(i_current_price,64.00), *LessThanOrEqual(i_current_price,74.00), *GreaterThanOrEqual(i_current_price,65.00), *LessThanOrEqual(i_current_price,79.00), *IsNotNull(i_item_sk)] ReadSchema: struct (143) FilterExecTransformer @@ -879,7 +879,7 @@ Output [12]: [ss_item_sk#108, ss_customer_sk#109, ss_cdemo_sk#110, ss_hdemo_sk#1 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#119), dynamicpruningexpression(ss_sold_date_sk#119 IN dynamicpruning#120)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_ticket_number), IsNotNull(ss_store_sk), IsNotNull(ss_customer_sk), IsNotNull(ss_cdemo_sk), IsNotNull(ss_promo_sk), IsNotNull(ss_hdemo_sk), IsNotNull(ss_addr_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_ticket_number), *IsNotNull(ss_store_sk), *IsNotNull(ss_customer_sk), *IsNotNull(ss_cdemo_sk), *IsNotNull(ss_promo_sk), *IsNotNull(ss_hdemo_sk), *IsNotNull(ss_addr_sk)] ReadSchema: struct (159) FilterExecTransformer @@ -904,7 +904,7 @@ Input [12]: [ss_item_sk#108, ss_customer_sk#109, ss_cdemo_sk#110, ss_hdemo_sk#11 Output [3]: [sr_item_sk#121, sr_ticket_number#122, sr_returned_date_sk#123] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (165) FilterExecTransformer @@ -1343,7 +1343,7 @@ ColumnarBroadcastExchange (278) Output [2]: [d_date_sk#43, d_year#44] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,1999), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,1999), *IsNotNull(d_date_sk)] ReadSchema: struct (276) FilterExecTransformer @@ -1368,7 +1368,7 @@ ColumnarBroadcastExchange (282) Output [2]: [d_date_sk#135, d_year#136] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (280) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a.sf100/explain.txt index 5ccbe0a1e53..cacc04e5452 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a.sf100/explain.txt @@ -132,7 +132,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -162,7 +162,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_sol Output [2]: [s_store_sk#11, s_store_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -214,7 +214,7 @@ Input [7]: [ss_item_sk#1, ss_quantity#3, ss_sales_price#4, d_year#8, d_moy#9, d_ Output [5]: [i_item_sk#14, i_brand#15, i_class#16, i_category#17, i_product_name#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -845,7 +845,7 @@ ColumnarBroadcastExchange (175) Output [5]: [d_date_sk#7, d_month_seq#229, d_year#8, d_moy#9, d_qoy#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (172) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a/explain.txt index c41d9f58bde..f32f786899f 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q67a/explain.txt @@ -127,7 +127,7 @@ Output [5]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_so Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#5), dynamicpruningexpression(ss_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -157,7 +157,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, ss_sol Output [2]: [s_store_sk#11, s_store_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -192,7 +192,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_quantity#3, ss_sales_price#4, d_year Output [5]: [i_item_sk#13, i_brand#14, i_class#15, i_category#16, i_product_name#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (17) FilterExecTransformer @@ -816,7 +816,7 @@ ColumnarBroadcastExchange (168) Output [5]: [d_date_sk#7, d_month_seq#227, d_year#8, d_moy#9, d_qoy#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (165) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a.sf100/explain.txt index 7de409d7d97..1a9844190a1 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a.sf100/explain.txt @@ -87,7 +87,7 @@ Output [3]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -117,7 +117,7 @@ Input [4]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3, d_date_sk#5] Output [3]: [s_store_sk#6, s_county#7, s_state#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -129,7 +129,7 @@ Output [3]: [ss_store_sk#9, ss_net_profit#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (11) FilterExecTransformer @@ -159,7 +159,7 @@ Input [4]: [ss_store_sk#9, ss_net_profit#10, ss_sold_date_sk#11, d_date_sk#12] Output [2]: [s_store_sk#13, s_state#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (18) FilterExecTransformer @@ -539,7 +539,7 @@ ColumnarBroadcastExchange (111) Output [2]: [d_date_sk#5, d_month_seq#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (108) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a/explain.txt index 80239447219..c994f005d1e 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q70a/explain.txt @@ -87,7 +87,7 @@ Output [3]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -117,7 +117,7 @@ Input [4]: [ss_store_sk#1, ss_net_profit#2, ss_sold_date_sk#3, d_date_sk#5] Output [3]: [s_store_sk#6, s_county#7, s_state#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -129,7 +129,7 @@ Output [3]: [ss_store_sk#9, ss_net_profit#10, ss_sold_date_sk#11] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#11), dynamicpruningexpression(ss_sold_date_sk#11 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (11) FilterExecTransformer @@ -140,7 +140,7 @@ Arguments: isnotnull(ss_store_sk#9) Output [2]: [s_store_sk#12, s_state#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -539,7 +539,7 @@ ColumnarBroadcastExchange (111) Output [2]: [d_date_sk#5, d_month_seq#64] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (108) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72.sf100/explain.txt index 925b0b2f37b..3b4dde2045c 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72.sf100/explain.txt @@ -85,7 +85,7 @@ Output [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#8), dynamicpruningexpression(cs_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_quantity), IsNotNull(cs_item_sk), IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_hdemo_sk), IsNotNull(cs_ship_date_sk)] +PushedFilters: [*IsNotNull(cs_quantity), *IsNotNull(cs_item_sk), *IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_hdemo_sk), *IsNotNull(cs_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -96,7 +96,7 @@ Arguments: ((((isnotnull(cs_quantity#7) AND isnotnull(cs_item_sk#4)) AND isnotnu Output [2]: [hd_demo_sk#10, hd_buy_potential#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_buy_potential), EqualTo(hd_buy_potential,1001-5000 ), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_buy_potential), *EqualTo(hd_buy_potential,1001-5000 ), *IsNotNull(hd_demo_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -135,7 +135,7 @@ Input [9]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_s Output [2]: [cd_demo_sk#12, cd_marital_status#13] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_marital_status), EqualTo(cd_marital_status,M), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_marital_status), *EqualTo(cd_marital_status,M), *IsNotNull(cd_demo_sk)] ReadSchema: struct (13) FilterExecTransformer @@ -174,7 +174,7 @@ Input [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_item_sk#4, cs_promo_sk#5, Output [2]: [d_date_sk#14, d_date#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *IsNotNull(d_date_sk)] ReadSchema: struct (22) FilterExecTransformer @@ -226,7 +226,7 @@ Input [6]: [cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_quantity#7, cs_so Output [2]: [i_item_sk#17, i_item_desc#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -305,7 +305,7 @@ Output [4]: [inv_item_sk#25, inv_warehouse_sk#26, inv_quantity_on_hand#27, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#28), dynamicpruningexpression(true)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (55) FilterExecTransformer @@ -316,7 +316,7 @@ Arguments: ((isnotnull(inv_quantity_on_hand#27) AND isnotnull(inv_item_sk#25)) A Output [2]: [w_warehouse_sk#29, w_warehouse_name#30] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (57) FilterExecTransformer @@ -378,7 +378,7 @@ Input [11]: [cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, cs_quantity#7, i_it Output [1]: [p_promo_sk#32] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -430,7 +430,7 @@ Input [5]: [cs_item_sk#4, cs_order_number#6, w_warehouse_name#30, i_item_desc#18 Output [3]: [cr_item_sk#34, cr_order_number#35, cr_returned_date_sk#36] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (85) FilterExecTransformer @@ -537,7 +537,7 @@ ColumnarBroadcastExchange (118) Output [4]: [d_date_sk#20, d_date#21, d_week_seq#22, d_year#45] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk), IsNotNull(d_week_seq), IsNotNull(d_date)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk), *IsNotNull(d_week_seq), *IsNotNull(d_date)] ReadSchema: struct (107) FilterExecTransformer @@ -566,7 +566,7 @@ Input [3]: [d_date_sk#20, d_date#21, d_week_seq#22] Output [2]: [d_date_sk#23, d_week_seq#46] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *IsNotNull(d_date_sk)] ReadSchema: struct (114) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72/explain.txt index 7751453a2a9..693046f516d 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q72/explain.txt @@ -82,7 +82,7 @@ Output [8]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#8), dynamicpruningexpression(cs_sold_date_sk#8 IN dynamicpruning#9)] -PushedFilters: [IsNotNull(cs_quantity), IsNotNull(cs_item_sk), IsNotNull(cs_bill_cdemo_sk), IsNotNull(cs_bill_hdemo_sk), IsNotNull(cs_ship_date_sk)] +PushedFilters: [*IsNotNull(cs_quantity), *IsNotNull(cs_item_sk), *IsNotNull(cs_bill_cdemo_sk), *IsNotNull(cs_bill_hdemo_sk), *IsNotNull(cs_ship_date_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -94,7 +94,7 @@ Output [4]: [inv_item_sk#10, inv_warehouse_sk#11, inv_quantity_on_hand#12, inv_d Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(inv_date_sk#13)] -PushedFilters: [IsNotNull(inv_quantity_on_hand), IsNotNull(inv_item_sk), IsNotNull(inv_warehouse_sk)] +PushedFilters: [*IsNotNull(inv_quantity_on_hand), *IsNotNull(inv_item_sk), *IsNotNull(inv_warehouse_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -129,7 +129,7 @@ Input [12]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [w_warehouse_sk#14, w_warehouse_name#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/warehouse] -PushedFilters: [IsNotNull(w_warehouse_sk)] +PushedFilters: [*IsNotNull(w_warehouse_sk)] ReadSchema: struct (12) FilterExecTransformer @@ -164,7 +164,7 @@ Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [i_item_sk#16, i_item_desc#17] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -199,7 +199,7 @@ Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [cd_demo_sk#18, cd_marital_status#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer_demographics] -PushedFilters: [IsNotNull(cd_marital_status), EqualTo(cd_marital_status,M), IsNotNull(cd_demo_sk)] +PushedFilters: [*IsNotNull(cd_marital_status), *EqualTo(cd_marital_status,M), *IsNotNull(cd_demo_sk)] ReadSchema: struct (28) FilterExecTransformer @@ -238,7 +238,7 @@ Input [11]: [cs_ship_date_sk#1, cs_bill_cdemo_sk#2, cs_bill_hdemo_sk#3, cs_item_ Output [2]: [hd_demo_sk#20, hd_buy_potential#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/household_demographics] -PushedFilters: [IsNotNull(hd_buy_potential), EqualTo(hd_buy_potential,1001-5000 ), IsNotNull(hd_demo_sk)] +PushedFilters: [*IsNotNull(hd_buy_potential), *EqualTo(hd_buy_potential,1001-5000 ), *IsNotNull(hd_demo_sk)] ReadSchema: struct (37) FilterExecTransformer @@ -296,7 +296,7 @@ Input [11]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, Output [2]: [d_date_sk#25, d_week_seq#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_week_seq), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_week_seq), *IsNotNull(d_date_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -331,7 +331,7 @@ Input [11]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, Output [2]: [d_date_sk#27, d_date#28] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *IsNotNull(d_date_sk)] ReadSchema: struct (59) FilterExecTransformer @@ -366,7 +366,7 @@ Input [10]: [cs_ship_date_sk#1, cs_item_sk#4, cs_promo_sk#5, cs_order_number#6, Output [1]: [p_promo_sk#29] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_promo_sk)] ReadSchema: struct (67) FilterExecTransformer @@ -418,7 +418,7 @@ Input [5]: [cs_item_sk#4, cs_order_number#6, w_warehouse_name#15, i_item_desc#17 Output [3]: [cr_item_sk#31, cr_order_number#32, cr_returned_date_sk#33] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (80) FilterExecTransformer @@ -519,7 +519,7 @@ ColumnarBroadcastExchange (105) Output [4]: [d_date_sk#22, d_date#23, d_week_seq#24, d_year#42] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk), IsNotNull(d_week_seq), IsNotNull(d_date)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk), *IsNotNull(d_week_seq), *IsNotNull(d_date)] ReadSchema: struct (102) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74.sf100/explain.txt index 12972c43188..a26128cb08e 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74.sf100/explain.txt @@ -113,7 +113,7 @@ Output [3]: [ss_customer_sk#1, ss_net_paid#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -160,7 +160,7 @@ Input [3]: [ss_customer_sk#1, ss_net_paid#2, d_year#6] Output [4]: [c_customer_sk#8, c_customer_id#9, c_first_name#10, c_last_name#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (14) FilterExecTransformer @@ -267,7 +267,7 @@ Output [3]: [ss_customer_sk#21, ss_net_paid#22, ss_sold_date_sk#23] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#23), dynamicpruningexpression(ss_sold_date_sk#23 IN dynamicpruning#24)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (40) FilterExecTransformer @@ -396,7 +396,7 @@ Output [3]: [ws_bill_customer_sk#41, ws_net_paid#42, ws_sold_date_sk#43] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#43), dynamicpruningexpression(ws_sold_date_sk#43 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (72) FilterExecTransformer @@ -537,7 +537,7 @@ Output [3]: [ws_bill_customer_sk#59, ws_net_paid#60, ws_sold_date_sk#61] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#61), dynamicpruningexpression(ws_sold_date_sk#61 IN dynamicpruning#24)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (107) FilterExecTransformer @@ -688,7 +688,7 @@ ColumnarBroadcastExchange (145) Output [2]: [d_date_sk#5, d_year#6] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (143) FilterExecTransformer @@ -713,7 +713,7 @@ ColumnarBroadcastExchange (149) Output [2]: [d_date_sk#25, d_year#26] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (147) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74/explain.txt index 3acdbe814cb..dd0a91cfed1 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q74/explain.txt @@ -96,7 +96,7 @@ VeloxColumnarToRow (118) Output [4]: [c_customer_sk#1, c_customer_id#2, c_first_name#3, c_last_name#4] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (2) FilterExecTransformer @@ -108,7 +108,7 @@ Output [3]: [ss_customer_sk#5, ss_net_paid#6, ss_sold_date_sk#7] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -205,7 +205,7 @@ Arguments: (isnotnull(year_total#17) AND (year_total#17 > 0.00)) Output [4]: [c_customer_sk#18, c_customer_id#19, c_first_name#20, c_last_name#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (27) FilterExecTransformer @@ -217,7 +217,7 @@ Output [3]: [ss_customer_sk#22, ss_net_paid#23, ss_sold_date_sk#24] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#24), dynamicpruningexpression(ss_sold_date_sk#24 IN dynamicpruning#25)] -PushedFilters: [IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_customer_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -330,7 +330,7 @@ Join condition: None Output [4]: [c_customer_sk#36, c_customer_id#37, c_first_name#38, c_last_name#39] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (56) FilterExecTransformer @@ -342,7 +342,7 @@ Output [3]: [ws_bill_customer_sk#40, ws_net_paid#41, ws_sold_date_sk#42] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#42), dynamicpruningexpression(ws_sold_date_sk#42 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (58) FilterExecTransformer @@ -463,7 +463,7 @@ Input [8]: [customer_id#16, year_total#17, customer_id#32, customer_first_name#3 Output [4]: [c_customer_sk#52, c_customer_id#53, c_first_name#54, c_last_name#55] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/customer] -PushedFilters: [IsNotNull(c_customer_sk), IsNotNull(c_customer_id)] +PushedFilters: [*IsNotNull(c_customer_sk), *IsNotNull(c_customer_id)] ReadSchema: struct (87) FilterExecTransformer @@ -475,7 +475,7 @@ Output [3]: [ws_bill_customer_sk#56, ws_net_paid#57, ws_sold_date_sk#58] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#58), dynamicpruningexpression(ws_sold_date_sk#58 IN dynamicpruning#25)] -PushedFilters: [IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (89) FilterExecTransformer @@ -611,7 +611,7 @@ ColumnarBroadcastExchange (122) Output [2]: [d_date_sk#9, d_year#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (120) FilterExecTransformer @@ -636,7 +636,7 @@ ColumnarBroadcastExchange (126) Output [2]: [d_date_sk#26, d_year#27] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), In(d_year, [2001,2002]), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *In(d_year, [2001,2002]), *IsNotNull(d_date_sk)] ReadSchema: struct (124) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75.sf100/explain.txt index 5c39ada22fc..2c2c8b64e0c 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75.sf100/explain.txt @@ -169,7 +169,7 @@ Output [5]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -180,7 +180,7 @@ Arguments: isnotnull(cs_item_sk#1) Output [6]: [i_item_sk#7, i_brand_id#8, i_class_id#9, i_category_id#10, i_category#11, i_manufact_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Books ), IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id), IsNotNull(i_manufact_id)] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Books ), *IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id), *IsNotNull(i_manufact_id)] ReadSchema: struct (4) FilterExecTransformer @@ -255,7 +255,7 @@ Input [9]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price#4 Output [5]: [cr_item_sk#16, cr_order_number#17, cr_return_quantity#18, cr_return_amount#19, cr_returned_date_sk#20] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -302,7 +302,7 @@ Output [5]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pr Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#28), dynamicpruningexpression(ss_sold_date_sk#28 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -368,7 +368,7 @@ Input [9]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pri Output [5]: [sr_item_sk#37, sr_ticket_number#38, sr_return_quantity#39, sr_return_amt#40, sr_returned_date_sk#41] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -415,7 +415,7 @@ Output [5]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#49), dynamicpruningexpression(ws_sold_date_sk#49 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -481,7 +481,7 @@ Input [9]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pric Output [5]: [wr_item_sk#58, wr_order_number#59, wr_return_quantity#60, wr_return_amt#61, wr_returned_date_sk#62] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -640,7 +640,7 @@ Output [5]: [cs_item_sk#78, cs_order_number#79, cs_quantity#80, cs_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#82), dynamicpruningexpression(cs_sold_date_sk#82 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (118) FilterExecTransformer @@ -730,7 +730,7 @@ Output [5]: [ss_item_sk#98, ss_ticket_number#99, ss_quantity#100, ss_ext_sales_p Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#102), dynamicpruningexpression(ss_sold_date_sk#102 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (141) FilterExecTransformer @@ -820,7 +820,7 @@ Output [5]: [ws_item_sk#117, ws_order_number#118, ws_quantity#119, ws_ext_sales_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#121), dynamicpruningexpression(ws_sold_date_sk#121 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (164) FilterExecTransformer @@ -1050,7 +1050,7 @@ ColumnarBroadcastExchange (222) Output [2]: [d_date_sk#13, d_year#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (220) FilterExecTransformer @@ -1079,7 +1079,7 @@ ColumnarBroadcastExchange (226) Output [2]: [d_date_sk#89, d_year#90] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (224) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75/explain.txt index 9cf2cbca9f6..c2e30f40202 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q75/explain.txt @@ -169,7 +169,7 @@ Output [5]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#5), dynamicpruningexpression(cs_sold_date_sk#5 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -180,7 +180,7 @@ Arguments: isnotnull(cs_item_sk#1) Output [6]: [i_item_sk#7, i_brand_id#8, i_class_id#9, i_category_id#10, i_category#11, i_manufact_id#12] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_category), EqualTo(i_category,Books ), IsNotNull(i_item_sk), IsNotNull(i_brand_id), IsNotNull(i_class_id), IsNotNull(i_category_id), IsNotNull(i_manufact_id)] +PushedFilters: [*IsNotNull(i_category), *EqualTo(i_category,Books ), *IsNotNull(i_item_sk), *IsNotNull(i_brand_id), *IsNotNull(i_class_id), *IsNotNull(i_category_id), *IsNotNull(i_manufact_id)] ReadSchema: struct (4) FilterExecTransformer @@ -255,7 +255,7 @@ Input [9]: [cs_item_sk#1, cs_order_number#2, cs_quantity#3, cs_ext_sales_price#4 Output [5]: [cr_item_sk#16, cr_order_number#17, cr_return_quantity#18, cr_return_amount#19, cr_returned_date_sk#20] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (23) FilterExecTransformer @@ -302,7 +302,7 @@ Output [5]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pr Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#28), dynamicpruningexpression(ss_sold_date_sk#28 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (34) FilterExecTransformer @@ -368,7 +368,7 @@ Input [9]: [ss_item_sk#24, ss_ticket_number#25, ss_quantity#26, ss_ext_sales_pri Output [5]: [sr_item_sk#37, sr_ticket_number#38, sr_return_quantity#39, sr_return_amt#40, sr_returned_date_sk#41] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (51) FilterExecTransformer @@ -415,7 +415,7 @@ Output [5]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#49), dynamicpruningexpression(ws_sold_date_sk#49 IN dynamicpruning#6)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (62) FilterExecTransformer @@ -481,7 +481,7 @@ Input [9]: [ws_item_sk#45, ws_order_number#46, ws_quantity#47, ws_ext_sales_pric Output [5]: [wr_item_sk#58, wr_order_number#59, wr_return_quantity#60, wr_return_amt#61, wr_returned_date_sk#62] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -640,7 +640,7 @@ Output [5]: [cs_item_sk#78, cs_order_number#79, cs_quantity#80, cs_ext_sales_pri Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#82), dynamicpruningexpression(cs_sold_date_sk#82 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(cs_item_sk)] +PushedFilters: [*IsNotNull(cs_item_sk)] ReadSchema: struct (118) FilterExecTransformer @@ -730,7 +730,7 @@ Output [5]: [ss_item_sk#98, ss_ticket_number#99, ss_quantity#100, ss_ext_sales_p Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#102), dynamicpruningexpression(ss_sold_date_sk#102 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (141) FilterExecTransformer @@ -820,7 +820,7 @@ Output [5]: [ws_item_sk#117, ws_order_number#118, ws_quantity#119, ws_ext_sales_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#121), dynamicpruningexpression(ws_sold_date_sk#121 IN dynamicpruning#83)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (164) FilterExecTransformer @@ -1050,7 +1050,7 @@ ColumnarBroadcastExchange (222) Output [2]: [d_date_sk#13, d_year#14] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2002), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2002), *IsNotNull(d_date_sk)] ReadSchema: struct (220) FilterExecTransformer @@ -1079,7 +1079,7 @@ ColumnarBroadcastExchange (226) Output [2]: [d_date_sk#89, d_year#90] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2001), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2001), *IsNotNull(d_date_sk)] ReadSchema: struct (224) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a.sf100/explain.txt index f4a39e342e9..9812b921266 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a.sf100/explain.txt @@ -192,7 +192,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -222,7 +222,7 @@ Input [5]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_s Output [1]: [s_store_sk#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -297,7 +297,7 @@ Output [4]: [sr_store_sk#19, sr_return_amt#20, sr_net_loss#21, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#22), dynamicpruningexpression(sr_returned_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -566,7 +566,7 @@ Output [4]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#76), dynamicpruningexpression(ws_sold_date_sk#76 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_web_page_sk)] ReadSchema: struct (90) FilterExecTransformer @@ -596,7 +596,7 @@ Input [5]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold_ Output [1]: [wp_web_page_sk#78] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_web_page_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -671,7 +671,7 @@ Output [4]: [wr_web_page_sk#90, wr_return_amt#91, wr_net_loss#92, wr_returned_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#93), dynamicpruningexpression(wr_returned_date_sk#93 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(wr_web_page_sk)] +PushedFilters: [*IsNotNull(wr_web_page_sk)] ReadSchema: struct (114) FilterExecTransformer @@ -1227,7 +1227,7 @@ ColumnarBroadcastExchange (254) Output [2]: [d_date_sk#6, d_date#232] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1998-08-04), LessThanOrEqual(d_date,1998-09-03), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1998-08-04), *LessThanOrEqual(d_date,1998-09-03), *IsNotNull(d_date_sk)] ReadSchema: struct (251) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a/explain.txt index 93ebf152a04..3cbe7756dc5 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q77a/explain.txt @@ -149,7 +149,7 @@ Output [4]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#4), dynamicpruningexpression(ss_sold_date_sk#4 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ss_store_sk)] +PushedFilters: [*IsNotNull(ss_store_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -179,7 +179,7 @@ Input [5]: [ss_store_sk#1, ss_ext_sales_price#2, ss_net_profit#3, ss_sold_date_s Output [1]: [s_store_sk#7] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -254,7 +254,7 @@ Output [4]: [sr_store_sk#19, sr_return_amt#20, sr_net_loss#21, sr_returned_date_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(sr_returned_date_sk#22), dynamicpruningexpression(sr_returned_date_sk#22 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(sr_store_sk)] +PushedFilters: [*IsNotNull(sr_store_sk)] ReadSchema: struct (26) FilterExecTransformer @@ -523,7 +523,7 @@ Output [4]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#76), dynamicpruningexpression(ws_sold_date_sk#76 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(ws_web_page_sk)] +PushedFilters: [*IsNotNull(ws_web_page_sk)] ReadSchema: struct (90) FilterExecTransformer @@ -553,7 +553,7 @@ Input [5]: [ws_web_page_sk#73, ws_ext_sales_price#74, ws_net_profit#75, ws_sold_ Output [1]: [wp_web_page_sk#78] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_page] -PushedFilters: [IsNotNull(wp_web_page_sk)] +PushedFilters: [*IsNotNull(wp_web_page_sk)] ReadSchema: struct (97) FilterExecTransformer @@ -628,7 +628,7 @@ Output [4]: [wr_web_page_sk#90, wr_return_amt#91, wr_net_loss#92, wr_returned_da Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(wr_returned_date_sk#93), dynamicpruningexpression(wr_returned_date_sk#93 IN dynamicpruning#5)] -PushedFilters: [IsNotNull(wr_web_page_sk)] +PushedFilters: [*IsNotNull(wr_web_page_sk)] ReadSchema: struct (114) FilterExecTransformer @@ -958,7 +958,7 @@ ColumnarBroadcastExchange (195) Output [2]: [d_date_sk#6, d_date#187] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1998-08-04), LessThanOrEqual(d_date,1998-09-03), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1998-08-04), *LessThanOrEqual(d_date,1998-09-03), *IsNotNull(d_date_sk)] ReadSchema: struct (192) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78.sf100/explain.txt index 667d34ad5b1..ada52ec3902 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78.sf100/explain.txt @@ -92,7 +92,7 @@ Output [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -124,7 +124,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, s Output [3]: [sr_item_sk#10, sr_ticket_number#11, sr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -229,7 +229,7 @@ Output [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#38), dynamicpruningexpression(ws_sold_date_sk#38 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -261,7 +261,7 @@ Input [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quanti Output [3]: [wr_item_sk#40, wr_order_number#41, wr_returned_date_sk#42] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -380,7 +380,7 @@ Output [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#69), dynamicpruningexpression(cs_sold_date_sk#69 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -412,7 +412,7 @@ Input [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quanti Output [3]: [cr_item_sk#71, cr_order_number#72, cr_returned_date_sk#73] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -549,7 +549,7 @@ ColumnarBroadcastExchange (112) Output [2]: [d_date_sk#14, d_year#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (110) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78/explain.txt index bac72c01e53..31e93bcb55b 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q78/explain.txt @@ -92,7 +92,7 @@ Output [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_item_sk), IsNotNull(ss_customer_sk)] +PushedFilters: [*IsNotNull(ss_item_sk), *IsNotNull(ss_customer_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -124,7 +124,7 @@ Input [7]: [ss_item_sk#1, ss_customer_sk#2, ss_ticket_number#3, ss_quantity#4, s Output [3]: [sr_item_sk#10, sr_ticket_number#11, sr_returned_date_sk#12] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_ticket_number), IsNotNull(sr_item_sk)] +PushedFilters: [*IsNotNull(sr_ticket_number), *IsNotNull(sr_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -229,7 +229,7 @@ Output [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#38), dynamicpruningexpression(ws_sold_date_sk#38 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_item_sk), IsNotNull(ws_bill_customer_sk)] +PushedFilters: [*IsNotNull(ws_item_sk), *IsNotNull(ws_bill_customer_sk)] ReadSchema: struct (35) FilterExecTransformer @@ -261,7 +261,7 @@ Input [7]: [ws_item_sk#32, ws_bill_customer_sk#33, ws_order_number#34, ws_quanti Output [3]: [wr_item_sk#40, wr_order_number#41, wr_returned_date_sk#42] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_order_number), IsNotNull(wr_item_sk)] +PushedFilters: [*IsNotNull(wr_order_number), *IsNotNull(wr_item_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -380,7 +380,7 @@ Output [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quant Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#69), dynamicpruningexpression(cs_sold_date_sk#69 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_item_sk), IsNotNull(cs_bill_customer_sk)] +PushedFilters: [*IsNotNull(cs_item_sk), *IsNotNull(cs_bill_customer_sk)] ReadSchema: struct (71) FilterExecTransformer @@ -412,7 +412,7 @@ Input [7]: [cs_bill_customer_sk#63, cs_item_sk#64, cs_order_number#65, cs_quanti Output [3]: [cr_item_sk#71, cr_order_number#72, cr_returned_date_sk#73] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_order_number), IsNotNull(cr_item_sk)] +PushedFilters: [*IsNotNull(cr_order_number), *IsNotNull(cr_item_sk)] ReadSchema: struct (79) FilterExecTransformer @@ -549,7 +549,7 @@ ColumnarBroadcastExchange (112) Output [2]: [d_date_sk#14, d_year#15] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_year), EqualTo(d_year,2000), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_year), *EqualTo(d_year,2000), *IsNotNull(d_date_sk)] ReadSchema: struct (110) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a.sf100/explain.txt index 435abd34a18..276af5cbf20 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a.sf100/explain.txt @@ -286,7 +286,7 @@ Output [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -318,7 +318,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_e Output [5]: [sr_item_sk#12, sr_ticket_number#13, sr_return_amt#14, sr_net_loss#15, sr_returned_date_sk#16] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (10) FilterExecTransformer @@ -360,7 +360,7 @@ Input [11]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_ Output [2]: [i_item_sk#18, i_current_price#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThan(i_current_price,50.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThan(i_current_price,50.00), *IsNotNull(i_item_sk)] ReadSchema: struct (20) FilterExecTransformer @@ -399,7 +399,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ext_sales_price#5, ss Output [2]: [p_promo_sk#20, p_channel_tv#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_channel_tv), EqualTo(p_channel_tv,N), IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_channel_tv), *EqualTo(p_channel_tv,N), *IsNotNull(p_promo_sk)] ReadSchema: struct (29) FilterExecTransformer @@ -457,7 +457,7 @@ Input [7]: [ss_store_sk#2, ss_ext_sales_price#5, ss_net_profit#6, ss_sold_date_s Output [2]: [s_store_sk#23, s_store_id#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (43) FilterExecTransformer @@ -536,7 +536,7 @@ Output [7]: [cs_catalog_page_sk#47, cs_item_sk#48, cs_promo_sk#49, cs_order_numb Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#53), dynamicpruningexpression(cs_sold_date_sk#53 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_catalog_page_sk), IsNotNull(cs_item_sk), IsNotNull(cs_promo_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk), *IsNotNull(cs_item_sk), *IsNotNull(cs_promo_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -568,7 +568,7 @@ Input [7]: [cs_catalog_page_sk#47, cs_item_sk#48, cs_promo_sk#49, cs_order_numbe Output [5]: [cr_item_sk#55, cr_order_number#56, cr_return_amount#57, cr_net_loss#58, cr_returned_date_sk#59] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (69) FilterExecTransformer @@ -667,7 +667,7 @@ Input [7]: [cs_catalog_page_sk#47, cs_ext_sales_price#51, cs_net_profit#52, cs_s Output [2]: [cp_catalog_page_sk#64, cp_catalog_page_id#65] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (94) FilterExecTransformer @@ -746,7 +746,7 @@ Output [7]: [ws_item_sk#88, ws_web_site_sk#89, ws_promo_sk#90, ws_order_number#9 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#94), dynamicpruningexpression(ws_sold_date_sk#94 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_web_site_sk), IsNotNull(ws_item_sk), IsNotNull(ws_promo_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk), *IsNotNull(ws_item_sk), *IsNotNull(ws_promo_sk)] ReadSchema: struct (112) FilterExecTransformer @@ -778,7 +778,7 @@ Input [7]: [ws_item_sk#88, ws_web_site_sk#89, ws_promo_sk#90, ws_order_number#91 Output [5]: [wr_item_sk#96, wr_order_number#97, wr_return_amt#98, wr_net_loss#99, wr_returned_date_sk#100] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_item_sk), IsNotNull(wr_order_number)] +PushedFilters: [*IsNotNull(wr_item_sk), *IsNotNull(wr_order_number)] ReadSchema: struct (120) FilterExecTransformer @@ -877,7 +877,7 @@ Input [7]: [ws_web_site_sk#89, ws_ext_sales_price#92, ws_net_profit#93, ws_sold_ Output [2]: [web_site_sk#105, web_site_id#106] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (145) FilterExecTransformer @@ -1056,7 +1056,7 @@ Output [7]: [ws_item_sk#178, ws_web_site_sk#179, ws_promo_sk#180, ws_order_numbe Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#184), dynamicpruningexpression(ws_sold_date_sk#184 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_web_site_sk), IsNotNull(ws_item_sk), IsNotNull(ws_promo_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk), *IsNotNull(ws_item_sk), *IsNotNull(ws_promo_sk)] ReadSchema: struct (188) FilterExecTransformer @@ -1318,7 +1318,7 @@ Output [7]: [ss_item_sk#250, ss_store_sk#251, ss_promo_sk#252, ss_ticket_number# Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#256), dynamicpruningexpression(ss_sold_date_sk#256 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (253) FilterExecTransformer @@ -1489,7 +1489,7 @@ Output [7]: [cs_catalog_page_sk#286, cs_item_sk#287, cs_promo_sk#288, cs_order_n Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#292), dynamicpruningexpression(cs_sold_date_sk#292 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_catalog_page_sk), IsNotNull(cs_item_sk), IsNotNull(cs_promo_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk), *IsNotNull(cs_item_sk), *IsNotNull(cs_promo_sk)] ReadSchema: struct (296) FilterExecTransformer @@ -1815,7 +1815,7 @@ VeloxColumnarToRow (384) Output [2]: [i_item_sk#18, i_current_price#19] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThan(i_current_price,50.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThan(i_current_price,50.00), *IsNotNull(i_item_sk)] ReadSchema: struct (374) FilterExecTransformer @@ -1880,7 +1880,7 @@ VeloxColumnarToRow (396) Output [2]: [p_promo_sk#20, p_channel_tv#21] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_channel_tv), EqualTo(p_channel_tv,N), IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_channel_tv), *EqualTo(p_channel_tv,N), *IsNotNull(p_promo_sk)] ReadSchema: struct (386) FilterExecTransformer @@ -1940,7 +1940,7 @@ ColumnarBroadcastExchange (401) Output [2]: [d_date_sk#22, d_date#372] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1998-08-04), LessThanOrEqual(d_date,1998-09-03), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1998-08-04), *LessThanOrEqual(d_date,1998-09-03), *IsNotNull(d_date_sk)] ReadSchema: struct (398) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a/explain.txt index f40300e3e3b..90304710d29 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q80a/explain.txt @@ -165,7 +165,7 @@ Output [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_ Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#7), dynamicpruningexpression(ss_sold_date_sk#7 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ss_store_sk), IsNotNull(ss_item_sk), IsNotNull(ss_promo_sk)] +PushedFilters: [*IsNotNull(ss_store_sk), *IsNotNull(ss_item_sk), *IsNotNull(ss_promo_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -197,7 +197,7 @@ Input [7]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ticket_number#4, ss_e Output [5]: [sr_item_sk#10, sr_ticket_number#11, sr_return_amt#12, sr_net_loss#13, sr_returned_date_sk#14] Batched: true Location: CatalogFileIndex [{warehouse_dir}/store_returns] -PushedFilters: [IsNotNull(sr_item_sk), IsNotNull(sr_ticket_number)] +PushedFilters: [*IsNotNull(sr_item_sk), *IsNotNull(sr_ticket_number)] ReadSchema: struct (10) FilterExecTransformer @@ -258,7 +258,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ext_sales_price#5, ss Output [2]: [s_store_sk#17, s_store_id#18] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/store] -PushedFilters: [IsNotNull(s_store_sk)] +PushedFilters: [*IsNotNull(s_store_sk)] ReadSchema: struct (25) FilterExecTransformer @@ -293,7 +293,7 @@ Input [9]: [ss_item_sk#1, ss_store_sk#2, ss_promo_sk#3, ss_ext_sales_price#5, ss Output [2]: [i_item_sk#19, i_current_price#20] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_current_price), GreaterThan(i_current_price,50.00), IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_current_price), *GreaterThan(i_current_price,50.00), *IsNotNull(i_item_sk)] ReadSchema: struct (33) FilterExecTransformer @@ -332,7 +332,7 @@ Input [8]: [ss_item_sk#1, ss_promo_sk#3, ss_ext_sales_price#5, ss_net_profit#6, Output [2]: [p_promo_sk#21, p_channel_tv#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/promotion] -PushedFilters: [IsNotNull(p_channel_tv), EqualTo(p_channel_tv,N), IsNotNull(p_promo_sk)] +PushedFilters: [*IsNotNull(p_channel_tv), *EqualTo(p_channel_tv,N), *IsNotNull(p_promo_sk)] ReadSchema: struct (42) FilterExecTransformer @@ -415,7 +415,7 @@ Output [7]: [cs_catalog_page_sk#45, cs_item_sk#46, cs_promo_sk#47, cs_order_numb Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(cs_sold_date_sk#51), dynamicpruningexpression(cs_sold_date_sk#51 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(cs_catalog_page_sk), IsNotNull(cs_item_sk), IsNotNull(cs_promo_sk)] +PushedFilters: [*IsNotNull(cs_catalog_page_sk), *IsNotNull(cs_item_sk), *IsNotNull(cs_promo_sk)] ReadSchema: struct (61) FilterExecTransformer @@ -447,7 +447,7 @@ Input [7]: [cs_catalog_page_sk#45, cs_item_sk#46, cs_promo_sk#47, cs_order_numbe Output [5]: [cr_item_sk#53, cr_order_number#54, cr_return_amount#55, cr_net_loss#56, cr_returned_date_sk#57] Batched: true Location: CatalogFileIndex [{warehouse_dir}/catalog_returns] -PushedFilters: [IsNotNull(cr_item_sk), IsNotNull(cr_order_number)] +PushedFilters: [*IsNotNull(cr_item_sk), *IsNotNull(cr_order_number)] ReadSchema: struct (69) FilterExecTransformer @@ -508,7 +508,7 @@ Input [9]: [cs_catalog_page_sk#45, cs_item_sk#46, cs_promo_sk#47, cs_ext_sales_p Output [2]: [cp_catalog_page_sk#60, cp_catalog_page_id#61] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/catalog_page] -PushedFilters: [IsNotNull(cp_catalog_page_sk)] +PushedFilters: [*IsNotNull(cp_catalog_page_sk)] ReadSchema: struct (84) FilterExecTransformer @@ -625,7 +625,7 @@ Output [7]: [ws_item_sk#86, ws_web_site_sk#87, ws_promo_sk#88, ws_order_number#8 Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#92), dynamicpruningexpression(ws_sold_date_sk#92 IN dynamicpruning#8)] -PushedFilters: [IsNotNull(ws_web_site_sk), IsNotNull(ws_item_sk), IsNotNull(ws_promo_sk)] +PushedFilters: [*IsNotNull(ws_web_site_sk), *IsNotNull(ws_item_sk), *IsNotNull(ws_promo_sk)] ReadSchema: struct (112) FilterExecTransformer @@ -657,7 +657,7 @@ Input [7]: [ws_item_sk#86, ws_web_site_sk#87, ws_promo_sk#88, ws_order_number#89 Output [5]: [wr_item_sk#94, wr_order_number#95, wr_return_amt#96, wr_net_loss#97, wr_returned_date_sk#98] Batched: true Location: CatalogFileIndex [{warehouse_dir}/web_returns] -PushedFilters: [IsNotNull(wr_item_sk), IsNotNull(wr_order_number)] +PushedFilters: [*IsNotNull(wr_item_sk), *IsNotNull(wr_order_number)] ReadSchema: struct (120) FilterExecTransformer @@ -718,7 +718,7 @@ Input [9]: [ws_item_sk#86, ws_web_site_sk#87, ws_promo_sk#88, ws_ext_sales_price Output [2]: [web_site_sk#101, web_site_id#102] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/web_site] -PushedFilters: [IsNotNull(web_site_sk)] +PushedFilters: [*IsNotNull(web_site_sk)] ReadSchema: struct (135) FilterExecTransformer @@ -1048,7 +1048,7 @@ ColumnarBroadcastExchange (216) Output [2]: [d_date_sk#16, d_date#203] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1998-08-04), LessThanOrEqual(d_date,1998-09-03), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1998-08-04), *LessThanOrEqual(d_date,1998-09-03), *IsNotNull(d_date_sk)] ReadSchema: struct (213) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a.sf100/explain.txt index 9d3aba215ba..e82a3c02c2e 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a.sf100/explain.txt @@ -60,7 +60,7 @@ Output [3]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [4]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3, d_date_sk#5] Output [3]: [i_item_sk#6, i_class#7, i_category#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -367,7 +367,7 @@ ColumnarBroadcastExchange (77) Output [2]: [d_date_sk#5, d_month_seq#51] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (74) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a/explain.txt index 9d3aba215ba..e82a3c02c2e 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q86a/explain.txt @@ -60,7 +60,7 @@ Output [3]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ws_sold_date_sk#3), dynamicpruningexpression(ws_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ws_item_sk)] +PushedFilters: [*IsNotNull(ws_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -90,7 +90,7 @@ Input [4]: [ws_item_sk#1, ws_net_paid#2, ws_sold_date_sk#3, d_date_sk#5] Output [3]: [i_item_sk#6, i_class#7, i_category#8] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [IsNotNull(i_item_sk)] +PushedFilters: [*IsNotNull(i_item_sk)] ReadSchema: struct (9) FilterExecTransformer @@ -367,7 +367,7 @@ ColumnarBroadcastExchange (77) Output [2]: [d_date_sk#5, d_month_seq#51] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_month_seq), GreaterThanOrEqual(d_month_seq,1212), LessThanOrEqual(d_month_seq,1223), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_month_seq), *GreaterThanOrEqual(d_month_seq,1212), *LessThanOrEqual(d_month_seq,1223), *IsNotNull(d_date_sk)] ReadSchema: struct (74) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98.sf100/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98.sf100/explain.txt index eb2e1f8f77d..1fa7fbbaf2a 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98.sf100/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98.sf100/explain.txt @@ -42,7 +42,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -74,7 +74,7 @@ Input [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Output [6]: [i_item_sk#6, i_item_id#7, i_item_desc#8, i_current_price#9, i_class#10, i_category#11] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (10) FilterExecTransformer @@ -240,7 +240,7 @@ ColumnarBroadcastExchange (53) Output [2]: [d_date_sk#13, d_date#24] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (50) FilterExecTransformer diff --git a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98/explain.txt b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98/explain.txt index 31806c2fad4..de2dc675b39 100644 --- a/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98/explain.txt +++ b/gluten-ut/spark41/src/test/resources/backends-velox/tpcds-plan-stability/gluten-approved-plans-v2_7/q98/explain.txt @@ -36,7 +36,7 @@ Output [3]: [ss_item_sk#1, ss_ext_sales_price#2, ss_sold_date_sk#3] Batched: true Location: InMemoryFileIndex [] PartitionFilters: [isnotnull(ss_sold_date_sk#3), dynamicpruningexpression(ss_sold_date_sk#3 IN dynamicpruning#4)] -PushedFilters: [IsNotNull(ss_item_sk)] +PushedFilters: [*IsNotNull(ss_item_sk)] ReadSchema: struct (2) FilterExecTransformer @@ -47,7 +47,7 @@ Arguments: isnotnull(ss_item_sk#1) Output [6]: [i_item_sk#5, i_item_id#6, i_item_desc#7, i_current_price#8, i_class#9, i_category#10] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/item] -PushedFilters: [In(i_category, [Books ,Home ,Sports ]), IsNotNull(i_item_sk)] +PushedFilters: [*In(i_category, [Books ,Home ,Sports ]), *IsNotNull(i_item_sk)] ReadSchema: struct (4) FilterExecTransformer @@ -206,7 +206,7 @@ ColumnarBroadcastExchange (45) Output [2]: [d_date_sk#11, d_date#22] Batched: true Location: InMemoryFileIndex [{warehouse_dir}/date_dim] -PushedFilters: [IsNotNull(d_date), GreaterThanOrEqual(d_date,1999-02-22), LessThanOrEqual(d_date,1999-03-24), IsNotNull(d_date_sk)] +PushedFilters: [*IsNotNull(d_date), *GreaterThanOrEqual(d_date,1999-02-22), *LessThanOrEqual(d_date,1999-03-24), *IsNotNull(d_date_sk)] ReadSchema: struct (42) FilterExecTransformer