Matt Kettler wrote:
Derek Catanzaro wrote:
Matt Kettler wrote:
Derek Catanzaro wrote:
I have a ton of bayes_toks.expire files listed in
/root/.spamassassin. Is it safe to delete these files?
Yes, provided no expire process is currently running and using one.
I did wind up deleting all of the bayes_toks.expire files, there were
hundreds.
1) run sa-learn --force-expire to fix the immediate problem.
After deleting the bayes_toks.expire files I ran sa-learn
--force-expire and received the result below and it just stayed there
for at least 20 minutes so I forced it to stop. Is this normal
behavior? Was I too impatient with the process? My bayes_toks file
is 321MB, not sure if that is part of the issue.
That's *enormous* for bayes_toks. It should be something on the order of
10-20 megs with the default bayes_expiry_max_db_size settings.
Since your bayes DB has so many excess tokens, it may take sa-learn
--force-expire a VERY long time to actually do the expire. Bayes Expiry
performance doesn't seem to scale very well to large databases when
you're using db files.
Try kicking it off again. If you're concerned it's hung, do two things:
1) add -D to the command line to turn on the debug output. Use this to
make sure it's not getting hung up trying to get a lock. If it cant' get
a file lock you'll see it retrying constantly. Based on the journal sync
message below, it probably didn't get hung here, but it's still useful
to see the debug output in this case.
2) use another terminal to check the .expire file. *after* the debug
tells you SA has figured out a good atime, it should start writing to
this file. It should keep slowly growing in size, so you can use this to
check if it's still working away.
I am running sa-learn --force-expire -D on one of my servers now. I
mentioned above the the bayes_toks file was 321 MB. Well on the server
I am working on now it is 603 MB (unbelievable). Anyway here is the out
put from the -D. Would I be better off deleting bayes_toks and starting
over? Or should I just let the expire run? I did pull up another
terminal from a different machine and I do not see a .expire file yet?
Does this file need to be in place already or is it created when you run
sa-learn --force-expire? Thanks for your time.
<<<snip>>>
[3990] dbg: plugin:
Mail::SpamAssassin::Plugin::ReplaceTags=HASH(0xa585f74) implements
'finish_parsing_end'
[3990] dbg: replacetags: replacing tags
[3990] dbg: replacetags: done replacing tags
[3990] dbg: bayes: tie-ing to DB file R/O /root/.spamassassin/bayes_toks
[3990] dbg: bayes: tie-ing to DB file R/O /root/.spamassassin/bayes_seen
[3990] dbg: bayes: found bayes db version 3
[3990] dbg: bayes: opportunistic call attempt skipped, found fresh
running expire magic token
[3990] dbg: config: score set 3 chosen.
[3990] dbg: learn: initializing learner
[3990] dbg: bayes: bayes journal sync starting
[3990] dbg: locker: safe_lock: created /root/.spamassassin/bayes.mutex
[3990] dbg: locker: safe_lock: trying to get lock on
/root/.spamassassin/bayes with 300 timeout
^[[A[3990] dbg: locker: safe_lock: link to
/root/.spamassassin/bayes.mutex: link ok
[3990] dbg: bayes: tie-ing to DB file R/W /root/.spamassassin/bayes_toks
[3990] dbg: bayes: tie-ing to DB file R/W /root/.spamassassin/bayes_seen
[3990] dbg: bayes: found bayes db version 3
[3990] dbg: locker: refresh_lock: refresh /root/.spamassassin/bayes.mutex
[3990] dbg: locker: refresh_lock: refresh /root/.spamassassin/bayes.mutex
bayes: synced databases from journal in 1 seconds: 1086 unique entries
(2413 total entries)
[3990] dbg: bayes: bayes journal sync completed
[3990] dbg: bayes: expiry starting
[3990] dbg: locker: refresh_lock: refresh /root/.spamassassin/bayes.mutex
[3990] dbg: locker: refresh_lock: refresh /root/.spamassassin/bayes.mutex
[3990] dbg: bayes: expiry check keep size, 0.75 * max: 112500
[3990] dbg: bayes: token count: 16444245, final goal reduction size:
16331745
[3990] dbg: bayes: first pass? current: 1161153290, Last: 1117301865,
atime: 43200, count: 98606, newdelta: 260, ratio: 165.626280348052,
period: 43200
[3990] dbg: bayes: can't use estimation method for expiry, unexpected
result, calculating optimal atime delta (first pass)
[3990] dbg: bayes: expiry max exponent: 9
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.