Re: increasing the default WAL segment size

David Steele <david@pgmasters.net>

From: David Steele <david@pgmasters.net>
To: Tom Lane <tgl@sss.pgh.pa.us>, Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
Cc: Robert Haas <robertmhaas@gmail.com>, Beena Emerson <memissemerson@gmail.com>, tushar <tushar.ahuja@enterprisedb.com>, Prabhat Sahu <prabhat.sahu@enterprisedb.com>, Ashutosh Sharma <ashu.coek88@gmail.com>, Jim Nasby <Jim.Nasby@bluetreble.com>, Kuntal Ghosh <kuntalghosh.2007@gmail.com>, Andres Freund <andres@anarazel.de>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2017-03-19T16:15:37Z
Lists: pgsql-hackers

On 3/17/17 4:56 PM, Tom Lane wrote:
> Peter Eisentraut <peter.eisentraut@2ndquadrant.com> writes:
>> On 3/17/17 16:20, Peter Eisentraut wrote:
>>> I think we would have to extend restore_command with an additional
>>> placeholder that communicates the segment size, and add a new pg_standby
>>> option to accept that size somehow.  And specifying the size would have
>>> to be mandatory, for complete robustness.  Urgh.
>
>> Another way would be to name the WAL files in a more self-describing
>> way.  For example, instead of
>
> Actually, if you're content with having tools obtain this info by
> examining the WAL files, we shouldn't need to muck with the WAL naming
> convention (which seems like it would be a horrid mess, anyway --- too
> much outside code knows that).  Tools could get the segment size out of
> XLogLongPageHeaderData.xlp_seg_size in the first page of the segment.
>
> 			regards, tom lane

+1

-- 
-David
david@pgmasters.net


Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Make WAL segment size configurable at initdb time.

  2. Perform only one ReadControlFile() during startup.

  3. Introduce BYTES unit for GUCs.

  4. Remove useless duplicate inclusions of system header files.

  5. Refactor other replication commands to use DestRemoteSimple.

  6. Add a SHOW command to the replication command language.

  7. Add a new DestReceiver for printing tuples without catalog access.

  8. Support fls().

  9. Extend yesterday's patch making BLCKSZ and RELSEG_SIZE configurable to also

  10. Commit the reasonably uncontroversial parts of J.R. Nield's PITR patch, to

  11. XLOG (also known as WAL -:)) Bootstrap/Startup/Shutdown.

  12. Transaction log manager core code.