[spambayes-bugs] [ spambayes-Bugs-831864 ] sb_mboxtrain.py: flock
vs. lockf
SourceForge.net
noreply at sourceforge.net
Tue Oct 28 14:06:54 EST 2003
Bugs item #831864, was opened at 2003-10-28 11:06
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=498103&aid=831864&group_id=61702
Category: None
Group: Source code - CVS
Status: Open
Resolution: None
Priority: 5
Submitted By: Mike Klein (mklein9)
Assigned to: Nobody/Anonymous (nobody)
Summary: sb_mboxtrain.py: flock vs. lockf
Initial Comment:
sb_mboxtrain has an inconsistent use of flock and lockf:
flock to set the mailbox file lock and lockf to unlock it.
This causes on an older Linux system (RH 5.2) a fatal
error in the lockf invocation. The difference appears to
be that flock can use fcntl if HAVE_FLOCK is undefined.
lockf always uses C's flock, which may not be available.
% sb_mboxtrain.py -d .hammie.db -g imap-
mail/spamNo -s imap-mail/spamYes
Training ham (imap-mail/spamNo):
Reading as Unix mbox
180Traceback (most recent call last):
File "/usr/local/bin/sb_mboxtrain.py", line 317, in ?
main()
File "/usr/local/bin/sb_mboxtrain.py", line 302, in main
train(h, g, False, force, trainnew, removetrained)
File "/usr/local/bin/sb_mboxtrain.py", line 230, in train
mbox_train(h, path, is_spam, force)
File "/usr/local/bin/sb_mboxtrain.py", line 181, in
mbox_train
fcntl.lockf(f, fcntl.LOCK_UN)
IOError: [Errno 16] Device or resource busy
%
The fix is easy and seems to work fine: change the
invocation of lockf to flock in sb_mboxtrain.py.
% diff -C2 sb_mboxtrain.py.orig sb_mboxtrain.py
*** sb_mboxtrain.py.orig Tue Oct 28 11:05:47
2003
--- sb_mboxtrain.py Tue Oct 28 11:05:57 2003
***************
*** 179,183 ****
raise
! fcntl.lockf(f, fcntl.LOCK_UN)
f.close()
if loud:
--- 179,183 ----
raise
! fcntl.flock(f, fcntl.LOCK_UN)
f.close()
if loud:
%
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=498103&aid=831864&group_id=61702
More information about the Spambayes-bugs
mailing list