You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Review the thread safety of the SDK to make sure there's no potential concurrency issues, particularly around state maintained in the global API object, clients, and evaluation context objects.
See here for a similar discussion in the Java SDK and others.
Definition of done:
issues created for thread safety of global API, client, and evaluation context.
The text was updated successfully, but these errors were encountered:
@matthewelwell@hlipsig@tcarrio do we need to worry about locking/concurrency here? I know there's a threading module in Python. Are any locks necessary, especially around global state? From our meeting if sounds like this might not be necessary, but I have limited Python experience and can't say...
I'd have to take a closer look at it. The GIL has us covered in some cases for simple assignments but anything more complex than that should probably be guarded by a lock.
add_hooks is probably not thread-safe due to read-update-write race conditions when concatenating lists.
set_provider used to be thread safe but likely isn't now with the new shutdown and initialize logic.
Review the thread safety of the SDK to make sure there's no potential concurrency issues, particularly around state maintained in the global API object, clients, and evaluation context objects.
See here for a similar discussion in the Java SDK and others.
Definition of done:
The text was updated successfully, but these errors were encountered: