DlistUtils.py crashes when email address in DB is not in .pck file

Bug #493438 reported by Robin J
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Systers-mailman
New
High
kanika vats

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.

Revision history for this message
Robin J (robin-jeffries) wrote :

This seems to be related to the STORM code, so I am assigning this to Kanika Vats

Changed in systers:
importance: Undecided → High
assignee: nobody → kanika vats (kanika-krikan)
Revision history for this message
kanika vats (kanika-krikan) wrote : Re: [Bug 493438] Re: DlistUtils.py crashes when email address in DB is not in .pck file

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

Revision history for this message
Robin J (robin-jeffries) wrote :
Download full text (5.6 KiB)

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 ...

Read more...

Revision history for this message
kanika vats (kanika-krikan) wrote :

I have removed the faulty line and restored the commented one in DlistUtils.py at abiwt.org.Please check If we are still getting the bug or not.
Kanika Vats

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.