Comment 3 for bug 493438

Revision history for this message
Robin J (robin-jeffries) wrote : Re: [Bug 493438] Re: DlistUtils.py crashes when email address in DB is not in .pck file

This happens when you post a message to systers. You won't see it on your
branch, as it is a side effect of there being database corruption on
systers.org, but it should be obvious when you look at the code -- we need
an error message sent to the error log about this (the one that is commented
out looks fine to me), but the one you have created causes the crash.

Robin

On Sun, Dec 6, 2009 at 9:20 PM, kanika vats <email address hidden> wrote:

> Hi Robin,
> Yes,I will look into this.Can you please tell me on doing exactly what you
> get the error?
>
> On Mon, Dec 7, 2009 at 10:21 AM, Robin J <email address hidden> wrote:
>
> > This seems to be related to the STORM code, so I am assigning this to
> > Kanika Vats
> >
> > --
> > DlistUtils.py crashes when email address in DB is not in .pck file
> > https://bugs.launchpad.net/bugs/493438
> > You received this bug notification because you are a bug assignee.
> >
> > Status in Systers Mailman Custom Modifications: New
> >
> > Bug description:
> > There was a bug that we haven't cleaned up the data for (the bug is
> fixed),
> > where there can be items in the SQL database that do not have a
> > corresponding entry in the mailman .pck file for the list. When one of
> > those is searched for to send email to (based on whether they are a
> digest
> > subscriber or not), you get the following traceback
> >
> > Dec 06 17:47:44 2009 (32321) Uncaught runner exception: global name
> > 'command' i
> > s not defined
> > Dec 06 17:47:44 2009 (32321) Traceback (most recent call last):
> > File "/usr/local/mailman/Mailman/Queue/Runner.py", line 114, in _oneloop
> > self._onefile(msg, msgdata)
> > File "/usr/local/mailman/Mailman/Queue/Runner.py", line 185, in _onefile
> > keepqueued = self._dispose(mlist, msg, msgdata)
> > File "/usr/local/mailman/Mailman/Queue/IncomingRunner.py", line 130, in
> > _disp
> > ose
> > more = self._dopipeline(mlist, msg, msgdata, pipeline)
> > File "/usr/local/mailman/Mailman/Queue/IncomingRunner.py", line 153, in
> > _dopi
> > peline
> > sys.modules[modname].process(mlist, msg, msgdata)
> > File "/usr/local/mailman/Mailman/Handlers/Dlists.py", line 53, in
> process
> > thread.continueThread(msg, msgdata, thread_reference)
> > File "/usr/local/mailman/Mailman/DlistUtils.py", line 43, in inner
> > result = f(self,*args)
> > File "/usr/local/mailman/Mailman/DlistUtils.py", line 456, in
> > continueThread
> > self.email_recepients(msg, msgdata, lists, pref)
> > File "/usr/local/mailman/Mailman/DlistUtils.py", line 388, in
> > email_recepient
> > s
> > returnList = GetEmailAddress(self.mlist, lists)
> > File "/usr/local/mailman/Mailman/DlistUtils.py", line 720, in
> > GetEmailAddress
> > syslog('error', 'User name was found through this query: ' + command);
> > NameError: global name 'command' is not defined
> >
> >
> > The problem seems to be that the syslog entry was changed to use the
> > "command" variable (which is used in a variety of places where SQL
> database
> > commands are created), but the database is not used here. The fix is
> > probably to revert to the error message directly above line 720 in
> > DlistUtils.py, which is commented out.
> >
> >
> >
>
>
> --
> Best Regards
> Kanika Vats
>
> --
> DlistUtils.py crashes when email address in DB is not in .pck file
> https://bugs.launchpad.net/bugs/493438
> You received this bug notification because you are a direct subscriber
> of the bug.
>
> Status in Systers Mailman Custom Modifications: New
>
> Bug description:
> There was a bug that we haven't cleaned up the data for (the bug is fixed),
> where there can be items in the SQL database that do not have a
> corresponding entry in the mailman .pck file for the list. When one of
> those is searched for to send email to (based on whether they are a digest
> subscriber or not), you get the following traceback
>
> Dec 06 17:47:44 2009 (32321) Uncaught runner exception: global name
> 'command' i
> s not defined
> Dec 06 17:47:44 2009 (32321) Traceback (most recent call last):
> File "/usr/local/mailman/Mailman/Queue/Runner.py", line 114, in _oneloop
> self._onefile(msg, msgdata)
> File "/usr/local/mailman/Mailman/Queue/Runner.py", line 185, in _onefile
> keepqueued = self._dispose(mlist, msg, msgdata)
> File "/usr/local/mailman/Mailman/Queue/IncomingRunner.py", line 130, in
> _disp
> ose
> more = self._dopipeline(mlist, msg, msgdata, pipeline)
> File "/usr/local/mailman/Mailman/Queue/IncomingRunner.py", line 153, in
> _dopi
> peline
> sys.modules[modname].process(mlist, msg, msgdata)
> File "/usr/local/mailman/Mailman/Handlers/Dlists.py", line 53, in process
> thread.continueThread(msg, msgdata, thread_reference)
> File "/usr/local/mailman/Mailman/DlistUtils.py", line 43, in inner
> result = f(self,*args)
> File "/usr/local/mailman/Mailman/DlistUtils.py", line 456, in
> continueThread
> self.email_recepients(msg, msgdata, lists, pref)
> File "/usr/local/mailman/Mailman/DlistUtils.py", line 388, in
> email_recepient
> s
> returnList = GetEmailAddress(self.mlist, lists)
> File "/usr/local/mailman/Mailman/DlistUtils.py", line 720, in
> GetEmailAddress
> syslog('error', 'User name was found through this query: ' + command);
> NameError: global name 'command' is not defined
>
>
> The problem seems to be that the syslog entry was changed to use the
> "command" variable (which is used in a variety of places where SQL database
> commands are created), but the database is not used here. The fix is
> probably to revert to the error message directly above line 720 in
> DlistUtils.py, which is commented out.
>
> To unsubscribe from this bug, go to:
> https://bugs.launchpad.net/systers/+bug/493438/+subscribe
>