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]
