Re: pgsql: Add GUC to enable compression of full page images stored in WAL.

From: Fujii Masao <masao(dot)fujii(at)gmail(dot)com>
To: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
Cc: Andres Freund <andres(at)2ndquadrant(dot)com>, Fujii Masao <fujii(at)postgresql(dot)org>, pgsql-committers <pgsql-committers(at)postgresql(dot)org>
Subject: Re: pgsql: Add GUC to enable compression of full page images stored in WAL.
Date: 2015-03-12 10:13:36
Message-ID: CAHGQGwHtSweb4V5dXa-NCbOV+NhOBwiHVbKaVKMqM=02-j_Q3w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

On Wed, Mar 11, 2015 at 11:30 PM, Michael Paquier
<michael(dot)paquier(at)gmail(dot)com> wrote:
> On Wed, Mar 11, 2015 at 11:18 PM, Andres Freund <andres(at)2ndquadrant(dot)com> wrote:
>> On 2015-03-11 06:54:16 +0000, Fujii Masao wrote:
>>> Add GUC to enable compression of full page images stored in WAL.
>>
>> This triggers a couple warnings here (gcc 4.9 and 5):
>>
>> /home/andres/src/postgresql/src/backend/access/transam/xloginsert.c: In function 'XLogInsert':
>> /home/andres/src/postgresql/src/backend/access/transam/xloginsert.c:670:5: warning: 'cbimg.hole_length' may be used uninitialized in this function [-Wmaybe-uninitialized]
>> memcpy(scratch, &cbimg,
>> ^
>> /home/andres/src/postgresql/src/backend/access/transam/xloginsert.c:494:33: note: 'cbimg.hole_length' was declared here
>> XLogRecordBlockCompressHeader cbimg;
>> ^
>> /home/andres/src/postgresql/src/backend/access/transam/xloginsert.c:668:20: warning: 'hole_length' may be used uninitialized in this function [-Wmaybe-uninitialized]
>> if (hole_length != 0 && is_compressed)
>> ^
>> /home/andres/src/postgresql/src/backend/access/transam/xloginsert.c:497:10: note: 'hole_length' was declared here
>> uint16 hole_length;
>>
>> I've not checked whether they're spurious or not.

Thanks for the report! We can suppress those warnings just by
initializing cbimg.hole_length and hole_length. But I'd like to apply
the attached patch which not only initializes the variable but also
refactors the related code.

Regards,

--
Fujii Masao

Attachment Content-Type Size
bugfix.patch text/x-patch 4.9 KB

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Heikki Linnakangas 2015-03-12 15:29:40 pgsql: Fix memory leaks in GIN index vacuum.
Previous Message Tom Lane 2015-03-12 03:18:09 pgsql: Support flattening of empty-FROM subqueries and one-row VALUES t