From a4dc575ccba8348886ed19594a16f5a7242f8fe6 Mon Sep 17 00:00:00 2001 From: moneromooo-monero Date: Tue, 22 Oct 2019 15:28:08 +0000 Subject: rpc: add a flush_cache RPC This allows flushing internal caches (for now, the bad tx cache, which will allow debugging a stuck monerod after it has failed to verify a transaction in a block, since it would otherwise not try again, making subsequent log changes pointless) --- src/daemon/command_parser_executor.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/daemon/command_parser_executor.cpp') diff --git a/src/daemon/command_parser_executor.cpp b/src/daemon/command_parser_executor.cpp index 8e78f3bd1..b827221f6 100644 --- a/src/daemon/command_parser_executor.cpp +++ b/src/daemon/command_parser_executor.cpp @@ -844,4 +844,16 @@ bool t_command_parser_executor::set_bootstrap_daemon(const std::vector 2 ? args[2] : std::string()); } +bool t_command_parser_executor::flush_cache(const std::vector& args) +{ + if (args.empty()) + goto show_list; + if (args[0] == "bad-txs") + return m_executor.flush_cache(true); + +show_list: + std::cout << "Cache type needed: bad-txs" << std::endl; + return true; +} + } // namespace daemonize -- cgit v1.2.3