classification
Title: cancel all other pending child futures
Type: performance Stage: resolved
Components: asyncio Versions: Python 3.6
process
Status: closed Resolution: rejected
Dependencies: Superseder:
Assigned To: Nosy List: asvetlov, tzongw, yselivanov
Priority: normal Keywords: patch

Created on 2018-08-19 13:13 by tzongw, last changed 2019-02-14 19:51 by yselivanov. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 8820 closed tzongw, 2018-08-19 13:26
Messages (2)
msg323755 - (view) Author: tzongw (tzongw) Date: 2018-08-19 13:13
In `tasks.gather`, when a child future throws an exception and `return_exceptions` is False, outer future will call `set_exception` while other child futures is still running. In this case, outer future call `_GatheringFuture.cancel' first to cancel all other pending child futures for efficiency.
msg335559 - (view) Author: Yury Selivanov (yselivanov) * (Python committer) Date: 2019-02-14 19:51
This is a backwards incompatible change, unfortunately.  Wait for the new TaskGroups API that will resolve this issue.
History
Date User Action Args
2019-02-14 19:51:11yselivanovsetstatus: open -> closed
resolution: rejected
messages: + msg335559

stage: patch review -> resolved
2018-08-19 13:26:24tzongwsetkeywords: + patch
stage: patch review
pull_requests: + pull_request8298
2018-08-19 13:13:40tzongwcreate