Re: increasing the default WAL segment size
Bruce Momjian <bruce@momjian.us>
On Wed, Aug 24, 2016 at 08:52:20PM -0700, Andres Freund wrote: > On 2016-08-24 23:26:51 -0400, Robert Haas wrote: > > On Wed, Aug 24, 2016 at 10:54 PM, Andres Freund <andres@anarazel.de> wrote: > > > and I'm also rather doubtful that it's actually without overhead. > > > > Really? Where do you think the overhead would come from? > > ATM we do a math involving XLOG_BLCKSZ in a bunch of places (including > doing a lot of %). Some of that happens with exclusive lwlocks held, and > some even with a spinlock held IIRC. Making that variable won't be > free. Whether it's actually measurabel - hard to say. I do remember > Heikki fighting hard to simplify some parts of the critical code during > xlog scalability stuff, and that that even involved moving minor amounts > of math out of critical sections. I think Robert made a good case that high-volume servers might want a larger WAL segment size, but as Andres pointed out, there are performance concerns. Those might be minimized by requiring the segment size to be a 2x multiple of 16MB. Another issue is that many users are coming from database products that have significant performance hits in switching WAL files so they might be tempted to set very high segment sizes in inappropriate cases. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + As you are, so once was I. As I am, so you will be. + + Ancient Roman grave inscription +
Commits
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Make WAL segment size configurable at initdb time.
- fc49e24fa69a 11.0 landed
-
Perform only one ReadControlFile() during startup.
- 8356753c212a 11.0 landed
-
Introduce BYTES unit for GUCs.
- 6e7baa322773 11.0 landed
-
Remove useless duplicate inclusions of system header files.
- 9e3755ecb2d0 10.0 cited
-
Refactor other replication commands to use DestRemoteSimple.
- bbd8550bce14 10.0 landed
-
Add a SHOW command to the replication command language.
- d1ecd539477f 10.0 landed
-
Add a new DestReceiver for printing tuples without catalog access.
- a84069d93504 10.0 landed
-
Support fls().
- 4f658dc851a7 9.2.0 cited
-
Extend yesterday's patch making BLCKSZ and RELSEG_SIZE configurable to also
- cf9f6c8d8e9d 8.4.0 cited
-
Commit the reasonably uncontroversial parts of J.R. Nield's PITR patch, to
- c3c09be34b6b 8.0.0 cited
-
XLOG (also known as WAL -:)) Bootstrap/Startup/Shutdown.
- 47937403676d 7.1.1 cited
-
Transaction log manager core code.
- 30659d43eb73 7.1.1 cited