You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Deduplicate Throwable cause-chain traversal in Comet tests #5223
CometRegExpJvmSuite walks the chain to inspect exception class names.
ParquetReadSuite walks the chain to find SchemaColumnConvertNotSupportedException.
CometExecSuite contains two copies that inspect exception messages.
CometExpressionSuite defines arithmeticError, which independently walks the chain to find a SparkArithmeticException.
This duplicates null termination, ordering, and diagnostic behavior across six call sites in five suites.
Other 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 these cause-chain walks 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.
Activity
peterxcli commentedon Aug 2, 2026
take