I took a closer look at the slapd.postinst script, and I believe I see
what is causing this issue.

In the "postinst_upgrade_configuration" function, the script first
checks to see if the configuration info needs to be converted from
"slapd.conf" to "slapd.d" format, and if so it runs the "slaptest"
command to perform that conversion.

The script then checks to see if the previous version of the of package
used a different Berkeley DB version, and if so it actually moves the
old BDB files out of the way and creates new database files using the
"slapadd" program (based on the export of the directory data that was
saved using the prior version of "slapcat" in the slapd.preinst script).

This arrangement worked fine for the Hardy -> Intrepid -> Jaunty upgrade
path, because the two conversions did not happen during the same run of
the postinst script.  (The configuration was converted when going to
Intrepid, and the BDB version was changed during the upgrade to Jaunty.)


However, the direct Hardy -> Lucid upgrade does need to perform both 
conversions in the same postinst run -- but in the existing arrangement, the 
script tries to run "slapadd" before the BDB files have been regenerated, and 
thus triggering the  "Program version 4.7 doesn't match environment version" 
error....


So, it appears that the solution to this problem is to perform the conversions 
in the opposite order.  

Currently, the "load_databases" function assumes that the configuration
information is in the directory format, so it can't be used until after
that conversion has happened.  However, it seems like it should be
fairly easy to tweak it to work with either configuration format (e.g.
using the same logic as is currently found in the "dump_databases"
function).   The two conversion steps in
"postinst_upgrade_configuration" could then be switched, which would
(hopefully) allow both to be performed successfully during the same
upgrade....

-- 
slapd package configuration aborts with "Program version 4.7 doesn't match 
environment version 0.44" error during Hardy -> Lucid upgrade
https://bugs.launchpad.net/bugs/536958
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to