[Tarantool-patches] [PATCH 1/1] txn: don't trust group id in remote request header

Kirill Yukhin kyukhin at tarantool.org
Tue Jan 21 15:39:30 MSK 2020


Hello,

On 15 янв 22:24, Vladislav Shpilevoy wrote:
> Transaction adds a redo log for each statement. The log is an xrow
> header. Some requests don't have a header (local requests), some
> do (from remote client, from replication).
> 
> When a request had a header, it was written as is to WAL. But
> requests from remote client have an xrow header, however barely
> filled. Most of its fields are default values, usually 0.
> Including group id. Indeed, remote clients should not care about
> setting such deep system fields.
> 
> That led to a problem when a space had group id local (!= 0), but
> it was ignored because in a request header from a remote client
> the group id was default (== 0). On the summary, it was possible
> to force Tarantool to replicate a replica-local space.
> 
> Now group id setting is server-authoritative. Box always sets it
> regardless of what is present in an xrow header received from a
> client.
> 
> Thanks Kostja Osipov (@kostja) for the diagnostics and the
> solution.
> 
> Closes #4729

I've checked your patch into 2.2, 2.3 and master.

--
Regards, Kirill Yukhin


More information about the Tarantool-patches mailing list