Skip to content
Snippets Groups Projects
Select Git revision
  • benchmark-tools
  • postgres-lambda
  • master default
  • REL9_4_25
  • REL9_5_20
  • REL9_6_16
  • REL_10_11
  • REL_11_6
  • REL_12_1
  • REL_12_0
  • REL_12_RC1
  • REL_12_BETA4
  • REL9_4_24
  • REL9_5_19
  • REL9_6_15
  • REL_10_10
  • REL_11_5
  • REL_12_BETA3
  • REL9_4_23
  • REL9_5_18
  • REL9_6_14
  • REL_10_9
  • REL_11_4
23 results

logical.c

Blame
    • Andres Freund's avatar
      fc49e24f
      Make WAL segment size configurable at initdb time. · fc49e24f
      Andres Freund authored
      For performance reasons a larger segment size than the default 16MB
      can be useful. A larger segment size has two main benefits: Firstly,
      in setups using archiving, it makes it easier to write scripts that
      can keep up with higher amounts of WAL, secondly, the WAL has to be
      written and synced to disk less frequently.
      
      But at the same time large segment size are disadvantageous for
      smaller databases. So far the segment size had to be configured at
      compile time, often making it unrealistic to choose one fitting to a
      particularly load. Therefore change it to a initdb time setting.
      
      This includes a breaking changes to the xlogreader.h API, which now
      requires the current segment size to be configured.  For that and
      similar reasons a number of binaries had to be taught how to recognize
      the current segment size.
      
      Author: Beena Emerson, editorialized by Andres Freund
      Reviewed-By: Andres Freund, David Steele, Kuntal Ghosh, Michael
          Paquier, Peter Eisentraut, Robert Hass, Tushar Ahuja
      Discussion: https://postgr.es/m/CAOG9ApEAcQ--1ieKbhFzXSQPw_YLmepaa4hNdnY5+ZULpt81Mw@mail.gmail.com
      fc49e24f
      History
      Make WAL segment size configurable at initdb time.
      Andres Freund authored
      For performance reasons a larger segment size than the default 16MB
      can be useful. A larger segment size has two main benefits: Firstly,
      in setups using archiving, it makes it easier to write scripts that
      can keep up with higher amounts of WAL, secondly, the WAL has to be
      written and synced to disk less frequently.
      
      But at the same time large segment size are disadvantageous for
      smaller databases. So far the segment size had to be configured at
      compile time, often making it unrealistic to choose one fitting to a
      particularly load. Therefore change it to a initdb time setting.
      
      This includes a breaking changes to the xlogreader.h API, which now
      requires the current segment size to be configured.  For that and
      similar reasons a number of binaries had to be taught how to recognize
      the current segment size.
      
      Author: Beena Emerson, editorialized by Andres Freund
      Reviewed-By: Andres Freund, David Steele, Kuntal Ghosh, Michael
          Paquier, Peter Eisentraut, Robert Hass, Tushar Ahuja
      Discussion: https://postgr.es/m/CAOG9ApEAcQ--1ieKbhFzXSQPw_YLmepaa4hNdnY5+ZULpt81Mw@mail.gmail.com