This is an automated email from the ASF dual-hosted git repository.
csy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/auron.git
The following commit(s) were added to refs/heads/master by this push:
new 36641da2 [AURON #1907][CI] Fix YAML syntax error and restore TPCDS CI
execution (#1908)
36641da2 is described below
commit 36641da2a40a7615ef578c44a89f028398424386
Author: yew1eb <[email protected]>
AuthorDate: Tue Jan 20 10:48:28 2026 +0800
[AURON #1907][CI] Fix YAML syntax error and restore TPCDS CI execution
(#1908)
# Which issue does this PR close?
Closes #1907
# Rationale for this change
# What changes are included in this PR?
1. Fix YAML syntax errors in `tpcds-reusable.yml` blocking TPCDS CI
execution.
2. Fix the issue that `auron-it` integration in CI became ineffective
after recent PR merges.
3. Normalize unstable TPCDS suite codegen IDs (Scala 2.12/2.13, plan
stable) by replacing numbers (e.g., 132) with 'X'.
4. Increase memory allocation to avoid failures caused by high memory
consumption of some queries.
# Are there any user-facing changes?
# How was this patch tested?
---
.github/workflows/tpcds-reusable.yml | 81 ++++++++--------------
dev/auron-it/pom.xml | 64 +++++++++++++++++
dev/auron-it/run-it.sh | 4 +-
.../tpcds-plan-stability/spark-3.5/q1.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q11.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q12.txt | 2 +-
.../tpcds-plan-stability/spark-3.5/q13.txt | 16 ++---
.../tpcds-plan-stability/spark-3.5/q15.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q16.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q19.txt | 8 +--
.../tpcds-plan-stability/spark-3.5/q2.txt | 2 +-
.../tpcds-plan-stability/spark-3.5/q20.txt | 2 +-
.../tpcds-plan-stability/spark-3.5/q30.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q31.txt | 8 +--
.../tpcds-plan-stability/spark-3.5/q32.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q4.txt | 8 +--
.../tpcds-plan-stability/spark-3.5/q46.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q47.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q48.txt | 8 +--
.../tpcds-plan-stability/spark-3.5/q51.txt | 6 +-
.../tpcds-plan-stability/spark-3.5/q53.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q57.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q58.txt | 8 +--
.../tpcds-plan-stability/spark-3.5/q6.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q61.txt | 2 +-
.../tpcds-plan-stability/spark-3.5/q63.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q64.txt | 12 ++--
.../tpcds-plan-stability/spark-3.5/q65.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q68.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q72.txt | 8 +--
.../tpcds-plan-stability/spark-3.5/q74.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q75.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q77.txt | 2 +-
.../tpcds-plan-stability/spark-3.5/q81.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q85.txt | 8 +--
.../tpcds-plan-stability/spark-3.5/q89.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q90.txt | 2 +-
.../tpcds-plan-stability/spark-3.5/q92.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q94.txt | 4 +-
.../tpcds-plan-stability/spark-3.5/q95.txt | 8 +--
.../tpcds-plan-stability/spark-3.5/q98.txt | 2 +-
.../scala/org/apache/auron/integration/Main.scala | 2 +
.../org/apache/auron/integration/QueryRunner.scala | 3 +-
.../apache/auron/integration/SessionManager.scala | 2 +
.../comparison/PlanStabilityChecker.scala | 3 +
.../comparison/QueryResultComparator.scala | 3 +
.../auron/integration/tpcds/TPCDSFeatures.scala | 2 +
.../auron/integration/tpcds/TPCDSSuite.scala | 8 ++-
dev/checkstyle.xml | 4 --
dev/scalastyle-config.xml | 8 +--
50 files changed, 215 insertions(+), 161 deletions(-)
diff --git a/.github/workflows/tpcds-reusable.yml
b/.github/workflows/tpcds-reusable.yml
index e165c802..156b7662 100644
--- a/.github/workflows/tpcds-reusable.yml
+++ b/.github/workflows/tpcds-reusable.yml
@@ -88,45 +88,6 @@ env:
WGET_OPTS: "--tries=3 --timeout=30 -c"
jobs:
- build-validator:
- name: Build TPC-DS Validator
- runs-on: ubuntu-24.04
- steps:
- - name: Cache TPC-DS Validator
- uses: actions/cache@v5
- id: cache-tpcds-validator
- with:
- key: tpcds-validator_${{ inputs.scalaver }}
- path: target/tpcds-validator_${{ inputs.scalaver
}}-0.1.0-SNAPSHOT-with-dependencies.jar
-
- - name: Checkout TPC-DS Validator
- uses: actions/checkout@v6
- if: steps.cache-tpcds-validator.outputs.cache-hit != 'true'
- with:
- repository: auron-project/tpcds-validator
-
- - name: Setup Java and Maven cache
- uses: actions/setup-java@v5
- if: steps.cache-tpcds-validator.outputs.cache-hit != 'true'
- with:
- distribution: 'adopt-hotspot'
- java-version: ${{ inputs.javaver }}
- cache: 'maven'
-
- - name: Build TPC-DS Validator
- if: steps.cache-tpcds-validator.outputs.cache-hit != 'true'
- run: ./build/mvn package -DskipTests -Pscala-${{ inputs.scalaver }}
-
- - name: Upload TPC-DS Validator
- uses: actions/upload-artifact@v6
- with:
- name: >
- tpcds-validator-${{ inputs.sparkver }}_${{ inputs.scalaver
}}-jdk-${{ inputs.javaver
- }}${{ inputs.celebornver && format('-{0}', inputs.celebornver) ||
''
- }}${{ inputs.unifflever && format('-{0}', inputs.unifflever) || ''
}}
- path: target/tpcds-validator_${{ inputs.scalaver
}}-0.1.0-SNAPSHOT-with-dependencies.jar
- overwrite: true
-
build-auron-jar:
name: Build Auron JAR
runs-on: ubuntu-24.04
@@ -159,8 +120,8 @@ jobs:
clippy
- name: Cargo clippy
+ # First eliminate unwrap; then enable -D warnings to enforce all
default lints.
run: |
-# First eliminate unwrap; then enable -D warnings to enforce all
default lints.
cargo clippy --all-targets --workspace -- -A warnings -A
clippy::all -D clippy::unwrap_used
- name: Cargo test
@@ -223,10 +184,18 @@ jobs:
}}${{ inputs.unifflever && format('-{0}', inputs.unifflever) || ''
}}
path: target/auron-${{ inputs.sparkver }}_${{ inputs.scalaver
}}-pre-*.jar
overwrite: true
+ - name: Upload auron maven artifacts (Spark ${{ inputs.sparkver }},
Scala ${{ inputs.scalaver }}, JDK ${{ inputs.javaver }})
+ uses: actions/upload-artifact@v4
+ with:
+ name: auron-artifacts-${{ inputs.sparkver }}_${{ inputs.scalaver
}}-jdk-${{ inputs.javaver
+ }}${{ inputs.celebornver && format('-{0}', inputs.celebornver) ||
''
+ }}${{ inputs.unifflever && format('-{0}', inputs.unifflever) || ''
}}
+ path: ~/.m2/repository/org/apache/auron
+ if-no-files-found: error
run-tpcds-test:
name: Run TPC-DS test ${{ matrix.query }}
- needs: [build-validator, build-auron-jar]
+ needs: [build-auron-jar]
runs-on: ubuntu-24.04
strategy:
fail-fast: false
@@ -286,13 +255,14 @@ jobs:
}}${{ inputs.celebornver && format('-{0}', inputs.celebornver) ||
''
}}${{ inputs.unifflever && format('-{0}', inputs.unifflever) || ''
}}
- - name: Download TPC-DS Validator JAR
+ - name: Download auron maven artifacts
uses: actions/download-artifact@v7
with:
name: >
- tpcds-validator-${{ inputs.sparkver }}_${{ inputs.scalaver
}}-jdk-${{ inputs.javaver
- }}${{ inputs.celebornver && format('-{0}', inputs.celebornver) ||
''
+ auron-artifacts-${{ inputs.sparkver }}_${{ inputs.scalaver
}}-jdk-${{ inputs.javaver
+ }}${{ inputs.celebornver && format('-{0}', inputs.celebornver) ||
''
}}${{ inputs.unifflever && format('-{0}', inputs.unifflever) || ''
}}
+ path: ~/.m2/repository/org/apache/auron
- name: Checkout TPC-DS Data
uses: actions/checkout@v6
@@ -303,7 +273,10 @@ jobs:
- name: Install Auron JAR
run: |
ls -la
- cp auron-*${{ inputs.sparkver }}_${{ inputs.scalaver }}*.jar
spark-bin-${{ inputs.sparkver }}_${{ inputs.scalaver }}/jars/
+ jar=$(ls -1 auron-${{ inputs.sparkver }}_${{ inputs.scalaver }}*.jar
| head -n1)
+ [ -n "$jar" ] || { echo "No jar matched: auron-${{ inputs.sparkver
}}_${{ inputs.scalaver }}*.jar"; exit 1; }
+ echo "AURON_SPARK_JAR=$jar" >> "$GITHUB_ENV"
+ cp "$jar" spark-bin-${{ inputs.sparkver }}_${{ inputs.scalaver
}}/jars/
- name: Setup Java and Maven cache
uses: actions/setup-java@v5
@@ -406,16 +379,22 @@ jobs:
cp uniffle-bin-${{
steps.get-dependency-version.outputs.uniffleversion }}/jars/client/spark3/*.jar
spark-bin-${{ inputs.sparkver }}_${{ inputs.scalaver }}/jars/
- name: Run TPC-DS Query ${{ matrix.query }}
+ env:
+ RUST_LOG: ERROR
+ RUST_BACKTRACE: 1
+ SPARK_VERSION: ${{ inputs.sparkver }}
+ SCALA_VERSION: ${{ inputs.scalaver }}
+ SPARK_HOME: spark-bin-${{ inputs.sparkver }}_${{ inputs.scalaver }}
run: |
ls -la
- export RUST_LOG=ERROR
- export RUST_BACKTRACE=1
- export SCALA_VERSION=${{ inputs.scalaver }}
- export SPARK_HOME=spark-bin-${{ inputs.sparkver }}_${{
inputs.scalaver }}
- dev/run-tpcds-test \
+ ls -la ~/.m2/repository/org/apache/auron
+ dev/auron-it/run-it.sh \
${{ inputs.extrasparkconf }} \
+ --type tpcds \
--data-location dev/tpcds_1g \
- --query-filter ${{ matrix.query }}
+ --query-filter ${{ matrix.query }} \
+ --result-check \
+ --plan-check
- name: Upload RSS log
if: ${{ failure() && (inputs.celebornver != '' || inputs.unifflever !=
'') }}
diff --git a/dev/auron-it/pom.xml b/dev/auron-it/pom.xml
index fe2ca581..1360697f 100644
--- a/dev/auron-it/pom.xml
+++ b/dev/auron-it/pom.xml
@@ -81,6 +81,70 @@
<build>
<plugins>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-checkstyle-plugin</artifactId>
+ <version>${checkstyle-plugin.version}</version>
+ <configuration>
+ <failOnViolation>true</failOnViolation>
+ <includeTestSourceDirectory>true</includeTestSourceDirectory>
+ <sourceDirectories>
+ <directory>${project.basedir}/src/main/java</directory>
+ <directory>${project.basedir}/src/main/scala</directory>
+ </sourceDirectories>
+ <testSourceDirectories>
+ <directory>${project.basedir}/src/test/java</directory>
+ </testSourceDirectories>
+
<suppressionsLocation>${maven.multiModuleProjectDirectory}/../../dev/checkstyle-suppressions.xml</suppressionsLocation>
+
<configLocation>${maven.multiModuleProjectDirectory}/../../dev/checkstyle.xml</configLocation>
+
<outputFile>${project.basedir}/target/checkstyle-output.xml</outputFile>
+ <inputEncoding>UTF-8</inputEncoding>
+ <outputEncoding>UTF-8</outputEncoding>
+ </configuration>
+ <dependencies>
+ <dependency>
+ <groupId>com.puppycrawl.tools</groupId>
+ <artifactId>checkstyle</artifactId>
+ <version>8.29</version>
+ </dependency>
+ </dependencies>
+ <executions>
+ <execution>
+ <goals>
+ <goal>check</goal>
+ </goals>
+ <phase>validate</phase>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.scalastyle</groupId>
+ <artifactId>scalastyle-maven-plugin</artifactId>
+ <version>${maven.plugin.scalastyle.version}</version>
+ <configuration>
+ <verbose>false</verbose>
+ <failOnViolation>true</failOnViolation>
+ <includeTestSourceDirectory>false</includeTestSourceDirectory>
+ <failOnWarning>false</failOnWarning>
+ <sourceDirectory>${basedir}/src/main/scala</sourceDirectory>
+ <testSourceDirectory>${basedir}/src/test/scala</testSourceDirectory>
+
<configLocation>${maven.multiModuleProjectDirectory}/../../dev/scalastyle-config.xml</configLocation>
+ <outputFile>${basedir}/target/scalastyle-output.xml</outputFile>
+ <inputEncoding>${project.build.sourceEncoding}</inputEncoding>
+ <outputEncoding>${project.reporting.outputEncoding}</outputEncoding>
+ </configuration>
+ <executions>
+ <execution>
+ <goals>
+ <goal>check</goal>
+ </goals>
+ <phase>validate</phase>
+ </execution>
+ </executions>
+ </plugin>
+
<!-- spotless -->
<plugin>
<groupId>com.diffplug.spotless</groupId>
diff --git a/dev/auron-it/run-it.sh b/dev/auron-it/run-it.sh
index 8e0e694b..eccc9a67 100755
--- a/dev/auron-it/run-it.sh
+++ b/dev/auron-it/run-it.sh
@@ -70,8 +70,8 @@ while [[ $# -gt 0 ]]; do
done
exec $SPARK_HOME/bin/spark-submit \
- --driver-memory 5g \
- --conf spark.driver.memoryOverhead=3072 \
+ --driver-memory 8g \
+ --conf spark.driver.memoryOverhead=4g \
--conf spark.auron.memoryFraction=0.8 \
--conf spark.driver.extraJavaOptions=-XX:+UseG1GC \
--conf spark.ui.enabled=false \
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q1.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q1.txt
index b10e1f18..de3b33da 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q1.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q1.txt
@@ -440,13 +440,13 @@ Condition : isnotnull((avg(ctr_total_return) * 1.2)#26)
Input [2]: [(avg(ctr_total_return) * 1.2)#26, ctr_store_sk#21]
Arguments: [ctr_store_sk#21 ASC NULLS FIRST], false
-(67) SortMergeJoin [codegen id : 1]
+(67) SortMergeJoin [codegen id : X]
Left keys [1]: [ctr_store_sk#12]
Right keys [1]: [ctr_store_sk#21]
Join type: Inner
Join condition: (cast(ctr_total_return#13 as decimal(24,7)) >
(avg(ctr_total_return) * 1.2)#26)
-(68) Project [codegen id : 1]
+(68) Project [codegen id : X]
Output [2]: [ctr_customer_sk#11, ctr_store_sk#12]
Input [5]: [ctr_customer_sk#11, ctr_store_sk#12, ctr_total_return#13,
(avg(ctr_total_return) * 1.2)#26, ctr_store_sk#21]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q11.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q11.txt
index dee50721..0011be99 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q11.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q11.txt
@@ -888,13 +888,13 @@ Input [2]: [customer_id#71, year_total#72]
Input [2]: [customer_id#71, year_total#72]
Arguments: [customer_id#71 ASC NULLS FIRST], false
-(151) SortMergeJoin [codegen id : 1]
+(151) SortMergeJoin [codegen id : X]
Left keys [1]: [customer_id#19]
Right keys [1]: [customer_id#71]
Join type: Inner
Join condition: (CASE WHEN (year_total#56 > 0.00) THEN (year_total#72 /
year_total#56) END > CASE WHEN (year_total#20 > 0.00) THEN (year_total#37 /
year_total#20) END)
-(152) Project [codegen id : 1]
+(152) Project [codegen id : X]
Output [1]: [customer_preferred_cust_flag#36]
Input [7]: [customer_id#19, year_total#20, customer_preferred_cust_flag#36,
year_total#37, year_total#56, customer_id#71, year_total#72]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q12.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q12.txt
index 0c56ed9f..b20a8ba8 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q12.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q12.txt
@@ -286,7 +286,7 @@ Arguments: [i_class#8 ASC NULLS FIRST], false
Input [7]: [i_item_desc#6, i_category#9, i_class#8, i_current_price#7,
itemrevenue#16, _w0#17, i_item_id#5]
Arguments: [sum(_w0#17) windowspecdefinition(i_class#8,
specifiedwindowframe(RowFrame, unboundedpreceding$(), unboundedfollowing$()))
AS _we0#18], [i_class#8]
-(49) Project [codegen id : 1]
+(49) Project [codegen id : X]
Output [7]: [i_item_desc#6, i_category#9, i_class#8, i_current_price#7,
itemrevenue#16, ((_w0#17 * 100) / _we0#18) AS revenueratio#19, i_item_id#5]
Input [8]: [i_item_desc#6, i_category#9, i_class#8, i_current_price#7,
itemrevenue#16, _w0#17, i_item_id#5, _we0#18]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q13.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q13.txt
index a952eab9..3d7d4e40 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q13.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q13.txt
@@ -272,13 +272,13 @@ Input [2]: [ca_address_sk#12, ca_state#13]
Input [2]: [ca_address_sk#12, ca_state#13]
Arguments: [ca_address_sk#12 ASC NULLS FIRST], false
-(33) SortMergeJoin [codegen id : 1]
+(33) SortMergeJoin [codegen id : X]
Left keys [1]: [ss_addr_sk#4]
Right keys [1]: [ca_address_sk#12]
Join type: Inner
Join condition: ((((ca_state#13 IN (TX,OH) AND (ss_net_profit#10 >= 100.00))
AND (ss_net_profit#10 <= 200.00)) OR ((ca_state#13 IN (OR,NM,KY) AND
(ss_net_profit#10 >= 150.00)) AND (ss_net_profit#10 <= 300.00))) OR
((ca_state#13 IN (VA,TX,MS) AND (ss_net_profit#10 >= 50.00)) AND
(ss_net_profit#10 <= 250.00)))
-(34) Project [codegen id : 1]
+(34) Project [codegen id : X]
Output [7]: [ss_sold_date_sk#1, ss_cdemo_sk#2, ss_hdemo_sk#3, ss_quantity#6,
ss_sales_price#7, ss_ext_sales_price#8, ss_ext_wholesale_cost#9]
Input [11]: [ss_sold_date_sk#1, ss_cdemo_sk#2, ss_hdemo_sk#3, ss_addr_sk#4,
ss_quantity#6, ss_sales_price#7, ss_ext_sales_price#8, ss_ext_wholesale_cost#9,
ss_net_profit#10, ca_address_sk#12, ca_state#13]
@@ -405,13 +405,13 @@ Input [3]: [#17#17, #18#18, #19#19]
Input [3]: [#17#17, #18#18, #19#19]
Arguments: [cd_demo_sk#17 ASC NULLS FIRST], false
-(65) SortMergeJoin [codegen id : 2]
+(65) SortMergeJoin [codegen id : X]
Left keys [1]: [ss_cdemo_sk#2]
Right keys [1]: [cd_demo_sk#17]
Join type: Inner
Join condition: ((((((cd_marital_status#18 = M) AND (cd_education_status#19 =
Advanced Degree)) AND (ss_sales_price#7 >= 100.00)) AND (ss_sales_price#7 <=
150.00)) OR ((((cd_marital_status#18 = S) AND (cd_education_status#19 =
College)) AND (ss_sales_price#7 >= 50.00)) AND (ss_sales_price#7 <= 100.00)))
OR ((((cd_marital_status#18 = W) AND (cd_education_status#19 = 2 yr Degree))
AND (ss_sales_price#7 >= 150.00)) AND (ss_sales_price#7 <= 200.00)))
-(66) Project [codegen id : 2]
+(66) Project [codegen id : X]
Output [7]: [ss_hdemo_sk#3, ss_quantity#6, ss_sales_price#7,
ss_ext_sales_price#8, ss_ext_wholesale_cost#9, cd_marital_status#18,
cd_education_status#19]
Input [9]: [ss_cdemo_sk#2, ss_hdemo_sk#3, ss_quantity#6, ss_sales_price#7,
ss_ext_sales_price#8, ss_ext_wholesale_cost#9, #17#17, #18#18, #19#19]
@@ -471,17 +471,17 @@ Input [2]: [#20#20, #21#21]
Input [2]: [#20#20, #21#21]
Arguments: [hd_demo_sk#20 ASC NULLS FIRST], false
-(81) SortMergeJoin [codegen id : 3]
+(81) SortMergeJoin [codegen id : X]
Left keys [1]: [ss_hdemo_sk#3]
Right keys [1]: [hd_demo_sk#20]
Join type: Inner
Join condition: (((((((cd_marital_status#18 = M) AND (cd_education_status#19 =
Advanced Degree)) AND (ss_sales_price#7 >= 100.00)) AND (ss_sales_price#7 <=
150.00)) AND (hd_dep_count#21 = 3)) OR (((((cd_marital_status#18 = S) AND
(cd_education_status#19 = College)) AND (ss_sales_price#7 >= 50.00)) AND
(ss_sales_price#7 <= 100.00)) AND (hd_dep_count#21 = 1))) OR
(((((cd_marital_status#18 = W) AND (cd_education_status#19 = 2 yr Degree)) AND
(ss_sales_price#7 >= 150.00)) AND (ss_sales_price [...]
-(82) Project [codegen id : 3]
+(82) Project [codegen id : X]
Output [3]: [ss_quantity#6, ss_ext_sales_price#8, ss_ext_wholesale_cost#9]
Input [9]: [ss_hdemo_sk#3, ss_quantity#6, ss_sales_price#7,
ss_ext_sales_price#8, ss_ext_wholesale_cost#9, cd_marital_status#18,
cd_education_status#19, #20#20, #21#21]
-(83) HashAggregate [codegen id : 3]
+(83) HashAggregate [codegen id : X]
Input [3]: [ss_quantity#6, ss_ext_sales_price#8, ss_ext_wholesale_cost#9]
Keys: []
Functions [4]: [partial_avg(ss_quantity#6),
partial_avg(UnscaledValue(ss_ext_sales_price#8)),
partial_avg(UnscaledValue(ss_ext_wholesale_cost#9)),
partial_sum(UnscaledValue(ss_ext_wholesale_cost#9))]
@@ -496,7 +496,7 @@ Arguments: SinglePartition, ENSURE_REQUIREMENTS,
[plan_id=11]
Output [7]: [sum#29, count#30, sum#31, count#32, sum#33, count#34, sum#35]
Arguments: X
-(86) HashAggregate [codegen id : 4]
+(86) HashAggregate [codegen id : X]
Input [7]: [sum#29, count#30, sum#31, count#32, sum#33, count#34, sum#35]
Keys: []
Functions [4]: [avg(ss_quantity#6), avg(UnscaledValue(ss_ext_sales_price#8)),
avg(UnscaledValue(ss_ext_wholesale_cost#9)),
sum(UnscaledValue(ss_ext_wholesale_cost#9))]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q15.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q15.txt
index dee7e500..e4d563b2 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q15.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q15.txt
@@ -225,13 +225,13 @@ Input [3]: [#6#6, #7#7, #8#8]
Input [3]: [#6#6, #7#7, #8#8]
Arguments: [ca_address_sk#6 ASC NULLS FIRST], false
-(32) SortMergeJoin [codegen id : 1]
+(32) SortMergeJoin [codegen id : X]
Left keys [1]: [c_current_addr_sk#5]
Right keys [1]: [ca_address_sk#6]
Join type: Inner
Join condition: ((substr(ca_zip#8, 1, 5) IN
(85669,86197,88274,83405,86475,85392,85460,80348,81792) OR ca_state#7 IN
(CA,WA,GA)) OR (cs_sales_price#3 > 500.00))
-(33) Project [codegen id : 1]
+(33) Project [codegen id : X]
Output [3]: [cs_sold_date_sk#1, cs_sales_price#3, ca_zip#8]
Input [6]: [cs_sold_date_sk#1, cs_sales_price#3, c_current_addr_sk#5, #6#6,
#7#7, #8#8]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q16.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q16.txt
index 67a27cdf..51e29498 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q16.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q16.txt
@@ -199,13 +199,13 @@ Input [2]: [#8#8, #9#9]
Input [2]: [#8#8, #9#9]
Arguments: [cs_order_number#9 ASC NULLS FIRST], false
-(16) SortMergeJoin [codegen id : 1]
+(16) SortMergeJoin [codegen id : X]
Left keys [1]: [cs_order_number#5]
Right keys [1]: [cs_order_number#9]
Join type: LeftSemi
Join condition: NOT (cs_warehouse_sk#4 = cs_warehouse_sk#8)
-(17) Project [codegen id : 1]
+(17) Project [codegen id : X]
Output [6]: [cs_ship_date_sk#1, cs_ship_addr_sk#2, cs_call_center_sk#3,
cs_order_number#5, cs_ext_ship_cost#6, cs_net_profit#7]
Input [7]: [#1#1, #2#2, #3#3, #4#4, #5#5, #6#6, #7#7]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q19.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q19.txt
index dc7466d2..0e7874f2 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q19.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q19.txt
@@ -466,17 +466,17 @@ Input [2]: [#19#19, #20#20]
Input [2]: [#19#19, #20#20]
Arguments: [s_store_sk#19 ASC NULLS FIRST], false
-(79) SortMergeJoin [codegen id : 1]
+(79) SortMergeJoin [codegen id : X]
Left keys [1]: [ss_store_sk#7]
Right keys [1]: [s_store_sk#19]
Join type: Inner
Join condition: NOT (substr(ca_zip#18, 1, 5) = substr(s_zip#20, 1, 5))
-(80) Project [codegen id : 1]
+(80) Project [codegen id : X]
Output [5]: [ss_ext_sales_price#8, i_brand_id#10, i_brand#11,
i_manufact_id#12, i_manufact#13]
Input [9]: [ss_store_sk#7, ss_ext_sales_price#8, i_brand_id#10, i_brand#11,
i_manufact_id#12, i_manufact#13, ca_zip#18, #19#19, #20#20]
-(81) HashAggregate [codegen id : 1]
+(81) HashAggregate [codegen id : X]
Input [5]: [ss_ext_sales_price#8, i_brand_id#10, i_brand#11, i_manufact_id#12,
i_manufact#13]
Keys [4]: [i_brand#11, i_brand_id#10, i_manufact_id#12, i_manufact#13]
Functions [1]: [partial_sum(UnscaledValue(ss_ext_sales_price#8))]
@@ -495,7 +495,7 @@ Arguments: X
Input [5]: [i_brand#11, i_brand_id#10, i_manufact_id#12, i_manufact#13, sum#22]
Arguments: coalesced
-(85) HashAggregate [codegen id : 2]
+(85) HashAggregate [codegen id : X]
Input [5]: [i_brand#11, i_brand_id#10, i_manufact_id#12, i_manufact#13, sum#22]
Keys [4]: [i_brand#11, i_brand_id#10, i_manufact_id#12, i_manufact#13]
Functions [1]: [sum(UnscaledValue(ss_ext_sales_price#8))]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q2.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q2.txt
index bd2f2a6f..00c8b6a6 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q2.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q2.txt
@@ -442,7 +442,7 @@ Right keys [1]: [(d_week_seq2#76 - 53)]
Join type: Inner
Join condition: None
-(71) Project [codegen id : 1]
+(71) Project [codegen id : X]
Output [8]: [d_week_seq1#43, round((sun_sales1#44 / sun_sales2#77), 2) AS
round((sun_sales1 / sun_sales2), 2)#84, round((mon_sales1#45 / mon_sales2#78),
2) AS round((mon_sales1 / mon_sales2), 2)#85, round((tue_sales1#46 /
tue_sales2#79), 2) AS round((tue_sales1 / tue_sales2), 2)#86,
round((wed_sales1#47 / wed_sales2#80), 2) AS round((wed_sales1 / wed_sales2),
2)#87, round((thu_sales1#48 / thu_sales2#81), 2) AS round((thu_sales1 /
thu_sales2), 2)#88, round((fri_sales1#49 / fri_sales2#82), [...]
Input [16]: [d_week_seq1#43, sun_sales1#44, mon_sales1#45, tue_sales1#46,
wed_sales1#47, thu_sales1#48, fri_sales1#49, sat_sales1#50, d_week_seq2#76,
sun_sales2#77, mon_sales2#78, tue_sales2#79, wed_sales2#80, thu_sales2#81,
fri_sales2#82, sat_sales2#83]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q20.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q20.txt
index 2d1e4f16..fcaa6348 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q20.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q20.txt
@@ -286,7 +286,7 @@ Arguments: [i_class#8 ASC NULLS FIRST], false
Input [7]: [i_item_desc#6, i_category#9, i_class#8, i_current_price#7,
itemrevenue#16, _w0#17, i_item_id#5]
Arguments: [sum(_w0#17) windowspecdefinition(i_class#8,
specifiedwindowframe(RowFrame, unboundedpreceding$(), unboundedfollowing$()))
AS _we0#18], [i_class#8]
-(49) Project [codegen id : 1]
+(49) Project [codegen id : X]
Output [7]: [i_item_desc#6, i_category#9, i_class#8, i_current_price#7,
itemrevenue#16, ((_w0#17 * 100) / _we0#18) AS revenueratio#19, i_item_id#5]
Input [8]: [i_item_desc#6, i_category#9, i_class#8, i_current_price#7,
itemrevenue#16, _w0#17, i_item_id#5, _we0#18]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q30.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q30.txt
index b5171f3e..aef8ca2e 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q30.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q30.txt
@@ -605,13 +605,13 @@ Condition : isnotnull((avg(ctr_total_return) * 1.2)#30)
Input [2]: [(avg(ctr_total_return) * 1.2)#30, ctr_state#25]
Arguments: [ctr_state#25 ASC NULLS FIRST], false
-(95) SortMergeJoin [codegen id : 1]
+(95) SortMergeJoin [codegen id : X]
Left keys [1]: [ctr_state#14]
Right keys [1]: [ctr_state#25]
Join type: Inner
Join condition: (cast(ctr_total_return#15 as decimal(24,7)) >
(avg(ctr_total_return) * 1.2)#30)
-(96) Project [codegen id : 1]
+(96) Project [codegen id : X]
Output [2]: [ctr_customer_sk#13, ctr_total_return#15]
Input [5]: [ctr_customer_sk#13, ctr_state#14, ctr_total_return#15,
(avg(ctr_total_return) * 1.2)#30, ctr_state#25]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q31.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q31.txt
index d11981af..d4188dec 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q31.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q31.txt
@@ -1317,13 +1317,13 @@ Input [2]: [ca_county#55, web_sales#58]
Input [2]: [ca_county#55, web_sales#58]
Arguments: [ca_county#55 ASC NULLS FIRST], false
-(217) SortMergeJoin [codegen id : 1]
+(217) SortMergeJoin [codegen id : X]
Left keys [1]: [ca_county#43]
Right keys [1]: [ca_county#55]
Join type: Inner
Join condition: (CASE WHEN (web_sales#47 > 0.00) THEN (web_sales#58 /
web_sales#47) END > CASE WHEN (store_sales#13 > 0.00) THEN (store_sales#24 /
store_sales#13) END)
-(218) Project [codegen id : 1]
+(218) Project [codegen id : X]
Output [8]: [ca_county#8, d_year#5, store_sales#13, store_sales#24,
store_sales#35, ca_county#43, web_sales#47, web_sales#58]
Input [9]: [ca_county#8, d_year#5, store_sales#13, store_sales#24,
store_sales#35, ca_county#43, web_sales#47, ca_county#55, web_sales#58]
@@ -1488,13 +1488,13 @@ Input [2]: [ca_county#66, web_sales#69]
Input [2]: [ca_county#66, web_sales#69]
Arguments: [ca_county#66 ASC NULLS FIRST], false
-(259) SortMergeJoin [codegen id : 2]
+(259) SortMergeJoin [codegen id : X]
Left keys [1]: [ca_county#43]
Right keys [1]: [ca_county#66]
Join type: Inner
Join condition: (CASE WHEN (web_sales#58 > 0.00) THEN (web_sales#69 /
web_sales#58) END > CASE WHEN (store_sales#24 > 0.00) THEN (store_sales#35 /
store_sales#24) END)
-(260) Project [codegen id : 2]
+(260) Project [codegen id : X]
Output [6]: [ca_county#8, d_year#5, (web_sales#58 / web_sales#47) AS
web_q1_q2_increase#70, (store_sales#24 / store_sales#13) AS
store_q1_q2_increase#71, (web_sales#69 / web_sales#58) AS
web_q2_q3_increase#72, (store_sales#35 / store_sales#24) AS
store_q2_q3_increase#73]
Input [10]: [ca_county#8, d_year#5, store_sales#13, store_sales#24,
store_sales#35, ca_county#43, web_sales#47, web_sales#58, ca_county#66,
web_sales#69]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q32.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q32.txt
index e4d065e0..f18f5a44 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q32.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q32.txt
@@ -324,13 +324,13 @@ Condition : isnotnull((1.3 * avg(cs_ext_discount_amt))#16)
Input [2]: [(1.3 * avg(cs_ext_discount_amt))#16, cs_item_sk#7]
Arguments: [cs_item_sk#7 ASC NULLS FIRST], false
-(49) SortMergeJoin [codegen id : 1]
+(49) SortMergeJoin [codegen id : X]
Left keys [1]: [i_item_sk#4]
Right keys [1]: [cs_item_sk#7]
Join type: Inner
Join condition: (cast(cs_ext_discount_amt#3 as decimal(14,7)) > (1.3 *
avg(cs_ext_discount_amt))#16)
-(50) Project [codegen id : 1]
+(50) Project [codegen id : X]
Output [2]: [cs_sold_date_sk#1, cs_ext_discount_amt#3]
Input [5]: [cs_sold_date_sk#1, cs_ext_discount_amt#3, i_item_sk#4, (1.3 *
avg(cs_ext_discount_amt))#16, cs_item_sk#7]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q4.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q4.txt
index 2c538c30..58b55aaa 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q4.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q4.txt
@@ -1008,13 +1008,13 @@ Input [2]: [customer_id#88, year_total#89]
Input [2]: [customer_id#88, year_total#89]
Arguments: [customer_id#88 ASC NULLS FIRST], false
-(150) SortMergeJoin [codegen id : 1]
+(150) SortMergeJoin [codegen id : X]
Left keys [1]: [customer_id#22]
Right keys [1]: [customer_id#88]
Join type: Inner
Join condition: (CASE WHEN (year_total#70 > 0.000000) THEN (year_total#89 /
year_total#70) END > CASE WHEN (year_total#23 > 0.000000) THEN (year_total#48 /
year_total#23) END)
-(151) Project [codegen id : 1]
+(151) Project [codegen id : X]
Output [10]: [customer_id#22, customer_id#41, customer_first_name#42,
customer_last_name#43, customer_preferred_cust_flag#44,
customer_birth_country#45, customer_login#46, customer_email_address#47,
year_total#70, year_total#89]
Input [13]: [customer_id#22, year_total#23, customer_id#41,
customer_first_name#42, customer_last_name#43, customer_preferred_cust_flag#44,
customer_birth_country#45, customer_login#46, customer_email_address#47,
year_total#48, year_total#70, customer_id#88, year_total#89]
@@ -1318,13 +1318,13 @@ Input [2]: [customer_id#129, year_total#130]
Input [2]: [customer_id#129, year_total#130]
Arguments: [customer_id#129 ASC NULLS FIRST], false
-(225) SortMergeJoin [codegen id : 2]
+(225) SortMergeJoin [codegen id : X]
Left keys [1]: [customer_id#22]
Right keys [1]: [customer_id#129]
Join type: Inner
Join condition: (CASE WHEN (year_total#70 > 0.000000) THEN (year_total#89 /
year_total#70) END > CASE WHEN (year_total#111 > 0.000000) THEN (year_total#130
/ year_total#111) END)
-(226) Project [codegen id : 2]
+(226) Project [codegen id : X]
Output [7]: [customer_id#41, customer_first_name#42, customer_last_name#43,
customer_preferred_cust_flag#44, customer_birth_country#45, customer_login#46,
customer_email_address#47]
Input [13]: [customer_id#22, customer_id#41, customer_first_name#42,
customer_last_name#43, customer_preferred_cust_flag#44,
customer_birth_country#45, customer_login#46, customer_email_address#47,
year_total#70, year_total#89, year_total#111, customer_id#129, year_total#130]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q46.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q46.txt
index f8d465d6..ec305917 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q46.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q46.txt
@@ -564,13 +564,13 @@ Input [2]: [#33#33, #34#34]
Input [2]: [#33#33, #34#34]
Arguments: [ca_address_sk#33 ASC NULLS FIRST], false
-(97) SortMergeJoin [codegen id : 1]
+(97) SortMergeJoin [codegen id : X]
Left keys [1]: [c_current_addr_sk#30]
Right keys [1]: [ca_address_sk#33]
Join type: Inner
Join condition: NOT (ca_city#34 = bought_city#26)
-(98) Project [codegen id : 1]
+(98) Project [codegen id : X]
Output [7]: [c_last_name#32, c_first_name#31, ca_city#34, bought_city#26,
ss_ticket_number#6, amt#27, profit#28]
Input [9]: [ss_ticket_number#6, bought_city#26, amt#27, profit#28,
c_current_addr_sk#30, c_first_name#31, c_last_name#32, #33#33, #34#34]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q47.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q47.txt
index 23a5d664..edc49e4a 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q47.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q47.txt
@@ -498,11 +498,11 @@ Condition : (isnotnull(d_year#9) AND (d_year#9 = 1999))
Input [9]: [i_category#3, i_brand#2, s_store_name#12, s_company_name#13,
d_year#9, d_moy#10, sum_sales#18, _w0#19, rn#20]
Arguments: [avg(_w0#19) windowspecdefinition(i_category#3, i_brand#2,
s_store_name#12, s_company_name#13, d_year#9, specifiedwindowframe(RowFrame,
unboundedpreceding$(), unboundedfollowing$())) AS avg_monthly_sales#21],
[i_category#3, i_brand#2, s_store_name#12, s_company_name#13, d_year#9]
-(65) Filter [codegen id : 1]
+(65) Filter [codegen id : X]
Input [10]: [i_category#3, i_brand#2, s_store_name#12, s_company_name#13,
d_year#9, d_moy#10, sum_sales#18, _w0#19, rn#20, avg_monthly_sales#21]
Condition : ((isnotnull(avg_monthly_sales#21) AND (avg_monthly_sales#21 >
0.000000)) AND CASE WHEN (avg_monthly_sales#21 > 0.000000) THEN
((abs((sum_sales#18 - avg_monthly_sales#21)) / avg_monthly_sales#21) >
0.1000000000000000) END)
-(66) Project [codegen id : 1]
+(66) Project [codegen id : X]
Output [9]: [i_category#3, i_brand#2, s_store_name#12, s_company_name#13,
d_year#9, d_moy#10, sum_sales#18, avg_monthly_sales#21, rn#20]
Input [10]: [i_category#3, i_brand#2, s_store_name#12, s_company_name#13,
d_year#9, d_moy#10, sum_sales#18, _w0#19, rn#20, avg_monthly_sales#21]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q48.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q48.txt
index dcba247f..fa045281 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q48.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q48.txt
@@ -246,13 +246,13 @@ Input [3]: [#9#9, #10#10, #11#11]
Input [3]: [#9#9, #10#10, #11#11]
Arguments: [cd_demo_sk#9 ASC NULLS FIRST], false
-(32) SortMergeJoin [codegen id : 1]
+(32) SortMergeJoin [codegen id : X]
Left keys [1]: [ss_cdemo_sk#2]
Right keys [1]: [cd_demo_sk#9]
Join type: Inner
Join condition: ((((((cd_marital_status#10 = M) AND (cd_education_status#11 =
4 yr Degree)) AND (ss_sales_price#6 >= 100.00)) AND (ss_sales_price#6 <=
150.00)) OR ((((cd_marital_status#10 = D) AND (cd_education_status#11 = 2 yr
Degree)) AND (ss_sales_price#6 >= 50.00)) AND (ss_sales_price#6 <= 100.00))) OR
((((cd_marital_status#10 = S) AND (cd_education_status#11 = College)) AND
(ss_sales_price#6 >= 150.00)) AND (ss_sales_price#6 <= 200.00)))
-(33) Project [codegen id : 1]
+(33) Project [codegen id : X]
Output [4]: [ss_sold_date_sk#1, ss_addr_sk#3, ss_quantity#5, ss_net_profit#7]
Input [9]: [ss_sold_date_sk#1, ss_cdemo_sk#2, ss_addr_sk#3, ss_quantity#5,
ss_sales_price#6, ss_net_profit#7, #9#9, #10#10, #11#11]
@@ -316,13 +316,13 @@ Input [2]: [ca_address_sk#12, ca_state#13]
Input [2]: [ca_address_sk#12, ca_state#13]
Arguments: [ca_address_sk#12 ASC NULLS FIRST], false
-(49) SortMergeJoin [codegen id : 2]
+(49) SortMergeJoin [codegen id : X]
Left keys [1]: [ss_addr_sk#3]
Right keys [1]: [ca_address_sk#12]
Join type: Inner
Join condition: ((((ca_state#13 IN (CO,OH,TX) AND (ss_net_profit#7 >= 0.00))
AND (ss_net_profit#7 <= 2000.00)) OR ((ca_state#13 IN (OR,MN,KY) AND
(ss_net_profit#7 >= 150.00)) AND (ss_net_profit#7 <= 3000.00))) OR
((ca_state#13 IN (VA,CA,MS) AND (ss_net_profit#7 >= 50.00)) AND
(ss_net_profit#7 <= 25000.00)))
-(50) Project [codegen id : 2]
+(50) Project [codegen id : X]
Output [2]: [ss_sold_date_sk#1, ss_quantity#5]
Input [6]: [ss_sold_date_sk#1, ss_addr_sk#3, ss_quantity#5, ss_net_profit#7,
ca_address_sk#12, ca_state#13]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q51.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q51.txt
index 548e344a..9f404f29 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q51.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q51.txt
@@ -280,7 +280,7 @@ Arguments: [ws_item_sk#2 ASC NULLS FIRST, d_date#5 ASC
NULLS FIRST], false
Input [4]: [item_sk#11, d_date#5, _w0#12, ws_item_sk#2]
Arguments: [sum(_w0#12) windowspecdefinition(ws_item_sk#2, d_date#5 ASC NULLS
FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS
cume_sales#13], [ws_item_sk#2], [d_date#5 ASC NULLS FIRST]
-(34) Project [codegen id : 1]
+(34) Project [codegen id : X]
Output [3]: [item_sk#11, d_date#5, cume_sales#13]
Input [5]: [item_sk#11, d_date#5, _w0#12, ws_item_sk#2, cume_sales#13]
@@ -432,7 +432,7 @@ Arguments: [ss_item_sk#15 ASC NULLS FIRST, d_date#18 ASC
NULLS FIRST], false
Input [4]: [item_sk#22, d_date#18, _w0#23, ss_item_sk#15]
Arguments: [sum(_w0#23) windowspecdefinition(ss_item_sk#15, d_date#18 ASC
NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(),
currentrow$())) AS cume_sales#24], [ss_item_sk#15], [d_date#18 ASC NULLS FIRST]
-(71) Project [codegen id : 2]
+(71) Project [codegen id : X]
Output [3]: [item_sk#22, d_date#18, cume_sales#24]
Input [5]: [item_sk#22, d_date#18, _w0#23, ss_item_sk#15, cume_sales#24]
@@ -491,7 +491,7 @@ Arguments: [item_sk#25 ASC NULLS FIRST, d_date#26 ASC NULLS
FIRST], false
Input [4]: [item_sk#25, d_date#26, web_sales#27, store_sales#28]
Arguments: [max(web_sales#27) windowspecdefinition(item_sk#25, d_date#26 ASC
NULLS FIRST, specifiedwindowframe(RowFrame, unboundedpreceding$(),
currentrow$())) AS web_cumulative#29, max(store_sales#28)
windowspecdefinition(item_sk#25, d_date#26 ASC NULLS FIRST,
specifiedwindowframe(RowFrame, unboundedpreceding$(), currentrow$())) AS
store_cumulative#30], [item_sk#25], [d_date#26 ASC NULLS FIRST]
-(86) Filter [codegen id : 3]
+(86) Filter [codegen id : X]
Input [6]: [item_sk#25, d_date#26, web_sales#27, store_sales#28,
web_cumulative#29, store_cumulative#30]
Condition : ((isnotnull(web_cumulative#29) AND isnotnull(store_cumulative#30))
AND (web_cumulative#29 > store_cumulative#30))
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q53.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q53.txt
index 110758e1..1143f107 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q53.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q53.txt
@@ -380,11 +380,11 @@ Arguments: [i_manufact_id#5 ASC NULLS FIRST], false
Input [3]: [i_manufact_id#5, sum_sales#22, _w0#23]
Arguments: [avg(_w0#23) windowspecdefinition(i_manufact_id#5,
specifiedwindowframe(RowFrame, unboundedpreceding$(), unboundedfollowing$()))
AS avg_quarterly_sales#24], [i_manufact_id#5]
-(65) Filter [codegen id : 1]
+(65) Filter [codegen id : X]
Input [4]: [i_manufact_id#5, sum_sales#22, _w0#23, avg_quarterly_sales#24]
Condition : CASE WHEN (avg_quarterly_sales#24 > 0.000000) THEN
((abs((sum_sales#22 - avg_quarterly_sales#24)) / avg_quarterly_sales#24) >
0.1000000000000000) ELSE false END
-(66) Project [codegen id : 1]
+(66) Project [codegen id : X]
Output [3]: [i_manufact_id#5, sum_sales#22, avg_quarterly_sales#24]
Input [4]: [i_manufact_id#5, sum_sales#22, _w0#23, avg_quarterly_sales#24]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q57.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q57.txt
index ac282457..17fb351f 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q57.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q57.txt
@@ -498,11 +498,11 @@ Condition : (isnotnull(d_year#9) AND (d_year#9 = 1999))
Input [8]: [i_category#3, i_brand#2, cc_name#12, d_year#9, d_moy#10,
sum_sales#17, _w0#18, rn#19]
Arguments: [avg(_w0#18) windowspecdefinition(i_category#3, i_brand#2,
cc_name#12, d_year#9, specifiedwindowframe(RowFrame, unboundedpreceding$(),
unboundedfollowing$())) AS avg_monthly_sales#20], [i_category#3, i_brand#2,
cc_name#12, d_year#9]
-(65) Filter [codegen id : 1]
+(65) Filter [codegen id : X]
Input [9]: [i_category#3, i_brand#2, cc_name#12, d_year#9, d_moy#10,
sum_sales#17, _w0#18, rn#19, avg_monthly_sales#20]
Condition : ((isnotnull(avg_monthly_sales#20) AND (avg_monthly_sales#20 >
0.000000)) AND CASE WHEN (avg_monthly_sales#20 > 0.000000) THEN
((abs((sum_sales#17 - avg_monthly_sales#20)) / avg_monthly_sales#20) >
0.1000000000000000) END)
-(66) Project [codegen id : 1]
+(66) Project [codegen id : X]
Output [8]: [i_category#3, i_brand#2, cc_name#12, d_year#9, d_moy#10,
sum_sales#17, avg_monthly_sales#20, rn#19]
Input [9]: [i_category#3, i_brand#2, cc_name#12, d_year#9, d_moy#10,
sum_sales#17, _w0#18, rn#19, avg_monthly_sales#20]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q58.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q58.txt
index 1887feee..b93dc834 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q58.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q58.txt
@@ -662,13 +662,13 @@ Condition : isnotnull(cs_item_rev#28)
Input [2]: [item_id#27, cs_item_rev#28]
Arguments: [item_id#27 ASC NULLS FIRST], false
-(99) SortMergeJoin [codegen id : 1]
+(99) SortMergeJoin [codegen id : X]
Left keys [1]: [item_id#16]
Right keys [1]: [item_id#27]
Join type: Inner
Join condition: ((((cast(ss_item_rev#17 as decimal(19,3)) >= (0.9 *
cs_item_rev#28)) AND (cast(ss_item_rev#17 as decimal(20,3)) <= (1.1 *
cs_item_rev#28))) AND (cast(cs_item_rev#28 as decimal(19,3)) >= (0.9 *
ss_item_rev#17))) AND (cast(cs_item_rev#28 as decimal(20,3)) <= (1.1 *
ss_item_rev#17)))
-(100) Project [codegen id : 1]
+(100) Project [codegen id : X]
Output [3]: [item_id#16, ss_item_rev#17, cs_item_rev#28]
Input [4]: [item_id#16, ss_item_rev#17, item_id#27, cs_item_rev#28]
@@ -834,13 +834,13 @@ Condition : isnotnull(ws_item_rev#39)
Input [2]: [item_id#38, ws_item_rev#39]
Arguments: [item_id#38 ASC NULLS FIRST], false
-(140) SortMergeJoin [codegen id : 2]
+(140) SortMergeJoin [codegen id : X]
Left keys [1]: [item_id#16]
Right keys [1]: [item_id#38]
Join type: Inner
Join condition: ((((((((cast(ss_item_rev#17 as decimal(19,3)) >= (0.9 *
ws_item_rev#39)) AND (cast(ss_item_rev#17 as decimal(20,3)) <= (1.1 *
ws_item_rev#39))) AND (cast(cs_item_rev#28 as decimal(19,3)) >= (0.9 *
ws_item_rev#39))) AND (cast(cs_item_rev#28 as decimal(20,3)) <= (1.1 *
ws_item_rev#39))) AND (cast(ws_item_rev#39 as decimal(19,3)) >= (0.9 *
ss_item_rev#17))) AND (cast(ws_item_rev#39 as decimal(20,3)) <= (1.1 *
ss_item_rev#17))) AND (cast(ws_item_rev#39 as decimal(19,3)) >= (0 [...]
-(141) Project [codegen id : 2]
+(141) Project [codegen id : X]
Output [8]: [item_id#16, ss_item_rev#17, (((ss_item_rev#17 / ((ss_item_rev#17
+ cs_item_rev#28) + ws_item_rev#39)) / 3) * 100) AS ss_dev#40, cs_item_rev#28,
(((cs_item_rev#28 / ((ss_item_rev#17 + cs_item_rev#28) + ws_item_rev#39)) / 3)
* 100) AS cs_dev#41, ws_item_rev#39, (((ws_item_rev#39 / ((ss_item_rev#17 +
cs_item_rev#28) + ws_item_rev#39)) / 3) * 100) AS ws_dev#42, (((ss_item_rev#17
+ cs_item_rev#28) + ws_item_rev#39) / 3) AS average#43]
Input [5]: [item_id#16, ss_item_rev#17, cs_item_rev#28, item_id#38,
ws_item_rev#39]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q6.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q6.txt
index ddadc008..ea9187c7 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q6.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q6.txt
@@ -471,13 +471,13 @@ Condition : isnotnull(avg(i_current_price)#22)
Input [2]: [avg(i_current_price)#22, i_category#16]
Arguments: [i_category#16 ASC NULLS FIRST], false
-(76) SortMergeJoin [codegen id : 1]
+(76) SortMergeJoin [codegen id : X]
Left keys [1]: [i_category#14]
Right keys [1]: [i_category#16]
Join type: Inner
Join condition: (cast(i_current_price#13 as decimal(14,7)) > (1.2 *
avg(i_current_price)#22))
-(77) Project [codegen id : 1]
+(77) Project [codegen id : X]
Output [1]: [i_item_sk#12]
Input [5]: [#12#12, #13#13, #14#14, avg(i_current_price)#22, i_category#16]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q61.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q61.txt
index 8982df02..b8eabc01 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q61.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q61.txt
@@ -1040,7 +1040,7 @@ Input [1]: [sum(UnscaledValue(ss_ext_sales_price#31))#40]
Join type: Inner
Join condition: None
-(180) Project [codegen id : 1]
+(180) Project [codegen id : X]
Output [3]: [promotions#26, total#41, ((cast(promotions#26 as decimal(15,4)) /
cast(total#41 as decimal(15,4))) * 100) AS ((CAST(promotions AS DECIMAL(15,4))
/ CAST(total AS DECIMAL(15,4))) * 100)#42]
Input [2]: [promotions#26, total#41]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q63.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q63.txt
index ee2729f3..1ef1f32b 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q63.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q63.txt
@@ -380,11 +380,11 @@ Arguments: [i_manager_id#5 ASC NULLS FIRST], false
Input [3]: [i_manager_id#5, sum_sales#22, _w0#23]
Arguments: [avg(_w0#23) windowspecdefinition(i_manager_id#5,
specifiedwindowframe(RowFrame, unboundedpreceding$(), unboundedfollowing$()))
AS avg_monthly_sales#24], [i_manager_id#5]
-(65) Filter [codegen id : 1]
+(65) Filter [codegen id : X]
Input [4]: [i_manager_id#5, sum_sales#22, _w0#23, avg_monthly_sales#24]
Condition : CASE WHEN (avg_monthly_sales#24 > 0.000000) THEN
((abs((sum_sales#22 - avg_monthly_sales#24)) / avg_monthly_sales#24) >
0.1000000000000000) ELSE false END
-(66) Project [codegen id : 1]
+(66) Project [codegen id : X]
Output [3]: [i_manager_id#5, sum_sales#22, avg_monthly_sales#24]
Input [4]: [i_manager_id#5, sum_sales#22, _w0#23, avg_monthly_sales#24]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q64.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q64.txt
index 939461e2..d4bbb186 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q64.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q64.txt
@@ -1455,13 +1455,13 @@ Input [2]: [#50#50, #51#51]
Input [2]: [#50#50, #51#51]
Arguments: [cd_demo_sk#50 ASC NULLS FIRST], false
-(154) SortMergeJoin [codegen id : 1]
+(154) SortMergeJoin [codegen id : X]
Left keys [1]: [c_current_cdemo_sk#39]
Right keys [1]: [cd_demo_sk#50]
Join type: Inner
Join condition: NOT (cd_marital_status#49 = cd_marital_status#51)
-(155) Project [codegen id : 1]
+(155) Project [codegen id : X]
Output [14]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8,
ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#34,
s_store_name#36, s_zip#37, c_current_hdemo_sk#40, c_current_addr_sk#41,
d_year#45, d_year#47]
Input [18]: [ss_item_sk#2, ss_hdemo_sk#5, ss_addr_sk#6, ss_promo_sk#8,
ss_wholesale_cost#10, ss_list_price#11, ss_coupon_amt#12, d_year#34,
s_store_name#36, s_zip#37, c_current_cdemo_sk#39, c_current_hdemo_sk#40,
c_current_addr_sk#41, d_year#45, d_year#47, cd_marital_status#49, #50#50,
#51#51]
@@ -2343,13 +2343,13 @@ Input [2]: [#129#129, #130#130]
Input [2]: [#129#129, #130#130]
Arguments: [cd_demo_sk#129 ASC NULLS FIRST], false
-(373) SortMergeJoin [codegen id : 2]
+(373) SortMergeJoin [codegen id : X]
Left keys [1]: [c_current_cdemo_sk#118]
Right keys [1]: [cd_demo_sk#129]
Join type: Inner
Join condition: NOT (cd_marital_status#128 = cd_marital_status#130)
-(374) Project [codegen id : 2]
+(374) Project [codegen id : X]
Output [14]: [ss_item_sk#102, ss_hdemo_sk#105, ss_addr_sk#106,
ss_promo_sk#108, ss_wholesale_cost#109, ss_list_price#110, ss_coupon_amt#111,
d_year#113, s_store_name#115, s_zip#116, c_current_hdemo_sk#119,
c_current_addr_sk#120, d_year#124, d_year#126]
Input [18]: [ss_item_sk#102, ss_hdemo_sk#105, ss_addr_sk#106, ss_promo_sk#108,
ss_wholesale_cost#109, ss_list_price#110, ss_coupon_amt#111, d_year#113,
s_store_name#115, s_zip#116, c_current_cdemo_sk#118, c_current_hdemo_sk#119,
c_current_addr_sk#120, d_year#124, d_year#126, cd_marital_status#128, #129#129,
#130#130]
@@ -2805,13 +2805,13 @@ Input [8]: [item_sk#156, store_name#157, store_zip#158,
syear#159, cnt#160, s1#1
Input [8]: [item_sk#156, store_name#157, store_zip#158, syear#159, cnt#160,
s1#161, s2#162, s3#163]
Arguments: [item_sk#156 ASC NULLS FIRST, store_name#157 ASC NULLS FIRST,
store_zip#158 ASC NULLS FIRST], false
-(489) SortMergeJoin [codegen id : 3]
+(489) SortMergeJoin [codegen id : X]
Left keys [3]: [item_sk#85, store_name#86, store_zip#87]
Right keys [3]: [item_sk#156, store_name#157, store_zip#158]
Join type: Inner
Join condition: (cnt#160 <= cnt#97)
-(490) Project [codegen id : 3]
+(490) Project [codegen id : X]
Output [21]: [product_name#84, store_name#86, store_zip#87,
b_street_number#88, b_streen_name#89, b_city#90, b_zip#91, c_street_number#92,
c_street_name#93, c_city#94, c_zip#95, syear#96, cnt#97, s1#98, s2#99, s3#100,
s1#161, s2#162, s3#163, syear#159, cnt#160]
Input [25]: [product_name#84, item_sk#85, store_name#86, store_zip#87,
b_street_number#88, b_streen_name#89, b_city#90, b_zip#91, c_street_number#92,
c_street_name#93, c_city#94, c_zip#95, syear#96, cnt#97, s1#98, s2#99, s3#100,
item_sk#156, store_name#157, store_zip#158, syear#159, cnt#160, s1#161, s2#162,
s3#163]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q65.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q65.txt
index fb0e3489..5928cccc 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q65.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q65.txt
@@ -570,13 +570,13 @@ Condition : isnotnull(ave#31)
Input [2]: [ss_store_sk#21, ave#31]
Arguments: [ss_store_sk#21 ASC NULLS FIRST], false
-(97) SortMergeJoin [codegen id : 1]
+(97) SortMergeJoin [codegen id : X]
Left keys [1]: [ss_store_sk#5]
Right keys [1]: [ss_store_sk#21]
Join type: Inner
Join condition: (cast(revenue#13 as decimal(23,7)) <= (0.1 * ave#31))
-(98) Project [codegen id : 1]
+(98) Project [codegen id : X]
Output [6]: [s_store_name#2, i_item_desc#15, revenue#13, i_current_price#16,
i_wholesale_cost#17, i_brand#18]
Input [9]: [s_store_name#2, ss_store_sk#5, revenue#13, i_item_desc#15,
i_current_price#16, i_wholesale_cost#17, i_brand#18, ss_store_sk#21, ave#31]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q68.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q68.txt
index eaa4041b..54b5a1bf 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q68.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q68.txt
@@ -564,13 +564,13 @@ Input [2]: [#38#38, #39#39]
Input [2]: [#38#38, #39#39]
Arguments: [ca_address_sk#38 ASC NULLS FIRST], false
-(97) SortMergeJoin [codegen id : 1]
+(97) SortMergeJoin [codegen id : X]
Left keys [1]: [c_current_addr_sk#35]
Right keys [1]: [ca_address_sk#38]
Join type: Inner
Join condition: NOT (ca_city#39 = bought_city#30)
-(98) Project [codegen id : 1]
+(98) Project [codegen id : X]
Output [8]: [c_last_name#37, c_first_name#36, ca_city#39, bought_city#30,
ss_ticket_number#6, extended_price#31, extended_tax#33, list_price#32]
Input [10]: [ss_ticket_number#6, bought_city#30, extended_price#31,
list_price#32, extended_tax#33, c_current_addr_sk#35, c_first_name#36,
c_last_name#37, #38#38, #39#39]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q72.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q72.txt
index 7a82f1cd..549f619c 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q72.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q72.txt
@@ -327,13 +327,13 @@ Input [4]: [#9#9, #10#10, #11#11, #12#12]
Input [4]: [#9#9, #10#10, #11#11, #12#12]
Arguments: [inv_item_sk#10 ASC NULLS FIRST], false
-(17) SortMergeJoin [codegen id : 1]
+(17) SortMergeJoin [codegen id : X]
Left keys [1]: [cs_item_sk#5]
Right keys [1]: [inv_item_sk#10]
Join type: Inner
Join condition: (inv_quantity_on_hand#12 < cs_quantity#8)
-(18) Project [codegen id : 1]
+(18) Project [codegen id : X]
Output [9]: [cs_sold_date_sk#1, cs_ship_date_sk#2, cs_bill_cdemo_sk#3,
cs_bill_hdemo_sk#4, cs_item_sk#5, cs_promo_sk#6, cs_order_number#7,
inv_date_sk#9, inv_warehouse_sk#11]
Input [12]: [#1#1, #2#2, #3#3, #4#4, #5#5, #6#6, #7#7, #8#8, #9#9, #10#10,
#11#11, #12#12]
@@ -783,13 +783,13 @@ Input [2]: [#27#27, #28#28]
Input [2]: [#27#27, #28#28]
Arguments: [d_date_sk#27 ASC NULLS FIRST], false
-(126) SortMergeJoin [codegen id : 2]
+(126) SortMergeJoin [codegen id : X]
Left keys [1]: [cs_ship_date_sk#2]
Right keys [1]: [d_date_sk#27]
Join type: Inner
Join condition: (d_date#28 > date_add(d_date#22, 5))
-(127) Project [codegen id : 2]
+(127) Project [codegen id : X]
Output [6]: [cs_item_sk#5, cs_promo_sk#6, cs_order_number#7,
w_warehouse_name#14, i_item_desc#16, d_week_seq#23]
Input [10]: [cs_ship_date_sk#2, cs_item_sk#5, cs_promo_sk#6,
cs_order_number#7, w_warehouse_name#14, i_item_desc#16, d_date#22,
d_week_seq#23, #27#27, #28#28]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q74.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q74.txt
index 1dc81d36..54fe218f 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q74.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q74.txt
@@ -882,13 +882,13 @@ Input [2]: [customer_id#52, year_total#53]
Input [2]: [customer_id#52, year_total#53]
Arguments: [customer_id#52 ASC NULLS FIRST], false
-(150) SortMergeJoin [codegen id : 1]
+(150) SortMergeJoin [codegen id : X]
Left keys [1]: [customer_id#14]
Right keys [1]: [customer_id#52]
Join type: Inner
Join condition: (CASE WHEN (year_total#42 > 0.00) THEN (year_total#53 /
year_total#42) END > CASE WHEN (year_total#15 > 0.00) THEN (year_total#28 /
year_total#15) END)
-(151) Project [codegen id : 1]
+(151) Project [codegen id : X]
Output [3]: [customer_id#25, customer_first_name#26, customer_last_name#27]
Input [9]: [customer_id#14, year_total#15, customer_id#25,
customer_first_name#26, customer_last_name#27, year_total#28, year_total#42,
customer_id#52, year_total#53]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q75.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q75.txt
index 34449045..c15d5a53 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q75.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q75.txt
@@ -1553,13 +1553,13 @@ Input [7]: [d_year#75, i_brand_id#70, i_class_id#71,
i_category_id#72, i_manufac
Input [7]: [d_year#75, i_brand_id#70, i_class_id#71, i_category_id#72,
i_manufact_id#73, sales_cnt#113, sales_amt#114]
Arguments: [i_brand_id#70 ASC NULLS FIRST, i_class_id#71 ASC NULLS FIRST,
i_category_id#72 ASC NULLS FIRST, i_manufact_id#73 ASC NULLS FIRST], false
-(267) SortMergeJoin [codegen id : 1]
+(267) SortMergeJoin [codegen id : X]
Left keys [4]: [i_brand_id#7, i_class_id#8, i_category_id#9, i_manufact_id#11]
Right keys [4]: [i_brand_id#70, i_class_id#71, i_category_id#72,
i_manufact_id#73]
Join type: Inner
Join condition: ((cast(sales_cnt#63 as decimal(17,2)) / cast(sales_cnt#113 as
decimal(17,2))) < 0.90000000000000000000)
-(268) Project [codegen id : 1]
+(268) Project [codegen id : X]
Output [10]: [d_year#75 AS prev_year#115, d_year#13 AS year#116, i_brand_id#7,
i_class_id#8, i_category_id#9, i_manufact_id#11, sales_cnt#113 AS
prev_yr_cnt#117, sales_cnt#63 AS curr_yr_cnt#118, (sales_cnt#63 -
sales_cnt#113) AS sales_cnt_diff#119, (sales_amt#64 - sales_amt#114) AS
sales_amt_diff#120]
Input [14]: [d_year#13, i_brand_id#7, i_class_id#8, i_category_id#9,
i_manufact_id#11, sales_cnt#63, sales_amt#64, d_year#75, i_brand_id#70,
i_class_id#71, i_category_id#72, i_manufact_id#73, sales_cnt#113, sales_amt#114]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q77.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q77.txt
index 62271142..749504b0 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q77.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q77.txt
@@ -866,7 +866,7 @@ Input [2]: [sum(UnscaledValue(cr_return_amount#49))#56,
sum(UnscaledValue(cr_net
Join type: Inner
Join condition: None
-(123) Project [codegen id : 1]
+(123) Project [codegen id : X]
Output [5]: [sales#46, returns#58, (profit#47 - profit_loss#59) AS profit#60,
catalog channel AS channel#61, cs_call_center_sk#36 AS id#62]
Input [5]: [cs_call_center_sk#36, sales#46, profit#47, returns#58,
profit_loss#59]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q81.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q81.txt
index 9d4f04e8..13082e0c 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q81.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q81.txt
@@ -603,13 +603,13 @@ Condition : isnotnull((avg(ctr_total_return) * 1.2)#30)
Input [2]: [(avg(ctr_total_return) * 1.2)#30, ctr_state#25]
Arguments: [ctr_state#25 ASC NULLS FIRST], false
-(95) SortMergeJoin [codegen id : 1]
+(95) SortMergeJoin [codegen id : X]
Left keys [1]: [ctr_state#14]
Right keys [1]: [ctr_state#25]
Join type: Inner
Join condition: (cast(ctr_total_return#15 as decimal(24,7)) >
(avg(ctr_total_return) * 1.2)#30)
-(96) Project [codegen id : 1]
+(96) Project [codegen id : X]
Output [2]: [ctr_customer_sk#13, ctr_total_return#15]
Input [5]: [ctr_customer_sk#13, ctr_state#14, ctr_total_return#15,
(avg(ctr_total_return) * 1.2)#30, ctr_state#25]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q85.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q85.txt
index 8c919522..a0f017b0 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q85.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q85.txt
@@ -383,13 +383,13 @@ Input [3]: [#17#17, #18#18, #19#19]
Input [3]: [#17#17, #18#18, #19#19]
Arguments: [cd_demo_sk#17 ASC NULLS FIRST], false
-(47) SortMergeJoin [codegen id : 1]
+(47) SortMergeJoin [codegen id : X]
Left keys [1]: [wr_refunded_cdemo_sk#9]
Right keys [1]: [cd_demo_sk#17]
Join type: Inner
Join condition: ((((((cd_marital_status#18 = M) AND (cd_education_status#19 =
Advanced Degree)) AND (ws_sales_price#6 >= 100.00)) AND (ws_sales_price#6 <=
150.00)) OR ((((cd_marital_status#18 = S) AND (cd_education_status#19 =
College)) AND (ws_sales_price#6 >= 50.00)) AND (ws_sales_price#6 <= 100.00)))
OR ((((cd_marital_status#18 = W) AND (cd_education_status#19 = 2 yr Degree))
AND (ws_sales_price#6 >= 150.00)) AND (ws_sales_price#6 <= 200.00)))
-(48) Project [codegen id : 1]
+(48) Project [codegen id : X]
Output [10]: [ws_sold_date_sk#1, ws_quantity#5, ws_net_profit#7,
wr_refunded_addr_sk#10, wr_returning_cdemo_sk#11, wr_reason_sk#12, wr_fee#14,
wr_refunded_cash#15, cd_marital_status#18, cd_education_status#19]
Input [13]: [ws_sold_date_sk#1, ws_quantity#5, ws_sales_price#6,
ws_net_profit#7, wr_refunded_cdemo_sk#9, wr_refunded_addr_sk#10,
wr_returning_cdemo_sk#11, wr_reason_sk#12, wr_fee#14, wr_refunded_cash#15,
#17#17, #18#18, #19#19]
@@ -516,13 +516,13 @@ Input [2]: [ca_address_sk#23, ca_state#24]
Input [2]: [ca_address_sk#23, ca_state#24]
Arguments: [ca_address_sk#23 ASC NULLS FIRST], false
-(79) SortMergeJoin [codegen id : 2]
+(79) SortMergeJoin [codegen id : X]
Left keys [1]: [wr_refunded_addr_sk#10]
Right keys [1]: [ca_address_sk#23]
Join type: Inner
Join condition: ((((ca_state#24 IN (IN,OH,NJ) AND (ws_net_profit#7 >= 100.00))
AND (ws_net_profit#7 <= 200.00)) OR ((ca_state#24 IN (WI,CT,KY) AND
(ws_net_profit#7 >= 150.00)) AND (ws_net_profit#7 <= 300.00))) OR ((ca_state#24
IN (LA,IA,AR) AND (ws_net_profit#7 >= 50.00)) AND (ws_net_profit#7 <= 250.00)))
-(80) Project [codegen id : 2]
+(80) Project [codegen id : X]
Output [5]: [ws_sold_date_sk#1, ws_quantity#5, wr_reason_sk#12, wr_fee#14,
wr_refunded_cash#15]
Input [9]: [ws_sold_date_sk#1, ws_quantity#5, ws_net_profit#7,
wr_refunded_addr_sk#10, wr_reason_sk#12, wr_fee#14, wr_refunded_cash#15,
ca_address_sk#23, ca_state#24]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q89.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q89.txt
index d30612f5..f10023e4 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q89.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q89.txt
@@ -374,11 +374,11 @@ Arguments: [i_category#4 ASC NULLS FIRST, i_brand#2 ASC
NULLS FIRST, s_store_nam
Input [8]: [i_category#4, i_class#3, i_brand#2, s_store_name#13,
s_company_name#14, d_moy#11, sum_sales#19, _w0#20]
Arguments: [avg(_w0#20) windowspecdefinition(i_category#4, i_brand#2,
s_store_name#13, s_company_name#14, specifiedwindowframe(RowFrame,
unboundedpreceding$(), unboundedfollowing$())) AS avg_monthly_sales#21],
[i_category#4, i_brand#2, s_store_name#13, s_company_name#14]
-(64) Filter [codegen id : 1]
+(64) Filter [codegen id : X]
Input [9]: [i_category#4, i_class#3, i_brand#2, s_store_name#13,
s_company_name#14, d_moy#11, sum_sales#19, _w0#20, avg_monthly_sales#21]
Condition : CASE WHEN NOT (avg_monthly_sales#21 = 0.000000) THEN
((abs((sum_sales#19 - avg_monthly_sales#21)) / avg_monthly_sales#21) >
0.1000000000000000) END
-(65) Project [codegen id : 1]
+(65) Project [codegen id : X]
Output [8]: [i_category#4, i_class#3, i_brand#2, s_store_name#13,
s_company_name#14, d_moy#11, sum_sales#19, avg_monthly_sales#21]
Input [9]: [i_category#4, i_class#3, i_brand#2, s_store_name#13,
s_company_name#14, d_moy#11, sum_sales#19, _w0#20, avg_monthly_sales#21]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q90.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q90.txt
index 47b42a41..d8a3027f 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q90.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q90.txt
@@ -556,7 +556,7 @@ Input [1]: [count(1)#20]
Join type: Inner
Join condition: None
-(93) Project [codegen id : 1]
+(93) Project [codegen id : X]
Output [1]: [(cast(amc#13 as decimal(15,4)) / cast(pmc#21 as decimal(15,4)))
AS am_pm_ratio#22]
Input [2]: [amc#13, pmc#21]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q92.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q92.txt
index 35bbc3a4..b9c1a72d 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q92.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q92.txt
@@ -324,13 +324,13 @@ Condition : isnotnull((1.3 * avg(ws_ext_discount_amt))#16)
Input [2]: [(1.3 * avg(ws_ext_discount_amt))#16, ws_item_sk#7]
Arguments: [ws_item_sk#7 ASC NULLS FIRST], false
-(49) SortMergeJoin [codegen id : 1]
+(49) SortMergeJoin [codegen id : X]
Left keys [1]: [i_item_sk#4]
Right keys [1]: [ws_item_sk#7]
Join type: Inner
Join condition: (cast(ws_ext_discount_amt#3 as decimal(14,7)) > (1.3 *
avg(ws_ext_discount_amt))#16)
-(50) Project [codegen id : 1]
+(50) Project [codegen id : X]
Output [2]: [ws_sold_date_sk#1, ws_ext_discount_amt#3]
Input [5]: [ws_sold_date_sk#1, ws_ext_discount_amt#3, i_item_sk#4, (1.3 *
avg(ws_ext_discount_amt))#16, ws_item_sk#7]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q94.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q94.txt
index e5c42c66..e7ee656a 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q94.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q94.txt
@@ -199,13 +199,13 @@ Input [2]: [#8#8, #9#9]
Input [2]: [#8#8, #9#9]
Arguments: [ws_order_number#9 ASC NULLS FIRST], false
-(16) SortMergeJoin [codegen id : 1]
+(16) SortMergeJoin [codegen id : X]
Left keys [1]: [ws_order_number#5]
Right keys [1]: [ws_order_number#9]
Join type: LeftSemi
Join condition: NOT (ws_warehouse_sk#4 = ws_warehouse_sk#8)
-(17) Project [codegen id : 1]
+(17) Project [codegen id : X]
Output [6]: [ws_ship_date_sk#1, ws_ship_addr_sk#2, ws_web_site_sk#3,
ws_order_number#5, ws_ext_ship_cost#6, ws_net_profit#7]
Input [7]: [#1#1, #2#2, #3#3, #4#4, #5#5, #6#6, #7#7]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q95.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q95.txt
index bdb6cc9a..071b6b1d 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q95.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q95.txt
@@ -271,13 +271,13 @@ Input [2]: [#9#9, #10#10]
Input [2]: [#9#9, #10#10]
Arguments: [ws_order_number#10 ASC NULLS FIRST], false
-(23) SortMergeJoin [codegen id : 1]
+(23) SortMergeJoin [codegen id : X]
Left keys [1]: [ws_order_number#8]
Right keys [1]: [ws_order_number#10]
Join type: Inner
Join condition: NOT (ws_warehouse_sk#7 = ws_warehouse_sk#9)
-(24) Project [codegen id : 1]
+(24) Project [codegen id : X]
Output [1]: [ws_order_number#8]
Input [4]: [#7#7, #8#8, #9#9, #10#10]
@@ -368,13 +368,13 @@ Input [2]: [#14#14, #15#15]
Input [2]: [#14#14, #15#15]
Arguments: [ws_order_number#15 ASC NULLS FIRST], false
-(47) SortMergeJoin [codegen id : 2]
+(47) SortMergeJoin [codegen id : X]
Left keys [1]: [ws_order_number#13]
Right keys [1]: [ws_order_number#15]
Join type: Inner
Join condition: NOT (ws_warehouse_sk#12 = ws_warehouse_sk#14)
-(48) Project [codegen id : 2]
+(48) Project [codegen id : X]
Output [1]: [ws_order_number#13]
Input [4]: [#12#12, #13#13, #14#14, #15#15]
diff --git
a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q98.txt
b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q98.txt
index cfd7c223..757795c1 100644
--- a/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q98.txt
+++ b/dev/auron-it/src/main/resources/tpcds-plan-stability/spark-3.5/q98.txt
@@ -293,7 +293,7 @@ Arguments: [i_class#8 ASC NULLS FIRST], false
Input [7]: [i_item_desc#6, i_category#9, i_class#8, i_current_price#7,
itemrevenue#16, _w0#17, i_item_id#5]
Arguments: [sum(_w0#17) windowspecdefinition(i_class#8,
specifiedwindowframe(RowFrame, unboundedpreceding$(), unboundedfollowing$()))
AS _we0#18], [i_class#8]
-(49) Project [codegen id : 1]
+(49) Project [codegen id : X]
Output [7]: [i_item_desc#6, i_category#9, i_class#8, i_current_price#7,
itemrevenue#16, ((_w0#17 * 100) / _we0#18) AS revenueratio#19, i_item_id#5]
Input [8]: [i_item_desc#6, i_category#9, i_class#8, i_current_price#7,
itemrevenue#16, _w0#17, i_item_id#5, _we0#18]
diff --git
a/dev/auron-it/src/main/scala/org/apache/auron/integration/Main.scala
b/dev/auron-it/src/main/scala/org/apache/auron/integration/Main.scala
index ca85ec97..48a7c4cc 100644
--- a/dev/auron-it/src/main/scala/org/apache/auron/integration/Main.scala
+++ b/dev/auron-it/src/main/scala/org/apache/auron/integration/Main.scala
@@ -71,6 +71,7 @@ object Main {
OParser.parse(parser, args, SuiteArgs())
}
+ // scalastyle:off
def main(mainArgs: Array[String]): Unit = {
parseArgs(mainArgs) match {
case Some(args) =>
@@ -124,3 +125,4 @@ object Main {
println("")
}
}
+// scalastyle:on
diff --git
a/dev/auron-it/src/main/scala/org/apache/auron/integration/QueryRunner.scala
b/dev/auron-it/src/main/scala/org/apache/auron/integration/QueryRunner.scala
index 214ac8e1..8127c9fe 100644
--- a/dev/auron-it/src/main/scala/org/apache/auron/integration/QueryRunner.scala
+++ b/dev/auron-it/src/main/scala/org/apache/auron/integration/QueryRunner.scala
@@ -52,7 +52,7 @@ class QueryRunner(readQuery: String => String) {
}
val durationSec = (System.currentTimeMillis() - startTime) / 1000.0
-
+ // scalastyle:off println
result match {
case Success((rows, rowCount, planStr)) =>
println(s"Query $queryId executed successfully in $durationSec
seconds.")
@@ -75,5 +75,6 @@ class QueryRunner(readQuery: String => String) {
plan = "",
errorMsg = Some(e.getMessage))
}
+ // scalastyle:on
}
}
diff --git
a/dev/auron-it/src/main/scala/org/apache/auron/integration/SessionManager.scala
b/dev/auron-it/src/main/scala/org/apache/auron/integration/SessionManager.scala
index 99ce70b4..3e65e2e3 100644
---
a/dev/auron-it/src/main/scala/org/apache/auron/integration/SessionManager.scala
+++
b/dev/auron-it/src/main/scala/org/apache/auron/integration/SessionManager.scala
@@ -53,6 +53,7 @@ class SessionManager(val extraSparkConf: Map[String, String])
{
def auronSession: SparkSession = getOrSwitch("auron", "auron-app")
+ // scalastyle:off println
private def getOrSwitch(mode: String, appName: String): SparkSession =
synchronized {
if (currentMode.contains(mode) && currentSession.isDefined) {
currentSession.get
@@ -98,4 +99,5 @@ class SessionManager(val extraSparkConf: Map[String, String])
{
stopCurrentSession()
println("SparkSession closed.")
}
+ // scalastyle:on
}
diff --git
a/dev/auron-it/src/main/scala/org/apache/auron/integration/comparison/PlanStabilityChecker.scala
b/dev/auron-it/src/main/scala/org/apache/auron/integration/comparison/PlanStabilityChecker.scala
index 39b17f52..3c7ecd53 100644
---
a/dev/auron-it/src/main/scala/org/apache/auron/integration/comparison/PlanStabilityChecker.scala
+++
b/dev/auron-it/src/main/scala/org/apache/auron/integration/comparison/PlanStabilityChecker.scala
@@ -33,6 +33,7 @@ class PlanStabilityChecker(
regenGoldenFiles: Boolean = false,
planCheck: Boolean = false) {
+ // scalastyle:off println
private lazy val isSupported: Boolean = Shims.get.shimVersion match {
case "spark-3.5" => true
case other =>
@@ -118,7 +119,9 @@ class PlanStabilityChecker(
.replaceAll("Arguments: [0-9]+", "Arguments: X")
.replaceAll("Scan parquet ", "Scan parquet")
.replaceAll("Statistics[(A-Za-z0-9=. ,+)]*", "Statistics(X)")
+ .replaceAll("\\[codegen id : [0-9]+\\]", "[codegen id : X]")
normalizeLocation(argumentsNormalized)
}
+ // scalastyle:on
}
diff --git
a/dev/auron-it/src/main/scala/org/apache/auron/integration/comparison/QueryResultComparator.scala
b/dev/auron-it/src/main/scala/org/apache/auron/integration/comparison/QueryResultComparator.scala
index 521c5046..9c99b1f5 100644
---
a/dev/auron-it/src/main/scala/org/apache/auron/integration/comparison/QueryResultComparator.scala
+++
b/dev/auron-it/src/main/scala/org/apache/auron/integration/comparison/QueryResultComparator.scala
@@ -38,6 +38,8 @@ trait QueryComparator {
class QueryResultComparator extends QueryComparator {
private val colSep = "<|COL|>"
+
+ // scalastyle:off println
override def compare(
baseline: QueryExecutionResult,
test: QueryExecutionResult): ComparisonResult = {
@@ -136,4 +138,5 @@ class QueryResultComparator extends QueryComparator {
}
true
}
+ // scalastyle:on
}
diff --git
a/dev/auron-it/src/main/scala/org/apache/auron/integration/tpcds/TPCDSFeatures.scala
b/dev/auron-it/src/main/scala/org/apache/auron/integration/tpcds/TPCDSFeatures.scala
index 623ec25c..86e3b203 100644
---
a/dev/auron-it/src/main/scala/org/apache/auron/integration/tpcds/TPCDSFeatures.scala
+++
b/dev/auron-it/src/main/scala/org/apache/auron/integration/tpcds/TPCDSFeatures.scala
@@ -156,6 +156,7 @@ trait TPCDSFeatures {
"time_dim",
"web_page")
+ // scalastyle:off
def setupTables(dataLocation: String, spark: SparkSession): Map[String,
Long] = {
println(s"Setting up TPC-DS tables from: $dataLocation")
tpcdsTables.map { tableName =>
@@ -211,3 +212,4 @@ trait TPCDSFeatures {
path.toFile
}
}
+// scalastyle:on
diff --git
a/dev/auron-it/src/main/scala/org/apache/auron/integration/tpcds/TPCDSSuite.scala
b/dev/auron-it/src/main/scala/org/apache/auron/integration/tpcds/TPCDSSuite.scala
index 0a3ae8ce..2f4aa16f 100644
---
a/dev/auron-it/src/main/scala/org/apache/auron/integration/tpcds/TPCDSSuite.scala
+++
b/dev/auron-it/src/main/scala/org/apache/auron/integration/tpcds/TPCDSSuite.scala
@@ -34,6 +34,7 @@ class TPCDSSuite(args: SuiteArgs) extends Suite(args) with
TPCDSFeatures {
regenGoldenFiles = args.regenGoldenFiles,
planCheck = args.enablePlanCheck)
+ // scalastyle:off println
override def run(): Int = {
val queries = filterQueries(args.queryFilter)
if (queries.isEmpty) {
@@ -76,7 +77,7 @@ class TPCDSSuite(args: SuiteArgs) extends Suite(args) with
TPCDSFeatures {
}
}
- if (args.enablePlanCheck) {
+ if (args.enablePlanCheck || args.regenGoldenFiles) {
baseComparisons.foreach(comparisonResult => {
val testResult = auronResults(comparisonResult.queryId)
val planStable = planStabilityChecker.validate(testResult)
@@ -135,7 +136,7 @@ class TPCDSSuite(args: SuiteArgs) extends Suite(args) with
TPCDSFeatures {
private def printPlanStability(results: Seq[ComparisonResult]): Unit = {
println("\n" + "=" * 60)
println(s"Auron Plan Stability (${Shims.get.shimVersion})")
- println("−" * 60)
+ println("-" * 60)
println(f"${"Query"}%-6s ${"Stable"}%-7s")
println("-" * 60)
results.foreach { r =>
@@ -153,11 +154,12 @@ class TPCDSSuite(args: SuiteArgs) extends Suite(args)
with TPCDSFeatures {
val totalUpdated = ids.size
println("\n" + "=" * 60)
println(s"Auron Golden Files (${Shims.get.shimVersion})")
- println("−" * 60)
+ println("-" * 60)
println(s"Updated queries: $totalUpdated")
println(ids.mkString("- ", ", ", ""))
println(s"Output directory: ${goldenOutputDir}")
}
+ // scalastyle:on
}
object TPCDSSuite {
diff --git a/dev/checkstyle.xml b/dev/checkstyle.xml
index 1431638b..d7c85a42 100644
--- a/dev/checkstyle.xml
+++ b/dev/checkstyle.xml
@@ -48,10 +48,6 @@
<property name="fileExtensions" value="java, properties, xml"/>
- <module name="SuppressionFilter">
- <property name="file" value="dev/checkstyle-suppressions.xml"/>
- </module>
-
<!-- Checks for whitespace -->
<!-- See http://checkstyle.sf.net/config_whitespace.html -->
<module name="FileTabCharacter">
diff --git a/dev/scalastyle-config.xml b/dev/scalastyle-config.xml
index f5b517a0..27b608f8 100644
--- a/dev/scalastyle-config.xml
+++ b/dev/scalastyle-config.xml
@@ -294,7 +294,7 @@ This file is divided into 3 sections:
<customMessage>Use contentEquals of SparkFileUtils or Utils
instead.</customMessage>
</check>
- <check customId="toByteArray" level="error"
class="org.scalastyle.file.RegexChecker" enabled="true">
+ <check customId="toByteArray" level="error"
class="org.scalastyle.file.RegexChecker" enabled="disable">
<parameters><parameter
name="regex">\bFiles\.toByteArray\b</parameter></parameters>
<customMessage>Use java.nio.file.Files.readAllBytes
instead.</customMessage>
</check>
@@ -304,7 +304,7 @@ This file is divided into 3 sections:
<customMessage>Use java.nio.file.Files.newInputStream
instead.</customMessage>
</check>
- <check customId="getTempDirectory" level="error"
class="org.scalastyle.file.RegexChecker" enabled="true">
+ <check customId="getTempDirectory" level="error"
class="org.scalastyle.file.RegexChecker" enabled="disable">
<parameters><parameter
name="regex">\bFileUtils\.getTempDirectory\b</parameter></parameters>
<customMessage>Use System.getProperty instead.</customMessage>
</check>
@@ -435,7 +435,7 @@ This file is divided into 3 sections:
<customMessage>Use touch of SparkFileUtil or Utils instead.</customMessage>
</check>
- <check customId="writeStringToFile" level="error"
class="org.scalastyle.file.RegexChecker" enabled="true">
+ <check customId="writeStringToFile" level="error"
class="org.scalastyle.file.RegexChecker" enabled="disable">
<parameters><parameter
name="regex">\bFileUtils\.writeStringToFile\b</parameter></parameters>
<customMessage>Use java.nio.file.Files.writeString instead.</customMessage>
</check>
@@ -506,7 +506,7 @@ This file is divided into 3 sections:
<customMessage>Use java.util.HexFormat instead</customMessage>
</check>
- <check customId="commonsiofileutils" level="error"
class="org.scalastyle.file.RegexChecker" enabled="true">
+ <check customId="commonsiofileutils" level="error"
class="org.scalastyle.file.RegexChecker" enabled="disable">
<parameters><parameter
name="regex">org\.apache\.commons\.io\.FileUtils\b</parameter></parameters>
<customMessage>Use Java API or Spark's JavaUtils/SparkSystemUtils/Utils
instead</customMessage>
</check>