Mailing List Archive

[issue14596] struct.unpack memory leak
Serhiy Storchaka <storchaka@gmail.com> added the comment:

Reduction of memory consumption of struct is a new feature. Any chance to commit struct_repeat.patch+struct_sizeof.patch today and to get this feature in Python 3.3?

----------

_______________________________________
Python tracker <report@bugs.python.org>
<http://bugs.python.org/issue14596>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/list-python-bugs%40lists.gossamer-threads.com
[issue14596] struct.unpack memory leak [ In reply to ]
Mark Dickinson <dickinsm@gmail.com> added the comment:

I'm still not convinced that something like struct_repeat.patch is necessary. So unless someone else wants to own this issue and review the struct_repeat, I'd say that it's too late for 3.3.

----------

_______________________________________
Python tracker <report@bugs.python.org>
<http://bugs.python.org/issue14596>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/list-python-bugs%40lists.gossamer-threads.com
[issue14596] struct.unpack memory leak [ In reply to ]
Serhiy Storchaka <storchaka@gmail.com> added the comment:

Now internal representation of Struct with small format string may
consume unexpectedly large memory and this representation may be
invisible cached. With patch you can get large internal representation
only for large format strings. It is expected.

And how about struct_sizeof.patch? Now sys.getsizeof() returns wrong
result for Struct:

28
>>> sys.getsizeof(struct.Struct('100B'))
28

The patch (it compatible with both Struct representations) fixes it:

52
>>> sys.getsizeof(struct.Struct('100B'))
1240

----------

_______________________________________
Python tracker <report@bugs.python.org>
<http://bugs.python.org/issue14596>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/list-python-bugs%40lists.gossamer-threads.com
[issue14596] struct.unpack memory leak [ In reply to ]
Mark Dickinson <dickinsm@gmail.com> added the comment:

The struct_sizeof patch looks fine, but lacks tests. I think it might be reasonable to call this a bugfix.

----------

_______________________________________
Python tracker <report@bugs.python.org>
<http://bugs.python.org/issue14596>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/list-python-bugs%40lists.gossamer-threads.com
[issue14596] struct.unpack memory leak [ In reply to ]
Serhiy Storchaka <storchaka@gmail.com> added the comment:

Here is Struct.__sizeof__ patch with tests.

----------
Added file: http://bugs.python.org/file26115/struct_sizeof-2.patch

_______________________________________
Python tracker <report@bugs.python.org>
<http://bugs.python.org/issue14596>
_______________________________________