Removing subscriber with illegal email format
![](https://secure.gravatar.com/avatar/cdfeab33e6ad85c331ef0939d865193e.jpg?s=120&d=mm&r=g)
Hello all! Somehow, one of our Mailman2 lists has a member with a bad email address, in the format of user@@example.com (i.e. two @ symbols). This is breaking at least one cron (disabled) I've tried removing the address via the backend admin, as well as command line, but it's not working. Any other ways to remove it? - Scott
![](https://secure.gravatar.com/avatar/64eb54ead95a1d9385319a26ab67f4fc.jpg?s=120&d=mm&r=g)
On Fri, Dec 27, 2024 at 09:20:46AM -0600, Scott Neader wrote:
A somewhat dirty way but how to fix rather than remove: Open up your database command line interface: use mailman3; -- choose that database select * from address where email like "user@@example.com"; That will give you an id -- so if the value is 50: update address set email="user@example.com" where id=50; -- Alain Williams Linux/GNU Consultant - Mail systems, Web sites, Networking, Programmer, IT Lecturer. +44 (0) 787 668 0256 https://www.phcomp.co.uk/ Parliament Hill Computers. Registration Information: https://www.phcomp.co.uk/Contact.html #include <std_disclaimer.h>
![](https://secure.gravatar.com/avatar/64eb54ead95a1d9385319a26ab67f4fc.jpg?s=120&d=mm&r=g)
On Fri, Dec 27, 2024 at 09:55:26PM +0000, Alain D D Williams wrote:
On Fri, Dec 27, 2024 at 09:20:46AM -0600, Scott Neader wrote:
Hello all! Somehow, one of our Mailman2 lists has a member with a bad
Whoops - just noticed mailman2 rather than mailman3; sorry.
-- Alain Williams Linux/GNU Consultant - Mail systems, Web sites, Networking, Programmer, IT Lecturer. +44 (0) 787 668 0256 https://www.phcomp.co.uk/ Parliament Hill Computers. Registration Information: https://www.phcomp.co.uk/Contact.html #include <std_disclaimer.h>
![](https://secure.gravatar.com/avatar/56f108518d7ee2544412cc80978e3182.jpg?s=120&d=mm&r=g)
On 12/27/24 07:20, Scott Neader wrote:
By command line I'm guessing you did ``` bin/remove_members LISTNAME user@@example.com ``` and that returned ``` No such member: user@@example.com ``` If that's the case, you can do the following: put this one line in a file ``` del mlist.members['user@@example.com'] ``` Then run ``` bin/config_list -i path_to_the_above_file ``` I think that should do it. -- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
![](https://secure.gravatar.com/avatar/cdfeab33e6ad85c331ef0939d865193e.jpg?s=120&d=mm&r=g)
After successfully removing the problematic user (with the two @ in their email address), I am still seeing a problem with the 'disabled' cron, pointing to this user that was already removed (thanks to your help). Here's the cron output (with the offending email address redacted) # /usr/bin/python -S /usr/lib/mailman/cron/disabled Traceback (most recent call last): File "/usr/lib/mailman/cron/disabled", line 224, in <module> main() File "/usr/lib/mailman/cron/disabled", line 161, in main if mlist.getDeliveryStatus(member) <> MemberAdaptor.ENABLED: File "/usr/lib/mailman/Mailman/OldStyleMemberships.py", line 140, in getDeliveryStatus self.__assertIsMember(member) File "/usr/lib/mailman/Mailman/OldStyleMemberships.py", line 114, in __assertIsMember raise Errors.NotAMemberError, member Mailman.Errors.NotAMemberError: user@@example.com Thoughts on how I might make this cron happy again? Thank you!! - Scott On Sat, Dec 28, 2024 at 12:55 AM Scott Neader <scott@qth.com> wrote:
![](https://secure.gravatar.com/avatar/56f108518d7ee2544412cc80978e3182.jpg?s=120&d=mm&r=g)
On 12/28/24 15:13, Scott Neader wrote:
To clean this completely put the following in a file ``` for attribute in ( mlist.admin_responses, mlist.bounce_info, mlist.delivery_status, mlist.hold_and_cmd_autoresponses, mlist.language, mlist.one_last_digest, mlist.passwords, mlist.postings_responses, mlist.request_responses, mlist.topics_userinterest, mlist.user_options, mlist.usernames, ): try: del attribute['user@@example.com'] except KeyError: pass ``` and then run `bin/config_list -i /path/to/file LISTNAME` as before. That should get all the occurrences. It will print `attribute "attribute" ignored` which is expected and not a problem. Removing the address from mlist.delivery_status alone would probably fix this error, but getting it everywhere will avoid future issues. -- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
![](https://secure.gravatar.com/avatar/64eb54ead95a1d9385319a26ab67f4fc.jpg?s=120&d=mm&r=g)
On Fri, Dec 27, 2024 at 09:20:46AM -0600, Scott Neader wrote:
A somewhat dirty way but how to fix rather than remove: Open up your database command line interface: use mailman3; -- choose that database select * from address where email like "user@@example.com"; That will give you an id -- so if the value is 50: update address set email="user@example.com" where id=50; -- Alain Williams Linux/GNU Consultant - Mail systems, Web sites, Networking, Programmer, IT Lecturer. +44 (0) 787 668 0256 https://www.phcomp.co.uk/ Parliament Hill Computers. Registration Information: https://www.phcomp.co.uk/Contact.html #include <std_disclaimer.h>
![](https://secure.gravatar.com/avatar/64eb54ead95a1d9385319a26ab67f4fc.jpg?s=120&d=mm&r=g)
On Fri, Dec 27, 2024 at 09:55:26PM +0000, Alain D D Williams wrote:
On Fri, Dec 27, 2024 at 09:20:46AM -0600, Scott Neader wrote:
Hello all! Somehow, one of our Mailman2 lists has a member with a bad
Whoops - just noticed mailman2 rather than mailman3; sorry.
-- Alain Williams Linux/GNU Consultant - Mail systems, Web sites, Networking, Programmer, IT Lecturer. +44 (0) 787 668 0256 https://www.phcomp.co.uk/ Parliament Hill Computers. Registration Information: https://www.phcomp.co.uk/Contact.html #include <std_disclaimer.h>
![](https://secure.gravatar.com/avatar/56f108518d7ee2544412cc80978e3182.jpg?s=120&d=mm&r=g)
On 12/27/24 07:20, Scott Neader wrote:
By command line I'm guessing you did ``` bin/remove_members LISTNAME user@@example.com ``` and that returned ``` No such member: user@@example.com ``` If that's the case, you can do the following: put this one line in a file ``` del mlist.members['user@@example.com'] ``` Then run ``` bin/config_list -i path_to_the_above_file ``` I think that should do it. -- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
![](https://secure.gravatar.com/avatar/cdfeab33e6ad85c331ef0939d865193e.jpg?s=120&d=mm&r=g)
After successfully removing the problematic user (with the two @ in their email address), I am still seeing a problem with the 'disabled' cron, pointing to this user that was already removed (thanks to your help). Here's the cron output (with the offending email address redacted) # /usr/bin/python -S /usr/lib/mailman/cron/disabled Traceback (most recent call last): File "/usr/lib/mailman/cron/disabled", line 224, in <module> main() File "/usr/lib/mailman/cron/disabled", line 161, in main if mlist.getDeliveryStatus(member) <> MemberAdaptor.ENABLED: File "/usr/lib/mailman/Mailman/OldStyleMemberships.py", line 140, in getDeliveryStatus self.__assertIsMember(member) File "/usr/lib/mailman/Mailman/OldStyleMemberships.py", line 114, in __assertIsMember raise Errors.NotAMemberError, member Mailman.Errors.NotAMemberError: user@@example.com Thoughts on how I might make this cron happy again? Thank you!! - Scott On Sat, Dec 28, 2024 at 12:55 AM Scott Neader <scott@qth.com> wrote:
![](https://secure.gravatar.com/avatar/56f108518d7ee2544412cc80978e3182.jpg?s=120&d=mm&r=g)
On 12/28/24 15:13, Scott Neader wrote:
To clean this completely put the following in a file ``` for attribute in ( mlist.admin_responses, mlist.bounce_info, mlist.delivery_status, mlist.hold_and_cmd_autoresponses, mlist.language, mlist.one_last_digest, mlist.passwords, mlist.postings_responses, mlist.request_responses, mlist.topics_userinterest, mlist.user_options, mlist.usernames, ): try: del attribute['user@@example.com'] except KeyError: pass ``` and then run `bin/config_list -i /path/to/file LISTNAME` as before. That should get all the occurrences. It will print `attribute "attribute" ignored` which is expected and not a problem. Removing the address from mlist.delivery_status alone would probably fix this error, but getting it everywhere will avoid future issues. -- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
participants (3)
-
Alain D D Williams
-
Mark Sapiro
-
Scott Neader