andygrove opened a new pull request, #4986:
URL: https://github.com/apache/datafusion-comet/pull/4986

   ## Summary
   
   Part of #4978 (Category 2 + Category 4).
   
   Shuffle-related configs live under four disjoint prefixes today:
   `spark.comet.exec.shuffle.*`, `spark.comet.columnar.shuffle.*`,
   `spark.comet.native.shuffle.*`, and `spark.comet.shuffle.*`. This PR
   consolidates all shuffle configs under `spark.comet.shuffle.*` with
   `.columnar.` and `.native.` sub-namespaces for mode-specific settings,
   and fixes the dots-in-segment naming for the three columnar keys.
   
   Every renamed key is registered via `.withAlternative(...)`, so
   existing user configurations keep working (a one-time deprecation
   warning is logged per old key). No behavior change.
   
   ## Rename table
   
   **Master / shared (both modes):**
   
   | Old key | New key |
   | --- | --- |
   | `spark.comet.exec.shuffle.enabled` | `spark.comet.shuffle.enabled` |
   | `spark.comet.exec.shuffle.mode` | `spark.comet.shuffle.mode` |
   | `spark.comet.exec.shuffle.directRead.enabled` | 
`spark.comet.shuffle.directRead.enabled` |
   | `spark.comet.exec.shuffle.convertFromSparkPlan.enabled` | 
`spark.comet.shuffle.convertFromSparkPlan.enabled` |
   | `spark.comet.exec.shuffle.revertRedundantColumnar.enabled` | 
`spark.comet.shuffle.revertRedundantColumnar.enabled` |
   | `spark.comet.exec.shuffle.compression.codec` | 
`spark.comet.shuffle.compression.codec` |
   | `spark.comet.exec.shuffle.compression.zstd.level` | 
`spark.comet.shuffle.compression.zstd.level` |
   
   **Native-shuffle-only** (moved from `spark.comet.native.shuffle.*` and one 
leaf from `spark.comet.exec.shuffle.*`):
   
   | Old key | New key |
   | --- | --- |
   | `spark.comet.exec.shuffle.writeBufferSize` | 
`spark.comet.shuffle.native.writeBufferSize` |
   | `spark.comet.native.shuffle.partitioning.hash.enabled` | 
`spark.comet.shuffle.native.partitioning.hash.enabled` |
   | `spark.comet.native.shuffle.partitioning.range.enabled` | 
`spark.comet.shuffle.native.partitioning.range.enabled` |
   | `spark.comet.native.shuffle.partitioning.roundrobin.enabled` | 
`spark.comet.shuffle.native.partitioning.roundrobin.enabled` |
   | `spark.comet.native.shuffle.partitioning.roundrobin.maxHashColumns` | 
`spark.comet.shuffle.native.partitioning.roundrobin.maxHashColumns` |
   
   **Columnar / JVM-shuffle-only** (moved from 
`spark.comet.columnar.shuffle.*`; also fixes Category 2 dots-in-segment):
   
   | Old key | New key |
   | --- | --- |
   | `spark.comet.columnar.shuffle.spill.threshold` | 
`spark.comet.shuffle.columnar.spillThreshold` |
   | `spark.comet.columnar.shuffle.memory.factor` | 
`spark.comet.shuffle.columnar.memoryFactor` |
   | `spark.comet.columnar.shuffle.batch.size` | 
`spark.comet.shuffle.columnar.batchSize` |
   | `spark.comet.shuffle.preferDictionary.ratio` | 
`spark.comet.shuffle.columnar.preferDictionary.ratio` |
   
   `preferDictionary.ratio` and `writeBufferSize` were previously at
   mode-agnostic namespaces but their doc/call sites confirm they are
   JVM-only and native-only respectively; the rename puts them in their
   honest place.
   
   ## Not in this PR
   
   - `spark.comet.columnar.shuffle.max.writers.per.executor` isn't
     renamed here — the val `COMET_COLUMNAR_SHUFFLE_MAX_WRITERS_PER_EXECUTOR`
     is introduced by #4980 (async columnar shuffle removal), which hasn't
     landed on main yet. A tiny follow-up PR can add its rename once #4980
     merges.
   - The `spark.comet.columnar.shuffle.async.*` keys are being removed by
     #4980 — left alone here.
   
   ## Test plan
   
   - [x] `./mvnw -Pspark-3.5 test -pl spark 
-Dsuites="org.apache.comet.CometConfSuite"` — 10 tests pass (including 3 new 
alias tests for the renames)
   - [x] `./mvnw -Pspark-3.5 spotless:check` — clean
   - [x] Full `compile test-compile` under Spark 3.5 — clean
   - [ ] CI runs the broader test matrix


-- 
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