[Tarantool-patches] [PATCH 07/14] box/txn: rename txn_write to txn_commit_async

Georgy Kirichenko georgy at tarantool.org
Sat Feb 22 23:28:41 MSK 2020


Hi!

Well done but I have a minor remark about some renames you suggest.
So if we would like to talk about synchronous replication then renaming
txn_write to txn_commit seems quite incorrect as there would be two stages
of transaction commit - transaction was written to journal and then 
transaction was completed(with commit or rollback). And the stages should be 
distinguishable.
Obviously it depends on further implementation so I let the final resolution up 
to you.

On Wednesday, February 19, 2020 9:37:06 PM MSK Cyrill Gorcunov wrote:
> Plain txn_write is too general.
> 
> Suggested-by: Konstantin Osipov <kostja.osipov at gmail.com>
> Signed-off-by: Cyrill Gorcunov <gorcunov at gmail.com>
> ---
>  src/box/applier.cc | 2 +-
>  src/box/txn.c      | 4 ++--
>  src/box/txn.h      | 2 +-
>  3 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/src/box/applier.cc b/src/box/applier.cc
> index ae3d281a5..10859a835 100644
> --- a/src/box/applier.cc
> +++ b/src/box/applier.cc
> @@ -805,7 +805,7 @@ applier_apply_tx(struct stailq *rows)
>  	trigger_create(on_commit, applier_txn_commit_cb, NULL, NULL);
>  	txn_on_commit(txn, on_commit);
> 
> -	if (txn_write(txn) < 0)
> +	if (txn_commit_async(txn) < 0)
>  		goto fail;
> 
>  	/* Transaction was sent to journal so promote vclock. */
> diff --git a/src/box/txn.c b/src/box/txn.c
> index 05321e97d..0ad596c1e 100644
> --- a/src/box/txn.c
> +++ b/src/box/txn.c
> @@ -558,7 +558,7 @@ txn_prepare(struct txn *txn)
>  }
> 
>  int
> -txn_write(struct txn *txn)
> +txn_commit_async(struct txn *txn)
>  {
>  	if (txn_prepare(txn) != 0) {
>  		txn_rollback(txn);
> @@ -585,7 +585,7 @@ txn_commit(struct txn *txn)
>  {
>  	txn->fiber = fiber();
> 
> -	if (txn_write(txn) != 0)
> +	if (txn_commit_async(txn) != 0)
>  		return -1;
>  	/*
>  	 * In case of non-yielding journal the transaction could already
> diff --git a/src/box/txn.h b/src/box/txn.h
> index fe13ef5f8..f2e0fa9e7 100644
> --- a/src/box/txn.h
> +++ b/src/box/txn.h
> @@ -302,7 +302,7 @@ txn_rollback(struct txn *txn);
>   * freed.
>   */
>  int
> -txn_write(struct txn *txn);
> +txn_commit_async(struct txn *txn);
> 
>  /**
>   * Most txns don't have triggers, and txn objects

-------------- 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/20200222/84788c34/attachment.sig>


More information about the Tarantool-patches mailing list