[ mailman-Patches-839386 ] MySQL MemberAdaptor for Mailman 2.1

SourceForge.net noreply at sourceforge.net
Thu May 4 10:19:14 CEST 2006


Patches item #839386, was opened at 2003-11-10 19:04
Message generated for change (Comment added) made by egervary
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=300103&aid=839386&group_id=103

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: configure/install
Group: Mailman 2.1
Status: Open
Resolution: None
Priority: 5
Submitted By: Kev Green (kyrian)
Assigned to: Nobody/Anonymous (nobody)
Summary: MySQL MemberAdaptor for Mailman 2.1

Initial Comment:
A MemberAdaptor "plugin" which should allow Mailman list members 
to be loaded from a MySQL database, rather than just a Mailman 
"pickle" file.

Provided as-is, and without warranty, this "plugin" may destroy your 
server, soul, scalp, house, and life. Please use it with caution.

Kev Green, oRe Net.
http://www.orenet.co.uk/

----------------------------------------------------------------------

Comment By: Gergely EGERVARY (egervary)
Date: 2006-05-04 10:19

Message:
Logged In: YES 
user_id=1255996

Thank you again for this SQL adaptor.

Non-alphanumeric characters (such as "-", the dash
character, what is valid, and quite common in email and
maillist addresses) in list names generates SQL syntax
errors, you should use backticks in all SELECT, UPDATE, and
INSERT commands, like "SELECT name FROM `%s` WHERE ..."

my patch is available here:
http://www.expertlan.hu/egervary/forum/MysqlMemberships.py.diff

Another issue is with getDeliveryStatus, which does not work
for me. row[0] does not return the value stored in the sql
table, so the function always returns MemberAdaptor.ENABLED.
(the sql table contains '3' properly, so there's no problem
with setDeliveryStatus)


----------------------------------------------------------------------

Comment By: Gustavo Peters (gustavo_peters)
Date: 2005-10-19 03:08

Message:
Logged In: YES 
user_id=1272569

asa<cdzxcx

----------------------------------------------------------------------

Comment By: adrianwi (adrianwi)
Date: 2005-09-14 21:32

Message:
Logged In: YES 
user_id=1175103

Thank you for developing this adaptor!  So far it's working
well with the limited testing I've done.

There seems to be a minor bug in the addNewMember method of
this adaptor (version 1.61).

At lines 579-584, there are SQL statements which add a new
row in the MySQL database for a new member.  In those
statements, the column 'delivery_status' is given the value
of MemberAdaptor.UNKNOWN.  MemberAdaptor.py defines:

# Delivery statuses
ENABLED  = 0      # enabled
UNKNOWN  = 1      # legacy disabled
BYUSER   = 2      # disabled by user choice
BYADMIN  = 3      # disabled by admin choice
BYBOUNCE = 4      # disabled by bounces

So, it appears that the SQL statements should be changed to
use the value of MemberAdaptor.ENABLED instead of
MemberAdaptor.UNKNOWN (which is "legacy disabled").

Making this change prevents "nomail [reason]" ? from being
set in the user's options for new members (as seen in the
web interface).  This was tested with Mailman 2.1.6.

----------------------------------------------------------------------

Comment By: Kev Green (kyrian)
Date: 2005-07-27 14:38

Message:
Logged In: YES 
user_id=99923

Folks,

For my own sanity I have decided to create a dedicated area
of my business website for various opensource projects, and
put this project among others under there, so please refer
to this location for updates to this patch in future:

http://www.orenet.co.uk/opensource/

I will still be reading bug reports via sourceforge, but if
nothing else, their user interface is much more fiddly and
time consuming to publish files than a quick tar -czvf and
an scp, so I'll be using my own environment to host the
files at least for the time being.

The latest version at this time is 1.61, I belive it still
requires substantial testing which I'll get around to one of
these days.

K.

----------------------------------------------------------------------

Comment By: Kev Green (kyrian)
Date: 2005-05-31 20:57

Message:
Logged In: YES 
user_id=99923

Folks,

Well, I've finally gotten around to releasing an update to
this thing, after a phone conversation with the client who
are using it, and I've incorporated a couple of cosmetic
fixes, fairly substantial changes to make the bounce
processing work properly (the ability to set people to
NOMAIL now exists, and real world testing is commencing
soon), and incorporated the flat vs. wide table archivecture
types with various bugfixes.

Main notes:

* It would be a good idea to change all your delivery_status
fields from VARCHAR(255) to INT(10) or similar, so that they
will work properly, and not bomb out on this new version
(they should be okay I think, but I'd advise the change).

* The missing-'AND' typo has been rectified.

Any suggestions and bugs should be sent to my sourceforge
account address, which ends up in the right place.

K.

----------------------------------------------------------------------

Comment By: Gergely EGERVARY (egervary)
Date: 2005-04-09 12:14

Message:
Logged In: YES 
user_id=1255996

Thank you for your good work.

FYI: there's a missing "AND" in MysqlMemberships.py in line 494.


----------------------------------------------------------------------

Comment By: simboforge (simboforge)
Date: 2005-03-12 00:22

Message:
Logged In: YES 
user_id=1226150

excellent. can you please give me a list of the files
modified from the original distro? grep sees six that grep
have msyql in them. thx

----------------------------------------------------------------------

Comment By: Kev Green (kyrian)
Date: 2005-03-11 23:56

Message:
Logged In: YES 
user_id=99923

The flat file databases are unused when you put the MySQL adaptor in 
place, and they are untouched (and indeed not deleted) by it, the MySQL 
adaptor only queries the MySQL tables for membership information, without 
trying to force you into using it fulltime by deleting anything, etc.

Once you unconfigure the MySQL adaptor, Mailman should revert back to 
your existing flat file databases.

Of course, I could have missed something, etc. so do back up your flat file 
databases before installing the MySQL adaptor, and then you can just 
migrate back to them by restoring the backups.

Either way, you have come up with a good question for an FAQ on the SQL 
adaptor :-)

K.


----------------------------------------------------------------------

Comment By: simboforge (simboforge)
Date: 2005-03-11 23:42

Message:
Logged In: YES 
user_id=1226150

neat. just what i was looking for. i have a couple of live
lists running on version version 2.1.5. i am a bit leary
about unzipping this distrobution over the top of my working
mailman as i am not sure how to backup the existing flat
file databases. i would prefer to experiment with dropping
the adapter into my existing installation. any pointers as
to where to start? thx

----------------------------------------------------------------------

Comment By: Kev Green (kyrian)
Date: 2004-12-13 19:34

Message:
Logged In: YES 
user_id=99923

Oh, btw. v1.57 hasn't been tested yet, so it might kill your
server, eat your dog, and stick your wife in the oven. Be
careful using it!

----------------------------------------------------------------------

Comment By: Kev Green (kyrian)
Date: 2004-12-13 19:33

Message:
Logged In: YES 
user_id=99923

Version 1.57: 2004/12/13

* Merge in Daniel Shriver patch/code for a flat table
architecture.
  [ Suggested by Kevin McCann <kmccann(at)bellanet.org>, but
I hadn't found time to do it myself... ]
* Add bugfix information from Jinhyok Heo
<novembre at NOSPAM.ournature.org>
* Add in mksqlmailman script from TheSin
<thesin at SPAMNOTHANKS.southofheaven.org>
* Follow Barry Warsaw's suggestion on delivery status timestamp.


----------------------------------------------------------------------

Comment By: Kev Green (kyrian)
Date: 2004-01-08 12:38

Message:
Logged In: YES 
user_id=99923

Latest version incorporates automated generation of the necessary tables, 
cleaner error reporting, and updated documentation.

----------------------------------------------------------------------

Comment By: Kev Green (kyrian)
Date: 2003-11-11 12:14

Message:
Logged In: YES 
user_id=99923

Bit of an oops in version 1.49, 1.50 now uploaded, which should fix it.

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=300103&aid=839386&group_id=103


More information about the Mailman-coders mailing list