[Bug 1077908] Re: MailList configuration race condition between qrunners

Jan Kaluza jkaluza at redhat.com
Tue Nov 13 08:44:47 CET 2012


*** This bug is a duplicate of bug 266464 ***
    https://bugs.launchpad.net/bugs/266464

Sorry, this is mailman-2.1.9 and mailman-2.1.12. You are right it's
fixed in 2.1.15, thanks.

This is my debugging log showing the second problem. I reproduced it
only once and my test case was sending lot of emails per second (I
basically sent 10000 emails using more threads).

It prints "SAVE post_id" or "LOAD post_id" in the end of mlist.Save()
and mlist.Load() methods followed by traceback (to find out what called
those methods - it was useful to debug the first problem). You can see
the lock problem in the end.

Oct 15 06:47:27 2012 (20378) SAVE 9345    
['  File "/usr/lib/mailman/bin/qrunner", line 278, in ?\n    main()\n', '  File "/usr/lib/mailman/bin/qrunner", line 238, in main\n    qrunner.run()\n', '  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 71, in run\n    filecnt = s
elf._oneloop()\n', '  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 113, in _oneloop\n    self._onefile(msg, msgdata)\n', '  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 176, in _onefile\n    keepqueued = self._dispose(m
list, msg, msgdata)\n', '  File "/usr/lib/mailman/Mailman/Queue/IncomingRunner.py", line 133, in _dispose\n    mlist.Save()\n', '  File "/usr/lib/mailman/Mailman/MailList.py", line 561, in Save\n    syslog(\'error\', \'SAVE %d\\n%s\\n\',
 self.post_id, repr(traceback.format_stack()))\n']  
  
Oct 15 06:47:28 2012 (20378) SAVE 9346    
['  File "/usr/lib/mailman/bin/qrunner", line 278, in ?\n    main()\n', '  File "/usr/lib/mailman/bin/qrunner", line 238, in main\n    qrunner.run()\n', '  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 71, in run\n    filecnt = s
elf._oneloop()\n', '  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 113, in _oneloop\n    self._onefile(msg, msgdata)\n', '  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 176, in _onefile\n    keepqueued = self._dispose(m
list, msg, msgdata)\n', '  File "/usr/lib/mailman/Mailman/Queue/IncomingRunner.py", line 133, in _dispose\n    mlist.Save()\n', '  File "/usr/lib/mailman/Mailman/MailList.py", line 561, in Save\n    syslog(\'error\', \'SAVE %d\\n%s\\n\',
 self.post_id, repr(traceback.format_stack()))\n']  
  
Oct 15 06:47:28 2012 (20380) LOAD 9346    
['  File "/usr/lib/mailman/bin/qrunner", line 278, in ?\n    main()\n', '  File "/usr/lib/mailman/bin/qrunner", line 238, in main\n    qrunner.run()\n', '  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 71, in run\n    filecnt = s
elf._oneloop()\n', '  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 113, in _oneloop\n    self._onefile(msg, msgdata)\n', '  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 176, in _onefile\n    keepqueued = self._dispose(m
list, msg, msgdata)\n', '  File "/usr/lib/mailman/Mailman/Queue/OutgoingRunner.py", line 70, in _dispose\n    mlist.Load()\n', '  File "/usr/lib/mailman/Mailman/MailList.py", line 666, in Load\n    syslog(\'error\', \'LOAD %d\\n%s\\n\', 
self.post_id, repr(traceback.format_stack()))\n']   
  
Oct 15 06:47:28 2012 (20378) Uncaught runner exception: <LockFile -1211698068: /var/lock/mailman/testlist.lock [unlocked: 18000sec] pid=20378>: None    
Oct 15 06:47:28 2012 (20378) Traceback (most recent call last):    
  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 113, in _oneloop
    self._onefile(msg, msgdata) 
  File "/usr/lib/mailman/Mailman/Queue/Runner.py", line 176, in _onefile
    keepqueued = self._dispose(mlist, msg, msgdata) 
  File "/usr/lib/mailman/Mailman/Queue/IncomingRunner.py", line 133, in _dispose  
    mlist.Save() 
  File "/usr/lib/mailman/Mailman/MailList.py", line 551, in Save   
    self.__lock.refresh()  
  File "/usr/lib/mailman/Mailman/LockFile.py", line 229, in refresh
    raise NotLockedError, '%s: %s' % (repr(self), self.__read())   
NotLockedError: <LockFile -1211698068: /var/lock/mailman/testlist.lock [unlocked: 18000sec] pid=20378>: None    
  
Oct 15 06:47:28 2012 (20378) SHUNTING: 1350273953.9130599+e82f3657cfb0be0aae0be15565a31e333d37324b

-- 
You received this bug notification because you are a member of Mailman
Coders, which is subscribed to GNU Mailman.
https://bugs.launchpad.net/bugs/1077908

Title:
  MailList configuration race condition between qrunners

To manage notifications about this bug go to:
https://bugs.launchpad.net/mailman/+bug/1077908/+subscriptions


More information about the Mailman-coders mailing list