LuciferYang opened a new pull request, #13005:
URL: https://github.com/apache/gluten/pull/13005

   ## What changes are proposed in this pull request?
   
   Residue from #12902 that guards on Spark 3.3 or 3.2, in code that no 
supported version reaches. Most of it is in `backends-bolt`, because #12454 
branched before #12954 and merged between #12954 and #12981, so it carried the 
old patterns back in after the first cleanup and before the second one, which 
touched no bolt file.
   
   Never registered on any supported version: 
`BoltParquetWriteForHiveSuite.scala:409` used `testWithMaxSparkVersion(..., 
"3.3")`, so the case ran nowhere and was not reported as skipped either, since 
the helper just declines to call `test()`. #12981 deleted the same case from 
the velox copy of that suite, so this follows rather than decides.
   
   Branches that cannot be taken: five `isSparkVersionGE("3.4")` guards in that 
same file, `ArithmeticAnsiValidateSuite.scala:64`, 
`MiscOperatorSuite.scala:962` in bolt on `startsWith("3.2")`, and the dead 
`startsWith("3.3.")` half of a disjunction in `VeloxHashJoinSuite.scala:120`, 
where the `startsWith("3.4.")` half stays because it still varies.
   
   Helpers and settings with no callers: `ignoreWithSpecifiedSparkVersion` and 
`testWithRangeSparkVersion` in `GlutenQueryTest.scala`, and 
`BackendSettingsApi.rescaleDecimalArithmetic` with its two overrides. That last 
one is named after the decimal rescale path #12991 removes, and it had no 
reader before that either.
   
   An obsolete workaround: `CudfNodeValidationRule.scala:35` walked the plan 
with `find { ... }.isDefined` under a comment saying `Spark3.2 does not have 
exists`. `TreeNode.exists` is on every supported version and already used in 
`Validators.scala` and `ImplementJoinAggregate.scala`.
   
   Files nothing compiles: `gluten-ut/spark33/` holds two bolt test-settings 
files and no `pom.xml`, and 
`backends-bolt/src/test/resources/tpch-approved-plan/*/spark33/` holds 84 
approved plans, with another 84 under `*/spark32/`. `gluten-ut/pom.xml` lists 
only `spark34/35/40/41`, so none of the Scala is built, though 
`scala_code_format.yml` triggers on `gluten-ut/**` and still formats it. That 
is the bulk of the diffstat.
   
   Worth flagging separately, because it is a bolt question rather than 
something to settle here: the only reader of `tpch-approved-plan` anywhere is 
`VeloxTPCHSuite.scala:105`, and it resolves the path relative to the running 
module. There is no bolt TPC-H suite, so the `spark34` and `spark35` copies 
under `backends-bolt` have no reader either. They stay, since a bolt suite may 
be the intent. Also `BoltParquetWriteForHiveSuite.scala:285` evaluates 
`"zstd".equalsIgnoreCase(column.getCodec.toString)` and discards it: the 
missing `assert` is pre-existing, but with the 3.3-only case gone nothing in 
that file checks the written codec any more.
   
   Four comments that had become wrong rather than merely old: 
`SparkDataSourceRDDPartition` said it exists to stay compatible with 3.3 and 
earlier, when what actually distinguishes it from Spark's class is that it 
holds the several input partitions Gluten groups into one split; the four 
copies of `WritableColumnVectorShim` named a 3.3 abstract-method addition as 
the reason the file is per-version, when the copies now split {3.4, 3.5} 
against {4.0, 4.1} over something else. Also `// Since spark 3.3.0` in two 
backends, `// For spark 3.2.` in one, a commented-out `enableSuite` under `// 
following UT is removed in spark3.3.1`, a duplicated `"3.5", "3.5"` argument in 
two cache suites left over from a merge fix in #9297, and `All the spark 
version is supported` in `VeloxIceberg.md`.
   
   Deliberately left alone: the `// new added in spark-3.3 and need fix later, 
random failure may caused by memory free` notes in the gluten-ut settings and 
the `For Spark 3.3 + Delta 2.3` notes in the clickhouse tests. Only the version 
prefix has aged; the rest of each sentence is still the reason the exclusion or 
the expected file count is there, and rewording someone else's note across 
sixteen files buys nothing.
   
   ## How was this patch tested?
   
   `clean test-compile` on Spark 3.4, 3.5, 4.0 and 4.1 with `-Pbackends-velox 
-Pspark-ut -Piceberg -Pdelta`, Scala 2.13, and the 3.5 run adds 
`-Pbackends-clickhouse`, that being the only profile clickhouse builds on. 
`spotless:apply` produced no changes beyond the edits.
   
   The bolt files needed a detour, since bolt does not compile on main right 
now: I stacked #12999 on top of this branch, ran `test-compile -Pbackends-bolt 
-Pspark-ut` on 3.4 and 3.5, then dropped it, so what is pushed here is this 
change alone.
   
   No suite was run. Every collapsed branch keeps the arm a supported version 
already took, and the deleted files are not on any compile or test path. The 
bolt paths cannot be run here in any case: bolt's native library needs Linux 
plus GCC 10-12 or Clang 16 per `docs/bolt-quick-start.md`.
   
   ## Was this patch authored or co-authored using generative AI tooling?
   
   Generated-by: Claude claude-opus-5
   
   Related issue: #13003
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to