Setting en_US.UTF-8 causing Mailman not to send E-Mail out to members (maximum recursion depth exceeded)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
GNU Mailman |
Incomplete
|
Undecided
|
Unassigned |
Bug Description
CentOS 7.6.1810
Mailman 2.1.27
cPanel 80.0.18
Python 2.7.5
Servers with the operating system locale set to tr_TR.UTF-8 (localectl set-locale LANG=tr_TR.utf8
) causes Mailman not to send E-Mail out to members of a mailing list. In the Mailman error log (/usr/local/
===
Jun 18 13:25:57 2019 (61183) Uncaught runner exception: maximum recursion depth exceeded
Jun 18 13:25:57 2019 (61183) Traceback (most recent call last):
File "/usr/local/
self.
File "/usr/local/
keepqueued = self._dispose(
File "/usr/local/
more = self._dopipelin
File "/usr/local/
__import_
File "/usr/local/
from email.Iterators import typed_subpart_
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
File "/usr/lib64/
return getattr(mod, name)
RuntimeError: maximum recursion depth exceeded
Jun 18 13:25:57 2019 (61183) SHUNTING: 1560878756.
===
Setting the operating system locale to en_US.UTF-8 (localectl set-locale LANG=en_US.UTF-8) then restarting the Mailman service, E-Mail sent to the mailing list is successfully E-Mailing out the mailing list members now. I confirmed this issue on two different servers.
This issue appears to be with the Python 2.7 Email package, specifically somewhere here (from /usr/lib64/
===
# Lazy loading to provide name mapping from new-style names (PEP 8 compatible
# email 4.0 module names), to old-style names (email 3.0 module names).
import sys
class LazyImporter(
def __init__(self, module_name):
def __getattr__(self, name):
mod = sys.modules[
return getattr(mod, name)
===
Wanted to report the issue here first though just incase.
I am unable to duplicate this. In any case, it would seem to be a Python email issue rather than a Mailman issue.
Does this issue occur if you just invoke Python and do
from email.Iterators import typed_subpart_ iterator