[issue11564] pickle not 64-bit ready
Nadeem Vawda
report at bugs.python.org
Tue Aug 23 20:35:50 CEST 2011
Nadeem Vawda <nadeem.vawda at gmail.com> added the comment:
I was playing around with pickling large Unicode strings in an interactive
interpreter, and it seems that you have to have at least 4G chars (not bytes)
to trigger the OverflowError. Consider the following snippet of code:
out = dumps(data)
del data
result = loads(out)
assert isinstance(result, str)
assert len(result) == _1G
With data as (b"a" * _4G) the result is as expected:
Traceback (most recent call last):
File "pickle-bigmem-test.py", line 5, in <module>
out = dumps(data)
OverflowError: cannot serialize a string larger than 4GB
But with (b"a" * _2G), I get this:
Traceback (most recent call last):
File "pickle-bigmem-test.py", line 7, in <module>
result = loads(out)
_pickle.UnpicklingError: BINUNICODE pickle has negative byte count
----------
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue11564>
_______________________________________
More information about the Python-bugs-list
mailing list