[PATCH v2] box: enable WAL before making initial checkpoint
vdavydov.dev at gmail.com
Mon Feb 11 17:10:59 MSK 2019
On Mon, Feb 11, 2019 at 03:41:56PM +0300, Konstantin Osipov wrote:
> * Vladimir Davydov <vdavydov.dev at gmail.com> [19/02/11 15:34]:
> > While a replica is bootstrapped from a remote master, vinyl engine
> > may need to perform compaction, which means that it may write to
> > the _vinyl_deferred_delete system space. Compaction proceeds fully
> > asynchronously, i.e. a write may occur after the join stage is
> > complete, but before the WAL is initialized, in which case the new
> > replica will crash. To make sure a race like that won't happen, let's
> > setup WAL before making the initial checkpoint. The WAL writer is now
> > initialized right before starting the WAL thread and so we don't need
> > to split WAL struct into the thread and the writer anymore.
> > Closes #3968
> OK to push.
Pushed to 2.1 and 1.10.
More information about the Tarantool-patches