Closely track mempool byte total. Add "getmempoolinfo" RPC.

Goal:  Gain live insight into the mempool.  Groundwork for future work
that caps mempool size.
This commit is contained in:
Jeff Garzik
2014-08-06 23:58:19 -04:00
parent 7accb7dbad
commit 6f2c26a457
5 changed files with 41 additions and 0 deletions

View File

@@ -531,3 +531,27 @@ Value getchaintips(const Array& params, bool fHelp)
return res;
}
Value getmempoolinfo(const Array& params, bool fHelp)
{
if (fHelp || params.size() != 0)
throw runtime_error(
"getmempoolinfo\n"
"\nReturns details on the active state of the TX memory pool.\n"
"\nResult:\n"
"{\n"
" \"size\": xxxxx (numeric) Current tx count\n"
" \"bytes\": xxxxx (numeric) Sum of all tx sizes\n"
"}\n"
"\nExamples:\n"
+ HelpExampleCli("getmempoolinfo", "")
+ HelpExampleRpc("getmempoolinfo", "")
);
Object ret;
ret.push_back(Pair("size", (int64_t) mempool.size()));
ret.push_back(Pair("bytes", (int64_t) mempool.GetTotalTxSize()));
return ret;
}