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