Thanks to visit codestin.com
Credit goes to github.com

Skip to content

fix: fix regression in bidi causing Thread-ConsumeBidirectionalStream caught unexpected exception and will exit #562

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Dec 1, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions google/api_core/bidi.py
Original file line number Diff line number Diff line change
Expand Up @@ -91,8 +91,12 @@ def __init__(self, queue, period=1, initial_request=None):
def _is_active(self):
# Note: there is a possibility that this starts *before* the call
# property is set. So we have to check if self.call is set before
# seeing if it's active.
return self.call is not None and self.call.is_active()
# seeing if it's active. We need to return True if self.call is None.
# See https://github.com/googleapis/python-api-core/issues/560.
if self.call is not None and not self.call.is_active():
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@parthea

It would be simpler and much clearer to have return self.call is None or self.call.is_active(). This is equivalent to what you have, by DeMorgan's theorem.

return False
else:
return True

def __iter__(self):
if self._initial_request is not None:
Expand Down