Commit Graph

18 Commits

Author SHA1 Message Date
JoelKatz
0630a4b7f4 We have to track the high node ID of trusted validators as a tie-breaker.
1) Change return from getCurrentValidations
2) Log tiebreaker logic to aid debugging
3) Change checkLastClosedLedger to use the new tie-breaker logic
4) Log when we refuse to switch to our own previous ledger
5) Track node ID in the serialized validation object
6) Simplify getCurrentValidations ledger suppression logic
2012-10-05 03:46:24 -07:00
JoelKatz
81cd4cf820 Start of code to track network state, track overwhelmed nodes, and adjust
transaction fees.
2012-09-11 11:56:41 -07:00
JoelKatz
687578abd9 Get rid of "dead" ledgers. We don't need them any more and they make trouble.
Fix close time synch to be more accurate.
2012-09-05 21:55:00 -07:00
JoelKatz
1dfdf8e9d8 Count a validation for its previous ledger if it's during consensus time. 2012-09-05 10:05:15 -07:00
JoelKatz
4930ebb945 Simplify the way we handle validations. Include a signing time instead of a
closing time. Keep only the validation with the most recent signing time.
Sign using network time. This eliminates the ValidationPair nightmare and
makes the logic must easier to understand, increasing confidence that it
does what it's supposed to do.
2012-09-03 20:13:57 -07:00
JoelKatz
abf41dd4de Fix a large number of cases where we copy construct a shared_ptr just to destroy it. 2012-08-15 04:01:22 -07:00
JoelKatz
227754496e Fix what is probably *the* bug. We aren't usually in our own UNL, so we
specially mark our validations trusted. But that wasn't properly taken into
account in one case where we decide if a validation is current. This causes
two nodes to each not recognize their own validations, so they tend to
exchange ledgers.

Cleanups, extra logging.
2012-08-13 23:14:39 -07:00
JoelKatz
6553b21318 Fix some dead ledger logic. 2012-08-06 03:05:35 -07:00
JoelKatz
39b28e1f50 Don't switch to a dead ledger. Without this, we can even get out of sync with ourselves! 2012-08-06 02:21:17 -07:00
JoelKatz
5778cb1183 Keep one validation back to avoid a split case when some nodes have sent new validations and some haven't 2012-08-03 04:07:01 -07:00
JoelKatz
d83d8080fd Efficiently save validations. 2012-07-17 03:10:05 -07:00
JoelKatz
ecd47f0ea8 Cut to 32-bit network times. 2012-07-12 01:41:24 -07:00
JoelKatz
98c8529701 Some extra validation operations needed by CLC. 2012-07-09 15:49:46 -07:00
JoelKatz
75f3b4129c CLC needs validation counts for previous ledgers. 2012-07-09 10:41:27 -07:00
JoelKatz
93a05d55ca Sanitize validation handling. 2012-06-20 18:01:38 -07:00
JoelKatz
58dcc8b9c1 Don't use stale validiations. 2012-06-20 13:26:32 -07:00
JoelKatz
d57236599e Make this code work. 2012-06-18 17:01:35 -07:00
Arthur Britto
c513e45754 Move sources to src and build objs in obj. 2012-03-06 22:43:06 -08:00