[Tarantool-patches] [RAFT 09/10] [tosquash] applier: handler error at raft row appliance

Serge Petrenko sergepetrenko at tarantool.org
Wed Aug 26 10:52:41 MSK 2020


From: Vladislav Shpilevoy <v.shpilevoy at tarantool.org>

---
 src/box/applier.cc | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/box/applier.cc b/src/box/applier.cc
index 8e6d1b2a4..b17ac5363 100644
--- a/src/box/applier.cc
+++ b/src/box/applier.cc
@@ -1241,10 +1241,13 @@ applier_subscribe(struct applier *applier)
 			&stailq_first_entry(&rows, struct applier_tx_row,
 					    next)->row;
 		if (first_row->lsn == 0) {
-			if (unlikely(iproto_type_is_raft_request(first_row->type)))
-				apply_raft_row(first_row);
-			else
+			if (unlikely(iproto_type_is_raft_request(
+							first_row->type))) {
+				if (apply_raft_row(first_row) != 0)
+					diag_raise();
+			} else {
 				applier_signal_ack(applier);
+			}
 		} else if (applier_apply_tx(&rows) != 0) {
 			diag_raise();
 		}
-- 
2.20.1 (Apple Git-117)



More information about the Tarantool-patches mailing list