4436ac95

Author: Tom Sydney Kerckhove <syd@cs-syd.eu>

Committer: Tom Sydney Kerckhove <NorfairKing@users.noreply.github.com>

Stop waiting for a spread checkpoint when taking a base backup

pg_basebackup waits for a checkpoint, and by default that checkpoint is
spread over the checkpoint interval rather than taken at once. The wait is
proportional to how busy the server is, and a server a standby is taken
from is busy by definition: a suite is running against it.

Asking for the checkpoint immediately is what --checkpoint=fast is for.
This package's own suite goes from 78 seconds to a little over one, and
starting a standby from about 13.5 seconds to about 0.17.

Total

42m19s

Created Started Finished

Time to Start Worker time Duration Time to finish Idle
Config 1m07s 1s 1s 1m09s 1m07s
Eval 1m14s 16s 16s 1m31s 5s
Build 1m30s 1m05s 41m56s 43m27s 40m50s
Suite 1m07s 1m23s 42m19s 43m27s 42m03s

Timeline

Config Eval Build Compressed gap
0s1m20s1m30s31m10s32m30s42m20s42m30s42m40s42m50s43m20s