Add two hour buffer to manual pruning
This commit is contained in:
parent
afae75fd3d
commit
91fb506e0a
1 changed files with 4 additions and 2 deletions
|
@ -820,7 +820,8 @@ UniValue pruneblockchain(const JSONRPCRequest& request)
|
||||||
throw runtime_error(
|
throw runtime_error(
|
||||||
"pruneblockchain\n"
|
"pruneblockchain\n"
|
||||||
"\nArguments:\n"
|
"\nArguments:\n"
|
||||||
"1. \"height\" (numeric, required) The block height to prune up to. May be set to a discrete height, or to a unix timestamp to prune based on block time.\n"
|
"1. \"height\" (numeric, required) The block height to prune up to. May be set to a discrete height, or a unix timestamp\n"
|
||||||
|
" to prune blocks whose block time is at least 2 hours older than the provided timestamp.\n"
|
||||||
"\nResult:\n"
|
"\nResult:\n"
|
||||||
"n (numeric) Height of the last block pruned.\n"
|
"n (numeric) Height of the last block pruned.\n"
|
||||||
"\nExamples:\n"
|
"\nExamples:\n"
|
||||||
|
@ -839,7 +840,8 @@ UniValue pruneblockchain(const JSONRPCRequest& request)
|
||||||
// Height value more than a billion is too high to be a block height, and
|
// Height value more than a billion is too high to be a block height, and
|
||||||
// too low to be a block time (corresponds to timestamp from Sep 2001).
|
// too low to be a block time (corresponds to timestamp from Sep 2001).
|
||||||
if (heightParam > 1000000000) {
|
if (heightParam > 1000000000) {
|
||||||
CBlockIndex* pindex = chainActive.FindEarliestAtLeast(heightParam);
|
// Add a 2 hour buffer to include blocks which might have had old timestamps
|
||||||
|
CBlockIndex* pindex = chainActive.FindEarliestAtLeast(heightParam - 7200);
|
||||||
if (!pindex) {
|
if (!pindex) {
|
||||||
throw JSONRPCError(RPC_INTERNAL_ERROR, "Could not find block with at least the specified timestamp.");
|
throw JSONRPCError(RPC_INTERNAL_ERROR, "Could not find block with at least the specified timestamp.");
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue