]> granicus.if.org Git - postgresql/commit
Improve handling of out-of-memory in libpq.
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Tue, 7 Jul 2015 15:37:45 +0000 (18:37 +0300)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Tue, 7 Jul 2015 15:45:31 +0000 (18:45 +0300)
commit2b189c7ec1ffd1e626484621c515285bf5d0d5e3
treecad6816c10ae5916220c7bd79aa65edd6bd0127d
parent341b877d324b259fc1c81ef9c6dc2ea96d06d1e6
Improve handling of out-of-memory in libpq.

If an allocation fails in the main message handling loop, pqParseInput3
or pqParseInput2, it should not be treated as "not enough data available
yet". Otherwise libpq will wait indefinitely for more data to arrive from
the server, and gets stuck forever.

This isn't a complete fix - getParamDescriptions and getCopyStart still
have the same issue, but it's a step in the right direction.

Michael Paquier and me. Backpatch to all supported versions.
src/interfaces/libpq/fe-protocol2.c
src/interfaces/libpq/fe-protocol3.c