68% tests passed, 12 tests failed out of 37
Umbrella for GPU CTest failures recorded below. Parent harness: #66.
Tracking
One child issue / PR per failed CTest suite (or split further when a suite has unrelated inner failures). Check off when the suite's failed cases are fixed on dev.
Run context
This issue records the GPU CTest result for the native harness tracked by #66.
- Date: 2026-08-21
- Velox commit:
46040b5a08f76f9d26b2ec867b0881d9cf2cda24
- CUDA architecture:
86-real
- CTest selection: every registered test carrying the exact
cuda_driver label
ctest \
--test-dir _build/release/velox/experimental/cudf/tests \
--output-on-failure \
--no-tests=error \
--label-regex '^cuda_driver$' \
--output-junit junit.xml
Complete CTest suite inventory
| # |
Registered CTest suite |
Status |
| 1 |
velox_cudf_adapter_operator_test |
Failed |
| 2 |
velox_cudf_aggregation_test |
Failed |
| 3 |
velox_cudf_aggregation_selection_test |
Failed |
| 4 |
velox_cudf_assign_unique_id_test |
Succeed |
| 5 |
velox_cudf_batch_concat_test |
Failed |
| 6 |
velox_cudf_config_test |
Succeed |
| 7 |
velox_cudf_decimal_aggregation_test |
Failed |
| 8 |
velox_cudf_vector_test |
Succeed |
| 9 |
velox_cudf_decimal_expression_test |
Succeed |
| 10 |
velox_cudf_enforce_single_row_test |
Succeed |
| 11 |
velox_cudf_expression_selection_test |
Succeed |
| 12 |
velox_cudf_filter_project_test |
Failed |
| 13 |
velox_cudf_function_registry_test |
Succeed |
| 14 |
velox_cudf_group_id_test |
Succeed |
| 15 |
velox_cudf_hash_join_test |
Succeed |
| 16 |
velox_cudf_interop_test |
Succeed |
| 17 |
velox_cudf_limit_test |
Succeed |
| 18 |
velox_cudf_logical_functions_test |
Succeed |
| 19 |
velox_cudf_local_partition_test |
Succeed |
| 20 |
velox_cudf_mark_distinct_test |
Succeed |
| 21 |
velox_cudf_nested_loop_join_test |
Failed |
| 22 |
velox_cudf_null_mask_test |
Succeed |
| 23 |
velox_cudf_order_by_test |
Failed |
| 24 |
velox_cudf_s3_read_test |
Succeed |
| 25 |
velox_cudf_step_aware_aggregation_registry_test |
Succeed |
| 26 |
velox_cudf_string_function_test |
Succeed |
| 27 |
velox_cudf_subfield_filter_ast_test |
Succeed |
| 28 |
velox_cudf_table_scan_test |
Succeed |
| 29 |
velox_cudf_executor_prefetch_test |
Succeed |
| 30 |
velox_cudf_tocudf_selection_test |
Failed |
| 31 |
velox_cudf_topn_test |
Succeed |
| 32 |
velox_cudf_topnrownumber_test |
Succeed |
| 33 |
velox_cudf_window_test |
Succeed |
| 34 |
velox_cudf_iceberg_read_test |
Failed — subprocess terminated |
| 35 |
velox_cudf_iceberg_deletion_vector_test |
Succeed |
| 36 |
velox_cudf_spark_aggregates_test |
Failed |
| 37 |
velox_cudf_spark_filter_project_test |
Failed |
Critical errors by failed CTest suite
1. velox_cudf_adapter_operator_test
Inner result: 16 passed, 2 failed.
AdapterOperatorTest.streamingFullPartitionCountSpillsActivePartition: expected CudfWindow::testingStreamingSpillWrites() >= 3; actual value was 1 (AdapterOperatorTest.cpp:316).
AdapterOperatorTest.streamingRangeSumSpillsActivePeer: expected CudfWindow::testingStreamingSpillWrites() >= 3; actual value was 1 (AdapterOperatorTest.cpp:765).
2. velox_cudf_aggregation_test
Inner result: 110 passed, 6 failed.
AggregationTest.partialAggregationUsesBalancedRunMerges: runtime stat cudfIntermediateAggregationRunMerges was absent; stats.count(statName) was 0, expected 1 (AggregationTest.cpp:1066).
FinalAggregationStreamingTest.finalAggregationStreamsOnAddInput, finalAggregationStreamingMixedAggs, and finalAggregationStreamingMultiKey: expected cudfFinalStreamingBatches > 1; actual value was 1 (AggregationTest.cpp:1204).
FinalAggregationStreamingTest.finalAggregationLevelledRuns: finalStats.contains("cudfFinalAggregationRunMerges") was false, expected true (AggregationTest.cpp:1348).
FinalAggregationStreamingTest.companionFinalAggregationUsesLevelledRuns: uncaught C++ exception: unordered_map::at.
3. velox_cudf_aggregation_selection_test
Inner result: 18 passed, 2 failed.
5. velox_cudf_batch_concat_test
Inner result: 9 passed, 1 failed.
CudfBatchConcatTest.concatFlushesAtByteThreshold: expected outputVectors < inputVectors; both were 6 (BatchConcatTest.cpp:155).
7. velox_cudf_decimal_aggregation_test
Inner result: 48 passed, 1 failed.
CudfDecimalTest.decimalFinalStreamingProbeReleasesMaterializedColumns: expected cudfFinalAggregationInputRuns > 1; actual value was 1 (DecimalAggregationTest.cpp:792).
12. velox_cudf_filter_project_test
Inner result: 120 passed, 5 failed.
CudfFilterProjectTest.zeroColumnValuesConstantProjection: VeloxRuntimeError INVALID_STATE at ToCudf.cpp:393: Replacement with cuDF operator failed for operator: FilterProject; failed expression !isPureCpuOperator (ToCudf.cpp:393).
CudfFilterProjectTest.rowConstructorWithUntypedNullField: VeloxRuntimeError INVALID_STATE: not a scalar type! kind: UNKNOWN at AstUtils.h:257 (AstUtils.h:257).
CudfFilterProjectTest.substringWithIntegerBounds: VeloxRuntimeError INVALID_STATE at ToCudf.cpp:393: Replacement with cuDF operator failed for operator: FilterProject; failed expression !isPureCpuOperator (ToCudf.cpp:393).
CudfSimpleFilterProjectTest.castNumericToTimestamp: VeloxUserError INVALID_ARGUMENT: Cannot cast DOUBLE '1767225600' to TIMESTAMP. Conversion to Timestamp is not supported (EvalCtx.cpp:208).
CudfSimpleFilterProjectTest.castDateToVarchar: VeloxRuntimeError INVALID_STATE: No cuDF expression evaluator can handle: cast(ROW["c0"] as VARCHAR) at ExpressionEvaluator.cpp:3460 (ExpressionEvaluator.cpp:3460).
21. velox_cudf_nested_loop_join_test
Inner result: 56 passed, 2 failed.
CudfNestedLoopJoinTest.buildByteLimitAndCleanup: expected an exception, but no exception was thrown (NestedLoopJoinTest.cpp:100).
CudfNestedLoopJoinTest.innerJoinWithTimestampFilter: VeloxRuntimeError INVALID_STATE: Expression spans both join sides and cannot be precomputed: gt(ROW["p_ts"],ROW["b_ts"]); sideIdx was -2 (AstExpressionUtils.h:523).
23. velox_cudf_order_by_test
Inner result: 9 passed, 2 failed.
OrderByTest.boundedExternalSortManyRuns: expected maxActiveRuns == 2, actual 1; expected sourceChunks >= 23, actual 3 (OrderByTest.cpp:523).
OrderByTest.boundedExternalSortMapPayload: expected sourceChunks >= 7, actual 1 (OrderByTest.cpp:565).
30. velox_cudf_tocudf_selection_test
Inner result: 24 passed, 1 failed.
ToCudfSelectionTest.complexGroupingKeyExpressionsFallsBack: wasCudfAggregationUsed(task) returned true, expected false (ToCudfSelectionTest.cpp:635).
34. velox_cudf_iceberg_read_test
The executable registered 89 inner tests and stalled while running CudfIcebergReadTest.combinedPositionalAndEqualityDeletes. It was externally terminated after 316.21 seconds. The captured terminal error was:
Signal 15 (SIGTERM)
(error retrieving stack trace)
Fatal signal handler. ThreadDebugInfo object not found.
No test assertion was captured for this suite because the process did not finish.
36. velox_cudf_spark_aggregates_test
Inner result: 1 passed, 1 failed.
AggregationTest.groupedCollectListOfRow failed in SetUp() with VeloxRuntimeError INVALID_STATE: The periodic stats reporter has already started; failed expression instanceRef == nullptr at PeriodicStatsReporter.cpp:47 (PeriodicStatsReporter.cpp:47).
37. velox_cudf_spark_filter_project_test
Inner result: 56 passed, 1 failed.
CudfFilterProjectTest.multiBranchSwitchWithRegexpExtract: VeloxUserError INVALID_ARGUMENT: Scalar function doesn't exist: eq in resolveScalarFunctionType at TypeResolver.cpp:106 (TypeResolver.cpp:106).
Aggregate result
- CTest suites: 25 succeeded, 12 failed, 37 total
- CTest pass rate: 68%
- Completed failed binaries: 491 inner GTests, 467 passed, 24 failed
velox_cudf_iceberg_read_test is excluded from the completed-inner-test subtotal because its process was terminated before completion.
68% tests passed, 12 tests failed out of 37Umbrella for GPU CTest failures recorded below. Parent harness: #66.
Tracking
One child issue / PR per failed CTest suite (or split further when a suite has unrelated inner failures). Check off when the suite's failed cases are fixed on
dev.velox_cudf_adapter_operator_test(2 cases) — [bug] CudfWindow streaming disk-spill tests see 1 write instead of 3 #105, fix fix(cudf): Preserve GPU batch boundaries in window spill tests #106AdapterOperatorTest.streamingFullPartitionCountSpillsActivePartitionAdapterOperatorTest.streamingRangeSumSpillsActivePeervelox_cudf_aggregation_test(6 cases)AggregationTest.partialAggregationUsesBalancedRunMergesFinalAggregationStreamingTest.finalAggregationStreamsOnAddInputFinalAggregationStreamingTest.finalAggregationStreamingMixedAggsFinalAggregationStreamingTest.finalAggregationStreamingMultiKeyFinalAggregationStreamingTest.finalAggregationLevelledRunsFinalAggregationStreamingTest.companionFinalAggregationUsesLevelledRunsvelox_cudf_aggregation_selection_test(2 cases) — [bug] cuDF aggregation selection accepts unsupported grouping keys and stale max(boolean) #107, fix fix(cudf): Restore Project expansion for agg eligibility #108CudfAggregationSelectionTest.complexGroupbyClauseExpressionsCudfAggregationSelectionTest.invalidTypeCombinationsRejectedvelox_cudf_batch_concat_test(1 case)CudfBatchConcatTest.concatFlushesAtByteThresholdvelox_cudf_decimal_aggregation_test(1 case)CudfDecimalTest.decimalFinalStreamingProbeReleasesMaterializedColumnsvelox_cudf_filter_project_test(5 cases)CudfFilterProjectTest.zeroColumnValuesConstantProjectionCudfFilterProjectTest.rowConstructorWithUntypedNullFieldCudfFilterProjectTest.substringWithIntegerBoundsCudfSimpleFilterProjectTest.castNumericToTimestampCudfSimpleFilterProjectTest.castDateToVarcharvelox_cudf_nested_loop_join_test(2 cases) — [bug] CudfNestedLoopJoin drops build byte limit and rejects two-sided timestamp filters #111, fix draft: fix(cudf): Restore NLJ build byte limit and timestamp AST compares #112CudfNestedLoopJoinTest.buildByteLimitAndCleanupCudfNestedLoopJoinTest.innerJoinWithTimestampFiltervelox_cudf_order_by_test(2 cases)OrderByTest.boundedExternalSortManyRunsOrderByTest.boundedExternalSortMapPayloadvelox_cudf_tocudf_selection_test(1 case) — same helper as [bug] cuDF aggregation selection accepts unsupported grouping keys and stale max(boolean) #107, fix fix(cudf): Restore Project expansion for agg eligibility #108ToCudfSelectionTest.complexGroupingKeyExpressionsFallsBackvelox_cudf_iceberg_read_test(process terminated)CudfIcebergReadTest.combinedPositionalAndEqualityDeletes(SIGTERM / hang)velox_cudf_spark_aggregates_test(1 case)AggregationTest.groupedCollectListOfRowvelox_cudf_spark_filter_project_test(1 case) — [bug] Spark multi-branch SWITCH test uses Presto eq instead of equalto #109, fix fix(cudf): Use Spark equalto in multi-branch SWITCH test #110CudfFilterProjectTest.multiBranchSwitchWithRegexpExtractRun context
This issue records the GPU CTest result for the native harness tracked by #66.
46040b5a08f76f9d26b2ec867b0881d9cf2cda2486-realcuda_driverlabelctest \ --test-dir _build/release/velox/experimental/cudf/tests \ --output-on-failure \ --no-tests=error \ --label-regex '^cuda_driver$' \ --output-junit junit.xmlComplete CTest suite inventory
velox_cudf_adapter_operator_testvelox_cudf_aggregation_testvelox_cudf_aggregation_selection_testvelox_cudf_assign_unique_id_testvelox_cudf_batch_concat_testvelox_cudf_config_testvelox_cudf_decimal_aggregation_testvelox_cudf_vector_testvelox_cudf_decimal_expression_testvelox_cudf_enforce_single_row_testvelox_cudf_expression_selection_testvelox_cudf_filter_project_testvelox_cudf_function_registry_testvelox_cudf_group_id_testvelox_cudf_hash_join_testvelox_cudf_interop_testvelox_cudf_limit_testvelox_cudf_logical_functions_testvelox_cudf_local_partition_testvelox_cudf_mark_distinct_testvelox_cudf_nested_loop_join_testvelox_cudf_null_mask_testvelox_cudf_order_by_testvelox_cudf_s3_read_testvelox_cudf_step_aware_aggregation_registry_testvelox_cudf_string_function_testvelox_cudf_subfield_filter_ast_testvelox_cudf_table_scan_testvelox_cudf_executor_prefetch_testvelox_cudf_tocudf_selection_testvelox_cudf_topn_testvelox_cudf_topnrownumber_testvelox_cudf_window_testvelox_cudf_iceberg_read_testvelox_cudf_iceberg_deletion_vector_testvelox_cudf_spark_aggregates_testvelox_cudf_spark_filter_project_testCritical errors by failed CTest suite
1.
velox_cudf_adapter_operator_testInner result: 16 passed, 2 failed.
AdapterOperatorTest.streamingFullPartitionCountSpillsActivePartition: expectedCudfWindow::testingStreamingSpillWrites() >= 3; actual value was1(AdapterOperatorTest.cpp:316).AdapterOperatorTest.streamingRangeSumSpillsActivePeer: expectedCudfWindow::testingStreamingSpillWrites() >= 3; actual value was1(AdapterOperatorTest.cpp:765).2.
velox_cudf_aggregation_testInner result: 110 passed, 6 failed.
AggregationTest.partialAggregationUsesBalancedRunMerges: runtime statcudfIntermediateAggregationRunMergeswas absent;stats.count(statName)was0, expected1(AggregationTest.cpp:1066).FinalAggregationStreamingTest.finalAggregationStreamsOnAddInput,finalAggregationStreamingMixedAggs, andfinalAggregationStreamingMultiKey: expectedcudfFinalStreamingBatches > 1; actual value was1(AggregationTest.cpp:1204).FinalAggregationStreamingTest.finalAggregationLevelledRuns:finalStats.contains("cudfFinalAggregationRunMerges")wasfalse, expectedtrue(AggregationTest.cpp:1348).FinalAggregationStreamingTest.companionFinalAggregationUsesLevelledRuns: uncaught C++ exception:unordered_map::at.3.
velox_cudf_aggregation_selection_testInner result: 18 passed, 2 failed.
CudfAggregationSelectionTest.complexGroupbyClauseExpressions:canBeEvaluatedByCudf(...)returnedtrue, expectedfalse(AggregationSelectionTest.cpp:246).CudfAggregationSelectionTest.invalidTypeCombinationsRejected:canAggregationBeEvaluatedByCudf(...)returnedtrue, expectedfalse(AggregationSelectionTest.cpp:662).5.
velox_cudf_batch_concat_testInner result: 9 passed, 1 failed.
CudfBatchConcatTest.concatFlushesAtByteThreshold: expectedoutputVectors < inputVectors; both were6(BatchConcatTest.cpp:155).7.
velox_cudf_decimal_aggregation_testInner result: 48 passed, 1 failed.
CudfDecimalTest.decimalFinalStreamingProbeReleasesMaterializedColumns: expectedcudfFinalAggregationInputRuns > 1; actual value was1(DecimalAggregationTest.cpp:792).12.
velox_cudf_filter_project_testInner result: 120 passed, 5 failed.
CudfFilterProjectTest.zeroColumnValuesConstantProjection:VeloxRuntimeError INVALID_STATEatToCudf.cpp:393:Replacement with cuDF operator failed for operator: FilterProject; failed expression!isPureCpuOperator(ToCudf.cpp:393).CudfFilterProjectTest.rowConstructorWithUntypedNullField:VeloxRuntimeError INVALID_STATE:not a scalar type! kind: UNKNOWNatAstUtils.h:257(AstUtils.h:257).CudfFilterProjectTest.substringWithIntegerBounds:VeloxRuntimeError INVALID_STATEatToCudf.cpp:393:Replacement with cuDF operator failed for operator: FilterProject; failed expression!isPureCpuOperator(ToCudf.cpp:393).CudfSimpleFilterProjectTest.castNumericToTimestamp:VeloxUserError INVALID_ARGUMENT:Cannot cast DOUBLE '1767225600' to TIMESTAMP. Conversion to Timestamp is not supported(EvalCtx.cpp:208).CudfSimpleFilterProjectTest.castDateToVarchar:VeloxRuntimeError INVALID_STATE:No cuDF expression evaluator can handle: cast(ROW["c0"] as VARCHAR)atExpressionEvaluator.cpp:3460(ExpressionEvaluator.cpp:3460).21.
velox_cudf_nested_loop_join_testInner result: 56 passed, 2 failed.
CudfNestedLoopJoinTest.buildByteLimitAndCleanup: expected an exception, but no exception was thrown (NestedLoopJoinTest.cpp:100).CudfNestedLoopJoinTest.innerJoinWithTimestampFilter:VeloxRuntimeError INVALID_STATE:Expression spans both join sides and cannot be precomputed: gt(ROW["p_ts"],ROW["b_ts"]);sideIdxwas-2(AstExpressionUtils.h:523).23.
velox_cudf_order_by_testInner result: 9 passed, 2 failed.
OrderByTest.boundedExternalSortManyRuns: expectedmaxActiveRuns == 2, actual1; expectedsourceChunks >= 23, actual3(OrderByTest.cpp:523).OrderByTest.boundedExternalSortMapPayload: expectedsourceChunks >= 7, actual1(OrderByTest.cpp:565).30.
velox_cudf_tocudf_selection_testInner result: 24 passed, 1 failed.
ToCudfSelectionTest.complexGroupingKeyExpressionsFallsBack:wasCudfAggregationUsed(task)returnedtrue, expectedfalse(ToCudfSelectionTest.cpp:635).34.
velox_cudf_iceberg_read_testThe executable registered 89 inner tests and stalled while running
CudfIcebergReadTest.combinedPositionalAndEqualityDeletes. It was externally terminated after 316.21 seconds. The captured terminal error was:No test assertion was captured for this suite because the process did not finish.
36.
velox_cudf_spark_aggregates_testInner result: 1 passed, 1 failed.
AggregationTest.groupedCollectListOfRowfailed inSetUp()withVeloxRuntimeError INVALID_STATE:The periodic stats reporter has already started; failed expressioninstanceRef == nullptratPeriodicStatsReporter.cpp:47(PeriodicStatsReporter.cpp:47).37.
velox_cudf_spark_filter_project_testInner result: 56 passed, 1 failed.
CudfFilterProjectTest.multiBranchSwitchWithRegexpExtract:VeloxUserError INVALID_ARGUMENT:Scalar function doesn't exist: eqinresolveScalarFunctionTypeatTypeResolver.cpp:106(TypeResolver.cpp:106).Aggregate result
velox_cudf_iceberg_read_testis excluded from the completed-inner-test subtotal because its process was terminated before completion.