Fix bug https://bugs.launchpad.net/tarantool/+bug/837315 When write_inbox() failed, wal_write() would throw an exception. This had two effects: first, a call to confirm_lsn() would confirm lsn of the failed transaction out of order (indeed, nothing is written, so this lsn is confirmed before lsns of transactions which are waiting on write to complete) second, txn_rollback() was called with fiber->mod_data.txn == 0. The second led to an assertion failure. The fix only fixes the second effect, so that an error is sent to the client, and the server does not terminate. It's not possible to come up with a serial test case for the bug, since to fill up all inboxes one needs many concurrent writes.
Loading
Please register or sign in to comment