[ 
https://issues.apache.org/jira/browse/ARROW-9425?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jorge updated ARROW-9425:
-------------------------
    Description: 
I have been playing with pyo3 to ship and call this library directly from 
Python, and the current ExecutionContext can't be used within Python with 
threads due to the usage of `Box<dyn TableProvider>` on `datasources`, i.e. no 
`Sync` nor `Send`.

This issue likely affects integration of DataFusion with other libraries.

I propose that we allow ExecutionContext to be sharable between threads, e.g. 
using {{Box<dyn TableProvider + Send + Sync>}}.


  was:
I have been playing with pyo3 to ship and call this library directly from 
Python, and the current ExecutionContext can't be used within Python with 
threads due to the usage of `Box<dyn TableProvider>` on `datasources`.

This issue likely affects integration of DataFusion with other libraries.

I propose that we allow ExecutionContext to be sharable between threads.



> [Rust][DataFusion] Make ExecutionContext sharable between threads
> -----------------------------------------------------------------
>
>                 Key: ARROW-9425
>                 URL: https://issues.apache.org/jira/browse/ARROW-9425
>             Project: Apache Arrow
>          Issue Type: Task
>          Components: Rust - DataFusion
>            Reporter: Jorge
>            Priority: Major
>
> I have been playing with pyo3 to ship and call this library directly from 
> Python, and the current ExecutionContext can't be used within Python with 
> threads due to the usage of `Box<dyn TableProvider>` on `datasources`, i.e. 
> no `Sync` nor `Send`.
> This issue likely affects integration of DataFusion with other libraries.
> I propose that we allow ExecutionContext to be sharable between threads, e.g. 
> using {{Box<dyn TableProvider + Send + Sync>}}.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to