Tarantool development patches archive
 help / color / mirror / Atom feed
From: Vladislav Shpilevoy <v.shpilevoy@tarantool.org>
To: Serge Petrenko <sergepetrenko@tarantool.org>,
	sergos@tarantool.org, gorcunov@gmail.com
Cc: tarantool-patches@dev.tarantool.org
Subject: Re: [Tarantool-patches] [PATCH 0/8] wait for lsn and confirm
Date: Mon, 22 Jun 2020 23:51:34 +0200	[thread overview]
Message-ID: <2ab8dc76-ae34-0074-40f9-a044f6230562@tarantool.org> (raw)
In-Reply-To: <cover.1591701695.git.sergepetrenko@tarantool.org>

I've got an assertion fail on this test:

Instance 1:

box.cfg{
    listen = 3313,
    replication = {'localhost:3313', 'localhost:3314'},
    replication_timeout = 20,
    replication_synchro_quorum = 2,
    replication_synchro_timeout = 100,
}
box.schema.user.grant('guest', 'super')
s = box.schema.create_space('test', {is_sync = true})
pk = s:create_index('pk')
s:replace{1}


Instance 2:

box.cfg{
    listen = 3314,
    replication = {'localhost:3313', 'localhost:3314'},
    replication_timeout = 20,
    replication_synchro_quorum = 2,
    replication_synchro_timeout = 100,
}
box.schema.user.grant('guest', 'super')

The first instance crashes like this:

(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
  * frame #0: 0x00007fff784192c2 libsystem_kernel.dylib`__pthread_kill + 10
    frame #1: 0x00007fff784d4bf1 libsystem_pthread.dylib`pthread_kill + 284
    frame #2: 0x00007fff783836a6 libsystem_c.dylib`abort + 127
    frame #3: 0x00007fff7834c20d libsystem_c.dylib`__assert_rtn + 324
    frame #4: 0x0000000100469242 tarantool`vclock_follow(vclock=0x00000001005f8010, replica_id=1, lsn=0) at vclock.c:46:2
    frame #5: 0x00000001000fac50 tarantool`txn_limbo_ack(limbo=0x00000001005f7ff8, replica_id=1, lsn=0) at txn_limbo.c:287:2
    frame #6: 0x000000010012c2ee tarantool`tx_status_update(msg=0x000000010e0022f8) at relay.cc:411:3
    frame #7: 0x000000010024da48 tarantool`cmsg_deliver(msg=0x000000010e0022f8) at cbus.c:375:2
    frame #8: 0x000000010024fa39 tarantool`fiber_pool_f(ap=0x00000001040015e8) at fiber_pool.c:64:3
    frame #9: 0x000000010000672a tarantool`fiber_cxx_invoke(f=(tarantool`fiber_pool_f at fiber_pool.c:38), ap=0x00000001040015e8)(__va_list_tag*), __va_list_tag*) at fiber.h:782:10
    frame #10: 0x0000000100244acb tarantool`fiber_loop(data=0x0000000000000000) at fiber.c:869:18
    frame #11: 0x00000001004c2e77 tarantool`coro_init at coro.c:110:3
(lldb) f 5
frame #5: 0x00000001000fac50 tarantool`txn_limbo_ack(limbo=0x00000001005f7ff8, replica_id=1, lsn=0) at txn_limbo.c:287:2
   284 			return;
   285 		assert(limbo->instance_id != REPLICA_ID_NIL);
   286 		int64_t prev_lsn = vclock_get(&limbo->vclock, replica_id);
-> 287 		vclock_follow(&limbo->vclock, replica_id, lsn);
   288 		struct txn_limbo_entry *e;
   289 		struct txn_limbo_entry *last_quorum = NULL;
   290 		rlist_foreach_entry(e, &limbo->queue, in_queue) {

Second instance has replica_id 1.

      parent reply	other threads:[~2020-06-22 21:51 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-09 12:20 Serge Petrenko
2020-06-09 12:20 ` [Tarantool-patches] [PATCH 1/8] replication: introduce space.is_sync option Serge Petrenko
2020-06-10 23:51   ` Vladislav Shpilevoy
2020-06-18 22:27     ` Leonid Vasiliev
2020-06-21 16:24       ` Vladislav Shpilevoy
2020-06-09 12:20 ` [Tarantool-patches] [PATCH 2/8] replication: introduce replication_sync_quorum cfg Serge Petrenko
2020-06-10 23:51   ` Vladislav Shpilevoy
2020-06-15 23:05   ` Vladislav Shpilevoy
2020-06-18 22:54     ` Leonid Vasiliev
2020-06-19 17:45     ` Serge Petrenko
2020-06-21 16:25       ` Vladislav Shpilevoy
2020-06-09 12:20 ` [Tarantool-patches] [PATCH 3/8] txn: add TXN_WAIT_ACK flag Serge Petrenko
2020-06-18 23:12   ` Leonid Vasiliev
2020-06-21 16:25     ` Vladislav Shpilevoy
2020-06-22  9:44       ` Serge Petrenko
2020-06-23 22:13         ` Vladislav Shpilevoy
2020-06-09 12:20 ` [Tarantool-patches] [PATCH 4/8] replication: make sync transactions wait quorum Serge Petrenko
2020-06-10 23:51   ` Vladislav Shpilevoy
2020-06-11 14:57   ` Vladislav Shpilevoy
2020-06-15 23:05     ` Vladislav Shpilevoy
2020-06-19 12:39   ` Leonid Vasiliev
2020-06-25 21:48   ` Vladislav Shpilevoy
2020-06-09 12:20 ` [Tarantool-patches] [PATCH 5/8] txn_limbo: follow-up fixes Serge Petrenko
2020-06-10 23:51   ` Vladislav Shpilevoy
2020-06-11  8:46     ` Serge Petrenko
2020-06-11 13:01       ` Vladislav Shpilevoy
2020-06-09 12:20 ` [Tarantool-patches] [PATCH 6/8] txn_limbo: fix instance id assignment Serge Petrenko
2020-06-10 23:51   ` Vladislav Shpilevoy
2020-06-09 12:20 ` [Tarantool-patches] [PATCH 7/8] xrow: introduce CONFIRM entry Serge Petrenko
2020-06-19 15:18   ` Leonid Vasiliev
2020-06-22 10:14     ` Serge Petrenko
2020-06-23  8:33   ` Serge Petrenko
2020-06-09 12:20 ` [Tarantool-patches] [PATCH 8/8] replication: write and read CONFIRM entries Serge Petrenko
2020-06-10 23:51   ` Vladislav Shpilevoy
2020-06-11  8:56     ` Serge Petrenko
2020-06-11 13:04       ` Vladislav Shpilevoy
2020-06-11 14:57   ` Vladislav Shpilevoy
2020-06-15 23:05     ` Vladislav Shpilevoy
2020-06-18 11:32       ` Leonid Vasiliev
2020-06-18 21:49         ` Vladislav Shpilevoy
2020-06-19 17:48         ` Serge Petrenko
2020-06-19 17:50   ` Serge Petrenko
2020-06-23  8:35     ` Serge Petrenko
2020-06-20 15:06   ` Leonid Vasiliev
2020-06-22 10:34     ` Serge Petrenko
2020-06-23  8:34   ` Serge Petrenko
2020-06-25 22:04   ` Vladislav Shpilevoy
2020-06-25 22:31     ` Vladislav Shpilevoy
2020-06-26 10:58       ` Serge Petrenko
2020-06-09 12:53 ` [Tarantool-patches] [PATCH 0/2] A few fixes for building Cyrill Gorcunov
2020-06-09 12:53 ` [Tarantool-patches] [PATCH 1/2] box/applier: fix typo Cyrill Gorcunov
2020-06-10  9:18   ` Sergey Ostanevich
2020-06-09 12:53 ` [Tarantool-patches] [PATCH 2/2] box: use tnt_raise for quorum check Cyrill Gorcunov
2020-06-10  9:17   ` Sergey Ostanevich
2020-06-10 10:45   ` Serge Petrenko
2020-06-22 21:51 ` Vladislav Shpilevoy [this message]

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=2ab8dc76-ae34-0074-40f9-a044f6230562@tarantool.org \
    --to=v.shpilevoy@tarantool.org \
    --cc=gorcunov@gmail.com \
    --cc=sergepetrenko@tarantool.org \
    --cc=sergos@tarantool.org \
    --cc=tarantool-patches@dev.tarantool.org \
    --subject='Re: [Tarantool-patches] [PATCH 0/8] wait for lsn and confirm' \
    /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