Re: java.lang.OutOfMemoryError: GC overhead limit exceeded

From: Christophe combet <chrisc_pro(at)yahoo(dot)fr>
To: Jorge Solórzano <jorsol(at)gmail(dot)com>
Cc: Dave Cramer <davecramer(at)postgres(dot)rocks>, Vladimir Sitnikov <sitnikov(dot)vladimir(at)gmail(dot)com>, pgsql-jdbc(at)lists(dot)postgresql(dot)org
Subject: Re: java.lang.OutOfMemoryError: GC overhead limit exceeded
Date: 2020-07-23 15:41:40
Message-ID: 1715622817.9240482.1595518900550@mail.yahoo.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Dear Jorge,
Thank you for the explanation and the pointer to the doc.
Indeed, the autocommit=false + fetchSize combo is working. I did a mistake when trying the first time as suggested by Vladimir: I used createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY) which are not the good parameters to be used (bad copy/paste).
With createStatement()+fetchSize+autocommit=false the exception disappeared.
Thank you very much.
Le jeudi 23 juillet 2020 à 16:31:06 UTC+2, Jorge Solórzano <jorsol(at)gmail(dot)com> a écrit :

The only change that could affect between 42.2.10 (which works based
on your first message), and 42.2.11+ is the introduction of the tuple
abstraction.

The autocommit=false + fetchSize combo should help with large tables:
https://jdbc.postgresql.org/documentation/head/query.html#fetchsize-example

On Thu, Jul 23, 2020 at 4:19 PM Christophe combet <chrisc_pro(at)yahoo(dot)fr> wrote:
>
> Dear Dave,
>
> The table definition is:
>
> CREATE TABLE mytable (
>    column1 character varying(14) NOT NULL,
>    column2 integer NOT NULL,
>    column3 bytea NOT NULL
> );
>
> ALTER TABLE ONLY mytable
>    ADD CONSTRAINT mytable_pkey PRIMARY KEY (column1);
>
> Column column3 contains zipped data (BLOB and toast table).
>
> The full dump of the table (pg_dump as SQL text) is 24GB.
>
> Thanks.
> Le jeudi 23 juillet 2020 à 15:24:54 UTC+2, Dave Cramer <davecramer(at)postgres(dot)rocks> a écrit :
>
>
>
>
> On Thu, 23 Jul 2020 at 09:21, Christophe combet <chrisc_pro(at)yahoo(dot)fr> wrote:
>
>
> autocommit=false & fetchSize=100 or 10000 : same exception.
>
> 42.2.10 still running.
>
>
> Is there a very large column in there
>
>
> Dave Cramer
> www.postgres.rocks
>
>
>
>
>
> Le jeudi 23 juillet 2020 à 14:30:56 UTC+2, Christophe combet <chrisc_pro(at)yahoo(dot)fr> a écrit :
>
>
>
> Thank you for pointing the link between auto commit an buffering.
>
> autocommit=false: same exception.
>
> We try fetchSize.
>
> Thanks.
> Le jeudi 23 juillet 2020 à 13:47:14 UTC+2, Vladimir Sitnikov <sitnikov(dot)vladimir(at)gmail(dot)com> a écrit :
>
>
> >can you try switching to autocommit=false?
>
> + you probably need to configure fetchSize as well.
>
> Vladimir
>

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Christophe combet 2020-07-23 15:53:44 Re: java.lang.OutOfMemoryError: GC overhead limit exceeded
Previous Message Christophe combet 2020-07-23 15:36:50 Re: java.lang.OutOfMemoryError: GC overhead limit exceeded