From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | jason(at)supernovasoftware(dot)com |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: information_schema._pg_keypositions() in 8.1??? |
Date: | 2005-12-01 19:24:23 |
Message-ID: | 16008.1133465063@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
"Jason Long" <jason(at)supernovasoftware(dot)com> writes:
> I cannot get automatic schema update to work in 8.1 with hibernate 3.0.5. I
> get the following error every time.
> java.sql.SQLException: ERROR: function information_schema._pg_keypositions()
> does not exist
Hm, it looks like some bright soul at Hibernate decided to depend on an
undocumented internal function :-(
> Is this something I should be looking to fix with Hibernate or PostgreSQL?
Hibernate. As a short term workaround you could manually create the
function using the 8.0 definition, which is
/* This returns the integers from 1 to INDEX_MAX_KEYS/FUNC_MAX_ARGS */
CREATE FUNCTION information_schema._pg_keypositions() RETURNS SETOF integer
LANGUAGE sql
IMMUTABLE
AS 'select g.s
from generate_series(1,current_setting(''max_index_keys'')::int,1)
as g(s)';
Note that one reason this went away in 8.1 is that there no longer is a
hard upper limit to the number of function arguments, so depending on
what Hibernate is expecting it to do, you might have some issues ...
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Scott Marlowe | 2005-12-01 19:25:25 | Re: interval behaviour |
Previous Message | Jason Long | 2005-12-01 19:10:18 | Re: information_schema._pg_keypositions() in 8.1??? |