lidavidm commented on issue #729:
URL: https://github.com/apache/arrow-adbc/issues/729#issuecomment-1629932344

   I think I've observed a crash like this without concurrent usage. @zeroshade 
should we perhaps just enable `checkptr` in our releases? It has a performance 
cost but I don't think users will be spamming calls spanning the FFI boundary.
   
   > Specifically, -d=checkptr checks the following:
   > 
   > 1. When converting unsafe.Pointer to *T, the resulting pointer must be 
aligned appropriately for T.
   > 1. If the result of pointer arithmetic points into a Go heap object, one 
of the unsafe.Pointer-typed operands must point into the same object.
   
   https://go.dev/doc/go1.14
   
   It sounds like the cost is fairly minimal (some arithmetic per pointer 
conversion) all things considered. The original PR 
(`https://github.com/golang/go/issues/22218#issuecomment-463007572`) suggests 
it would be lightweight, too. It sounds more like it's behind `-d` just because 
it's somewhat experimental and because existing code was known to violate the 
rules, not because it's expensive. 
   


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