-
Notifications
You must be signed in to change notification settings - Fork 187
Closed
Description
The newest PyPy release 7.3.9 implementing Python versions 3.8 and 3.9 enter a recursive loop. Note that the PyPy release 7.3.9 implementing Python 3.7 does not have this problem. Please find below a failing example:
Python 3.8.13 (4b1398fe9d76ad762155d03684c2a153d230b2ef, Mar 29 2022, 08:30:05)
[PyPy 7.3.9 with GCC Apple LLVM 13.0.0 (clang-1300.0.29.30)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>> import cloudpickle
>>>> cloudpickle.dumps({"Test": 1})
Traceback (most recent call last):
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/site-packages/cloudpickle/cloudpickle_fast.py", line 633, in dump
return Pickler.dump(self, obj)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 500, in dump
self.save(obj)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 616, in save
self.save_reduce(obj=obj, *rv)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 700, in save_reduce
save(cls)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 585, in save
self.save_global(obj)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 1109, in save_global
self.save(module_name)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 616, in save
self.save_reduce(obj=obj, *rv)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 700, in save_reduce
save(cls)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 585, in save
self.save_global(obj)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 1109, in save_global
self.save(module_name)
...
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 616, in save
self.save_reduce(obj=obj, *rv)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 700, in save_reduce
save(cls)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 585, in save
self.save_global(obj)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 1109, in save_global
self.save(module_name)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 616, in save
self.save_reduce(obj=obj, *rv)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 700, in save_reduce
save(cls)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 585, in save
self.save_global(obj)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 1109, in save_global
self.save(module_name)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/pickle.py", line 591, in save
rv = reduce(self.proto)
RecursionError: maximum recursion depth exceeded
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/site-packages/cloudpickle/cloudpickle_fast.py", line 102, in dumps
cp.dump(obj)
File "/Users/philipphoellmer/.pyenv/versions/pypy3.8-7.3.9/lib/pypy3.8/site-packages/cloudpickle/cloudpickle_fast.py", line 640, in dump
raise pickle.PicklingError(msg) from e
pickle.PicklingError: Could not pickle object as excessively deep recursion required.
>>>>
Yikun
Metadata
Metadata
Assignees
Labels
No labels