Skip to content

client/asyncio: break after subscription completion to avoid pop() on None#2

Closed
jacquelinegarrahan wants to merge 1 commit into
masterfrom
fix/asyncio-subscription-break
Closed

client/asyncio: break after subscription completion to avoid pop() on None#2
jacquelinegarrahan wants to merge 1 commit into
masterfrom
fix/asyncio-subscription-break

Conversation

@jacquelinegarrahan

Copy link
Copy Markdown
Owner

After a subscription completed, _handle set self._S = None but fell through
into the enclosing while self._run: loop (unlike the cothread client, which
breaks). The next iteration ran S = self._S (None) then S.pop() ->
AttributeError, caught by the bare except and logged as
"Error processing Subscription event" with a traceback on every normal monitor
completion. Data was delivered correctly, but each finishing monitor emitted a
spurious error.

Break out of the loop after handling completion.

Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

… None

After a subscription completed, _handle set self._S = None but fell through
into the enclosing `while self._run:` loop (unlike the cothread client, which
breaks). The next iteration ran `S = self._S` (None) then `S.pop()` ->
AttributeError, caught by the bare except and logged as
"Error processing Subscription event" with a traceback on every normal monitor
completion. Data was delivered correctly, but each finishing monitor emitted a
spurious error.

Break out of the loop after handling completion.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@jacquelinegarrahan

Copy link
Copy Markdown
Owner Author

Superseded by the upstream PR epics-base#215 (opened against epics-base/p4p). Closing this fork PR to avoid duplicates.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant