Haris Peco <snpe@snpe.co.yu> writes:
> Yes, proccess increase with result from server and diferent is that
> C request less memory - in C we can execute big qyery than Java
> I can't believe that we must complete query in memory, but it is true
> Excuse me
If you look at the implementation of the libpq library you'll see
that it's exactly the same as the java one: the query is done and
then all the rows are retrieved and kept in memory.
If you're able to do it in C it's because C has slightly more
efficient memory handling than Java does. It must also mean that your
machine has just too little memory for your Java app, if I were you
I'd just buy some more RAM as a quick fix to your problem.
Another alternative is to create 2 connections and use a cursor in
one. Or to package your update operations as stored procs operating
over the large results.
Nic