On Thu, Dec 18, 2014 at 7:31 PM, Rahila Syed <rahilasyed90@gmail.com> wrote:
>>Isn't it better to allocate the memory for compression_scratch in
>>InitXLogInsert()
>>like hdr_scratch?
>
> I think making compression_scratch a statically allocated global variable
> is the result of following discussion earlier,
>
> http://www.postgresql.org/message-id/CA+TgmoazNBuwnLS4bpwyqgqteEznOAvy7KWdBm0A2-tBARn_aQ@mail.gmail.com
/* * Permanently allocate readBuf. We do it this way, rather than just * making a static array, for two
reasons:(1) no need to waste the * storage in most instantiations of the backend; (2) a static char array * isn't
guaranteedto have any particular alignment, whereas palloc() * will provide MAXALIGN'd storage. */
The above source code comment in XLogReaderAllocate() makes me think that
it's better to avoid using a static array. The point (1) seems less important in
this case because most processes need the buffer for WAL compression,
though.
Regards,
--
Fujii Masao