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

   ## What is the problem the feature request solves?
   
   Several Comet test suites independently implement the same full 
`Throwable.getCause` traversal:
   
   - `CometTemporalExpressionSuite` defines `causeChain` for structured Spark 
exception checks added in #5167.
   - `CometRegExpJvmSuite` walks the chain to inspect exception class names.
   - `ParquetReadSuite` walks the chain to find 
`SchemaColumnConvertNotSupportedException`.
   - `CometExecSuite` contains two copies that inspect exception messages.
   
   This duplicates null termination, ordering, and diagnostic behavior across 
five call sites in four suites.
   
   Related code in `CometExpressionSuite`, `CometDppFallbackRepro3949Suite`, 
`CometSQLQueryTestHelper`, and `CometCastSuite` intentionally uses bounded, 
root-only, or one-level unwrapping semantics and should not be changed 
automatically.
   
   ## Describe the potential solution
   
   Add one protected `causeChain(error: Throwable): Seq[Throwable]` helper to 
`CometTestBase` and migrate the identical full-chain traversals to it.
   
   Keep `deepestSparkThrowable` local to `CometTemporalExpressionSuite` because 
selecting the deepest structured Spark exception is currently unique policy; it 
can use the inherited `causeChain` helper. Do not introduce a universal 
structured-exception comparator or change tests that intentionally inspect only 
one cause level.
   
   Validate that the migrated tests preserve outer-to-inner ordering and 
behavior across supported Spark versions.
   
   ## Additional context
   
   Raised while addressing review feedback on #5167.


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