kylebrooks-8451 opened a new issue, #347:
URL: https://github.com/apache/arrow-datafusion-python/issues/347

   **Describe the bug**
   Python users expect to be able to use Python Objects on any interpreter 
thread and the Python interpreter freely moves objects between threads:
   
   [PyO3 Must Be Send](https://pyo3.rs/v0.18.2/class#must-be-send)
   
   [PyO3 recommends making pyclass types Sendable by using Arc in Place of Rc 
etc.](https://pyo3.rs/v0.18.2/class#customizing-the-class)
   
   Right now, users will see a panic in Python if objects are used between 
threads:
   
   ```
   thread '<unnamed>' panicked at 'assertion failed: `(left == right)`
     left: `ThreadId(15)`,
    right: `ThreadId(13)`: datafusion_python::context::PySessionContext is 
unsendable, but sent to another thread!', 
/Users/[redacted]/.cargo/registry/src/artifactory.8451.com-3c2d1e7414f45d14/pyo3-0.18.3/src/impl_/pyclass.rs:881:9
   ```
   
   **To Reproduce**
   Use a SessionContext in different Python threads.
   
   **Expected behavior**
   Python users expect to use DataFusion objects in any thread.


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