]> granicus.if.org Git - postgresql/commit
Pad XLogReaderState's per-buffer data_bufsz more aggressively.
authorSimon Riggs <simon@2ndQuadrant.com>
Mon, 27 Nov 2017 09:34:05 +0000 (09:34 +0000)
committerSimon Riggs <simon@2ndQuadrant.com>
Mon, 27 Nov 2017 09:34:05 +0000 (09:34 +0000)
commit59af8d4384ba5ae72986eab7e5cdc514a969aa05
treefc2088f6a1867c3f02a6178577503420c5273f39
parentd5f965c257aed40d515e6b518422ac6e6982c46c
Pad XLogReaderState's per-buffer data_bufsz more aggressively.

Originally, we palloc'd this buffer just barely big enough to hold the
largest xlog backup block seen so far. We now MAXALIGN the palloc size.

The original coding could result in many repeated palloc cycles, in the
worst case where we see a series ofgradually larger xlog records.  We
ameliorate that similarly to 8735978e7aebfbc499843630131c18d1f7346c79
by imposing a minimum buffer size of BLCKSZ.

Discussion: https://postgr.es/m/E1eHa4J-0006hI-Q8@gemulon.postgresql.org
src/backend/access/transam/xlogreader.c