GitHub user lidavidm added a comment to the discussion: Go runtime lifecycle with dlopen: multi-driver loading and dlclose safety
> The static-linking docs warn against linking more than one Go driver, but > there's no guidance for the dynamic-loading case. Is this expected to work, > or would it make sense for the driver manager to expose a metadata flag so > embedders can detect and refuse the conflict at catalog-creation time? This will not work on *Intel* macOS due to a bug in Go that the maintainers have deemed as not worth fixing. We expect it works on other platforms when dynamically linked. It will not work for static linking again because of an issue in Go. > I couldn't find a documented contract saying "never call dlclose on a driver > handle." For my integration I've adopted a never-dlclose policy In principle, I would like drivers to be dlclose-able. In practice, Go again makes this impossible; we should document this. I also have never tested the Rust drivers to see if this works or not. GitHub link: https://github.com/apache/arrow-adbc/discussions/4206#discussioncomment-16550014 ---- This is an automatically sent email for [email protected]. To unsubscribe, please send an email to: [email protected]
