
This issue trackerhas been migrated toGitHub, and is currentlyread-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.
Created on2016-07-16 20:13 byjeremyspiegel, last changed2022-04-11 14:58 byadmin. This issue is nowclosed.
| Files | ||||
|---|---|---|---|---|
| File name | Uploaded | Description | Edit | |
| _isdir.patch | jeremyspiegel,2016-07-16 20:13 | review | ||
| _isdir.2.7.patch | jeremyspiegel,2016-07-16 22:41 | 2.7 posix__isdir patch | review | |
| Messages (8) | |||
|---|---|---|---|
| msg270583 -(view) | Author: Jeremy Spiegel (jeremyspiegel)* | Date: 2016-07-16 20:13 | |
InModules/posixmodule.c, the function os__isdir_impl calls GetFileAttributesA/GetFileAttributesW without releasing the GIL. This is problematic since it can result in disk or network I/O, depending on the filesystem. | |||
| msg270588 -(view) | Author: Steve Dower (steve.dower)*![]() | Date: 2016-07-16 22:18 | |
LGTM.This is the kind of patch I can't wait to have a one-click merge button... right now it'll have to wait until I have a clean repo. But if anyone else wants to get it, go ahead. | |||
| msg270591 -(view) | Author: Eryk Sun (eryksun)*![]() | Date: 2016-07-16 22:29 | |
Should this be backported to 2.7 posix__isdir()? | |||
| msg270594 -(view) | Author: Steve Dower (steve.dower)*![]() | Date: 2016-07-16 23:39 | |
No, it's not a security fix, so it doesn't go in 2.7. | |||
| msg270597 -(view) | Author: Eryk Sun (eryksun)*![]() | Date: 2016-07-17 00:28 | |
OK. I thought fixing bugs in 2.7 was at the discretion of core developers, including small tweaks for performance -- just not enhancements with significant amounts of new code and features. | |||
| msg270601 -(view) | Author: Steve Dower (steve.dower)*![]() | Date: 2016-07-17 01:55 | |
Maybe so. If you find a core developer who cares about performance in 2.7, maybe they'll merge it :) | |||
| msg270643 -(view) | Author: R. David Murray (r.david.murray)*![]() | Date: 2016-07-17 15:02 | |
Correct, 2.7 is not in security fix only mode (yet), but new features (anything that changes an API) or bug fixes that we wouldn't put in a maintenance release (things that would break existing programs) are not allowed. A special exception has been made for 2.7 for performance enhancements; we wouldn't normally do those in a maintenance release unless they were significant.But as Steve says, it depends on a core developer being interested in applying the fix/backport. Which we may have, we'll wait and see :) | |||
| msg270684 -(view) | Author: Roundup Robot (python-dev)![]() | Date: 2016-07-18 03:50 | |
New changesetebf9a4c933e9 by Steve Dower in branch '3.5':Issue#27533: Release GIL in nt._isdirhttps://hg.python.org/cpython/rev/ebf9a4c933e9New changeset8823c660820e by Steve Dower in branch 'default':Issue#27533: Release GIL in nt._isdirhttps://hg.python.org/cpython/rev/8823c660820e | |||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022-04-11 14:58:33 | admin | set | github: 71720 |
| 2016-07-18 03:51:06 | steve.dower | set | status: open -> closed assignee:steve.dower resolution: fixed stage: patch review -> resolved |
| 2016-07-18 03:50:51 | python-dev | set | nosy: +python-dev messages: +msg270684 |
| 2016-07-17 15:02:53 | r.david.murray | set | nosy: +r.david.murray messages: +msg270643 |
| 2016-07-17 01:55:18 | steve.dower | set | messages: +msg270601 |
| 2016-07-17 00:28:20 | eryksun | set | messages: +msg270597 |
| 2016-07-16 23:39:32 | steve.dower | set | messages: +msg270594 |
| 2016-07-16 22:41:22 | jeremyspiegel | set | files: +_isdir.2.7.patch |
| 2016-07-16 22:40:37 | jeremyspiegel | set | files: -_isdir.2.7.patch |
| 2016-07-16 22:39:49 | jeremyspiegel | set | files: +_isdir.2.7.patch |
| 2016-07-16 22:29:00 | eryksun | set | nosy: +eryksun messages: +msg270591 |
| 2016-07-16 22:18:08 | steve.dower | set | type: behavior stage: patch review messages: +msg270588 versions: + Python 3.5, Python 3.6 |
| 2016-07-16 21:26:03 | r.david.murray | set | nosy: +paul.moore,tim.golden,zach.ware,steve.dower components: + Windows |
| 2016-07-16 20:13:54 | jeremyspiegel | create | |