diff --git a/src/debug.cpp b/src/debug.cpp index c51ff0673..4977f59df 100644 --- a/src/debug.cpp +++ b/src/debug.cpp @@ -829,6 +829,13 @@ NULL c->flags &= ~(CLIENT_MASTER | CLIENT_MASTER_FORCE_REPLY); } addReply(c, shared.ok); + } else if (!strcasecmp(szFromObj(c->argv[1]),"truncate-repl-backlog") && c->argc == 2) { + g_pserver->repl_backlog_idx = 0; + g_pserver->repl_backlog_off = g_pserver->master_repl_offset+1; + g_pserver->repl_backlog_histlen = 0; + if (g_pserver->repl_batch_idxStart >= 0) g_pserver->repl_batch_idxStart = -1; + if (g_pserver->repl_batch_offStart >= 0) g_pserver->repl_batch_offStart = -1; + addReply(c, shared.ok); } else if (!strcasecmp(szFromObj(c->argv[1]),"config-rewrite-force-all") && c->argc == 2) { if (rewriteConfig(cserver.configfile, 1) == -1) diff --git a/tests/unit/moduleapi/testrdb.tcl b/tests/unit/moduleapi/testrdb.tcl index 2298a73c5..9b5d8fdaf 100644 --- a/tests/unit/moduleapi/testrdb.tcl +++ b/tests/unit/moduleapi/testrdb.tcl @@ -96,7 +96,7 @@ tags "modules" { $master client kill type replica $master set asdf asdf # the side effect of resizing the backlog is that it is flushed (16k is the min size) - $master config set repl-backlog-size [expr {16384 + $i}] + $master debug truncate-repl-backlog $master exec } # wait for loading to stop (fail)