[New-bugs-announce] [issue16029] pickle.dumps(xrange(sys.maxsize)) produces xrange(0)

akira report at bugs.python.org
Mon Sep 24 22:29:00 CEST 2012


New submission from akira:

>>> import sys
  >>> from pickle import dumps, loads
  >>> r = xrange(sys.maxsize)
  >>> len(r) == sys.maxsize
  True
  >>> pr = loads(dumps(r))
  >>> len(pr) == len(r)
  False
  >>> pr
  xrange(0)
  >>> r
  xrange(9223372036854775807)

It breaks multiprocessing module:
http://stackoverflow.com/questions/12569977/python-large-iterations-number-fail

It fails on 2.6.6, 2.7.3. It works correctly on 3.1-3.3, pypy 1.7-1.9  x86_64 Linux.

----------
components: Library (Lib)
files: test_pickle_dumps_xrange.py
messages: 171187
nosy: akira
priority: normal
severity: normal
status: open
title: pickle.dumps(xrange(sys.maxsize)) produces xrange(0)
type: behavior
versions: Python 2.6, Python 2.7
Added file: http://bugs.python.org/file27281/test_pickle_dumps_xrange.py

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue16029>
_______________________________________


More information about the New-bugs-announce mailing list