pgsql: Fix out-of-memory error handling in ParameterDescription message

From: Heikki Linnakangas <heikki(dot)linnakangas(at)iki(dot)fi>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Fix out-of-memory error handling in ParameterDescription message
Date: 2015-12-14 16:56:19
Message-ID: E1a8WQ7-0001VD-RJ@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix out-of-memory error handling in ParameterDescription message processing.

If libpq ran out of memory while constructing the result set, it would hang,
waiting for more data from the server, which might never arrive. To fix,
distinguish between out-of-memory error and not-enough-data cases, and give
a proper error message back to the client on OOM.

There are still similar issues in handling COPY start messages, but let's
handle that as a separate patch.

Michael Paquier, Amit Kapila and me. Backpatch to all supported versions.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/7b96bf445a42b1cb2a435854f9825c38253f79a2

Modified Files
--------------
src/interfaces/libpq/fe-protocol3.c | 64 +++++++++++++++++++++++++++++------
1 file changed, 53 insertions(+), 11 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Kevin Grittner 2015-12-14 17:59:29 pgsql: Remove xmlparse(document '') test
Previous Message Robert Haas 2015-12-14 15:21:38 Re: [COMMITTERS] pgsql: pg_rewind: Don't error if the two clusters are already on the sa