From: thhal at mailblocks.com (Thomas Hallgren) Date: Mon, 03 Oct 2005 15:02:04 +0200 Subject: [Pljava-dev] ResultSetProvider/ResultSetHandle problem In-Reply-To: <004801c5c811$c7693fd0$1e03a8c0@fhrbek> References: <004801c5c811$c7693fd0$1e03a8c0@fhrbek> <43412BCC.90707@mailblocks.com> Message-ID: Hi Filip, I've seen this. When I looked more deeply I concluded that it indeed was a PostgreSQL limitation. I guess I now have to revise that :-) So sure, add it to the bug list. Regards, Thomas Hallgren Filip Hrbek wrote: > I have a function returning set of "record", i.e. there is no > information about the target structure to return until it is actually > called. > It works, but if I call such a function several times with different > target structures within one session, I got one of two following errors: > > a) > org.postgresql.pljava.internal.ServerException: query-specified return > row and actual function return row do not match > at org.postgresql.pljava.internal.Portal._fetch(Native Method) > at org.postgresql.pljava.internal.Portal.fetch(Portal.java:79) > at > org.postgresql.pljava.jdbc.SPIResultSet.getTupleTable(SPIResultSet.java:135) > at > org.postgresql.pljava.jdbc.SPIResultSet.peekNext(SPIResultSet.java:157) > at > org.postgresql.pljava.jdbc.SPIResultSet.next(SPIResultSet.java:80) > at > org.postgresql.pljava.internal.ResultSetPicker.assignRowValues(ResultSetPicker.java:31) > <2005-10-03 13:51:16 CEST 25858>ERROR: query-specified return row and > actual function return row do not match > b) > org.postgresql.pljava.internal.ServerException: > java.lang.ArrayIndexOutOfBoundsException: 2 > at org.postgresql.pljava.internal.Portal._fetch(Native Method) > at org.postgresql.pljava.internal.Portal.fetch(Portal.java:79) > at > org.postgresql.pljava.jdbc.SPIResultSet.getTupleTable(SPIResultSet.java:135) > at > org.postgresql.pljava.jdbc.SPIResultSet.peekNext(SPIResultSet.java:157) > at > org.postgresql.pljava.jdbc.SPIResultSet.next(SPIResultSet.java:80) > at > org.postgresql.pljava.internal.ResultSetPicker.assignRowValues(ResultSetPicker.java:31) > <2005-10-03 13:49:43 CEST 25652>ERROR: > java.lang.ArrayIndexOutOfBoundsException: 2 > It seems that something is cached, though it should be replaced by a > new version when called with different target structure. > > Note: plpgsql functions are OK, it seems to be a problem of pljava, > not PostgreSQL. > > Should I write it to the bug list? > > Regards > Filip > > >------------------------------------------------------------------------ > >_______________________________________________ >Pljava-dev mailing list >Pljava-dev at gborg.postgresql.org >http://gborg.postgresql.org/mailman/listinfo/pljava-dev > >