Issue 21802: Reader of BufferedRWPair is not closed if writer's close() fails (original ) (raw ) This issue has been migrated to GitHub: https://github.com/python/cpython/issues/66001
classification
Title :
Reader of BufferedRWPair is not closed if writer's close() fails
Type :
behavior
Stage :
resolved
Components :
IO
Versions :
Python 3.4, Python 3.5, Python 2.7
process
Created on 2014-06-18 17:52 by serhiy.storchaka , last changed 2022-04-11 14:58 by admin . This issue is now closed .
Messages (6)
msg220945 - (view)
Author: Serhiy Storchaka (serhiy.storchaka) *
Date: 2014-06-18 17:52
Current implementation of BufferedRWPair.close() is: def close(self): self.writer.close() self.reader.close() When self.writer.close() raises an exception, self.reader left non-closed. This can cause file description leak unless GC sweep it. Proposed patch fixes this issue. With applied patch for it would be a little simpler.
msg224000 - (view)
Author: Serhiy Storchaka (serhiy.storchaka) *
Date: 2014-07-25 20:47
Antoine, what do you think about this?
msg231595 - (view)
Author: Antoine Pitrou (pitrou) *
Date: 2014-11-24 10:00
Why don't you reuse the API from ?
msg231641 - (view)
Author: Serhiy Storchaka (serhiy.storchaka) *
Date: 2014-11-25 07:41
Because this API was not still committed. Here is a patch which uses it.
msg234268 - (view)
Author: Serhiy Storchaka (serhiy.storchaka) *
Date: 2015-01-18 20:05
Ping. If this patch will be accepted I'll provide larger patch for similar issues in close methods of other classes.
msg239182 - (view)
Author: Roundup Robot (python-dev)
Date: 2015-03-24 21:24
New changeset d4694c672c36 by Serhiy Storchaka in branch '3.4': Issue #21802 : The reader in BufferedRWPair now is closed even when closing https://hg.python.org/cpython/rev/d4694c672c36 New changeset f515c7ccff57 by Serhiy Storchaka in branch 'default': Issue #21802 : The reader in BufferedRWPair now is closed even when closing https://hg.python.org/cpython/rev/f515c7ccff57 New changeset dcf25060cae8 by Serhiy Storchaka in branch '2.7': Issue #21802 : The reader in BufferedRWPair now is closed even when closing https://hg.python.org/cpython/rev/dcf25060cae8
History
Date
User
Action
Args
2022-04-11 14:58:05
admin
set
github: 66001
2015-03-24 21:24:54
serhiy.storchaka
set
status: open -> closedresolution: fixedstage: patch review -> resolved
2015-03-24 21:24:33
python-dev
set
nosy: + python-dev messages: +
2015-03-24 21:01:59
serhiy.storchaka
set
assignee: serhiy.storchaka
2015-03-20 02:47:50
martin.panter
set
nosy: + martin.panter
2015-01-18 20:05:49
serhiy.storchaka
set
messages: +
2014-11-25 07:41:18
serhiy.storchaka
set
files: + bufferedrwpair_close_2.patch messages: +
2014-11-24 10:00:20
pitrou
set
messages: +
2014-07-25 20:47:34
serhiy.storchaka
set
messages: +
2014-06-18 17:52:22
serhiy.storchaka
create