@@ -65,19 +65,19 @@ class CometIcebergRewriteActionSuite extends CometTestBase with CometIcebergTest
6565 }
6666
6767 // Single-column zOrder is bit-pattern-equivalent to a natural sort (no second dimension to
68- // interleave with), so we expect the same ascending output as the sort test. The shuffle here
69- // is CometColumnarExchange rather than CometExchange because the z-value column is computed
70- // by a Spark Project (Iceberg's INTERLEAVE_BYTES / INT_ORDERED_BYTES are not recognised by
71- // Comet), so the path crosses a JVM -row boundary before the shuffle .
72- test(" single-column zOrder rewrite runs scan, columnar exchange, and sort natively in Comet" ) {
68+ // interleave with), so we expect the same ascending output as the sort test. Iceberg's
69+ // `INT_ORDERED_BYTES` / `INTERLEAVE_BYTES` are `ScalaUDF`s that route through Comet's codegen
70+ // dispatcher, so the project stays native and the shuffle picks `CometExchange` /
71+ // `CometNativeShuffle` rather than the columnar -row roundtrip path .
72+ test(" single-column zOrder rewrite runs scan, native exchange, and sort natively in Comet" ) {
7373 runRewriteTest(
7474 RewriteCase (
7575 table = s " $catalog.db.zorder_test " ,
7676 configureMode = invoke(_, " zOrder" , classOf [Array [String ]] -> Array (" id" )),
7777 verifyDataAfter = assertSortedById,
7878 verifyPlans = { rewritePlans =>
7979 assertReadsAreComet(rewritePlans)
80- assertOperator(rewritePlans, " CometColumnarExchange " )
80+ assertOperator(rewritePlans, " CometExchange " )
8181 assertOperator(rewritePlans, " CometSort" )
8282 }))
8383 }
0 commit comments