Re: increasing the default WAL segment size
Beena Emerson <memissemerson@gmail.com>
Hello,
On Tue, Jan 3, 2017 at 5:46 PM, Michael Paquier <michael.paquier@gmail.com>
wrote:
> On Tue, Jan 3, 2017 at 6:23 AM, Jim Nasby <Jim.Nasby@bluetreble.com>
> wrote:
> > + /* Check if wal_segment_size is in the power of 2 */
> > + for (i = 0;; i++, pow2 = pow(2, i))
> > + if (pow2 >= wal_segment_size)
> > + break;
> > +
> > + if (wal_segment_size != 1 && pow2 > wal_segment_size)
> > + {
> > + fprintf(stderr, _("%s: WAL segment size must be
> in the power of 2\n"), progname);
> > + exit(1);
> > + }
>
> I recall taht pow(x, 2) and x * x result usually in the same assembly
> code, but pow() can never be more optimal than a simple
> multiplication. So I'd think that it is wiser to avoid it in this code
> path. Documentation is missing for the new replication command
> SHOW_WAL_SEG.
As mentioned earlier, documents are not fully updated.
> Actually, why not just having an equivalent of the SQL
> command and be able to query parameter values?
>
This patch only needed the wal_segment_size and hence I made this specific
command.
How often and why would we need other parameter values in the replication
connection?
Making it a more general command to fetch any parameter can be a separate
topic. If it gets consensus, maybe it could be done and used here.
Thank you,
Beena Emerson
Have a Great Day!
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