Forum OpenACS Q&A: Spam module in 3.2.5 trouble?

Posted by Cathy Sarisky on
Hi everyone,

I recently decided that I wanted to spam the registered users of my
little friends-and-family oACS installation.  I wrote up the spam,
and waited for it to go out.  The spam goes to "sending" fairly
quickly, but then never actually seems to get sent.  (I didn't
receive it, I didn't get a bounce, it continues to list as "sending"
24 hours later, with 0 messages sent.)

Obviously something is screwy here.

oACS successfully sends errors in the logs, bboard postings, etc.  So
mail from other modules is working.  But not spam.

I got this spam by doing a search for users and clicking "spam these
users."  I don't have any user classes defined.  (Is this part of the

Before I pull any hair out (lacking an error message anywhere), can
anyone suggest where I might start to look for the problem?  This one
has me stumped!



Posted by David Walker on
If it is a problem sending mail you should find errors in your error log.

Check this setting in your nsd.tcl
ns_section "ns/parameters"
        ns_param   MailHost

By default the MailHost is set to localhost. If you are not running sendmail or another mail server locally you will need to specify a mail server to send mail through and make sure that you can send mail through it.
Posted by Jonathan Ellis on
She did say "everything but spam" is working...
Posted by David Walker on
Oh sure.  Read the entire message.  I suppose I could have tried that but
that would be too easy.
Posted by Cathy Sarisky on
So I tried sending more spam, this time using a user group for selecting spamees, and the spam sent just fine.  Apparently leaving all the selection fields blank, while it does produce a list of all users, does not work for actually sending out spam.  I'll SDM this one once I've had a chance to look at the code a bit more.
Posted by MaineBob OConnor on
I can't point you to an exact answer but we had a problem with
this module a while back and it was failing because a field was missing in users table or copy/view thereof.... and it turned out that it was a field we had added for OTHER purposes.  At the time, I thought that my adding  a field for OTHER purposes shouldn't break the spam module...

This module, i think uses a view or a copy of the original table and and....    check your error log and follow the dusty trail 'till you find the bug!


Posted by Cynthia Kiser on
I bet it uses the users_spammable view. On Oracle that view breaks and has to be recompiled any time you add a column to users (because the view is defined as "select * from users where..."). You might try the PostGres equivalent of "select object_name, object_type from user_objects where status = 'INVALID';" to see if your data dictionary shows any invalid views (or functions, etc). I would however expect that if this were the problem that there would be a database error logged to the server error log.
8: Ah-hah. (response to 1)
Posted by Cathy Sarisky on
I had indeed added a column to users.  And indeed, I am seeing an error thrown in the log.  (Last night I was apparently looking at servername.log, which doesn't show sql errors and not at, which does.)  Oops.

Thanks to everyone for the help :)