Tarantool development patches archive
 help / color / mirror / Atom feed
From: Konstantin Osipov <kostja@tarantool.org>
To: tarantool-patches@freelists.org
Cc: Georgy Kirichenko <georgy@tarantool.org>
Subject: [tarantool-patches] Re: [PATCH v3 1/2] Write rows without a lsn to the transaction tail
Date: Mon, 11 Mar 2019 12:59:26 +0300	[thread overview]
Message-ID: <20190311095926.GA9866@chai> (raw)
In-Reply-To: <48e024c9ada966ce68447a7cf24c201b1ebaf27b.1552248901.git.georgy@tarantool.org>

* Georgy Kirichenko <georgy@tarantool.org> [19/03/11 09:55]:
> Form a separate transaction with local changes in case of replication.
> This is important because we should be able to replicate such changes
> (e.g. made within an on_replace trigger) back. In the opposite case
> local changes will be incorporated into originating transaction and
> would be skipped by the originator replica.

I wonder will we possibly have some recovery issues, since in fact
we're performing a reordering of execution here? 

Imagine local and remote statements change the same set of rows.
During initial execution these changes are intermixed, during
recovery they are serialized. 

It seems we clearly have a problem here. We can either open a bug,
support multiple txn ids in the same stream, support multiple
server ids in the same transaction, ban triggers in
multi-statement transaction?

Can we attribute local changes to the same server id? We don't
have to replicate them back - this is a gray zone and we can do it
in any way we want.


-- 
Konstantin Osipov, Moscow, Russia, +7 903 626 22 32
http://tarantool.io - www.twitter.com/kostja_osipov

  parent reply	other threads:[~2019-03-11  9:59 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-10 20:21 [tarantool-patches] [PATCH v3 0/2] Transaction boundaries for applier Georgy Kirichenko
2019-03-10 20:21 ` [tarantool-patches] [PATCH] Don't free fiber gc on while txn_rollback Georgy Kirichenko
2019-03-11  8:12   ` [tarantool-patches] " Konstantin Osipov
2019-03-10 20:21 ` [tarantool-patches] [PATCH v3 1/2] Write rows without a lsn to the transaction tail Georgy Kirichenko
2019-03-11  8:14   ` [tarantool-patches] " Konstantin Osipov
2019-03-11  8:40   ` [tarantool-patches] " Vladimir Davydov
2019-03-11  9:59   ` Konstantin Osipov [this message]
2019-03-11 10:54     ` [tarantool-patches] " Georgy Kirichenko
2019-03-11 14:04       ` Konstantin Osipov
2019-03-11 19:52         ` Георгий Кириченко
2019-03-10 20:21 ` [tarantool-patches] [PATCH v3 2/2] Transaction support for applier Georgy Kirichenko
2019-03-11  8:18   ` [tarantool-patches] " Konstantin Osipov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190311095926.GA9866@chai \
    --to=kostja@tarantool.org \
    --cc=georgy@tarantool.org \
    --cc=tarantool-patches@freelists.org \
    --subject='[tarantool-patches] Re: [PATCH v3 1/2] Write rows without a lsn to the transaction tail' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox