From: | David Wall <d(dot)wall(at)computer(dot)org> |
---|---|
To: | pgsql-jdbc(at)postgresql(dot)org |
Subject: | Re: Limit vs setMaxRows issue |
Date: | 2006-06-22 16:36:33 |
Message-ID: | 449AC711.6050401@computer.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
What about the setFetchSize method? My impression is that using
setFetchSize along with setMaxRows would do the trick on the back end as
it resulted in the cursor mechanism that didn't retrieve the complete
result set. Is that not the case in PG 8.1 (at least with the few
caveats listed at http://jdbc.postgresql.org/documentation/81/query.html)?
David
> It's not a bug. setMaxRows() is essentially a hint, there's certainly
> no requirement that the driver will go off and add LIMIT clauses to
> your query, the minimal implementation won't change query execution at
> all and will just limit rows coming back out of the ResultSet.. It
> might be nice to add LIMIT but that would require the driver to parse
> query strings which gets very complicated and isn't going to catch all
> the cases anyway. You'll be getting at least some improvement with the
> existing driver because the whole resultset isn't being transferred
> and processed, even if the plan is still assuming you will grab all
> the data.
>
> If your queries need a LIMIT clause to get decent performance then
> your safest bet is to add a LIMIT clause yourself. You can keep the
> setMaxRows() as well if you like..
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2006-06-22 16:55:09 | Re: Binary tx format for an array? |
Previous Message | Joost Kraaijeveld | 2006-06-22 16:28:43 | Re: [JDBC] How to notify JBoss J2EE application in a |