This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author xiang.zhang
Recipients davin, elias, lev-veshnyakov, xiang.zhang
Date 2016-11-17.18:01:50
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1479405711.02.0.158531437687.issue28699@psf.upfronthosting.co.za>
In-reply-to
Content
> Your patch looks to be introducing a number of changes to the structure of the data being passed around between threads and even monitored/indirectly shared across processes. 

That's why I say even myself don't like it. To solve an edge case some long introduced codes have to been changed. Sigh.

> Under relevant conditions, check both _items and _unsorted (not only _items) before declaring that we truly have all results in.

I think you mean your patch. But how does it solve the reentrant problem? Yeah, actually it's not reentrant. If the problematic job is not the first job with id 0, then the exception won't be set.

With your patch, repeatedly execute print(list(pool.imap(str, gen()))). Only the first time there is an exception.
History
Date User Action Args
2016-11-17 18:01:51xiang.zhangsetrecipients: + xiang.zhang, elias, davin, lev-veshnyakov
2016-11-17 18:01:51xiang.zhangsetmessageid: <1479405711.02.0.158531437687.issue28699@psf.upfronthosting.co.za>
2016-11-17 18:01:51xiang.zhanglinkissue28699 messages
2016-11-17 18:01:50xiang.zhangcreate