Red Hat Bugzilla – Bug 903487
spacewalk-setup-postgresql fails when using postgresql >= 9.1
Last modified: 2013-03-06 13:34:43 EST
Created attachment 686475 [details]
removes the createland statement from /usr/bin/spacewalk-setup-embedded-postgresql which allows the install to complete successfully
spacewalk-setup fails w/ postgres backend on a fresh Fedora 17 install. The reason is because Postgresql >= 9.1 automatically includes plpsql in the template. See below.
[root@spacewalk01 ~]# spacewalk-setup --disconnected
** Database: Setting up database connection for PostgreSQL backend.
Database "rhnschema" does not exist
** Database: Installing the database:
** Database: This is a long process that is logged in:
** Database: /var/log/rhn/install_db.log
*** Progress: ##
Could not install database.
[root@spacewalk01 ~]# cat /var/log/rhn/install_db.log
Note: Forwarding request to 'systemctl enable postgresql.service'.
Redirecting to /bin/systemctl start postgresql.service
lsof: WARNING: can't stat() fuse.gvfs-fuse-daemon file system /run/user/nick/gvfs
Output information may be incomplete.
createlang: language "plpgsql" is already installed in database "rhnschema"
# rpm -qf /usr/bin/spacewalk-setup-embedded-postgresql
The fix is to remove the 'createlang' statement from /usr/bin/spacewalk-setup-embedded-postgresql. patch is attached...
Thank you for reporting this issue. Merely removing that createlang command would cause the setup to fail on older PostgreSQL versions. I've now added a check for existence of the language in the new database, in Spacewalk master, 2bcd1fdff0ec0183dc102482995a6681586cb4f1.
Marking bug as ON_QA since tonight's build of Spacewalk nightly is a release candidate for Spacewalk 1.9.
Spacewalk 1.9 has been released.