Use correctly-sized buffer when zero-filling a WAL file.
I mixed up BLCKSZ and XLOG_BLCKSZ when I changed the way the buffer is allocated a couple of weeks ago. With the default settings, they are both 8k, but they can be changed at compile-time.
This commit is contained in:
parent
969735cf10
commit
8c0cacae25
|
@ -2167,7 +2167,7 @@ XLogFileInit(uint32 log, uint32 seg,
|
|||
{
|
||||
char path[MAXPGPATH];
|
||||
char tmppath[MAXPGPATH];
|
||||
char zbuffer_raw[BLCKSZ + MAXIMUM_ALIGNOF];
|
||||
char zbuffer_raw[XLOG_BLCKSZ + MAXIMUM_ALIGNOF];
|
||||
char *zbuffer;
|
||||
uint32 installed_log;
|
||||
uint32 installed_seg;
|
||||
|
@ -2229,7 +2229,7 @@ XLogFileInit(uint32 log, uint32 seg,
|
|||
* cycles transferring data to the kernel.
|
||||
*/
|
||||
zbuffer = (char *) MAXALIGN(zbuffer_raw);
|
||||
memset(zbuffer, 0, BLCKSZ);
|
||||
memset(zbuffer, 0, XLOG_BLCKSZ);
|
||||
for (nbytes = 0; nbytes < XLogSegSize; nbytes += XLOG_BLCKSZ)
|
||||
{
|
||||
errno = 0;
|
||||
|
|
Loading…
Reference in New Issue