Skip to content
This repository was archived by the owner on Nov 23, 2017. It is now read-only.

Conversation

@gjcarneiro
Copy link

asyncio.Queue.put_nowait(), followed get() task cancellation leads to item being
lost. See http://bugs.python.org/issue23812

… lost

asyncio.Queue.put_nowait(), followed get() task cancellation leads to item being
lost.  See http://bugs.python.org/issue23812
@1st1
Copy link
Member

1st1 commented Aug 3, 2015

@gjcarneiro Hi Gustavo, thanks for the PR. I've left a few comments there, please take a look.

Overall, I like the patch, let's get this fixed finally.

Gustavo Carneiro added 2 commits August 5, 2015 17:14
1. only puts item back in the queue if waiter.done() is true
2. add comment explaining cancellation
3. Add a missing self._consume_done_getters() call
@gjcarneiro
Copy link
Author

@1st1 thanks for the review! The new commit should address those issues. Cheers.

@1st1
Copy link
Member

1st1 commented Aug 5, 2015

@gjcarneiro Thanks, Gustavo! LGTM.

@gvanrossum @Haypo I'm going to commit Gustavo's patch soon, unless you guys want to review it too.

@gvanrossum
Copy link
Member

gvanrossum commented Aug 5, 2015 via email

@1st1
Copy link
Member

1st1 commented Aug 5, 2015

Merged. Thanks, @gjcarneiro.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants