Ethan Buchman
7a18fa887d
evidence linked with consensus/node. compiles
2017-12-26 20:26:21 -05:00
Ethan Buchman
f7731d38f6
some comments and cleanup
2017-12-26 20:25:14 -05:00
Ethan Buchman
10c43c9edc
introduce evidence store
2017-12-26 20:25:14 -05:00
Ethan Buchman
fe4b53a463
EvidencePool
2017-12-26 20:24:54 -05:00
Ethan Buchman
7d086e9524
check if we already have evidence
2017-12-26 20:21:17 -05:00
Ethan Buchman
6e9433c7a8
post rebase fix
2017-12-26 20:21:17 -05:00
Ethan Buchman
39299e5cc1
consensus: note about duplicate evidence
2017-12-26 20:21:17 -05:00
Ethan Buchman
4661c98c17
add pubkey to conflicting vote evidence
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
f80f6445a6
fix test
2017-12-26 20:15:09 -05:00
Ethan Buchman
4171bd3bae
fixes
2017-12-26 19:24:45 -05:00
Ethan Buchman
d844799b3b
Merge branch '950-enforce-less-13-val-changes-per-block' into develop
2017-12-26 19:22:21 -05:00
Ethan Buchman
289d92c97d
consensus: remove log stmt. closes #987
2017-12-26 10:41:31 -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
38608b1b0f
comment and tmlibs fix
2017-12-21 18:32:40 -05:00
Ethan Buchman
3d00c477fc
separate block vs state based validation
2017-12-21 16:49:47 -05: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 Buchman
e0fe84a856
Merge branch 'develop' into 977-wal-generator
2017-12-19 11:11:26 -05:00
Ethan Buchman
cb3ac6987e
remove some debugs
2017-12-19 10:11:37 -05:00
Anton Kaliaev
5a83e58428
stop eventBus
2017-12-17 20:16:02 -06:00
Anton Kaliaev
3f02ab0ead
unidirectional channel
2017-12-16 22:20:07 -06:00
Anton Kaliaev
99c58fc561
enable logging for wal_generator and set timeout to 1 min
...
Refs #977
2017-12-16 21:59:10 -06:00
Ethan Buchman
a86df17ceb
crank city
2017-12-16 19:55:04 -05:00
Ethan Buchman
5d04ccbe51
excessive logging. update tmlibs for timer fix
2017-12-16 19:16:08 -05:00
Ethan Buchman
0ec7909ec3
more logging in p2p and consensus
2017-12-16 13:36:52 -05:00
Anton Kaliaev
f8f28c8942
enable logging for wal_generator and set timeout to 1 min
...
Refs #977
2017-12-15 16:15:09 -06:00
Ethan Buchman
eddabab5e4
Merge pull request #965 from tendermint/573-handle-corrupt-wal-file
...
Handle corrupt WAL file
2017-12-15 14:33:16 -05:00
Anton Kaliaev
d669816a1b
send absent validators in BeginBlock
...
Refs #668
2017-12-15 12:13:02 -06:00
Anton Kaliaev
e40689b9cc
PanicCrisis is deprecated
2017-12-15 11:59:45 -06:00
Anton Kaliaev
709cf18aef
add gofuzz test for consensus wal
2017-12-15 11:56:24 -06:00
Anton Kaliaev
e57cad6c3f
correct maxMsgSizeBytes
2017-12-15 11:42:53 -06:00
Anton Kaliaev
b78606d94f
Merge pull request #967 from tendermint/feature/total-tx
...
Add TotalTx to block header
2017-12-13 17:09:48 -06:00
Anton Kaliaev
0a2ecaa393
Merge pull request #953 from tendermint/feature/time-fields
...
Add Timestamp to Proposal/Vote
2017-12-13 12:18:55 -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
Anton Kaliaev
06aece31cf
lower the max message size
2017-12-12 13:02:40 -06:00
Ethan Buchman
e0296d6c3c
consensus: fix makeBlockchainFromWAL
2017-12-12 12:14:15 -05:00
Ethan Frey
a29c781295
Add default timestamp to all instances of *types.Vote
2017-12-12 12:59:51 +01:00
Anton Kaliaev
af79a2a59e
fix error msg
2017-12-11 19:50:05 -06:00
Anton Kaliaev
ee66476d62
set max msg size
...
otherwise, it is easy to get OutOfMemory panic (somebody can even expoit
this)
2017-12-11 19:48:57 -06:00
Anton Kaliaev
40f9261d48
handle data corruption errors
...
Refs #573
2017-12-11 19:48:20 -06:00
Anton Kaliaev
b2385b46cf
wait 5 sec for a block on CircleCI
...
Fixes:
```
--- FAIL: TestHandshakeReplaySome (12.40s)
replay_test.go:332: waited too long for tendermint to produce 6 blocks
```
2017-12-11 16:22:27 -06:00
Ethan Buchman
e7b9cd8ee8
Merge branch 'develop' into 785-wal-improvements
2017-12-10 19:45:52 -05:00
Ricardo Domingos
59e89e7664
consensus: Fix typo on ticker.go documentation
2017-12-09 13:14:53 +01:00
Anton Kaliaev
90944bb1a2
be specific about what type we're encoding
...
to be consistent with Decode, which returns TimedWALMessage
2017-12-07 11:45:50 -06:00
Anton Kaliaev
07571741c5
[consensus] remove WAL separator (Refs #785 )
...
We don't really need a separator unless we have complex structures
(rows, cells like RDBMS have https://www.sqlite.org/fileformat.html ).
2017-12-07 11:36:46 -06:00
Anton Kaliaev
5cb936fa00
fixes after my own review
2017-12-06 18:28:14 -06:00
Anton Kaliaev
c6f025f40e
generate WAL on the fly (Refs #468 )
2017-12-06 16:01:08 -06:00
Ethan Buchman
b37230f6db
Merge pull request #918 from tendermint/abci-update
...
Abci update
2017-12-03 01:36:59 -05:00
Ethan Buchman
9af8da7aad
update for new abci int types
2017-12-02 01:47:55 -05:00
Anton Kaliaev
cd5a5d332f
remove comments for uint64 related to possible underflow [ci skip]
2017-12-01 23:30:08 -06:00
Anton Kaliaev
89cbcceac4
error if app returned negative last block height ( Fixes #911 )
2017-12-01 21:56:08 -06: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
Anton Kaliaev
f1fbf995f7
protect ourselves again underflow (Refs #911 )
2017-12-01 17:17:22 -05:00
Anton Kaliaev
86af889dfb
remove unnecessary casts (Refs #911 )
2017-12-01 17:17:22 -05:00
Anton Kaliaev
b3492356e6
uint64 height (Refs #911 )
2017-12-01 17:17:22 -05:00
Anton Kaliaev
1e19860585
fixes from my own review
2017-11-29 14:24:18 -06:00
Anton Kaliaev
f65e357d2b
adapt Tendermint to new abci.Client interface
...
which was introduced in https://github.com/tendermint/abci/pull/130
2017-11-29 14:23:44 -06:00
Anton Kaliaev
a52cdbfe43
extract tags from DeliverTx/Result
...
and send them along with predefined
2017-11-29 14:23:43 -06:00
Anton Kaliaev
69b5da766c
service#Start, service#Stop signatures were changed
...
See https://github.com/tendermint/tmlibs/issues/45
2017-11-29 10:38:58 -06:00
Ethan Buchman
2009c3d4f1
Merge pull request #884 from tendermint/wal-benchmark-decode
...
consensus/WAL: benchmark WALDecode across data sizes
2017-11-28 03:39:55 +00:00
Ethan Buchman
9529f12c28
more linting
2017-11-27 22:39:12 +00:00
Ethan Buchman
55b81cc1a1
address linting FIXMEs
2017-11-27 22:39:12 +00:00
Zach Ramsay
c4caad7720
lint madness
2017-11-27 22:39:12 +00:00
Zach Ramsay
2563b4fc92
lint fixes
2017-11-27 22:39:12 +00:00
Zach Ramsay
6f3c05545d
fix new linting errors
2017-11-27 22:39:12 +00:00
Zach Ramsay
7ad8a8ab55
Tests almost passing
2017-11-27 22:39:12 +00:00
Zach Ramsay
a15c7f221d
linting: moar fixes
2017-11-27 22:39:11 +00:00
Zach Ramsay
d7cb291fb2
errcheck; sort some stuff out
2017-11-27 22:39:11 +00:00
Zach Ramsay
563faa98de
address comments, pr #643
2017-11-27 22:39:11 +00:00
Zach Ramsay
bc2aa79f9a
linter: sort through each kind and address small fixes
2017-11-27 22:39:11 +00:00
Zach Ramsay
48aca642e3
linter: address deadcode, implement incremental lint testing
2017-11-27 22:39:11 +00:00
Zach Ramsay
68e7983c70
linting errors: afew more
2017-11-27 22:39:11 +00:00
Zach Ramsay
8f0237610e
linting errors: clean it all up
2017-11-27 22:39:11 +00:00
Zach Ramsay
b75d4f73e7
errcheck: PR comment fixes
2017-11-27 22:39:11 +00:00
Zach Ramsay
331857c9e6
linting: apply errcheck part2
2017-11-27 22:39:11 +00:00
Zach Ramsay
57ea4987f7
linting: apply errcheck part1
2017-11-27 22:39:11 +00:00
Zach Ramsay
46ccbcbff6
linting: apply 'gofmt -s -w' throughout
2017-11-27 22:39:11 +00:00
Emmanuel Odeke
42da8cd297
consensus/WAL: benchmark WALDecode across data sizes
2017-11-23 12:43:11 -07:00
Anton Kaliaev
fa60d8120e
fix TestFullRound1 race (Refs #846 )
...
```
==================
WARNING: DATA RACE
Write at 0x00c42d7605f0 by goroutine 844:
github.com/tendermint/tendermint/consensus.(*ConsensusState).updateToState()
/home/vagrant/go/src/github.com/tendermint/tendermint/consensus/state.go:465 +0x59e
I[11-14|22:37:28.781] Added to prevote vote="Vote{0:646753DCE124 1/02/1(Prevote) E9B19636DCDB {/CAD5FA805E8C.../}}" prevotes="VoteSet{H:1 R:2 T:1 +2/3:<nil> BA{2:X_} map[]}"
github.com/tendermint/tendermint/consensus.(*ConsensusState).finalizeCommit()
/home/vagrant/go/src/github.com/tendermint/tendermint/consensus/state.go:1229 +0x16a9
github.com/tendermint/tendermint/consensus.(*ConsensusState).tryFinalizeCommit()
/home/vagrant/go/src/github.com/tendermint/tendermint/consensus/state.go:1135 +0x721
github.com/tendermint/tendermint/consensus.(*ConsensusState).enterCommit.func1()
/home/vagrant/go/src/github.com/tendermint/tendermint/consensus/state.go:1087 +0x153
github.com/tendermint/tendermint/consensus.(*ConsensusState).enterCommit()
/home/vagrant/go/src/github.com/tendermint/tendermint/consensus/state.go:1114 +0xa34
github.com/tendermint/tendermint/consensus.(*ConsensusState).addVote()
/home/vagrant/go/src/github.com/tendermint/tendermint/consensus/state.go:1423 +0xdd6
github.com/tendermint/tendermint/consensus.(*ConsensusState).tryAddVote()
/home/vagrant/go/src/github.com/tendermint/tendermint/consensus/state.go:1317 +0x77
github.com/tendermint/tendermint/consensus.(*ConsensusState).handleMsg()
/home/vagrant/go/src/github.com/tendermint/tendermint/consensus/state.go:565 +0x7a9
github.com/tendermint/tendermint/consensus.(*ConsensusState).receiveRoutine()
/home/vagrant/go/src/github.com/tendermint/tendermint/consensus/state.go:523 +0x6d2
Previous read at 0x00c42d7605f0 by goroutine 654:
github.com/tendermint/tendermint/consensus.validatePrevote()
/home/vagrant/go/src/github.com/tendermint/tendermint/consensus/common_test.go:149 +0x57
github.com/tendermint/tendermint/consensus.TestFullRound1()
/home/vagrant/go/src/github.com/tendermint/tendermint/consensus/state_test.go:256 +0x3c5
testing.tRunner()
/usr/local/go/src/testing/testing.go:746 +0x16c
Goroutine 844 (running) created at:
github.com/tendermint/tendermint/consensus.(*ConsensusState).startRoutines()
/home/vagrant/go/src/github.com/tendermint/tendermint/consensus/state.go:258 +0x8c
github.com/tendermint/tendermint/consensus.startTestRound()
/home/vagrant/go/src/github.com/tendermint/tendermint/consensus/common_test.go:118 +0x63
github.com/tendermint/tendermint/consensus.TestFullRound1()
/home/vagrant/go/src/github.com/tendermint/tendermint/consensus/state_test.go:247 +0x1fb
testing.tRunner()
/usr/local/go/src/testing/testing.go:746 +0x16c
Goroutine 654 (running) created at:
testing.(*T).Run()
/usr/local/go/src/testing/testing.go:789 +0x568
testing.runTests.func1()
/usr/local/go/src/testing/testing.go:1004 +0xa7
testing.tRunner()
/usr/local/go/src/testing/testing.go:746 +0x16c
testing.runTests()
/usr/local/go/src/testing/testing.go:1002 +0x521
testing.(*M).Run()
/usr/local/go/src/testing/testing.go:921 +0x206
main.main()
github.com/tendermint/tendermint/consensus/_test/_testmain.go:106 +0x1d3
==================
```
2017-11-14 17:41:30 -06:00
Ethan Buchman
30f675aafa
Merge pull request #839 from tendermint/bugfix/pubsub-failures
...
Fix nondeterministic tests failures related to pubsub
2017-11-14 18:13:47 +00:00
Ethan Buchman
3db44dacae
Merge pull request #840 from tendermint/fix/tests
...
Fix/tests
2017-11-14 15:48:17 +00:00
Ethan Buchman
238e2b72ee
Merge pull request #834 from tendermint/829-enable-logs-by-default
...
Enable logs by default
2017-11-12 07:06:14 +00:00
Ethan Buchman
aba8a8f4fc
consensus: crank timeout in timeoutWaitGroup
2017-11-12 06:41:15 +00:00
Ethan Buchman
0448c2b437
consensus: fix LastCommit log
2017-11-12 06:40:27 +00:00
Anton Kaliaev
7fa12662c4
check whatever we can read from the channel
...
```
panic: interface conversion: interface {} is nil, not types.TMEventData
goroutine 7690 [running]:
github.com/tendermint/tendermint/consensus.waitForAndValidateBlock.func1(0xc427727620, 0x3)
/go/src/github.com/tendermint/tendermint/consensus/reactor_test.go:292 +0x62b
created by github.com/tendermint/tendermint/consensus.timeoutWaitGroup
/go/src/github.com/tendermint/tendermint/consensus/reactor_test.go:349 +0xa4
exit status 2
FAIL github.com/tendermint/tendermint/consensus 38.614s
```
2017-11-10 18:16:31 -05:00
Ethan Buchman
2cda777900
consensus: make mempool_test deterministic
2017-11-09 23:54:02 +00:00
Anton Kaliaev
a1cdc2b68a
set logger for peer's MConnection
2017-11-09 14:57:40 -05:00
Anton Kaliaev
ad03491ee6
remove duplicated key
2017-11-09 13:37:29 -05:00
Ethan Buchman
4b9dfc8990
consensus: fix for initializing block parts during catchup
2017-11-09 18:14:41 +00:00
Ethan Buchman
c0e2649ed6
Merge pull request #788 from tendermint/feature/548-indexing-tags
...
new pubsub package
2017-11-08 01:02:48 +00:00
Ethan Buchman
dd47884661
Merge pull request #820 from tendermint/790-use-tickers-instead-of-time-Sleep
...
prefer tickers to time.Sleep
2017-11-08 00:53:42 +00:00
Ethan Buchman
47f5e37205
copy RoundState for event
2017-11-07 23:57:23 +00:00
Anton Kaliaev
e0daca5693
fixes from Bucky's review
2017-11-07 18:20:24 -05:00
Anton Kaliaev
2d4ad02356
prefer tickers to time.Sleep (Refs #790 )
2017-11-07 15:38:25 -05:00
Ethan Buchman
3b81d3fea4
consensus: ensure prs.ProposalBlockParts is initialized. fixes #810
2017-11-07 17:14:40 +00:00
Anton Kaliaev
b1eec3a5d3
remove test_data/empty_block and test_data/small_blockN
2017-11-02 13:20:14 -05:00
Ethan Buchman
ec87c740a7
Merge pull request #794 from tendermint/243-restart-app-via-os
...
Kill Tendermint when App dies
2017-10-31 16:27:23 -04:00
Ethan Buchman
d71aed309f
some minor changes
2017-10-30 22:52:03 -04:00
Anton Kaliaev
61d76a273f
fixes from Bucky's and Emmanuel's reviews
2017-10-30 11:12:01 -05:00
Anton Kaliaev
6d18e2f447
do not send whole round state via eventHub
...
Fixes
```
WARNING: DATA RACE
Write at 0x00c4200715b8 by goroutine 24:
github.com/tendermint/tendermint/consensus.(*ConsensusState).enterPrevote.func1()
/go/src/github.com/tendermint/tendermint/consensus/state.go:359 +0x3f
github.com/tendermint/tendermint/consensus.(*ConsensusState).enterPrevote()
/go/src/github.com/tendermint/tendermint/consensus/state.go:897 +0x8de
github.com/tendermint/tendermint/consensus.(*ConsensusState).addProposalBlockPart()
/go/src/github.com/tendermint/tendermint/consensus/state.go:1303 +0x701
github.com/tendermint/tendermint/consensus.(*ConsensusState).handleMsg()
/go/src/github.com/tendermint/tendermint/consensus/state.go:560 +0x88c
github.com/tendermint/tendermint/consensus.(*ConsensusState).receiveRoutine()
/go/src/github.com/tendermint/tendermint/consensus/state.go:525 +0x6d2
Previous read at 0x00c4200715b8 by goroutine 19:
github.com/tendermint/tendermint/consensus.makeRoundStepMessages()
/go/src/github.com/tendermint/tendermint/consensus/reactor.go:415 +0x192
github.com/tendermint/tendermint/consensus.(*ConsensusReactor).broadcastNewRoundStep()
/go/src/github.com/tendermint/tendermint/consensus/reactor.go:377 +0x3c
github.com/tendermint/tendermint/consensus.(*ConsensusReactor).broadcastNewRoundStepsAndVotes.func1()
/go/src/github.com/tendermint/tendermint/consensus/reactor.go:350 +0x275
```
2017-10-30 00:32:23 -05:00
Anton Kaliaev
1c1c68df8d
fixes from my own review
2017-10-30 00:32:23 -05:00
Anton Kaliaev
f6539737de
new pubsub package
...
comment out failing consensus tests for now
rewrite rpc httpclient to use new pubsub package
import pubsub as tmpubsub, query as tmquery
make event IDs constants
EventKey -> EventTypeKey
rename EventsPubsub to PubSub
mempool does not use pubsub
rename eventsSub to pubsub
new subscribe API
fix channel size issues and consensus tests bugs
refactor rpc client
add missing discardFromChan method
add mutex
rename pubsub to eventBus
remove IsRunning from WSRPCConnection interface (not needed)
add a comment in broadcastNewRoundStepsAndVotes
rename registerEventCallbacks to broadcastNewRoundStepsAndVotes
See https://dave.cheney.net/2014/03/19/channel-axioms
stop eventBuses after reactor tests
remove unnecessary Unsubscribe
return subscribe helper function
move discardFromChan to where it is used
subscribe now returns an err
this gives us ability to refuse to subscribe if pubsub is at its max
capacity.
use context for control overflow
cache queries
handle err when subscribing in replay_test
rename testClientID to testSubscriber
extract var
set channel buffer capacity to 1 in replay_file
fix byzantine_test
unsubscribe from single event, not all events
refactor httpclient to return events to appropriate channels
return failing testReplayCrashBeforeWriteVote test
fix TestValidatorSetChanges
refactor code a bit
fix testReplayCrashBeforeWriteVote
add comment
fix TestValidatorSetChanges
fixes from Bucky's review
update comment [ci skip]
test TxEventBuffer
update changelog
fix TestValidatorSetChanges (2nd attempt)
only do wg.Done when no errors
benchmark event bus
create pubsub server inside NewEventBus
only expose config params (later if needed)
set buffer capacity to 0 so we are not testing cache
new tx event format: key = "Tx" plus a tag {"tx.hash": XYZ}
This should allow to subscribe to all transactions! or a specific one
using a query: "tm.events.type = Tx and tx.hash = '013ABF99434...'"
use TimeoutCommit instead of afterPublishEventNewBlockTimeout
TimeoutCommit is the time a node waits after committing a block, before
it goes into the next height. So it will finish everything from the last
block, but then wait a bit. The idea is this gives it time to hear more
votes from other validators, to strengthen the commit it includes in the
next block. But it also gives it time to hear about new transactions.
waitForBlockWithUpdatedVals
rewrite WAL crash tests
Task:
test that we can recover from any WAL crash.
Solution:
the old tests were relying on event hub being run in the same thread (we
were injecting the private validator's last signature).
when considering a rewrite, we considered two possible solutions: write
a "fuzzy" testing system where WAL is crashing upon receiving a new
message, or inject failures and trigger them in tests using something
like https://github.com/coreos/gofail .
remove sleep
no cs.Lock around wal.Save
test different cases (empty block, non-empty block, ...)
comments
add comments
test 4 cases: empty block, non-empty block, non-empty block with smaller part size, many blocks
fixes as per Bucky's last review
reset subscriptions on UnsubscribeAll
use a simple counter to track message for which we panicked
also, set a smaller part size for all test cases
2017-10-30 00:32:22 -05:00
Ethan Buchman
fe1c60b5cf
consensus: kill process on app error
2017-10-27 10:55:20 -04:00
Ethan Buchman
591dd9e662
dont catchupReplay on wal if we fast synced
2017-10-27 10:46:19 -04:00
Ethan Buchman
12c703c1c3
Merge branch 'develop' into 573-wal-issues
2017-10-25 23:56:08 -04:00
Ethan Buchman
57a684d5ac
fixes from review
2017-10-25 21:54:56 -04:00
Anton Kaliaev
ae538337ba
fix panic: failed to determine gopath: exec: "go" (Refs #782 )
...
```
-bash-4.2$ tendermint show_validators
panic: failed to determine gopath: exec: "go": executable file not found in $PATH
goroutine 1 [running]:
github.com/tendermint/tendermint/vendor/github.com/tendermint/tmlibs/common.gopath(0xc4200632c0, 0x18)
/var/lib/jenkins/workspace/03.Build.Package/go/src/github.com/tendermint/tendermint/vendor/github.com/tendermint/tmlibs/common/os.go:26 +0x1b5
github.com/tendermint/tendermint/vendor/github.com/tendermint/tmlibs/common.init()
/var/lib/jenkins/workspace/03.Build.Package/go/src/github.com/tendermint/tendermint/vendor/github.com/tendermint/tmlibs/common/os.go:17 +0x13c
github.com/tendermint/tendermint/vendor/github.com/tendermint/go-wire.init()
/var/lib/jenkins/workspace/03.Build.Package/go/src/github.com/tendermint/tendermint/vendor/github.com/tendermint/go-wire/wire.go:165 +0x50
github.com/tendermint/tendermint/vendor/github.com/tendermint/go-wire/data.init()
/var/lib/jenkins/workspace/03.Build.Package/go/src/github.com/tendermint/tendermint/vendor/github.com/tendermint/go-wire/data/wrapper.go:89 +0x50
github.com/tendermint/tendermint/vendor/github.com/tendermint/tmlibs/cli.init()
/var/lib/jenkins/workspace/03.Build.Package/go/src/github.com/tendermint/tendermint/vendor/github.com/tendermint/tmlibs/cli/setup.go:190 +0x76
main.init()
/var/lib/jenkins/workspace/03.Build.Package/go/src/github.com/tendermint/tendermint/cmd/tendermint/main.go:42 +0x49```
An error message instead would be nice.
```
Now GoPath() is a function instead of a variable.
2017-10-25 11:19:53 +04:00
Ethan Buchman
62a7beec21
Merge pull request #780 from ericdmann/769-error-msg-while-testnet-sync
...
Change log level to Info when proposal block hashing fails
2017-10-24 23:27:20 -04:00
Eric Mann
45e18a1832
Change log level to Info when proposal block hashing fails due to partially complete block
2017-10-24 14:13:35 -07:00
Anton Kaliaev
c74a359c46
fixes per Bucky's review
2017-10-24 12:14:21 +04:00
Anton Kaliaev
3115c23762
binary format for WAL
2017-10-23 22:27:24 +04:00
Anton Kaliaev
31030c6514
make crc32c a global var
...
change echo format in build.sh script
2017-10-23 22:09:42 +04:00
Anton Kaliaev
7b8ffc9981
add checksum and msg size to TimedWALMessage
...
updated test_data/build.sh script
2017-10-23 22:09:17 +04:00
Ethan Buchman
7a6876bc62
Merge pull request #768 from tendermint/feature/merkleeyes-to-iavl
...
Feature/merkleeyes to iavl
2017-10-23 11:07:21 -04:00
Ethan Buchman
fd60621a8e
update cswal test
2017-10-23 10:03:54 -04:00
Anton Kaliaev
c4646bf87f
make state#Params not a pointer
...
also remove the comment
2017-10-16 10:34:02 +04:00
Anton Kaliaev
716364182d
[state] expose ChainID and Params
...
```
jaekwon
Yeah we should definitely expose ChainID.
ConsensusParams is small enough, we can just write it.
```
https://github.com/tendermint/tendermint/pull/676#discussion_r144123203
2017-10-16 10:34:02 +04:00
Anton Kaliaev
1971e149fb
ChainID() and Params() do not return errors
...
- remove state#GenesisDoc() method
2017-10-16 10:34:02 +04:00
Emmanuel Odeke
7939d62ef0
all, state: unexpose GenesisDoc, ChainID fields make them accessor methods
...
Fixes #671
Unexpose GenesisDoc and ChainID fields to avoid them being
serialized to the DB on every block write/state.Save()
A GenesisDoc can now be alternatively written to the state's
database, by serializing its JSON as a value of key "genesis-doc".
There are now accessors and a setter for these attributes:
- state.GenesisDoc() (*types.GenesisDoc, error)
- state.ChainID() (string, error)
- state.SetGenesisDoc(*types.GenesisDoc)
This is a breaking change since it changes how the state's
serialization and requires that if loading the GenesisDoc entirely
from the database, you'll need to set its value in the database
as the GenesisDoc's JSON marshaled bytes.
2017-10-16 10:34:01 +04:00
Anton Kaliaev
dc0e8de9b0
extract some of the consensus types into ./types
...
so they can be used in rpc/core/types/responses.go.
```
So, it seems like we could use the actual structs here, but we don't want to have to import consensus to get them, as then clients are importing too much crap. So probably we should move some types from consensus into consensus/types so we can import.
Will these raw messages be identical to:
type ResultDumpConsensusState struct {
RoundState cstypes.RoundState
PeerRoundStates map[string]cstypes.PeerRoundState
}
```
https://github.com/tendermint/tendermint/pull/724#discussion_r143598193
2017-10-10 12:39:21 +04:00
Zach Ramsay
d56b44f3a5
all: no more anonymous imports
2017-10-04 16:40:45 -04:00
Ethan Buchman
8c6bd44929
log stack trace on consensus failure
2017-10-02 23:34:06 -04:00
Ethan Buchman
8311f5c611
abci.Info takes a struct; less merkleeyes
2017-09-22 11:42:40 -04:00
Ethan Buchman
75b97a5a65
PrivValidatorFS is like old PrivValidator, for now
2017-09-21 16:46:31 -04:00
Ethan Buchman
779c2a22d0
node: NewNode takes DBProvider and GenDocProvider
2017-09-21 15:54:33 -04:00
Ethan Buchman
4382c8d28b
fix tests
2017-09-21 15:52:25 -04:00
Ethan Buchman
944ebccfe9
more PrivValidator interface
2017-09-21 15:51:20 -04:00
Ethan Buchman
fd1b0b997a
PrivValidator interface
2017-09-21 15:51:20 -04:00
Adrian Brink
7dd3c007c7
Refactor priv_validator
...
Users can now just pass an object that implements the Signer interface.
2017-09-21 15:50:43 -04:00
Ethan Buchman
3089bbf2b8
Amount -> Power. Closes #166
2017-09-21 14:59:27 -04:00
Ethan Buchman
5feeb65cf0
dont use pointers for ConsensusParams
2017-09-21 14:59:24 -04:00
Ethan Buchman
3a03fe5a15
updated to match adr 005
2017-09-21 14:51:29 -04:00
Ethan Buchman
2b6db268cf
genesis json tests and mv ConsensusParams to types
2017-09-21 14:51:29 -04:00
Ethan Buchman
1f3e4d2d9a
move PartSetSize out of the config, into ConsensusParams
2017-09-21 14:51:29 -04:00
Zach Ramsay
70b95135e6
consensus: use filepath for windows compatibility, closes #595
2017-09-18 17:49:43 -04:00
Ethan Buchman
90c0267bc1
types: privVal.Sign returns an error
2017-09-16 01:07:04 -04:00
Ethan Buchman
aea8629272
peer interface
2017-09-15 18:40:59 -04:00
Ethan Buchman
399fb9aa70
consensus: remove support for replay by #HEIGHT. closes #567
2017-09-06 01:53:41 -04:00
Ethan Buchman
78446fd99c
state: persist validators
2017-09-03 16:07:37 -04:00
Ethan Buchman
9ceccbe9a4
consensus: recover panics in receive routine
2017-08-16 01:01:09 -04:00
Ethan Buchman
35a4912449
dont panic on getVoteBitArray
2017-08-16 00:43:55 -04:00
Ethan Buchman
c5a657f540
consensus: test proposal heartbeat
2017-08-10 01:24:23 -04:00
Ethan Buchman
c9e11de2a7
consensus: log ProposalHeartbeat msg
2017-08-10 00:12:16 -04:00
Ethan Buchman
49278a7f9c
Merge pull request #579 from tendermint/feature/sync_status
...
Add fast-sync status to Status() call
2017-08-09 23:51:25 -04:00
Ethan Buchman
b0728260e9
comments
2017-08-09 23:51:09 -04:00
Ethan Buchman
92ada55e5a
make conR.FastSync() thread safe
2017-08-09 14:55:21 -04:00
Ethan Buchman
0bf66deb3c
fixes from review
2017-08-08 17:09:04 -04:00
Ethan Buchman
d2f3e9faf4
test CreateEmptyBlocksInterval
2017-08-08 16:35:25 -04:00
Ethan Buchman
37f1390473
CreateEmptyBlocks and CreateEmptyBlocksInterval
2017-08-08 16:22:37 -04:00
Ethan Buchman
fb47ca6d35
fixes from review
2017-08-04 21:36:11 -04:00
Ethan Buchman
b8ac67e240
some fixes
2017-08-03 13:25:26 -04:00
Ethan Buchman
ab753abfa0
Proposer->Proposal; sign heartbeats
2017-07-29 17:04:28 -04:00
Ethan Buchman
10f8101314
fix race
2017-07-29 11:45:07 -04:00
Ethan Buchman
530626dab7
broadcast proposer heartbeat msg
2017-07-29 11:45:02 -04:00
Ethan Buchman
b96d28a42b
test progress in higher round
2017-07-28 23:43:30 -04:00
Ethan Buchman
3444bee47f
fixes from review; use mempool.TxsAvailable() directly
2017-07-28 23:42:43 -04:00
Ethan Buchman
cf3abe5096
consensus: remove rs from handleMsg
2017-07-28 23:42:19 -04:00
Ethan Buchman
ecdda69fab
commit empty blocks when needed to prove app hash
2017-07-28 22:12:11 -04:00
Ethan Buchman
fc3fe9292f
fixes from review
2017-07-28 22:12:11 -04:00
Ethan Buchman
678a9a2e42
TxsAvailable tests
2017-07-28 22:11:45 -04:00
Ethan Buchman
124032e3e9
NoEmptyBlocks config option
2017-07-28 22:11:45 -04:00
Ethan Buchman
4beac54bd9
no empty blocks
2017-07-28 22:11:45 -04:00
Ethan Buchman
39493bcd9a
consensus: isProposer func
2017-07-28 22:11:10 -04:00
Ethan Buchman
e9b7221292
consensus: more comments
2017-07-20 00:59:28 -04:00
ramil
6f8d385dfa
fast sync status
2017-07-17 09:44:23 +03:00
Ethan Buchman
5f6b996d22
breakup some long lines; add more comments to consensus reactor
2017-07-09 18:38:59 -04:00
Ethan Buchman
74a3a2b56a
fix comments
2017-07-09 18:01:25 -04:00
Adrian Brink
b07d01f102
Add more comments on public functions and extra logging during 'enterPrevote'
...
Signed-off-by: Adrian Brink <adrian@brink-holdings.com>
2017-07-09 20:35:48 +02:00
Ethan Buchman
612726d9f6
consensus: better logging
2017-07-07 16:58:16 -04:00
Ethan Buchman
5888ddaab1
consensus: improve logging for conflicting votes
2017-07-07 13:41:50 -04:00
Ethan Buchman
ca8c34f966
add consensus reactor sleep durations to the config
2017-07-07 12:39:40 -04:00
Ethan Buchman
0d1fa8e884
fixes from review
2017-06-28 11:12:45 -04:00
Ethan Buchman
468982ffe4
fixes
2017-06-23 22:12:45 -04:00
Ethan Buchman
2750343de5
Merge branch 'apply-megacheck' into unstable
2017-06-23 21:38:22 -04:00
Ethan Buchman
3c0128a680
undo some megacheck suggestions
2017-06-23 21:36:47 -04:00
Anton Kaliaev
b4ece65726
standardize key for errors (should be "err")
2017-06-14 12:50:49 +04:00
Anton Kaliaev
562dd67e16
fix invalid keys (space is prohibited by logfmt encoder)
2017-06-14 12:50:01 +04:00
zramsay
9c3eee0b00
Makefile: add megacheck & some additional fixes
2017-05-30 13:35:34 -04:00
zramsay
cf31f8d06f
core: apply megacheck vet tool (unused, gosimple, staticcheck)
2017-05-29 23:11:40 -04:00
spring1843
cf686d4f83
Fix commonly misspelled words
2017-05-20 21:43:00 -07:00
Ethan Buchman
30a19fc899
[consensus] Info->Debug for is a validator log msg
2017-05-18 11:26:15 +02:00
Anton Kaliaev
91dc87e7c4
update for a new ABCI API
2017-05-16 19:06:35 +02:00
Adrian Brink
eb9ca23250
log whether node is a validator in each round
2017-05-16 14:01:52 +02:00
Anton Kaliaev
1dfb95f719
[consensus] color code different consensus instances in consensus tests
...
(Refs #492 )
2017-05-15 09:35:29 +02:00
Anton Kaliaev
f8fdbe3dbc
changes as per Bucky's review
2017-05-13 16:22:51 +02:00
Anton Kaliaev
c9cd8de9c6
set logger
2017-05-13 10:25:00 +02:00
Anton Kaliaev
3e1343dc6b
has as a base16 string
2017-05-13 10:24:59 +02:00
Anton Kaliaev
f803544195
new logging
2017-05-13 10:24:58 +02:00
Ethan Buchman
46151720f8
fix tests
2017-05-04 22:46:41 -04:00
Ethan Buchman
9109b20852
SetRoot
2017-05-04 22:46:41 -04:00
Ethan Frey
6b059e0063
Accept relative paths in all configs, TODO: must SetRoot
2017-05-04 22:46:40 -04:00
Ethan Frey
92dee7ea3c
Commands compile (mostly) with new config reading
2017-05-04 22:46:40 -04:00
Ethan Frey
604bf03f3a
Pulled out all config structs (except p2p.PeerConfig) into config package
2017-05-04 22:46:40 -04:00
Ethan Buchman
92bafa7ecd
consensus: fix tests
2017-05-04 22:46:13 -04:00
Ethan Buchman
6afee8f117
rpc: fix tests
2017-05-04 22:45:13 -04:00
Ethan Buchman
1ef7c1d25b
cmd: fixes for new config
2017-05-04 22:43:55 -04:00
Ethan Buchman
75b6c5215f
fewer structs. remove viper from consensus
2017-05-04 22:43:55 -04:00