paleolimbot commented on issue #64:
URL: https://github.com/apache/arrow-adbc/issues/64#issuecomment-1214944399

   > no guarantees on thread identity
   
   This is something I've noticed about calls to the `struct ArrowArrayStream` 
methods from both Arrow and DuckDB (sometimes they happen on different threads 
although properly serialized). It precludes a clean separation between producer 
and consumer if the producer wants/needs to evaluate R code, which can only 
happen on exactly one thread. We can, of course, error if we detect a call from 
the wrong thread, but consumers doing that kind of threading may already have 
the facilities to coordinate that kind of access (e.g., Arrow C++ has the 
RunInSerialExecutor). A concrete example of a producer wanting to evaluate R 
code would be a generic R DBI driver for ADBC or an Acero driver whose SQL 
calls user-defined functions registered in the R package.


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