[Tarantool-patches] [PATCH 3/3] box/applier: fix nil dereference in applier rollback

Konstantin Osipov kostja.osipov at gmail.com
Wed Feb 5 13:45:24 MSK 2020


* Cyrill Gorcunov <gorcunov at gmail.com> [20/02/05 13:42]:
> On Wed, Feb 05, 2020 at 12:50:59PM +0300, Konstantin Osipov wrote:
> > * Cyrill Gorcunov <gorcunov at gmail.com> [20/02/05 11:21]:
> > > The reporter pointed somwhere into a deep dive into vynil, the
> > > problem is that its been runnin release build first time it
> > > triggered. Actually it doesn't matter where exactly it failed,
> > > the only important thing is that it failed the way we need
> > > to run a rollback procedure.
> > 
> > You can easily get and reconstruct a transaction conflict in
> > engine_prepare() in applier if you run active-active and vinyl.
> 
> Could you please clarify the "active-active" term here? I don't
> get it yet.

Two replicas, both accepting changes on the same data set.

> > I'd put the injection in engine_prepare() of vinyl then, to be
> > closer to the real world scenario.
> 
> I could but you know I think we should step away from backend engine
> and assume that error may happen in any engine (memtx, vynil or whatever
> else could be here in future). This way allows us to cover any possible
> error. Though I don't have a strong opinion here, since you prefer
> vynil error I'll try to implement it.

txn_prepare() never throws in memtx.

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


More information about the Tarantool-patches mailing list