lidavidm commented on issue #3201: URL: https://github.com/apache/arrow-adbc/issues/3201#issuecomment-3117450992
Hmm. The approach we took would make this hard: there is a generic C interface for all the drivers, with a common binding + dynamic loading, so there's not really room to add driver-specific functionality like this. It's maybe possible to take the Postgres<->Arrow converters and wrap them into a separate Python library, as they are somewhat separated out, but this would still require some surgery. We are trying to work towards natively supporting asyncio, albeit that still wouldn't help when it comes to gevent (and is probably a ways off due to lack of resources). I can think of _maybe_ one way to do this, which would be to abuse SetOption/GetOption: "set" an "option" to pass the raw binary data in, "get" an "option" (or maybe "execute a query") to get the Arrow data back out. (This would still need at least one memcpy since we can't guarantee the lifetime of the source data.) To be honest, I don't really want to do this because it would definitely be an abuse of the APIs. Even if we did do that, there are a ton of caveats: notably, the COPY data doesn't contain a schema/is not self-describing, so you would have to figure that out somehow. -- 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: github-unsubscr...@arrow.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org