Re: PQexec() hangs on OOM

From: Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>
To: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
Cc: Heikki Linnakangas <hlinnaka(at)iki(dot)fi>, Oleksandr Shulgin <oleksandr(dot)shulgin(at)zalando(dot)de>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Pg Bugs <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: PQexec() hangs on OOM
Date: 2015-09-12 09:11:06
Message-ID: CAA4eK1KbDUBGDxfsJ=MDfJuvG3M78hF=SQmh24t86Kt+=ZBThg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox
Thread:
Lists: pgsql-bugs

On Mon, Sep 7, 2015 at 1:40 PM, Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
wrote:

> On Sat, Sep 5, 2015 at 9:45 PM, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>
> wrote:
>
> Now, to move into the serious things...
>
> + /*
> + * Advance inStart to show that the copy related message has been
> + * processed.
> + */
> + conn->inStart = conn->inCursor;
> This change...
>
> + /* getCopyStart() moves
> inStart itself */
> conn->asyncStatus =
> PGASYNC_COPY_IN;
> - break;
> + continue;
> ... And this change are risky for a backpatch. And they actually
> break the existing replication protocol

Can you please explain how will it break replication protocol?

I have done the required handling for Copy Both mode as well in attached
patch similar to what was done for other Copy modes in previous patch.
Check if you still find it as broken for replication?

I have only kept the changes for COPY modes, so that once we settle on
those, I think similar changes could be done for getParamDescriptions()

With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com

Attachment Content-Type Size
20150912_libpq_oom_v4.patch application/octet-stream 7.0 KB

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message yoonghm 2015-09-13 16:32:51 BUG #13617: ecpg cannot handle boolean field within a structure
Previous Message Amit Kapila 2015-09-12 08:56:51 Re: PQexec() hangs on OOM