Validation timing fixes:

* Log whether consensus built a ledger we already had or were acquiring
* Don't trigger an acquire for a validation for a ledger we might be building
* When we finish building a ledger, try to accept that ledger
* If we cannot accept a built ledger, check held validations
* Correctly set isCurrent for untrusted validations
* Add appropriate logging

This fixes a race condition that could cause spurious and expensive
ledger fetches across the network and delayed recognition of
fully-validated ledger.
This commit is contained in:
JoelKatz
2014-04-27 01:51:40 -07:00
committed by Vinnie Falco
parent a10c48182f
commit d1f5006e44
7 changed files with 206 additions and 51 deletions

View File

@@ -502,7 +502,7 @@ private:
SubMapType mSubTransactions; // all accepted transactions
SubMapType mSubRTTransactions; // all proposed and accepted transactions
TaggedCache< uint256, Blob> mFetchPack;
TaggedCache< uint256, Blob> mFetchPack;
std::uint32_t mFetchSeq;
std::uint32_t mLastLoadBase;