|
|
Package: postgresql-common
Version: 36
Severity: normal
File: /usr/bin/pg_upgradecluster
I have upgraded a number of 8.0 databases to 8.1 successfully so far,
but one in particular failed pretty badly.
There is a rather severe problem if there is a user and a group in the 8.0
database with the same name. pg_upgradecluster makes a mess of the
translation from users/groups to roles, and as a result any privileges
which were granted to the group seem to be missing from the new database.
Worst of all, pg_upgradecluster reports a successful upgrade afterwards.
If a group and user have the same name in 8.0, and the user is a member
of the group, then nothing needs to be done since in 8.1 these are now the
same object in the same namespace. If a user and group have the same name
in 8.0, and the user is *not* a member of the group, then there is no
equivalent in 8.1 and pg_upgradecluster should stop and ask the user to
rename either the user or the group.
I haven't checked thoroughly, but I suspect that pg_upgradecluster is not
executing the operations on the new database within a single transaction.
Apart from the severe performance penalty (my databases typically contain
gigabytes of 50-byte rows, and even a small test subset took hours to
upgrade on my fastest machine), this allows all kinds of error cases to
proceed through the upgrade uncaught.
-- System Information:
Debian Release: 3.1
APT prefers stable
APT policy: (500, 'stable'), (102, 'testing'), (101, 'unstable')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.13.3-zb5s-s2-nf
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Versions of packages postgresql-common depends on:
ii adduser 3.63 Add and remove users and groups
ii debconf [debconf-2.0] 1.4.30.13 Debian configuration management sy
ii lsb-base 3.0-12 Linux Standard Base 3.0 init scrip
Versions of packages postgresql-common recommends:
ii openssl 0.9.7e-3sarge1 Secure Socket Layer (SSL) binary a
-- debconf information:
* postgresql-common/obsolete-major:
--
To UNSUBSCRIBE, email to debian-bugs-dist-REQUEST@xxxxxxxxxxxxxxxx
with a subject of "unsubscribe". Trouble? Contact listmaster@xxxxxxxxxxxxxxxx
|
|