When syncing under Savanna it is common for pending LIB to be greater than head. log_irreversible updates the block log and fork db root by the range of blocks from root->LIB when head is in root->LIB. Since LIB can be greater than head this would result in forkdb.fetch_branch returning an empty branch since searching back from head would not find the LIB causing large delays in the advancement of root.
Update log_irreversible to fetch branch from root->head when LIB is greater than head and head is in root->head.
Note:start
category: System Stability
component: Internal
summary: Performance Update, advance fork db root when pending lib greater than head.
Note:end
When syncing under Savanna it is common for pending LIB to be greater than head.
log_irreversible
updates the block log and fork db root by the range of blocks from root->LIB when head is in root->LIB. Since LIB can be greater than head this would result inforkdb.fetch_branch
returning an empty branch since searching back from head would not find the LIB causing large delays in the advancement of root.Update
log_irreversible
to fetch branch from root->head when LIB is greater than head and head is in root->head.Merges
release/1.0
intomain
including #1009Resolves #1003