[Tarantool-patches] [PATCH] vinyl: unthrottle scheduler on checkpoint

Nikita Pettik korablev at tarantool.org
Mon Apr 27 18:52:04 MSK 2020


On 27 Apr 18:48, Konstantin Osipov wrote:
> * Nikita Pettik <korablev at tarantool.org> [20/04/27 18:40]:
> > > > > > Checkpoint daemon uses directly box.snapshot(), so now we can't tell
> > > > > > whether checkpoint is launched manually or automatically. To differ
> > > > > > these scenarious we can make checkpoint daemon call sort of
> > > > > > box.__scheduled_snapshot() (which won't be part of public API ofc).
> > > > > > Then we will be able to pass boolean parameter to begin_checkpoint()
> > > > > > indicating manual/auto mode. Or simply close issue as wont fix :)
> > > > > 
> > > > > Uhm, no, checkpoint daemon uses gc_do_checkpoint() and it doesn't
> > > > > use box.snapshot().
> > > > 
> > > > Seems we are looking at different branches: 1.10 still uses checkpoint
> > > > daemon written in Lua. If this patch should be pushed to master branch
> > > > only, then I guess it would be easy to patch engine_begin_checkpoint()
> > > > and make it accept argument responsible for checkpoint mode (scheduled
> > > > or manual).
> > > 
> > > Why do you need to fix 1.10?
> > 
> > For instance, it would make test backporting process easier.
> > Otherwise we will get different behaviours while using
> > ERRINJ_VY_SCHED_TIMEOUT error injection.
> 
> Well, I guess then 1.10 will require a separate fix. 
> 
> I don't see why you even consider a possibility of unthrottling
> the scheduling in all cases in 1.10. It's a stable/lts release,
> and what you're trying to do is not any customer's problem, you
> simply shouldn't risk breaking ppl for no good reason.

Ok, then I'm going to send v2 of this patch affected only 2.5
and unthrottling scheduler only in case of manual launched
checkpoint process.

> 
> -- 
> Konstantin Osipov, Moscow, Russia
> https://scylladb.com


More information about the Tarantool-patches mailing list