Just Launched: You can now import projects and releases from Google Code onto SourceForge
We are excited to release new functionality to enable a 1-click import from Google Code onto the Allura platform on SourceForge. You can import tickets, wikis, source, releases, and more with a few simple steps. Read More
From: Steve Schwarz <steve@ag...> - 2008-07-31 16:23:26
Wondering if anyone has any experience with some errors we've been
seeing. We've seen this error sporadically in 0.91 and 0.94 with the
pickle module not being defined anymore when trying to save a session:
Traceback (most recent call last):
File "/usr/local/lib/Webware-0.9.4/WebKit/SessionFileStore.py", line
85, in __setitem__
File "/usr/local/lib/Webware-0.9.4/WebKit/SessionStore.py", line 54,
return dump(obj, f, proto)
TypeError: 'NoneType' object is not callable
These occur in production and thousands of sessions are stored to disk
successfully. But at some point it is as if pickle.dump is no longer
existent in the running app server.
Has anyone else seen this or have any ideas? We could modify the code
to test that dump still exists prior to calling it but that would just
mask the underlying problem.
From: Christoph Zwerschke <cito@on...> - 2008-07-31 17:34:37
> TypeError: 'NoneType' object is not callable
> These occur in production and thousands of sessions are stored to disk
> successfully. But at some point it is as if pickle.dump is no longer
> existent in the running app server.
> Has anyone else seen this or have any ideas? We could modify the code
> to test that dump still exists prior to calling it but that would just
> mask the underlying problem.
I personally never experienced this problem.
Which Python version are you using? Is it Py 2.4?
It seems that pickle.dump can sometimes throw this error in Py 2.4 for
certain kind of objects:
So I assume that in some infrequent cases, your session contains such
objects. You should encapsulate the dump in an exception handler and
print the object in case it fails. Maybe you can find out which kind of
objects are causing this problem.