Anton Kaliaev
99aea7b079
mempool: fix nil pointer dereference ( #5412 )
previously, the second next could return nil, which would be the reason
for panic on line 275:
memTx := next.Value.(*mempoolTx)
Closes #5408
4 years ago
Anton Kaliaev
2672b91ab0
rpc/core: more docs and a test for /blockchain endpoint ( #5417 )
Closes #5339
4 years ago
Callum Waters
4f79930c12
blockchain: remove duplication of validate basic ( #5418 )
4 years ago
Anton Kaliaev
1635d1339c
state: more test cases for block validation ( #5415 )
Closes #2589
4 years ago
Marko
9df66eaa7d
codecov: disable annotations ( #5413 )
4 years ago
Marko
b802e9c9c3
docs: add explanation of p2p configuration options ( #5397 )
## Description
Add information on p2p settings in documentation
Closes: #XXX
4 years ago
Marko
95367eaf51
blockchain/v1: add noBlockResponse handling ( #5401 )
## Description
Add simple `NoBlockResponse` handling to blockchain reactor v1. I tested before and after with erik's e2e testing and was not able to reproduce the inability to sync after the changes were applied
Closes : #5394
4 years ago
Erik Grinaker
7eb4e5c0b1
docs: update state sync config with discovery_time ( #5405 )
4 years ago
Callum Waters
f02987e7bc
simplify commit and validators rpc calls ( #5393 )
4 years ago
Anton Kaliaev
7d2b3e305e
docs: minor tweaks ( #5404 )
* docs: fix /validators description
Refs https://github.com/tendermint/spec/pull/169
* consensus: remove nil err from logging statement
* update UPGRADING.md
* note about LightBlocks
4 years ago
Callum Waters
ca8a404c7c
cli: light home dir should default to where the full node default is ( #5392 )
4 years ago
QuantumExplorer
ecd3cbc2bd
fix a few typos ( #5402 )
4 years ago
Tess Rinearson
c50c33e4e9
CHANGELOG: update for 0.34.0-rc4 ( #5400 )
4 years ago
Tess Rinearson
932b4b5749
UPGRADING: polish upgrading instructions for 0.34 ( #5398 )
This change adds some polish to the upgrading instructions for 0.34. The only substantive changes include:
* Calling out ABCI-impacting changes explicitly in the "ABCI Changes" section, even if those changes are also mentioned elsewhere
* Removes `ProofOfTrialPeriod` from consensus params; this change was introduced and then removed.
4 years ago
Erik Grinaker
f83ecdad1d
config: add state sync discovery_time setting ( #5399 )
Reduces the state sync discovery time from 20 to 15 seconds, and makes it configurable.
4 years ago
Erik Grinaker
ebfe0cbb8c
abci: fix socket client error for state sync responses ( #5395 )
This caused the node to crash whenever any state sync-related request was called via the ABCI UNIX socket client.
4 years ago
dependabot[bot]
9adab8ccc7
build(deps): Bump vuepress-theme-cosmos from 1.0.172 to 1.0.173 in /docs ( #5390 )
Bumps [vuepress-theme-cosmos](https://github.com/cosmos/vuepress-theme-cosmos ) from 1.0.172 to 1.0.173.
- [Release notes](https://github.com/cosmos/vuepress-theme-cosmos/releases )
- [Commits](https://github.com/cosmos/vuepress-theme-cosmos/commits )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Tess Rinearson <tess.rinearson@gmail.com>
4 years ago
Tess Rinearson
9fd089f823
README: clean up README ( #5391 )
Cleans up the grammar, removes out-of-date information, and reduces false promises.
4 years ago
Erik Grinaker
a2bbc2984b
changelog: minor tweaks ( #5389 )
Clean up some inconsistent formatting and missing PR numbers.
4 years ago
Anton Kaliaev
ffe2742a6c
mempool: batch txs per peer in broadcastTxRoutine ( #5321 )
Closes #625
4 years ago
Anton Kaliaev
4b99502d5b
config: set time_iota_ms to timeout_commit in test genesis ( #5386 )
also, document consensus parameters.
https://forum.cosmos.network/t/consensus-timeouts-explained/1421
Closes #4489
4 years ago
Erik Grinaker
58b4deca86
blockstore: fix race conditions when loading data ( #5382 )
Fixes #5377 and comments in #4588 (review).
4 years ago
Erik Grinaker
3502901dd8
docker: fix incorrect time_iota_ms configuration ( #5385 )
4 years ago
Anton Kaliaev
85a4be87a7
rpc/client: take context as first param ( #5347 )
Closes #5145
also applies to light/client
4 years ago
Marko
0aecda68fc
ux: use docker to format proto files ( #5384 )
## Description
Add a cmd to docker image and use it to format our proto files. This avoids developers the need to install clang-format
Closes: #XXX
4 years ago
ninjaahhh
0e311abf19
mempool/reactor: fix reactor broadcast test ( #5362 )
found out this issue when trying to decouple mempool reactor with its
underlying clist implementation.
according to its comment, the test `TestReactorNoBroadcastToSender` is
intended to make sure that a peer shouldn't send tx back to its origin.
however, the current test forgot to init peer state key, thus the code
will get stuck at waiting for peer to catch up state *instead of* skipping
sending tx back:
b8d08b9ef4/mempool/reactor.go (L216-L226)
this PR fixes the issue by init peer state key.
4 years ago
Callum Waters
ed002cea7e
evidence: introduction of LightClientAttackEvidence and refactor of evidence lifecycle ( #5361 )
evidence: modify evidence types (#5342 )
light: detect light client attacks (#5344 )
evidence: refactor evidence pool (#5345 )
abci: application evidence prepared by evidence pool (#5354 )
4 years ago
Thane Thomson
309e29c245
rpc: revert JSON-RPC/WebSocket response batching ( #5378 )
Revert the JSON-RPC/WebSocket response serialization format to the
standard way (i.e. a single RPC response per WebSocket text message) to
avoid breaking clients.
Serialization format changes will be discussed in an upcoming ADR.
Closes : #5373
4 years ago
Callum Waters
019d2a3689
ADR 047 - Light client evidence handling revision ( #5273 )
4 years ago
Erik Grinaker
8e4c41eb99
adr: add API stability ADR ( #5341 )
[Rendered](https://github.com/tendermint/tendermint/blob/erik/adr-api-stability/docs/architecture/adr-059-go-api-stability.md )
4 years ago
dependabot[bot]
5e09fb2d5e
build(deps): Bump github.com/minio/highwayhash from 1.0.0 to 1.0.1 ( #5370 )
Bumps [github.com/minio/highwayhash](https://github.com/minio/highwayhash ) from 1.0.0 to 1.0.1.
- [Release notes](https://github.com/minio/highwayhash/releases )
- [Commits](https://github.com/minio/highwayhash/compare/v1.0.0...v1.0.1 )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
4 years ago
Marko
ed046966bd
upgrading: state store change ( #5364 )
## Description
Adding a section explaining the state store interface change. I wasn't aware this was used externally. Our infamous API strikes again.
<img width="462" alt="Screen Shot 2020-09-16 at 2 57 12 PM" src="https://user-images.githubusercontent.com/24299864/93342053-2835fe80-f82f-11ea-9296-9484c2931d9a.png ">
Closes: #XXX
4 years ago
Erik Grinaker
531fa07ad2
rpc: fix test data races ( #5363 )
Fixes a couple of test data races. `testing.T` is not concurrency-safe and should not be used in goroutines at all.
4 years ago
Erik Grinaker
817646a88e
rpc: fix openapi spec syntax error ( #5358 )
Broke in #5356 .
4 years ago
Marko
cbe72db7be
makefile: add options for other DBs ( #5357 )
## Description
This PR adds support for badgerdb, rocksdb and boltdb within the build options.
RocksDB builds correctly.
```
make build TENDERMINT_BUILD_OPTIONS=rocksdb
CGO_ENABLED=1 go build -mod=readonly -ldflags "-X github.com/tendermint/tendermint/version.GitCommit=`git rev-parse --short=8 HEAD` -s -w " -trimpath -tags 'tendermint rocksdb' -o build/tendermint ./cmd/tendermint/
tendermint on master [$!] via 🐹 v1.15.2 took 19s
```
Closes : #5355
4 years ago
Anton Kaliaev
8aac1d1333
docs: document max entries for `/blockchain` RPC ( #5356 )
Closes #5339
4 years ago
Marko
56911ee352
state: define interface for state store ( #5348 )
## Description
Make an interface for the state store.
Closes : #5213
4 years ago
Marko
bf6bd2cefa
docs: make rfc section disppear ( #5353 )
## Description
Hide the RFC section from the docs website.
Closes: #XXX
4 years ago
Erik Grinaker
d1a88fe39f
markdownlint: ignore .github directory ( #5351 )
4 years ago
Marko
226af0ad2d
docs: add more description to initial_height ( #5350 )
## Description
Add a sentence on `initial_height`.
There will be a section in the spec repo explaining the genesis more in depth as this is something that will affect both clients
Closes: #XXX
4 years ago
Marko
5069a8822c
crypto: reword readme ( #5349 )
## Description
Reword the readme of the crypto package.
Closes: #XXX
4 years ago
Erik Grinaker
8571b2ee9a
rfc: add end-to-end testing RFC ( #5337 )
[Rendered](https://github.com/tendermint/tendermint/blob/erik/rfc-e2e-testing/docs/rfc/rfc-001-end-to-end-testing.md ).
Related to #5291 .
4 years ago
dependabot[bot]
72d832ff6c
build(deps): Bump google.golang.org/grpc from 1.31.1 to 1.32.0 ( #5346 )
Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go ) from 1.31.1 to 1.32.0.
- [Release notes](https://github.com/grpc/grpc-go/releases )
- [Commits](https://github.com/grpc/grpc-go/compare/v1.31.1...v1.32.0 )
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
4 years ago
Marko
098ebaee22
p2p: reduce log severity ( #5338 )
## Description
This PR aims to reduce the amount of `Logger.Error(..)` calls. Many of these calls are benign and do not need any intervention.
Went from:
```
node1 | E[2020-09-08|14:32:48.407] Connection failed @ recvRoutine (reading byte) module=p2p peer=af8747a81383f40583ae8790d2cc1f92cc7e4a35@192.167.10.4:26656 conn=MConn{192.167.10.4:26656} err="read tcp 192.167.10.3:48614->192.167.10.4:26656: read: connection reset by peer"
node1 | E[2020-09-08|14:32:48.407] Stopping peer for error module=p2p peer="Peer{MConn{192.167.10.4:26656} af8747a813
out}" err="read tcp 192.167.10.3:48614->192.167.10.4:26656: read: connection reset by peer"
node1 | E[2020-09-08|14:32:48.407] Error while stopping peer module=p2p peer=af8747a81383f40583ae8790d2cc1f92cc7e4a35@192.167.10.4:26656 err="already stopped"
node1 | E[2020-09-08|14:32:48.408] MConnection flush failed module=p2p peer=af8747a81383f40583ae8790d2cc1f92cc7e4a35@192.167.10.4:26656 err="write tcp 192.167.10.3:48614->192.167.10.4:26656: use of closed network connection"
```
To:
```
node1 | E[2020-09-08|14:42:54.023] Stopping peer for error module=p2p peer="Peer{MConn{192.167.10.5:37844} e3d01d1795
in}" err=EOF
```
Closes : #4937
4 years ago
Marko
6ab2a19088
header: check block protocol ( #5340 )
## Description
Check block protocol version in header validate basic.
I tried searching for where we check the P2P protocol version but was unable to find it. When we check compatibility with a node we check we both have the same block protocol and are on the same network, but we do not check if we are on the same P2P protocol. It makes sense if there is a handshake change because we would not be able to establish a secure connection, but a p2p protocol version bump may be because of a p2p message change, which would go unnoticed until that message is sent over the wire. Is this purposeful?
Closes : #4790
4 years ago
Marko
c237e06078
ci: fix net run ( #5343 )
4 years ago
Callum Waters
a88f031b1b
ADR 59 evidence composition and lifecycle ( #5331 )
4 years ago
Marko
0ed8dba991
lint: enable errcheck ( #5336 )
## Description
Enable errcheck linter throughout the codebase
Closes : #5059
4 years ago
Callum Waters
3359e0bf2f
resurrect consensus tests ( #5334 )
4 years ago
Tess Rinearson
2eda1798a6
CODEOWNERS: specify more precise codeowners ( #5333 )
4 years ago