andygrove opened a new issue, #5570:
URL: https://github.com/apache/datafusion-comet/issues/5570

   `SQLQueryTestSuite.ignoreList` in the Spark test diffs carries two entries 
with no linked tracking issue:
   
   ```scala
   // Comet: ORDER BY column has ties; row order is non-deterministic when
   // running with high parallelism. Tracked for restoration once Comet
   // produces stable ordering for these queries.
   "replacing-missing-expression-with-alias.sql",
   "in-set-operations.sql",
   ```
   
   Present in `dev/diffs/4.1.3.diff` and `dev/diffs/4.2.0.diff`.
   
   ### Why this is worse than it looks
   
   `ignoreList` is consulted in `createScalaTestCase` **before** any 
Comet-specific or test-type dispatch:
   
   ```scala
   protected def createScalaTestCase(testCase: TestCase): Unit = {
     if (ignoreList.exists(t =>
       
testCase.name.toLowerCase(Locale.ROOT).contains(t.toLowerCase(Locale.ROOT)))) {
       ignore(testCase.name) { /* Do nothing */ }
     } else testCase match {
   ```
   
   so it registers a ScalaTest `ignore` unconditionally. The two files are 
therefore skipped in the `ENABLE_COMET=false` baseline as well, and in both the 
regular and analyzer variants: roughly 47 result queries plus three setup 
statements never run at all, in any mode. Nothing is being verified for them, 
not even Spark's own behaviour.
   
   The same problem applied to `thetasketch.sql` / `tuplesketch.sql`; those 
were moved to the input-file `--SET spark.comet.enabled = false` header in 
#4950, which keeps every query running and compared against the golden file.
   
   ### What to do
   
   1. Investigate the actual non-determinism. The stated cause is ORDER BY ties 
under parallelism; confirm whether it still reproduces on `main`, and on which 
queries.
   2. If it does, replace the global `ignoreList` entries with the `--SET 
spark.comet.enabled = false` header used by the other opted-out files, so the 
Spark baseline and the golden comparison are preserved. Scope it to the 
affected queries if that is possible without regenerating goldens.
   3. If it does not reproduce, remove the entries.
   
   Surfaced in review of #4950 by @sunchao. Related: #5569 (stale exclusions 
whose tracking issues are already closed).
   


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