Re: Re: [COMMITTERS] pgsql: Correctly align page's images in generic wal API - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Re: [COMMITTERS] pgsql: Correctly align page's images in generic wal API
Date
Msg-id 1146.1463499346@sss.pgh.pa.us
Whole thread Raw
In response to Re: [COMMITTERS] pgsql: Correctly align page's images in generic wal API  (Teodor Sigaev <teodor@sigaev.ru>)
List pgsql-hackers
Teodor Sigaev <teodor@sigaev.ru> writes:
>> Instead of allocating this memory unconditionally for each buffer,
>> wouldn't it be better to set all the page pointers to NULL in
>> GenericXLogStart and allocate memory only once a buffer is registered
>> in GenericXLogRegisterBuffer when finding a free slot? This patch is
>> wasting many cycles.

> GenericXLogRegisterBuffer() could be called in another MemoryContext what
> can be a reason for strange bugs. Right now only a few pages could be
> involved in one round of GenericWal. I don't believe that such allocation
> could be a reason of noticable performance degradation. Although I didn't
> check that.

You could allocate all the pages in one palloc, though, and then just
set the pointers via address arithmetic.
        regards, tom lane



pgsql-hackers by date:

Previous
From: Shay Rojansky
Date:
Subject: Parameters don't work in FETCH NEXT clause?
Next
From: David Steele
Date:
Subject: Re: 10.0