malinjawi opened a new pull request, #12065: URL: https://github.com/apache/gluten/pull/12065
## What changes were proposed in this pull request? - Add Gluten Substrait TimeType/TimeLiteral nodes and Spark 4.1 TimeType reflection mapping. - Map Substrait TIME to Velox TIME_MICRO_UTC for parsing, signatures, literals, and Velox-to-Substrait type conversion. - Convert Spark TimeType nanos to Substrait/Velox micros for literals, and convert Velox TIME_MICRO_UTC micros back to Spark UnsafeRow nanos in columnar-to-row. - Allow Velox validation/planning for supported TIME precision and add literal/type/columnar-to-row coverage. Fixes #11919. ## How was this patch tested? - `git diff --cached --check` - `mvn -Pbackends-velox,spark-4.1,scala-2.13,java-21 -pl backends-velox -am -DskipTests -Dcheckstyle.skip -Dspotless.check.skip compile` - Focused local validation before rebasing onto latest upstream main: - `./dev/run-scala-test.sh --force -Pjava-21,spark-4.1,scala-2.13,backends-velox,hadoop-3.4,spark-ut,delta -pl backends-velox -s org.apache.gluten.execution.VeloxLiteralSuite -t "Time Literal" -Dscalastyle.skip=true -Dcheckstyle.skip -Dspotless.check.skip` - `cmake --build cpp/build --target velox -j 4` - `generic_benchmark` smoke run Native C++ unit-test targets were not run locally because this checkout does not have the Velox vector test utility archive built (`libvelox_vector_test_lib.a`). ## Benchmark Compared clean upstream main against this patch: - Focused C2R BIGINT median: 1325.407 us -> 1329.853 us (+0.335%). - Focused C2R TIME_MICRO_UTC median: 1331.705 us -> 1643.357 us (+23.403%); this adds the required micros-to-nanos normalization for Spark UnsafeRow. - Broad generic_q5 median: real 29.076 ms -> 29.159 ms (+0.285%), CPU 28.993 ms -> 28.991 ms (-0.006%). ## Does this PR introduce any user-facing change? No. -- 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]
