]> 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:47:25 +0000 (18:47 +0300)
commit28c38396eda2d923974b99013b27e89a9093c766
tree1457ec002bbf37dc5c892428916e16b12cc04d10
parent162ae5b9bb6542809453fbe9cfbb6468cb8eb06e
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