[Mailman-Users] Migrating from 1.0 to 2.1.9

Mark Sapiro msapiro at value.net
Fri Aug 3 02:53:26 CEST 2007


 runner at winning.com wrote:
>
>I moved the config.db file from a test list to the new server.  I logged in to the web interface and all the members were there and the settings looked good.  Moving the archives over and rebuilding them even worked.  However, if I try to run dumpdb on the newly migrated list I get this error:
>
>NameError: global name 'DumperSwitchboard' is not defined
>
>Although there are other posts in the mailman-users archives where people saw this problem; there was no resolution.  So it seems that even though the list appears to function properly and the web intercase works, something is not quite right with the config.db file and Mailman version 2.1.9.


Once you move the config.db to the new server and visit the list via
the web interface, the config.db is converted to a config.pck, and the
config.db (and config.db.last) should be discarded at that point, and
you should only be looking at the config.pck.

As far as bin/dumpdb throwing the NameError is concerned, this is a
known (to me at least) error in every version of dumpdb from 2.1.5
through 2.1.9 that prevents it from dumping Marshals. I can't explain
why it hasen't been fixed before, but I will fix it for 2.1.10.

The following patch should allow you to dump .db files.

--- bin/dumpdb  2007-06-18 08:35:57.000000000 -0700
+++ bin/dumpdb  2007-08-02 17:45:42.187500000 -0700
@@ -49,6 +49,7 @@
 import sys
 import getopt
 import pprint
+import marshal
 from cPickle import load
 from types import StringType

@@ -121,9 +122,7 @@
     # Handle dbs
     pp = pprint.PrettyPrinter(indent=4)
     if filetype == 1:
-        # BAW: this probably doesn't work if there are mixed types of
.db
-        # files (i.e. some marshals, some bdbs).
-        d = DumperSwitchboard().read(filename)
+        d = marshal.load(open(filename))
         if doprint:
             pp.pprint(d)
         return d


>It makes me a little nervous to run the migrated lists in production knowing that I can never run dumpdb and I don't know what else might be broken.  I think I will go with my original plan of pre-creating each list on the new server, importing the list member's email addresses and manually setting up the list.  With 150 lists, I think I can do it in a week.


As I said, the configuration of the migrated list is the config.pck.
The config.db should be removed after migration and creation of the
config.pck. You can dump the config.pck with an unmodified bin/dumpdb
and you can dump the config.db with bin/dumpdb patched as above.

-- 
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