From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Mon, 29 Oct 2018 23:45:26 +0300 From: Konstantin Osipov Subject: Re: [PATCH] replication: keep header when request is modified by before_replace Message-ID: <20181029204526.GG7766@chai> References: <5bc2923bc7e1a1cecabf55d101b51c3c6a0e62b9.1540828363.git.vdavydov.dev@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <5bc2923bc7e1a1cecabf55d101b51c3c6a0e62b9.1540828363.git.vdavydov.dev@gmail.com> To: Vladimir Davydov Cc: tarantool-patches@freelists.org List-ID: * Vladimir Davydov [18/10/29 20:25]: > When space.before_replace trigger modifies the result of a remote > operation, we clear the request header so that it gets rebuilt on > commit. This is incorrect, because as a result we don't bump the > master's component of the replica's vclock, which leads to the request > being applied again when the replica reconnects. The issue manifests > itself in sporadic replication/before_replace test failures. > > Fix it by updating the request header rather than clearing it so that > replica id and lsn get preserved. > > Closes #3722 OK to push. > --- > https://github.com/tarantool/tarantool/issues/3722 > https://github.com/tarantool/tarantool/commits/dv/gh-3722-fix-before-replace-replication > -- Konstantin Osipov, Moscow, Russia, +7 903 626 22 32 http://tarantool.io - www.twitter.com/kostja_osipov