You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by "kylebrooks-8451 (via GitHub)" <gi...@apache.org> on 2023/04/26 18:08:55 UTC

[GitHub] [arrow-datafusion-python] kylebrooks-8451 opened a new issue, #347: Make All pyclass Rust Types Sendable

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: github-unsubscribe@arrow.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow-datafusion-python] andygrove closed issue #347: Make All pyclass Rust Types Sendable

Posted by "andygrove (via GitHub)" <gi...@apache.org>.
andygrove closed issue #347: Make All pyclass Rust Types Sendable 
URL: https://github.com/apache/arrow-datafusion-python/issues/347


-- 
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-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org