[spambayes-bugs]
[ spambayes-Bugs-770793 ] Win98, database corrupts?
SourceForge.net
noreply at sourceforge.net
Sun Jul 20 16:07:04 EDT 2003
Bugs item #770793, was opened at 2003-07-14 01:12
Message generated for change (Comment added) made by tim_one
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=498103&aid=770793&group_id=61702
Category: None
Group: None
Status: Closed
Resolution: Fixed
Priority: 5
Submitted By: Lauri Harpf (theranger54)
Assigned to: Nobody/Anonymous (nobody)
Summary: Win98, database corrupts?
Initial Comment:
Gives:
---
Loading database...
Traceback (most recent call last):
File "c:\ohjelmatiedostot\spambayes\pop3proxy.py",
line 777, in ?
run()
File "c:\ohjelmatiedostot\spambayes\pop3proxy.py",
line 752, in run
state.createWorkers()
File "c:\ohjelmatiedostot\spambayes\pop3proxy.py",
line 594, in createWorkers
self.bayes = storage.DBDictClassifier(filename)
File "c:\ohjelmatiedostot\spambayes\spambayes\storage.
py", line 147, in __init
__
self.load()
File "c:\ohjelmatiedostot\spambayes\spambayes\storage.
py", line 159, in load
t = self.db[self.statekey]
File "C:\OHJELMATIEDOSTOT\PYTHON22\lib\shelve.py",
line 71, in __getitem__
return Unpickler(f).load()
EOFError
Exception exceptions.AttributeError: "'NoneType' object
has no attribute 'error'
" in <bound method _Database.__del__ of
<dumbdbm._Database instance at 0x00ED936
0>> ignored
---
on startup. Worked fine, then I rebooted the machine
(shut down Spambayes through the Web interface) and
then it simply refused to boot up with the above
message. Error seems permanent, unless user does
something drastic (ie. destroys the database). I'm
running Win98 Se, using pop3proxy with Outlook 6 SP1,
starting the program with
c:\ohjelmatiedostot\python22\python.exe
c:\ohjelmatiedostot\spambayes\pop3proxy.
py -b
Hard drive is a 80GB model, partitioned into one single
partition using FAT32, 45,7GB still free. Spambayes
version is 1.0 A4.
The same problem also occurred with Alpha 3, it refuses
to start up with the message
---
Loading database...
Traceback (most recent call last):
File "c:\ohjelmatiedostot\spambayesbak\pop3proxy.py",
line 730, in ?
run()
File "c:\ohjelmatiedostot\spambayesbak\pop3proxy.py",
line 705, in run
state.createWorkers()
File "c:\ohjelmatiedostot\spambayesbak\pop3proxy.py",
line 547, in createWorke
rs
self.bayes = storage.DBDictClassifier(filename)
File "C:\Ohjelmatiedostot\spambayes\spambayes\storage.
py", line 147, in __init
__
self.load()
File "C:\Ohjelmatiedostot\spambayes\spambayes\storage.
py", line 159, in load
t = self.db[self.statekey]
File "C:\OHJELMATIEDOSTOT\PYTHON22\lib\shelve.py",
line 71, in __getitem__
return Unpickler(f).load()
EOFError
Exception exceptions.AttributeError: "'NoneType' object
has no attribute 'error'
" in <bound method _Database.__del__ of
<dumbdbm._Database instance at 0x00ED1D7
0>> ignored
---
After a fresh install, the program usually works fine for a
while. Every reboot does not appear to mix things up, it
only seems to go bad after it has been running for a
while and the user has classified enough messages. I run
my comp mostly 24/7, so reboots are rare and
Spambayes is usually running unless I need to boot.
----------------------------------------------------------------------
>Comment By: Tim Peters (tim_one)
Date: 2003-07-20 18:07
Message:
Logged In: YES
user_id=31435
Mark, the Outlook addin never uses dumbdbm, does it? Looks
like manager.py looks for bsddb3, and, if it fails to find one,
uses a PickleStorageManager. I don't want to give up the
option of using a PickleStorageManager, since no bugs are
ever reported against that (low tech == low risk <0.2 wink>).
----------------------------------------------------------------------
Comment By: Mark Hammond (mhammond)
Date: 2003-07-20 03:26
Message:
Logged In: YES
user_id=14198
Well, fixed in Python anyway. If you still care, add a
feature request that Outlook fail to register unless we have
a bsddb database
----------------------------------------------------------------------
Comment By: Tim Peters (tim_one)
Date: 2003-07-16 10:04
Message:
Logged In: YES
user_id=31435
The "dumbdbm._Database instance" in the traceback is a sure
sign of a recently-diagnosed critical problem. Since you're
using Outlook, using the Outlook addin instead of pop3proxy
will cure it. If for some reason you want to use pop3proxy
with Outlook (I woudn't -- the Outlook addin is a joy), you'll
need to install "a real" database. Python 2.3 will ship with a
current version of Sleepycat's Berkeley bsddb database. For
Python 2.2.3, that can be obtained separately from the
SourceForge PyBSDDB project:
http://pybsddb.sf.net/
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=498103&aid=770793&group_id=61702
More information about the Spambayes-bugs
mailing list