Thanks Jonathan, that should help me move forward.
On Tuesday, July 5, 2022 at 12:51:52 PM UTC-4 Jonathan Vanasco wrote:
>
> > I'm guessing we shouldn't be passing ORM objects to threads, but rather
> just passing IDs and then querying the full object in the thread function
>
> Correct.
>
> Database Connections and Sessions are not threadsafe, they are
> thread-local. See
> https://docs.sqlalchemy.org/en/14/orm/session_basics.html#is-the-session-thread-safe
>
> Consequently, all objects are thread-local.
>
> If you are simply dealing with read-only concepts, you can `.expunge` an
> object from one session/thread and `.merge` it into another
> session/thread. This is often playing with fire though, as you must be
> prepared to handle situations where the data may have changed as that type
> of work is not transaction-safe. See:
> https://docs.sqlalchemy.org/en/14/orm/session_state_management.html
>
>
>
> On Thursday, June 30, 2022 at 4:02:23 PM UTC-4 ben.c...@level12.io wrote:
>
>> Hi,
>>
>> I'm troubleshooting some code that uses thread_pool_executor to run a
>> function, passing an ORM entity as an argument. Within the executed
>> function, we are sometimes receiving a "Value Error: generator already
>> executing" when accessing a related entity via a relationship property.
>>
>> I'm guessing we shouldn't be passing ORM objects to threads, but rather
>> just passing IDs and then querying the full object in the thread function.
>> Does that hunch sound correct?
>>
>
--
SQLAlchemy -
The Python SQL Toolkit and Object Relational Mapper
http://www.sqlalchemy.org/
To post example code, please provide an MCVE: Minimal, Complete, and Verifiable
Example. See http://stackoverflow.com/help/mcve for a full description.
---
You received this message because you are subscribed to the Google Groups
"sqlalchemy" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sqlalchemy+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/sqlalchemy/b1c62fc8-7fd6-449e-ae65-2bc3cc22e1b7n%40googlegroups.com.