| From: | Kris Jurka <books(at)ejurka(dot)com> |
|---|---|
| To: | VIDAL Cedric <c-vidal(at)jm-bruneau(dot)fr> |
| Cc: | "'pgsql-jdbc(at)postgresql(dot)org'" <pgsql-jdbc(at)postgresql(dot)org> |
| Subject: | Re: Need a performance tip - Statement pooling for server |
| Date: | 2004-11-30 11:37:14 |
| Message-ID: | Pine.BSO.4.56.0411300630250.8244@leary.csoft.net |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-jdbc |
On Tue, 30 Nov 2004, VIDAL Cedric wrote:
> Hi,
>
> On the postgresql jdbc site's todo http://jdbc.postgresql.org/todo.html, it
> is stated that
> "statement pooling to take advantage of server prepared statements" should
> be added.
>
> Is that information up to date ? Is that feature really not supported. If
> yes, does that mean, that using JDBC PreparedStatement(s) with PostgreSQL
> doesn't take avantage of server side statement pooling, and thus has no
> advantage over simple statements.
>
There is a difference between not using server side statements and not
pooling them. Consider a function that did an insert into the database.
public void f(Connection conn, int i) throws SQLException {
PreparedStatement ps = conn.prepareStatement("INSERT INTO t VALUES(?)");
ps.setInt(1,i);
ps.executeUpdate();
ps.close();
}
In this case a prepared statement is created every time the function is
called so no real advantage comes from doing a server side preparation.
Now if the function was written as:
public void f(PreparedStatement ps, int i) throws SQLException {
ps.setInt(1, i);
ps.executeUpdate();
}
Then the prepared statement gets reused and potentially significant gains
can be had from doing server side preparation. The idea behind statement
pooling is to allow a function written in the first form to get the
performance advantages of a function written in the second form. It can
be difficult to create and manage a pool of PreparedStatements to reuse in
your application code, so it would be great if the driver could do that
for you.
Kris Jurka
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Kris Jurka | 2004-11-30 11:41:32 | Re: Bug in JDBC-Driver? |
| Previous Message | Dave Cramer | 2004-11-30 11:32:03 | Re: Bug in JDBC-Driver? |