
On Aug 14, 2012, at 12:58 PM, Yair Zaslavsky wrote:
On 08/14/2012 07:12 PM, Ian Levesque wrote:
Hello,
I'm trying to install oVirt 3.1, using an external postgres db running on RHEL6 (postgresql-server-8.4.12-1.el6_2.x86_64). I'm getting the following error during engine-setup:
Error: uuid-ossp extension is not loaded into the DB. Verify with the DB admin that uuid-ossp extension is loaded into newly created databases and rerun the setup.
The database log indicates:
ERROR: function uuid_generate_v1() does not exist at character 8 HINT: No function matches the given name and argument types. You might need to add explicit type casts. STATEMENT: SELECT uuid_generate_v1();
I did some searching, and it appeared that I might need to add some postgres-contrib functions:
psql -U postgres -d engine -f /usr/share/pgsql/contrib/uuid-ossp.sql
Unfortunately, it appears that the install script wants to create a temporary database and expects these functions to exist on its newly-created temp DB, not an already-existing database.
Indeed this step is required for postgresql 8.4.x (you have to install this script). I did not encounter an issue with this script. I ran
psql -U postgres -d engine -f /usr/share/pgsql/contrib/uuid-ossp.sql
And the script execution went smoothly (this scripts runs instructions of create or replace function so it is re-entrant). Can you please elaborate more on the error you're getting?
Here's what the install log tells me: 2012-08-14 11:56:12::INFO::engine_validators::425::root:: Successfully created temp database on server cmcd-web. 2012-08-14 11:56:12::INFO::engine_validators::443::root:: Checking that uuid extension is loaded by default on the remote server 2012-08-14 11:56:12::DEBUG::common_utils::350::root:: running sql query 'SELECT uuid_generate_v1();' on db server: 'cmcd-web'. 2012-08-14 11:56:12::DEBUG::common_utils::286::root:: cmd = /usr/bin/psql -h cmcd-web -p 5432 -U ovirt -d ovirt_engine_test -c "SELECT uuid_generate_v1();" 2012-08-14 11:56:12::DEBUG::common_utils::291::root:: output = 2012-08-14 11:56:12::DEBUG::common_utils::292::root:: stderr = ERROR: function uuid_generate_v1() does not exist So, the installer is trying to create a database "ovirt_engine_test" and succeeding. But until you run `psql -U postgres -d <database_name> -f /usr/share/pgsql/contrib/uuid-ossp.sql`, the function uuid_generate_v1() won't be available. Therefore, the temporary database the installer is using to determine compatibility fails. Ian