[tarantool-patches] [PATCH] recovery: build secondary index in hot standby mode
Ilya Kosarev
i.kosarev at tarantool.org
Wed Aug 14 21:31:44 MSK 2019
Secondary index was being built after reading xlog
except for the force recovery case,
when it was being built immediately after reading snapshot.
Now it is also being built immediately after reading snapshot
in case of hot standby mode in order to be ready by the time
original instance quits.
Closes #4135
---
Branch: https://github.com/tarantool/tarantool/tree/i.kosarev/gh-4135-secondary-index-for-hot-standby
Issue: https://github.com/tarantool/tarantool/issues/4135
src/box/memtx_engine.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/box/memtx_engine.c b/src/box/memtx_engine.c
index 7c3dd8465..2c8653bd9 100644
--- a/src/box/memtx_engine.c
+++ b/src/box/memtx_engine.c
@@ -48,6 +48,7 @@
#include "replication.h"
#include "schema.h"
#include "gc.h"
+#include "wal.h"
/* sync snapshot every 16MB */
#define SNAP_SYNC_INTERVAL (1 << 24)
@@ -269,7 +270,7 @@ memtx_engine_begin_final_recovery(struct engine *engine)
/* End of the fast path: loaded the primary key. */
space_foreach(memtx_end_build_primary_key, memtx);
- if (!memtx->force_recovery) {
+ if (!memtx->force_recovery && wal_dir_lock >= 0) {
/*
* Fast start path: "play out" WAL
* records using the primary key only,
--
2.17.1
More information about the Tarantool-patches
mailing list