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

   Part of #5572.
   
   `length`, `bit_length` and `octet_length` all decline `BinaryType` input, 
and each falls the whole projection back to Spark:
   
   ```scala
   case _: BinaryType => Unsupported(Some("Length on BinaryType is not 
supported"))
   ```
   
   `spark/src/main/scala/org/apache/comet/serde/strings.scala:89` 
(`CometLength`), `:98` (`CometBitLength`), `:107` (`CometOctetLength`)
   
   All three are trivial in Spark's generated code — `length(binary)` is 
`.numBytes()`, and the other two are arithmetic on it. `BinaryType` is in 
`CometBatchKernelCodegen.isSupportedDataType`, so the dispatcher handles them.
   
   Fix: mix `CodegenDispatchFallback` into all three. They are near-identical 
serdes, so this is one small change.
   
   The generated docs list all three as "✅ Native" with no note today, so they 
should pick up the Hybrid marker once the mixin is added.
   


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