From: | Oliver Jowett <oliver(at)opencloud(dot)com> |
---|---|
To: | Brett Henderson <brett(at)bretth(dot)com> |
Cc: | pgsql-jdbc(at)postgresql(dot)org |
Subject: | Re: Prepared Statement Query Planning |
Date: | 2009-08-29 08:55:33 |
Message-ID: | 4A98ED05.6090302@opencloud.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
Brett Henderson wrote:
> The full JDBC trace with loglevel=2 is below. Is it possible to tell
> whether server side prepared statements are being used from this? Note
> that this has been obtained from a windows laptop running PostgreSQL
> 8.3.5, but the real problem is occurring on an Ubuntu Linux server
> running PostgreSQL 8.3.7. The same JDBC driver is being used across the
> board.
> 17:48:46.443 (1) FE=> Parse(stmt=S_2,query="SELECT e.id, e.version,
> e.timestamp, e.visible, u.data_public, u.id AS user_id, u.display_name,
> e.changeset_id, e.latitude, e.longitude FROM nodes e LEFT OUTER JOIN
> changesets c ON e.changeset_id = c.id LEFT OUTER JOIN users u ON
> c.user_id = u.id WHERE e.timestamp > $1 AND e.timestamp <= $2 ORDER BY
> e.id, e.version",oids={0,0})
> 17:48:46.444 (1) FE=> Describe(statement=S_2)
> 17:48:46.444 (1) FE=> Bind(stmt=S_2,portal=C_3,$1=<1970-01-01
> 10:00:00.000000 +10:00:00>,$2=<2009-08-28 17:48:45.932000 +10:00:00>)
> 17:48:46.445 (1) FE=> Execute(portal=C_3,limit=10000)
> 17:48:46.445 (1) FE=> Sync
This is using a named statement (S_2 is the name)
It looks like you're using setFetchSize(). That forces use of a named
statement regardless of prepareThreshold (we have to keep the statement
and corresponding portal alive so we can do subsequent fetches, even if
there are some other intervening queries, so we can't use the unnamed
statement)
-O
From | Date | Subject | |
---|---|---|---|
Next Message | Mario Splivalo | 2009-08-29 11:18:32 | Re: Inserting 'large' amounts of data |
Previous Message | Brett Henderson | 2009-08-29 07:51:00 | Re: Prepared Statement Query Planning |