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
Makes 2 subscriptions of different data types to the same PV.
Writes a few values
Double-checks that we got the number of subscriptions expected
On Windows Python 3.12, the server only sends back the first data type that was requested. This is not the case on other platforms.
I'm at a loss as to how it's happening (TODO look into this again at some point):
The two subscription events (EventAddResponse) are put in as weakrefs into to the queue (circuit.subscription_queue.put)
The weakrefs are not destroyed (checked via logs; they have a hard reference in "unexpired updates")
Only one subscription makes it out of the queue (ref = await self.get_from_sub_queue(...) -> circuit.subscription_queue.get() wrapped with ensure_future to add timeout support)
Windows Python 3.12 failure is legitimate and locally reproducible (as well as on CI).
Copied from my comment in #829:
How it's failing is a little bizarre.
This test:
On Windows Python 3.12, the server only sends back the first data type that was requested. This is not the case on other platforms.
I'm at a loss as to how it's happening (TODO look into this again at some point):
EventAddResponse
) are put in as weakrefs into to the queue (circuit.subscription_queue.put
)ref = await self.get_from_sub_queue(...)
->circuit.subscription_queue.get()
wrapped withensure_future
to add timeout support)Log
The text was updated successfully, but these errors were encountered: