[Mailman-Users] Display error for 'members' page
Mark Sapiro
msapiro at value.net
Tue Mar 20 18:37:26 CET 2007
Rick Pasotto wrote:
>On Mon, Mar 19, 2007 at 03:41:31PM -0700, Mark Sapiro wrote:
>>
>> And what is the traceback from this error in Mailman's error log.
>
>Here it is:
>
>Mar 20 12:33:53 2007 admin(13911): @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
>admin(13911): [----- Mailman Version: 2.1.9 -----]
>admin(13911): [----- Traceback ------]
>admin(13911): Traceback (most recent call last):
>admin(13911): File "/var/lib/mailman/scripts/driver", line 110, in run_main
>admin(13911): main()
>admin(13911): File "/usr/lib/mailman/Mailman/Cgi/admin.py", line 197, in main
>admin(13911): show_results(mlist, doc, category, subcat, cgidata)
>admin(13911): File "/usr/lib/mailman/Mailman/Cgi/admin.py", line 497, in show_results
>admin(13911): form.AddItem(membership_options(mlist, subcat, cgidata, doc, form))
>admin(13911): File "/usr/lib/mailman/Mailman/Cgi/admin.py", line 978, in membership_options
>admin(13911): names = filter(None, [mlist.getMemberName(s) for s in members])
>admin(13911): File "/usr/lib/mailman/Mailman/OldStyleMemberships.py", line 131, in getMemberName
>admin(13911): self.__assertIsMember(member)
>admin(13911): File "/usr/lib/mailman/Mailman/OldStyleMemberships.py", line 113, in __assertIsMember
>admin(13911): raise Errors.NotAMemberError, member
>admin(13911): NotAMemberError: tdeal at Charlotte.EthenAllen.com
The problem is the upper case letters in the domain. This shouldn't
happen, but there may be a mailman bug. I don't see a problem in the
code, but there may be.
You can see the issue with bin/dumpdb or bin/withlist, and fix it with
withlist. The list's members (or digest_members) dictionary should
have the key:value pair
'tdeal at charlotte.ethenallen.com':'tdeal at Charlotte.EthenAllen.com'
for this member. There should be no upper case in the key. It might
also be a good idea to do
bin/dumpdb lists/listname/config.pck | grep EthanAllen
to make sure there are no other upper case entries.
Assuming the only problem is that the entry in the members (or
digest_members) dictionary is either
'tdeal at Charlotte.EthenAllen.com':0
or
'tdeal at Charlotte.EthenAllen.com':'tdeal at Charlotte.EthenAllen.com'
you can fix it with withlist. Start withlist with
bin/withlist -l listname
Then do the following (assuming a regular member)
m.members['tdeal at charlotte.ethenallen.com'] = \
'tdeal at Charlotte.EthenAllen.com'
del m.members['tdeal at Charlotte.EthenAllen.com']
m.Save()
(control-D to exit)
If you don't care about preserving case in the domain, the first two
lines could be replaced by
m.members['tdeal at charlotte.ethenallen.com'] = 0
>> <http://www.python.org/cgi-bin/faqw-mm.py?req=show&file=faq03.013.htp>
>> may help.
>
>I don't see why you would think so.
>
>'bin/list_members -i listname' returns nothing.
But if it had returned something, it would have been helpful ;-)
--
Mark Sapiro <msapiro at value.net> The highway is for gamblers,
San Francisco Bay Area, California better use your sense - B. Dylan
More information about the Mailman-Users
mailing list