Обсуждение: pgsql: Fix multiple bugs and infelicities in pg_rewind.

Поиск
Список
Период
Сортировка

pgsql: Fix multiple bugs and infelicities in pg_rewind.

От
Tom Lane
Дата:
Fix multiple bugs and infelicities in pg_rewind.

Bugs all spotted by Coverity, including wrong realloc() size request
and memory leaks.  Cosmetic improvements by me.

The usage of the global variable "filemap" here is still pretty awful,
but at least I got rid of the gratuitous aliasing in several routines
(which was helping to annoy Coverity, as well as being a bug risk).

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/c67f366fa9f748257861ee233b47b80eb5ffa857

Modified Files
--------------
src/bin/pg_rewind/filemap.c     |   60 +++++++++++++++++++++------------------
src/bin/pg_rewind/filemap.h     |   24 ++++++----------
src/bin/pg_rewind/libpq_fetch.c |    4 +++
src/bin/pg_rewind/pg_rewind.c   |    2 +-
4 files changed, 46 insertions(+), 44 deletions(-)


Re: pgsql: Fix multiple bugs and infelicities in pg_rewind.

От
Michael Paquier
Дата:
On Mon, Mar 30, 2015 at 9:02 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Fix multiple bugs and infelicities in pg_rewind.
>
> Bugs all spotted by Coverity, including wrong realloc() size request
> and memory leaks.  Cosmetic improvements by me.
>
> The usage of the global variable "filemap" here is still pretty awful,
> but at least I got rid of the gratuitous aliasing in several routines
> (which was helping to annoy Coverity, as well as being a bug risk).

Coverity points out that a call to PQclear() in receiveFileChunks of
libpq_fetch.c is missing as the result still leaks resources when
status is PGRES_TUPLES_OK. Please see the patch attached.
--
Michael

Вложения

Re: pgsql: Fix multiple bugs and infelicities in pg_rewind.

От
Heikki Linnakangas
Дата:
On 04/12/2015 11:46 AM, Michael Paquier wrote:
> On Mon, Mar 30, 2015 at 9:02 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> Fix multiple bugs and infelicities in pg_rewind.
>>
>> Bugs all spotted by Coverity, including wrong realloc() size request
>> and memory leaks.  Cosmetic improvements by me.
>>
>> The usage of the global variable "filemap" here is still pretty awful,
>> but at least I got rid of the gratuitous aliasing in several routines
>> (which was helping to annoy Coverity, as well as being a bug risk).
>
> Coverity points out that a call to PQclear() in receiveFileChunks of
> libpq_fetch.c is missing as the result still leaks resources when
> status is PGRES_TUPLES_OK. Please see the patch attached.

Applied, thanks.

- Heikki