Bug#629592: cyrus-common-2.2: confusing/contradictory information on lenny->squeeze upgrade

Ross Boylan ross at biostat.ucsf.edu
Thu Jun 9 07:10:06 UTC 2011


On Wed, 2011-06-08 at 10:13 +0200, Ondřej Surý wrote:
> On Wed, Jun 8, 2011 at 10:02, Ross Boylan <ross at biostat.ucsf.edu> wrote:
> > On Wed, 2011-06-08 at 08:54 +0200, Ondřej Surý wrote:
> >> Slight correction, better use always the latest version of the script:
> >>
> >> http://anonscm.debian.org/gitweb/?p=pkg-cyrus-imapd/cyrus-imapd-2.4.git;a=blob;f=debian/cyrus-upgrade-db
> >>
> >> (i.e. without the hash)
> >>
> >> O.
> > Do you think that script will be effective for lenny -> squeeze?
> 
> Yes, it should be version agnostic and works only on top of cyrus-db-types.txt
> 
> > And what, if anything, do I need to do to make the transition?
> 
> Yes, you do.
> 
> > Update
> > the berkeley* databases listed in cyrus-db-types.active (except I can
> > delete TLS)?
> 
> Well, you can also delete the duplicate.db it doesn't contain any
> important information.
> 
> Also you need to delete /var/lib/cyrus/db/ (backup it first).
> 
> But the script should work.
> 
> O.
The main problem is that the convert script says to install db4.2-util,
but it is not available in squeeze.  I assume it's in Lenny, but don't
know if the version there will work on a squeeze system.

Some other issues, in chronological order:

1. I had some trouble retrieving the file; 
wget http://anonscm.debian.org/gitweb/?p=pkg-cyrus-imapd/cyrus-imapd-2.4.git;a=blob;f=debian/cyrus-upgrade-db

got me a web page. lynx on the same URL got me the general repository,
not cyrus-upgrade-db.  I ended up navigating to  it through the tree
link.

Maybe the right way to do this would be obvious if I knew git.

2. When I ran the script it said
/bin/bash: db4.2-util not installed
/bin/bash: please do: [sudo] apt-get install db4.2-util package
/bin/bash: and rerun the upgrade again
/bin/bash: db4.7-util not installed
/bin/bash: please do: [sudo] apt-get install db4.7-util package
/bin/bash: and rerun the upgrade again

I did
apt-get install db4.2-util db4.7-util
but I think someone might copy the instructions literally and type
apt-get install db4.2-util package.
I suggest removing "package" from the message (unless this is some
syntax I'm unaware of).

As indicated above, db4.2-util is unavailable.

3. Is db4.2-util actually necessary to upgrade?  Looking at the  code,
it appears this is used to checkpoint the database before the main
operations.  Is that necessary if cyrus is already shutdown normally, as
I thought it had to be before the upgrade?

4. The script works with berkeley-nosync as well as berkeley, right?

5. I'm not sure, based on a quick read, if the script backs up the
entire mail spool.  If it does, it would be good to make this optional
since it can take a lot of time and space, and the admin may have
already made backups.

6. I've seen some suggestions (not Debian-specific, and possibly old)
that there were files that needed to be upgraded on a per user, or maybe
even per folder, basis.  The code doesn't appear to do that.  Any
problems there?

7. It might be useful to note the script should be run as root.  I
wondered if it should be run as cyrus until I saw the code has su cyrus
at strategic points.

Ross






More information about the Pkg-Cyrus-imapd-Debian-devel mailing list