Ethan Buchman
f1c53c7358
evidence: dont send evidence to unsynced peers
...
* only send evidence to peers that are synced enough to validate it all
* closes #1624
2018-06-04 21:20:23 -07:00
Anton Kaliaev
58e3246ffc
batch index txs
2018-05-17 10:00:59 +04:00
Jae Kwon
89cdde7f1e
Fix state tests
2018-04-03 06:50:53 -07:00
Ethan Buchman
f4feb7703b
fix appHash log. closes #1207
2018-02-19 15:32:09 -05:00
Anton Kaliaev
106cdb74e5
do not enforce 1/3 validator power change
...
leave it to the app
Refs #1022
2018-02-09 23:30:04 +04:00
Ethan Buchman
cd0fd06b0d
update for sdk2 libs. need to fix kv test
...
NOTE we only updating for tmlibs and abci
2018-02-03 03:35:02 -05:00
Ethan Buchman
57cc8ab977
Merge pull request #1143 from tendermint/1091-race-condition
...
call FlushSync before calling CommitSync
2018-01-24 14:22:43 -05:00
Anton Kaliaev
5f3048bd09
call FlushSync before calling CommitSync
...
if we call it after, we might receive a "fresh" transaction from
`broadcast_tx_sync` before old transactions (which were not
committed).
Refs #1091
```
Commit is called with a lock on the mempool, meaning no calls to CheckTx
can start. However, since CheckTx is called async in the mempool
connection, some CheckTx might have already "sailed", when the lock is
released in the mempool and Commit proceeds.
Then, that spurious CheckTx has not yet "begun" in the ABCI app (stuck
in transport?). Instead, ABCI app manages to start to process the
Commit. Next, the spurious, "sailed" CheckTx happens in the wrong place.
```
2018-01-23 16:56:14 +04:00
Ethan Buchman
ee674f919f
StopPeerForError in blockchain and consensus
2018-01-21 13:32:04 -05:00
Ethan Buchman
28bbeac763
state: send byzantine validators in BeginBlock
2017-12-29 11:26:55 -05:00
Ethan Buchman
444db4c242
metalinter
2017-12-28 23:15:54 -05:00
Ethan Buchman
cb845ebff5
fix EvidencePool and VerifyEvidence
2017-12-28 23:15:54 -05:00
Ethan Buchman
6112578d07
ValidateBlock is a method on blockExec
2017-12-28 23:15:54 -05:00
Ethan Buchman
ae68fcb78a
move fireEvents to ApplyBlock
2017-12-28 23:15:54 -05:00
Ethan Buchman
1d6f00859d
fixes from review
2017-12-28 23:15:54 -05:00
Ethan Buchman
0acca7fe69
final updates for state
2017-12-28 23:15:54 -05:00
Ethan Buchman
f82b7e2a13
state: re-order funcs. fix tests
2017-12-28 23:15:54 -05:00
Ethan Buchman
9e6d088757
state: BlockExecutor
2017-12-28 23:15:54 -05:00
Ethan Buchman
c915719f85
*State->State; SetBlockAndValidators->NextState
2017-12-28 23:15:54 -05:00
Ethan Buchman
f55135578c
state: move methods to funcs
2017-12-28 23:15:54 -05:00
Ethan Buchman
6a4fd46479
fixes from rebase
2017-12-26 20:42:34 -05:00
Ethan Buchman
0f293bfc2b
remove some TODOs
2017-12-26 20:27:40 -05:00
Ethan Buchman
869d873d5c
state.ApplyBlock takes evpool and calls MarkEvidenceAsCommitted
2017-12-26 20:27:32 -05:00
Ethan Buchman
3271634e7a
types: evidence cleanup
2017-12-26 20:26:21 -05:00
Ethan Buchman
6c4a0f9363
cleanup evidence pkg. state.VerifyEvidence
2017-12-26 20:26:21 -05:00
Ethan Buchman
df3f4de7c3
check evidence is from validator; some cleanup
2017-12-26 20:25:14 -05:00
Ethan Buchman
77e45756f2
types: Evidences for merkle hashing; Evidence.String()
2017-12-26 20:21:17 -05:00
Ethan Buchman
9cdcffbe4b
types: comments; compiles; evidence test
2017-12-26 20:21:17 -05:00
Ethan Buchman
35587658cd
verify evidence in block
2017-12-26 20:21:17 -05:00
Ethan Buchman
7928659f70
track evidence, include in block
2017-12-26 20:21:17 -05:00
Ethan Buchman
bfcb40bf6b
validate block.ValidatorsHash
2017-12-26 20:00:45 -05:00
Ethan Buchman
051c2701ab
remove LastConsensusParams
2017-12-26 19:56:39 -05:00
Ethan Buchman
028ee58580
call it LastResultsHash
2017-12-26 19:53:26 -05:00
Ethan Buchman
73fb1c3a17
consolidate saveResults/SaveABCIResponses
2017-12-26 19:24:45 -05:00
Ethan Frey
58c5df729b
Add ResultHash to header
2017-12-26 19:24:25 -05:00
Anton Kaliaev
0093f9877a
change voting power change, not number of vals
2017-12-25 17:49:36 -06:00
Anton Kaliaev
cf0b5d3715
enforce <1/3 validator updates
...
Refs #950
2017-12-25 12:10:53 -06:00
Ethan Buchman
35521b553a
save historical consensus params
2017-12-21 17:46:25 -05:00
Ethan Buchman
3d00c477fc
separate block vs state based validation
2017-12-21 16:49:47 -05:00
Anton Kaliaev
0ffd60b8cf
ValidatorSetUpdates -> ValidatorUpdates
2017-12-21 11:52:26 -06:00
Anton Kaliaev
843e1ed400
Updates -> ValidatoSetUpdates
2017-12-19 13:03:39 -06:00
Ethan Frey
960b25408f
Store LastConsensusHash in State as well
...
Update all BlockValidation that it matches the last state
2017-12-19 12:28:08 -05:00
Ethan Frey
d151e36ea8
Add ConsensusHash to header
2017-12-19 12:28:08 -05:00
Ethan Frey
4265a94bfe
Update EndBlock parameters
...
* Update abci dependencies
* Modify references from Diffs to Changes
* Fixes issues #924
2017-12-19 12:28:08 -05:00
Anton Kaliaev
7f649ccf23
fixes from Frey's review
2017-12-15 12:21:15 -06:00
Anton Kaliaev
d669816a1b
send absent validators in BeginBlock
...
Refs #668
2017-12-15 12:13:02 -06:00
Ethan Frey
dedf03bb81
Add TotalTx to block header, issue #952
...
Update state to keep track of this info.
Change function args as needed.
Make NumTx also an int64 for consistency.
2017-12-13 12:20:53 +01:00
Ethan Buchman
9af8da7aad
update for new abci int types
2017-12-02 01:47:55 -05:00
Anton Kaliaev
922af7c405
int64 height
...
uint64 is considered dangerous. the details will follow in a blog post.
2017-12-01 19:04:53 -06:00
Ethan Buchman
e9f8e56895
fixes from rebase
2017-12-01 17:25:44 -05:00