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)
This commit is contained in:
moneromooo-monero
2019-10-22 15:28:08 +00:00
parent 960c215801
commit a4dc575ccb
11 changed files with 103 additions and 7 deletions

View File

@@ -322,6 +322,12 @@ t_command_server::t_command_server(
, "URL of a 'bootstrap' remote daemon that the connected wallets can use while this daemon is still not fully synced.\n"
"Use 'auto' to enable automatic public nodes discovering and bootstrap daemon switching"
);
m_command_lookup.set_handler(
"flush_cache"
, std::bind(&t_command_parser_executor::flush_cache, &m_parser, p::_1)
, "flush_cache bad-txs"
, "Flush the specified cache(s)."
);
}
bool t_command_server::process_command_str(const std::string& cmd)