twuebi opened a new pull request, #1052:
URL: https://github.com/apache/arrow-go/pull/1052

   Casts are dispatched on the target type, and the cast function registered 
for extension targets only accepted NULL inputs. Casting an extension array to 
a different extension type therefore failed with "function 'cast_extension' has 
no kernel matching input types" even when the cast between the two storage 
types is well defined, while the reverse direction (extension input, concrete 
target) has always been handled by the generic `CastFromExtension` unwrap 
kernel.
   
   Register a generic extension -> extension kernel that unwraps the input 
array, casts its storage to the target's storage type honoring the caller's 
cast options, and rewraps the result as the target extension type. Re-typing 
between extension types that share a storage type is zero-copy since the inner 
storage cast is then a no-op.
   
   Also correct the `GetCommonCastKernels` doc comment, which claimed to return 
kernels for casting from extension types; it only ever returned the 
cast-from-null kernel.
   


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

Reply via email to