Re: What do people use for connection pooling with PostgreSQL JDBC
От | Dave Cramer |
---|---|
Тема | Re: What do people use for connection pooling with PostgreSQL JDBC |
Дата | |
Msg-id | 491f66a50904070324g19aee516vb5b1922b23450a27@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: What do people use for connection pooling with PostgreSQL JDBC (Hannu Krosing <hannu@2ndQuadrant.com>) |
Ответы |
Re: What do people use for connection pooling with PostgreSQL JDBC
Re: What do people use for connection pooling with PostgreSQL JDBC |
Список | pgsql-jdbc |
On Tue, Apr 7, 2009 at 4:35 AM, Hannu Krosing <hannu@2ndquadrant.com> wrote:
OK, createArrayOf is a relatively new method. So .... you have a few ways around this.
1) don't use it, create your own arrays.
2) fix the dbcp code
3) complain to dbcp people
On Mon, 2009-04-06 at 07:43 -0400, Dave Cramer wrote:I have a sample function, whit takes an array argument
> huh ? What makes you think it doesn't deal with arrays ?
CREATE OR REPLACE FUNCTION arraySum(
multiplier bigint,
valuelist bigint[],
OUT result int
) AS
$$
BEGIN
result = 0;
FOR idx IN array_lower(valuelist, 1)..array_upper(valuelist, 1) LOOP
result = result + multiplier * valuelist[idx];
END LOOP;
RETURN;
END;
$$ LANGUAGE plpgsql SECURITY DEFINER;
When I call this function directly via JDBC or using proxool I get a
result, when doing it via c3p0 or dbcp I get an exception -
Long[] array = { 1L, 2L };
PreparedStatement ps = conn.prepareStatement(
"SELECT * FROM arraySum(?, ?)");
ps.setLong(1, 3L);
ps.setArray(2, conn.createArrayOf("bigint", array));
ps.execute();
OK, createArrayOf is a relatively new method. So .... you have a few ways around this.
1) don't use it, create your own arrays.
2) fix the dbcp code
3) complain to dbcp people
--Hannu Krosing http://www.2ndQuadrant.com
PostgreSQL Scalability and Availability
Services, Consulting and Training
В списке pgsql-jdbc по дате отправления: