tendermint/CHANGELOG_PENDING.md
Anton Kaliaev 8711af608f
p2p: make persistent prop independent of conn direction (#3593)
## Description

Previously only outbound peers can be persistent.

Now, even if the peer is inbound, if it's marked as persistent, when/if conn is lost,
Tendermint will try to reconnect. This part is actually optional and can be reverted.

Plus, seed won't disconnect from inbound peer if it's marked as
persistent. Fixes #3362

## Commits

* make persistent prop independent of conn direction

Previously only outbound peers can be persistent. Now, even if the peer
is inbound, if it's marked as persistent, when/if conn is lost,
Tendermint will try to reconnect.

Plus, seed won't disconnect from inbound peer if it's marked as
persistent. Fixes #3362

* fix TestPEXReactorDialPeer test

* add a changelog entry

* update changelog

* add two tests

* reformat code

* test UnsafeDialPeers and UnsafeDialSeeds

* add TestSwitchDialPeersAsync

* spec: update p2p/config spec

* fixes after Ismail's review

* Apply suggestions from code review

Co-Authored-By: melekes <anton.kalyaev@gmail.com>

* fix merge conflict

* remove sleep from TestPEXReactorDoesNotDisconnectFromPersistentPeerInSeedMode

We don't need it actually.
2019-05-03 17:21:56 +04:00

1.6 KiB

v0.31.6

**

BREAKING CHANGES:

  • CLI/RPC/Config

  • Apps

  • Go API

  • [libs/common] Removed PanicSanity, PanicCrisis, PanicConsensus and PanicQ
  • [node] Moved GenesisDocProvider and DefaultGenesisDocProviderFunc to state package
  • Blockchain Protocol

  • P2P Protocol

FEATURES:

IMPROVEMENTS:

  • [rpc] #3534 Add support for batched requests/responses in JSON RPC
  • [cli] #3585 Add option to not clear address book with unsafe reset (@climber73)
  • [cli] #3160 Add -config=<path-to-config> option to testnet cmd (@gregdhill)
  • [cs/replay] #3460 check appHash for each block
  • [rpc] #3362 /dial_seeds & /dial_peers return errors if addresses are incorrect (except when IP lookup fails)
  • [node] #3362 returns an error if persistent_peers list is invalid (except when IP lookup fails)
  • [p2p] #3531 Terminate session on nonce wrapping (@climber73)

BUG FIXES:

  • [p2p] #3532 limit the number of attempts to connect to a peer in seed mode to 16 (as a result, the node will stop retrying after a 35 hours time window)
  • [consensus] #2723, #3451 and #3317 Fix non-deterministic tests
  • [p2p] #3362 make persistent prop independent of conn direction
    • Switch#DialPeersAsync now only takes a list of peers
    • Switch#DialPeerWithAddress now only takes an address
  • [consensus] #3067 getBeginBlockValidatorInfo loads validators from stateDB instead of state (@james-ray)
  • [pex] #3603 Dial seeds when addrbook needs more addresses (@defunctzombie)