My application hangs serializing a lists of dictionaries (CSV data) with pickle. Using the regular Python interpreter there are no issues. I am on Python 2.7, PyPy 2.6.0 for Win32.
Here is the output when I Ctrl+C
the application:
Traceback (most recent call last):
File "<builtin>/app_main.py", line 75, in run_toplevel
File ".\Da-Lite\dalite_build_script.py", line 167, in <module>
pickle.dump(data_sheets, fo)
File "H:\Developer\Python\pypy-2.6.0-win32\lib-python\2.7\pickle.py", line 1413, in dump
Pickler(file, protocol).dump(obj)
File "H:\Developer\Python\pypy-2.6.0-win32\lib-python\2.7\pickle.py", line 224, in dump
self.save(obj)
File "H:\Developer\Python\pypy-2.6.0-win32\lib-python\2.7\pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "H:\Developer\Python\pypy-2.6.0-win32\lib-python\2.7\pickle.py", line 653, in save_dict
self._batch_setitems(obj.iteritems())
File "H:\Developer\Python\pypy-2.6.0-win32\lib-python\2.7\pickle.py", line 667, in _batch_setitems
save(v)
File "H:\Developer\Python\pypy-2.6.0-win32\lib-python\2.7\pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "H:\Developer\Python\pypy-2.6.0-win32\lib-python\2.7\pickle.py", line 653, in save_dict
self._batch_setitems(obj.iteritems())
File "H:\Developer\Python\pypy-2.6.0-win32\lib-python\2.7\pickle.py", line 667, in _batch_setitems
save(v)
File "H:\Developer\Python\pypy-2.6.0-win32\lib-python\2.7\pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "H:\Developer\Python\pypy-2.6.0-win32\lib-python\2.7\pickle.py", line 600, in save_list
self._batch_appends(iter(obj))
File "H:\Developer\Python\pypy-2.6.0-win32\lib-python\2.7\pickle.py", line 615, in _batch_appends
save(x)
File "H:\Developer\Python\pypy-2.6.0-win32\lib-python\2.7\pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "H:\Developer\Python\pypy-2.6.0-win32\lib-python\2.7\pickle.py", line 653, in save_dict
self._batch_setitems(obj.iteritems())
File "H:\Developer\Python\pypy-2.6.0-win32\lib-python\2.7\pickle.py", line 665, in _batch_setitems
for k, v in items:
KeyboardInterrupt
Using Pickle is not essential to the program, but if there is a relatively simple solution to overcome this problem it makes my life easier.