cPickle segfault with nested dicts in threaded env

2010-09-08 Thread Kenneth Dombrowski
Hi all,

Before creating an issue @ bugs.python.org I wanted to run the
following by everyone

We are having a difficult time with what looks like a cPickle issue
when given a data structure containing >15 nested dictionaries, but
only when threading is involved

Environment is FreeBSD 8, Python 2.5.5

The following diff contains an addition for
/usr/ports/lang/python25/work/Python-2.5.5/Lib/test/test_cpickle.py
which reproduces the issue

kenn...@kenneth0 Python-2.5.5 $ cat
/tmp/test_cpickle.nested_dicts_in_threaded_env.diff
1a2
> import copy
2a4
> import threading
93a96,105
> def test_nested_dicts_in_threaded_env(self):
> # segfaults on python2.5.5/FreeBSD 8.0-RELEASE-p2
> def threadloop():
> x = {}
> for i in range(16):
> x = {i:copy.copy(x)}
> cPickle.dumps(x, 2)
> t = threading.Thread(target=threadloop)
> t.start()
>

Any thoughts will be appreciated, thanks for looking,
Kenneth
-- 
http://mail.python.org/mailman/listinfo/python-list


Re: cPickle segfault with nested dicts in threaded env

2010-09-09 Thread Kenneth Dombrowski
On Wed, Sep 8, 2010 at 6:55 PM, Paul Rubin  wrote:
> Carl Banks  writes:
>> Since Python 2.7 is released, Python 2.5 is no longer accepting bug
>> fixes, only security fixes.  So be aware.
>
> Segfaults should be treated as security holes unless there's convincing
> reasons that no exploit is possible.  So the bug should be reported
> against 2.5 as well as later versions.

Hi Paul,

Thanks for the input, it sounds reasonable to me.  I reported it & the
maintainers can decide what to do with it:
http://bugs.python.org/issue9812

Thanks again everyone,
Kenneth
-- 
http://mail.python.org/mailman/listinfo/python-list