[Bug 881316] [NEW] RuntimeError: maximum recursion depth exceeded while pickling an object

Vincent Fretin vincent.fretin at gmail.com
Tue Oct 25 11:03:01 CEST 2011


Public bug reported:

With mailman 3.0.0a8.

I got the following traceback from a html mail with html signature+image from Outlook, 
Oct 14 09:21:31 2011 (17579) Traceback (most recent call last):                 
  File "/home/zope/mailman/src/mailman/core/runner.py", line 138, in _one_iteration
    self._process_one_file(msg, msgdata)                                        
  File "/home/zope/mailman/src/mailman/core/runner.py", line 220, in _process_one_file
    keepqueued = self._dispose(mlist, msg, msgdata)                             
  File "/home/zope/mailman/src/mailman/runners/incoming.py", line 64, in _dispose
    process(mlist, msg, msgdata, mlist.start_chain)                             
  File "/home/zope/mailman/src/mailman/core/chains.py", line 90, in process        
    link.function(mlist, msg, msgdata)                                          
  File "/home/zope/mailman/src/mailman/chains/hold.py", line 245, in _process   
    nmsg.send(mlist, **dict(tomoderators=True))                                 
  File "/home/zope/mailman/src/mailman/email/message.py", line 198, in send        
    self._enqueue(mlist, **_kws)                                                
  File "/home/zope/mailman/src/mailman/email/message.py", line 216, in _enqueue 
    virginq.enqueue(self, **str_keywords)                                       
  File "/home/zope/mailman/src/mailman/core/switchboard.py", line 133, in enqueue
    msgsave = cPickle.dumps(_msg, protocol)                                     
RuntimeError: maximum recursion depth exceeded while pickling an object

It's really an obscure issue for me.
I resolved it by adding
sys.setrecursionlimit(10000)                                                    
in src/mailman/core/switchboard.py                                            
before                                                                          
msgsave = cPickle.dumps(_msg, protocol)                                         
line 134
and doing
bin/mailman unshunt
fixed the issue.
By default sys.getrecursionlimit() returns 1000.

If you want to have a test email to reproduce, I can ask my customer to
send an email to a test mailing-list.

** Affects: mailman
     Importance: Undecided
         Status: New

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

Title:
  RuntimeError: maximum recursion depth exceeded while pickling an
  object

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


More information about the Mailman-coders mailing list