Commit Graph

192 Commits

Author SHA1 Message Date
Ethan Buchman aeb91dfc22 dev version bump 2018-06-04 15:57:57 -07:00
Ethan Buchman 876c8f14e7 changelog and version 2018-06-04 14:16:58 -07:00
Ethan Buchman c777be256a changelog, version 2018-06-03 16:11:21 -04:00
Ethan Buchman d66f8bf829 Merge branch 'master' into develop 2018-06-03 16:10:04 -04:00
Alexander Simmerl 3255c076e5
Remove auth_enc config option
As we didn't hear any voices requesting this feature, we removed the
option to disable it and always have peer connection auth encrypted.

closes #1518
follow-up #1325
2018-06-01 21:07:20 +02:00
Ethan Buchman aaaa5f23e2 changelog and version 2018-05-30 23:36:36 -04:00
Ethan Buchman d454b1b25f SkipDuplicate -> AllowDuplicate; fix p2p test on mac 2018-05-30 21:44:39 -04:00
Ethan Buchman 432f21452d Merge branch 'master' into develop 2018-05-30 21:43:31 -04:00
Ethan Buchman 2763c8539c changelog and version 2018-05-29 12:31:01 -04:00
Anton Kaliaev 6004587347
expect all tags to be strings (#1498)
* expect all tags to be strings

Refs #1369

* port changes from https://github.com/tendermint/tmlibs/pull/204

Refs #1369
2018-05-28 14:37:11 +04:00
Zach 7f20eb5f8e generate RPC docs using Slate (#1612)
* generate RPC docs using Slate (#691)

* update changelog

* skip if branch not develop

* slate: only build if rpc/core has changes

* fetch develop to compare against

* slate: build on master only

* [rpc/core] use original repo, not fork in README
2018-05-25 15:59:24 +04:00
Anton Kaliaev 708f35e5c1
do not look for height in older files if we've seen height - 1
Refs #1600
2018-05-25 15:11:15 +04:00
Anton Kaliaev a9d0adbdef
update changelog 2018-05-21 10:56:33 +04:00
Ethan Buchman 383c255f35 dev version bump 2018-05-20 16:54:21 -04:00
Ethan Buchman 082a02e6d1 consensus: only fsync wal after internal msgs 2018-05-20 14:40:47 -04:00
Ethan Buchman 2c40966e46 fix changelog 2018-05-20 14:08:35 -04:00
Ethan Buchman 0a9dc9f875 changelog 2018-05-20 10:25:21 -04:00
Ethan Buchman 6701dba876 changelog 2018-05-20 10:22:22 -04:00
Ethan Buchman 52f27686ef
Merge pull request #1567 from tendermint/909-limit-tx-search-output
limit /tx_search output
2018-05-20 09:44:41 -04:00
Ethan Buchman e0dbc3673c version bump 2018-05-17 22:28:53 -04:00
Ethan Buchman 19ccd1842f version and changelog 2018-05-17 15:47:07 -04:00
Anton Kaliaev 8d60a5a7bd
update changelog 2018-05-17 21:25:45 +04:00
Ethan Buchman 68a0b3f95b version bump. add roadmap back. minor fixes 2018-05-15 22:42:29 -04:00
Ethan Buchman 03f6a29a64 changelog and version 2018-05-14 17:00:57 -04:00
Ethan Buchman 16932f889f changelog 2018-05-14 10:45:18 -04:00
Ethan Buchman 66c2b60324 version and changelog 2018-04-30 16:06:45 -04:00
Ethan Buchman c90bf77566 rpc: add n_peers to /net_info 2018-04-28 16:09:18 -04:00
Ethan Buchman 64569b15e5 fix build and test 2018-04-28 15:39:09 -04:00
Ethan Buchman 0cbbb61962 minor cleanup 2018-04-28 01:02:39 -04:00
Ethan Buchman fa66694f2e Merge branch 'develop' into fix-persistent-first 2018-04-28 00:34:03 -04:00
Ethan Buchman 79bfbebfff rpc: docs/comments 2018-04-27 23:19:40 -04:00
Ethan Buchman ffe81a0206 changelog and version 2018-04-27 12:35:21 -04:00
Ethan Buchman 1ab89e6cbf update changelog 2018-04-27 12:23:00 -04:00
Ethan Buchman 25cee8827a
Merge branch 'develop' into 1428-remove-wal-light 2018-04-27 12:06:08 -04:00
Ethan Buchman d48a6f930d document pre-amino pubkeys/addresses 2018-04-26 20:46:08 -04:00
Anton Kaliaev 1706ce6f7f
update changelog for 0.19.0 release 2018-04-13 10:50:34 +02:00
Bric3d 64879c1e6a 1417 status response format (#1424)
* Reformated the ResultStatus

* fix misuse of ResultStatus.

* updated changelog

* Fixed tests

* fixed rpc helper tests

* fixed rpc_tests

* fixed mock/status_test

* fixed typo

* fixed ommitempty on validatorstatus and the changelog

* fixed extra line in changelog

* Updated usage of the /status json response in tests after breaking changes

* Updated remaining tests with changes after searching the codebase for usage

* Reformated the ResultStatus

* fix misuse of ResultStatus.

* updated changelog

* Fixed tests

* fixed rpc helper tests

* fixed rpc_tests

* fixed mock/status_test

* fixed typo

* fixed ommitempty on validatorstatus and the changelog

* Updated usage of the /status json response in tests after breaking changes

* Updated remaining tests with changes after searching the codebase for usage

* rebased against develop
2018-04-11 10:38:34 +02:00
Anton Kaliaev e88f74bb9b
remove wal_light setting
Closes #1428
2018-04-11 10:08:03 +02:00
Ethan Buchman dcd00b0e68 update deps and changelog 2018-04-09 16:36:42 +03:00
Ethan Buchman 9cc2cf362f changelog and version 2018-04-06 23:03:27 +03:00
Ethan Buchman ed93fb34ab
Merge pull request #1350 from tendermint/1275-p2p-loopbacks
p2p: loopbacks should be detected and ignored instead of dialling self infinitely
2018-04-06 18:59:05 +03:00
Anton Kaliaev d38a6cc7ea trim whitespace from elements of lists (like `persistent_peers`)
Refs #1380
2018-04-05 16:42:26 +03:00
Anton Kaliaev 3a672cb2a9
update changelog [ci skip] 2018-04-05 15:27:46 +02:00
Ethan Buchman 7cce07bc99
Merge pull request #1352 from tendermint/1228-require-id
p2p: require all addresses come with an ID no matter what
2018-04-05 15:55:41 +03:00
Anton Kaliaev cee7b5cb54 GetSelectionWithBias
Refs #1130
2018-04-05 12:00:16 +02:00
Anton Kaliaev 904a3115a6
require addresses to have an ID by default
Refs #1228
2018-04-05 11:55:29 +02:00
Anton Kaliaev ed782e7508
include validator's voting power in /status
Refs #581
2018-04-04 11:34:59 +02:00
Anton Kaliaev 8462493cbf [rpc] fix subscribing using an abci.ResponseDeliverTx tag
Refs #1369
2018-04-03 15:53:13 +02:00
Javed Khan 5ef639fcbe
p2p: persistent - redial if first dial fails
Fixes #1401
2018-04-03 09:27:06 +05:30
Anton Kaliaev 2d857c4b1b
add hash field to ResultTx (/tx and /tx_search endpoints) (#1374)
Refs #1367
2018-03-28 15:44:58 +02:00
Ethan Buchman 9bf5862def types: fix genesis.AppStateJSON 2018-03-27 11:20:09 -04:00
Ethan Buchman e1d98bb7f6 forgot bug fix in changelog 2018-03-27 10:06:30 -04:00
Anton Kaliaev 4e86835163
update changelog for 0.17.0 release 2018-03-27 09:06:32 +02:00
Anton Kaliaev 2c1887a635
update changelog 2018-03-26 22:06:58 +02:00
Anton Kaliaev b11c26cc1c
update CHANGELOG 2018-03-19 19:53:28 +03:00
Anton Kaliaev a39aec0bae
rename private_peers to private_peer_ids to distinguish from peers 2018-03-15 11:55:30 +04:00
Anton Kaliaev 8bef3eb1f4
private peers
Refs #1126
2018-03-15 11:55:29 +04:00
Anton Kaliaev e8d8aedd1f
update changelog 2018-03-01 12:00:09 +04:00
Anton Kaliaev 056b70b4ce
update changelog 2018-02-28 23:44:10 +04:00
Ethan Buchman 9293ae76bf p2p: introduce peerConn to simplify peer creation (#1226)
* expose AuthEnc in the P2P config

if AuthEnc is true, dialed peers must have a node ID in the address and
it must match the persistent pubkey from the secret handshake.

Refs #1157

* fixes after my own review

* fix docs

* fix build failure

```
p2p/pex/pex_reactor_test.go:288:88: cannot use seed.NodeInfo().NetAddress() (type *p2p.NetAddress) as type string in array or slice literal
```

* p2p: introduce peerConn to simplify peer creation

* Introduce `peerConn` containing the known fields of `peer`
* `peer` only created in `sw.addPeer` once handshake is complete and NodeInfo is checked
* Eliminates some mutable variables and makes the code flow better
* Simplifies the `newXxxPeer` funcs
* Use ID instead of PubKey where possible.
        * SetPubKeyFilter -> SetIDFilter
        * nodeInfo.Validate takes ID
        * remove peer.PubKey()

* persistent node ids

* fixes from review

* test: use ip_plus_id.sh more

* fix invalid memory panic during fast_sync test

```
2018-02-21T06:30:05Z box887.localdomain docker/local_testnet_4[14907]: panic: runtime error: invalid memory address or nil pointer dereference
2018-02-21T06:30:05Z box887.localdomain docker/local_testnet_4[14907]: [signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x98dd3e]
2018-02-21T06:30:05Z box887.localdomain docker/local_testnet_4[14907]:
2018-02-21T06:30:05Z box887.localdomain docker/local_testnet_4[14907]: goroutine 3432 [running]:
2018-02-21T06:30:05Z box887.localdomain docker/local_testnet_4[14907]: github.com/tendermint/tendermint/p2p.newOutboundPeerConn(0xc423fd1380, 0xc420933e00, 0x1, 0x1239a60, 0
xc420128c40, 0x2, 0x42caf6, 0xc42001f300, 0xc422831d98, 0xc4227951c0, ...)
2018-02-21T06:30:05Z box887.localdomain docker/local_testnet_4[14907]: #011/go/src/github.com/tendermint/tendermint/p2p/peer.go:123 +0x31e
2018-02-21T06:30:05Z box887.localdomain docker/local_testnet_4[14907]: github.com/tendermint/tendermint/p2p.(*Switch).addOutboundPeerWithConfig(0xc4200ad040, 0xc423fd1380, 0
xc420933e00, 0xc423f48801, 0x28, 0x2)
2018-02-21T06:30:05Z box887.localdomain docker/local_testnet_4[14907]: #011/go/src/github.com/tendermint/tendermint/p2p/switch.go:455 +0x12b
2018-02-21T06:30:05Z box887.localdomain docker/local_testnet_4[14907]: github.com/tendermint/tendermint/p2p.(*Switch).DialPeerWithAddress(0xc4200ad040, 0xc423fd1380, 0x1, 0x
0, 0x0)
2018-02-21T06:30:05Z box887.localdomain docker/local_testnet_4[14907]: #011/go/src/github.com/tendermint/tendermint/p2p/switch.go:371 +0xdc
2018-02-21T06:30:05Z box887.localdomain docker/local_testnet_4[14907]: github.com/tendermint/tendermint/p2p.(*Switch).reconnectToPeer(0xc4200ad040, 0x123e000, 0xc42007bb00)
2018-02-21T06:30:05Z box887.localdomain docker/local_testnet_4[14907]: #011/go/src/github.com/tendermint/tendermint/p2p/switch.go:290 +0x25f
2018-02-21T06:30:05Z box887.localdomain docker/local_testnet_4[14907]: created by github.com/tendermint/tendermint/p2p.(*Switch).StopPeerForError
2018-02-21T06:30:05Z box887.localdomain docker/local_testnet_4[14907]: #011/go/src/github.com/tendermint/tendermint/p2p/switch.go:256 +0x1b7
```
2018-02-27 15:54:40 +04:00
Ethan Buchman ec2f3f49ef changelog date and version 2018-02-19 17:35:46 -05:00
Ethan Buchman 8bba7c64bc update version and changelog [ci skip] 2018-02-19 17:33:48 -05:00
Anton Kaliaev cf1f483526
add seed_mode flag (`--p2p.seed_mode`) 2018-02-08 17:20:55 +04:00
Ethan Buchman fb109db33d update changelog 2018-01-25 02:10:01 -05:00
Ethan Buchman e6b70baae0 Merge branch 'develop' into 864-distinguish-between-seeds-and-manual-peers 2018-01-13 14:34:32 -05:00
Anton Kaliaev 1b455883d2
readd /dial_seeds 2018-01-09 17:54:28 -06:00
Anton Kaliaev e4897b7bdd
rename manual peers to persistent peers 2018-01-09 16:18:05 -06:00
Anton Kaliaev 37f86f9518
update changelog [ci skip] 2018-01-09 16:04:07 -06:00
Zach e0e600df05
Merge branch 'develop' into config 2018-01-06 05:30:38 +00:00
Ethan Buchman 381fe19335 changelog date [ci skip] 2017-12-29 17:51:19 -05:00
Ethan Buchman 60f95cd9ea changelog and version 2017-12-29 11:28:44 -05:00
Ethan Buchman 8d8d63c94c changelog 2017-12-28 23:15:54 -05:00
Zach Ramsay 70ba608850 config: write all default options to config file
config: test the default file

docs: spiff up config

config: minor fixes & comments

config: simplify test

config; use a seperate config directory, #556

config: update docs & parameterize file paths

config: PR comments

config: use the default object

fix a rebase error
2017-12-28 20:49:02 +00:00
Anton Kaliaev 2f91289880
update changelog [ci skip] 2017-12-13 12:26:12 -06:00
Ethan Buchman 11761d1769 initial port of cosmos-sdk basecli proxy 2017-12-11 22:23:13 -05:00
Ethan Buchman 2af32d6665 changelog and version bump 2017-12-11 15:05:56 -05:00
Ethan Buchman 5c58db3bb4 changelog [ci skip] 2017-12-11 14:49:34 -05:00
Ethan Buchman e7b9cd8ee8
Merge branch 'develop' into 785-wal-improvements 2017-12-10 19:45:52 -05:00
Anton Kaliaev 101680d603
update changelog [ci skip] 2017-12-10 11:35:22 -06:00
Anton Kaliaev d819d5d324
update changelog [ci skip] 2017-12-10 11:34:08 -06:00
Ethan Buchman 6884463ba2 update changelog [ci skip] 2017-12-06 03:38:03 -05:00
Ethan Buchman 167d0e82f9 fixes and version bump 2017-12-06 03:33:03 -05:00
Ethan Buchman 42e77de6a3 changelog; minor stuff; update glide 2017-12-06 02:45:38 -05:00
Ethan Buchman 1e8deacf2e Merge branch 'master' into develop 2017-11-28 04:39:41 +00:00
Adrian Brink 25f9eb782b Upgrade tmlibs dependency to build on Windows 2017-11-28 04:04:58 +00:00
Ethan Buchman 53f15fde07 update changelog 2017-11-17 00:04:03 +00: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 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 b2b35d7dc1 update changelog 2017-10-27 11:54:20 -04:00
Ethan Buchman a1501dcde8 version bump 2017-10-27 11:54:20 -04:00
Ethan Buchman bb6c15b00a CHANGELOG [ci skip] 2017-10-26 09:42:46 -04:00
Ethan Buchman fcf459158d CHANGELOG [ci skip] 2017-10-26 00:29:58 -04:00
Anton Kaliaev b26f812399
update changelog 2017-10-16 10:58:52 +04:00
Ethan Buchman 3356544706 update changelog 2017-10-10 11:10:48 -04:00
Anton Kaliaev 4bd4d59af5
update changelog [ci skip] 2017-10-10 01:14:00 +04:00
Ethan Buchman aa57e89e21 changelog: add genesis amount->power 2017-10-02 14:28:04 -04:00
Ethan Buchman 7d983a548b changelog 2017-09-22 11:44:25 -04:00
Ethan Buchman b0017c5460 update CHANGELOG [ci skip] 2017-09-21 12:34:37 -04:00