[tarantool-patches] Re: [PATCH] Raise an error if remote transaction produces non-local changes

Георгий Кириченко georgy at tarantool.org
Wed Mar 20 23:30:00 MSK 2019


On Wednesday, March 20, 2019 6:40:02 PM MSK Konstantin Osipov wrote:
> * Georgy Kirichenko <georgy at tarantool.org> [19/03/20 13:23]:
> > +	if (txn->n_remote_rows > 0 && stmt->row->replica_id == 0 &&
> > +	    stmt->space->def->opts.group_id != GROUP_LOCAL) {
> > +		diag_set(ClientError, ER_UNSUPPORTED,
> > +			 "transaction", "mixing local and remote changes");
> > +		goto fail;
> > +	}
> 
> Would it be possible to move this check to the applier so that it
> does not affect the main scenario?

I think it would be ugly because in that case applier should deeply invade 
into the txn. Also there is a technical restriction - at this point applier 
has no chance to do anything after operation is applied in case of autocommit 
and I think it is really a txn scope of responsibility.

If you wish I could do a little investigation whether there exists a 
performance degradation or not.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: This is a digitally signed message part.
URL: <https://lists.tarantool.org/pipermail/tarantool-patches/attachments/20190320/9f47c671/attachment.sig>


More information about the Tarantool-patches mailing list