Callum Waters
cf3a720988
state sync: correctly set last consensus params height ( #5889 )
2021-01-12 16:44:42 +01:00
Callum Waters
ad552b2bb1
evidence: buffer evidence from consensus ( #5890 )
2021-01-12 16:44:42 +01:00
Marko
d260ff3e37
abci: rewrite to proto interface ( #237 )
2021-01-12 15:15:37 +01:00
Marko
a4672048e7
reactors: remove bcv1 ( #241 )
2021-01-11 18:23:40 +01:00
Marko
fc569173a1
layout: add section titles ( #240 )
2021-01-11 18:23:18 +01:00
dependabot[bot]
ce146d00d7
build(deps): bump gaurav-nelson/github-action-markdown-link-check ( #239 )
...
Bumps [gaurav-nelson/github-action-markdown-link-check](https://github.com/gaurav-nelson/github-action-markdown-link-check ) from 1.0.11 to 1.0.12.
- [Release notes](https://github.com/gaurav-nelson/github-action-markdown-link-check/releases )
- [Commits](https://github.com/gaurav-nelson/github-action-markdown-link-check/compare/1.0.11...0fe4911067fa322422f325b002d2038ba5602170 )
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-01-11 12:12:49 +01:00
Erik Grinaker
5d63765990
os: simplify EnsureDir() ( #5871 )
...
#5852 fixed an issue with error propagation in `os.EnsureDir()`. However, this function is basically identical to `os.MkdirAll()`, and can be replaced entirely with a call to it. We keep the function for backwards compatibility.
2021-01-06 17:27:51 +01:00
Erik Grinaker
3185bb8b22
blockchain/v0: stop tickers on poolRoutine exit ( #5860 )
...
Fixes #5841 .
2021-01-06 17:27:51 +01:00
Erik Grinaker
2eba38051a
blockchain/v2: fix missing mutex unlock ( #5862 )
...
Fixes #5843 .
2021-01-06 17:27:51 +01:00
Erik Grinaker
15eed81f12
test/consensus: improve WaitGroup handling in Byzantine tests ( #5861 )
...
Fixes #5845 .
2021-01-06 17:27:51 +01:00
Erik Grinaker
fca7c6449a
libs/os: EnsureDir now returns IO errors and checks file type ( #5852 )
...
Fixes #5839 .
2021-01-06 17:27:51 +01:00
Erik Grinaker
c2b5f8bc4a
abci/grpc: fix invalid mutex handling in StopForError() ( #5849 )
...
Fixes #5840 .
2021-01-06 17:27:51 +01:00
Erik Grinaker
4246000a8c
tools/tm-signer-harness: fix listener leak in newTestHarnessListener() ( #5850 )
...
Fixes #5837 .
2021-01-06 17:27:51 +01:00
Tess Rinearson
2924d41f8b
changelog: update changelog for v0.34.1 ( #5872 )
v0.34.1
2021-01-06 16:32:43 +01:00
Erik Grinaker
13833cba9e
p2p: fix MConnection inbound traffic statistics and rate limiting ( #5868 ) ( #5870 )
...
Fixes #5866 . Inbound traffic monitoring (and by extension inbound rate limiting) was inadvertently removed in 660e72a .
2021-01-06 16:10:28 +01:00
Tess Rinearson
17ce2ccc92
CHANGELOG: prepare 0.34.1-rc1 ( #5832 )
v0.34.1-rc1
2020-12-23 18:45:04 +01:00
Anton Kaliaev
b1328db07f
modify Reactor priorities ( #5826 ) ( #5830 )
...
blockchain/vX reactor priority was decreased because during the normal operation
(i.e. when the node is not fast syncing) blockchain priority can't be
the same as consensus reactor priority. Otherwise, it's theoretically possible to
slow down consensus by constantly requesting blocks from the node.
NOTE: ideally blockchain/vX reactor priority would be dynamic. e.g. when
the node is fast syncing, the priority is 10 (max), but when it's done
fast syncing - the priority gets decreased to 5 (only to serve blocks
for other nodes). But it's not possible now, therefore I decided to
focus on the normal operation (priority = 5).
evidence and consensus critical messages are more important than
the mempool ones, hence priorities are bumped by 1 (from 5 to 6).
statesync reactor priority was changed from 1 to 5 to be the same as
blockchain/vX priority.
Refs https://github.com/tendermint/tendermint/issues/5816
2020-12-23 18:05:14 +01:00
Marko
829a9e1de7
docs/tutorials: specify 0.34 ( #5823 )
...
# Description
Specify 0.34 for tutorials.
Closes : #5735
2020-12-21 09:39:07 -08:00
Anton Kaliaev
dc101f2eff
mempool: disable MaxBatchBytes ( #5800 )
...
@p4u from vocdoni.io reported that the mempool might behave incorrectly under a
high load. The consequences can range from pauses between blocks to the peers
disconnecting from this node.
My current theory is that the flowrate lib we're using to control flow
(multiplex over a single TCP connection) was not designed w/ large blobs
(1MB batch of txs) in mind.
I've tried decreasing the Mempool reactor priority, but that did not
have any visible effect. What actually worked is adding a time.Sleep
into mempool.Reactor#broadcastTxRoutine after an each successful send ==
manual control flow of sort.
As a temporary remedy (until the mempool package
is refactored), the max-batch-bytes was disabled. Transactions will be sent
one by one without batching
Closes #5796
2020-12-21 20:29:31 +04:00
Anton Kaliaev
dc90cf60d5
mempool: introduce KeepInvalidTxsInCache config option ( #5813 )
...
When set to true, an invalid transaction will be kept in the cache (this may help some applications to protect against spam).
NOTE: this is a temporary config option. The more correct solution would be to add a TTL to each transaction (i.e. CheckTx may return a TTL in ResponseCheckTx).
Closes : #5751
2020-12-21 20:29:14 +04:00
Anton Kaliaev
439a5bcacb
p2p: update frame size ( #235 )
...
Reflect the change made in https://github.com/tendermint/tendermint/pull/5805
The MTU (Maximum Transmission Unit) for Ethernet is 1500 bytes.
The IP header and the TCP header take up 20 bytes each at least (unless
optional header fields are used) and thus the max for (non-Jumbo frame)
Ethernet is 1500 - 20 -20 = 1460
Source: https://stackoverflow.com/a/3074427/820520
2020-12-18 12:19:38 +01:00
Josef Widder
accd7ffe18
Update README.md ( #234 )
2020-12-16 13:27:23 +01:00
Josef Widder
42751ea4f3
Computing attack types ( #232 )
...
Add light attack evidence handling
2020-12-15 18:45:26 +01:00
dependabot[bot]
acb9a7d734
build(deps): bump gaurav-nelson/github-action-markdown-link-check ( #233 )
...
Bumps [gaurav-nelson/github-action-markdown-link-check](https://github.com/gaurav-nelson/github-action-markdown-link-check ) from 1.0.8 to 1.0.11.
- [Release notes](https://github.com/gaurav-nelson/github-action-markdown-link-check/releases )
- [Commits](https://github.com/gaurav-nelson/github-action-markdown-link-check/compare/1.0.8...2a60e0fe41b5361f446ccace6621a1a2a5c324cf )
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-12-14 21:53:43 +01:00
Igor Konnov
31cfa53082
The TLA+ specification of the attackers detection ( #231 )
...
* the working attackers isolation spec, needs more comments
* the TLA+ spec of the attackers isolation
2020-12-11 15:03:48 +01:00
Josef Widder
26ef2ccddb
Draft of evidence handling for discussion ( #225 )
...
* start with accountability deliverable
* problem statement
* draft function
* quite complete draft. ready to discuss with Igor
* Update isolate-attackers_001_draft.md
* Update isolate-attackers_001_draft.md
* Update isolate-attackers_001_draft.md
* Update isolate-attackers_001_draft.md
* Update isolate-attackers_001_draft.md
* ready for TLA+ to take over
* isolate
* isolateamnesiatodos
* Update isolate-attackers_001_draft.md
* Update rust-spec/lightclient/attacks/isolate-attackers_001_draft.md
Co-authored-by: Igor Konnov <konnov@forsyte.at >
* Update rust-spec/lightclient/attacks/isolate-attackers_001_draft.md
Co-authored-by: Igor Konnov <konnov@forsyte.at >
* Update rust-spec/lightclient/attacks/isolate-attackers_001_draft.md
Co-authored-by: Igor Konnov <konnov@forsyte.at >
* Update rust-spec/lightclient/attacks/isolate-attackers_001_draft.md
Co-authored-by: Igor Konnov <konnov@forsyte.at >
* Update rust-spec/lightclient/attacks/isolate-attackers_001_draft.md
Co-authored-by: Igor Konnov <konnov@forsyte.at >
* Update rust-spec/lightclient/attacks/isolate-attackers_001_draft.md
Co-authored-by: Igor Konnov <konnov@forsyte.at >
* Update rust-spec/lightclient/attacks/isolate-attackers_001_draft.md
Co-authored-by: Igor Konnov <konnov@forsyte.at >
* Update rust-spec/lightclient/attacks/isolate-attackers_001_draft.md
Co-authored-by: Igor Konnov <konnov@forsyte.at >
2020-12-11 14:34:16 +01:00
Callum Waters
9f0d71e81f
cmd: hyphen-case cli v0.34.1 ( #5786 )
2020-12-11 13:22:09 +01:00
Anton Kaliaev
7f06371915
evidence: omit bytes field ( #5745 )
...
Follow-up to https://github.com/tendermint/tendermint/pull/5743
2020-12-04 12:18:14 +01:00
Tess Rinearson
2a4fd3804c
blockchain/v1: omit incoming message bytes from log
2020-12-04 12:18:14 +01:00
Tess Rinearson
0d9606e1b4
reactors: omit incoming message bytes from reactor logs ( #5743 )
...
After a reactor has failed to parse an incoming message, it shouldn't output the "bad" data into the logs, as that data is unfiltered and could have anything in it. (We also don't think this information is helpful to have in the logs anyways.)
2020-12-04 12:18:14 +01:00
Shahan Khatchadourian
6abcb13dab
BFT requires _less than_ 1/3 faulty validators ( #228 )
...
Thanks fo spotting the imprecision in the text, @shahankhatch !
2020-12-02 12:01:18 +01:00
Erik Grinaker
ce144a1d71
test: fix TestByzantinePrevoteEquivocation flake ( #5710 )
...
This fixes spurious `TestByzantinePrevoteEquivocation` failures by extending the block range and time spent waiting for evidence. I've seen many runs where the evidence isn't committed until e.g. height 27. Haven't looked into _why_ this happens, but as long as the evidence is committed eventually and the test doesn't spuriously fail I'm (mostly) happy. WDYT @cmwaters?
2020-11-30 11:30:40 +01:00
Marko
6c0d4070c2
ci: build for 32 bit, libs: fix overflow ( #5700 )
2020-11-30 11:00:35 +01:00
Marko
033608bbf1
abci: add abci_version to requestInfo ( #223 )
2020-11-24 15:15:08 +01:00
Erik Grinaker
15b70373cc
crypto: fix infinite recursion in Secp256k1 string formatting ( #5707 ) ( #5709 )
...
This caused stack overflow panics in E2E tests, e.g.:
```
2020-11-24T02:37:17.6085640Z [35mvalidator04 |[0m runtime: goroutine stack exceeds 1000000000-byte limit
2020-11-24T02:37:17.6087818Z [35mvalidator04 |[0m runtime: sp=0xc0234b23c0 stack=[0xc0234b2000, 0xc0434b2000]
2020-11-24T02:37:17.6088920Z [35mvalidator04 |[0m fatal error: stack overflow
2020-11-24T02:37:17.6089776Z [35mvalidator04 |[0m
2020-11-24T02:37:17.6090569Z [35mvalidator04 |[0m runtime stack:
2020-11-24T02:37:17.6091677Z [35mvalidator04 |[0m runtime.throw(0x12dc476, 0xe)
2020-11-24T02:37:17.6093123Z [35mvalidator04 |[0m /usr/local/go/src/runtime/panic.go:1116 +0x72
2020-11-24T02:37:17.6094320Z [35mvalidator04 |[0m runtime.newstack()
2020-11-24T02:37:17.6095374Z [35mvalidator04 |[0m /usr/local/go/src/runtime/stack.go:1067 +0x78d
2020-11-24T02:37:17.6096381Z [35mvalidator04 |[0m runtime.morestack()
2020-11-24T02:37:17.6097657Z [35mvalidator04 |[0m /usr/local/go/src/runtime/asm_amd64.s:449 +0x8f
2020-11-24T02:37:17.6098505Z [35mvalidator04 |[0m
2020-11-24T02:37:17.6099328Z [35mvalidator04 |[0m goroutine 88 [running]:
2020-11-24T02:37:17.6100470Z [35mvalidator04 |[0m runtime.heapBitsSetType(0xc009565380, 0x20, 0x18, 0x1137e00)
2020-11-24T02:37:17.6101961Z [35mvalidator04 |[0m /usr/local/go/src/runtime/mbitmap.go:911 +0xaa5 fp=0xc0234b23d0 sp=0xc0234b23c8 pc=0x432625
2020-11-24T02:37:17.6103906Z [35mvalidator04 |[0m runtime.mallocgc(0x20, 0x1137e00, 0x117b601, 0x11e9240)
2020-11-24T02:37:17.6105179Z [35mvalidator04 |[0m /usr/local/go/src/runtime/malloc.go:1090 +0x5a5 fp=0xc0234b2470 sp=0xc0234b23d0 pc=0x428b25
2020-11-24T02:37:17.6106540Z [35mvalidator04 |[0m runtime.convTslice(0xc002743710, 0x21, 0x21, 0xc0234b24e8)
2020-11-24T02:37:17.6107861Z [35mvalidator04 |[0m /usr/local/go/src/runtime/iface.go:385 +0x59 fp=0xc0234b24a0 sp=0xc0234b2470 pc=0x426379
2020-11-24T02:37:17.6109315Z [35mvalidator04 |[0m github.com/tendermint/tendermint/crypto/secp256k1.PubKey.String(...)
2020-11-24T02:37:17.6151692Z [35mvalidator04 |[0m /src/tendermint/crypto/secp256k1/secp256k1.go:161
2020-11-24T02:37:17.6153872Z [35mvalidator04 |[0m github.com/tendermint/tendermint/crypto/secp256k1.(*PubKey).String(0xc009565360, 0x11e9240, 0xc009565360)
2020-11-24T02:37:17.6157421Z [35mvalidator04 |[0m <autogenerated>:1 +0x65 fp=0xc0234b24f8 sp=0xc0234b24a0 pc=0x656965
2020-11-24T02:37:17.6159134Z [35mvalidator04 |[0m fmt.(*pp).handleMethods(0xc00956c680, 0x58, 0xc0234b2801)
2020-11-24T02:37:17.6161462Z [35mvalidator04 |[0m /usr/local/go/src/fmt/print.go:630 +0x30a fp=0xc0234b2768 sp=0xc0234b24f8 pc=0x518b8a
[...]
2020-11-24T02:37:17.6649685Z [35mvalidator04 |[0m /usr/local/go/src/fmt/print.go:630 +0x30a fp=0xc0234b7f48 sp=0xc0234b7cd8 pc=0x518b8a
2020-11-24T02:37:17.6651177Z [35mvalidator04 |[0m created by github.com/tendermint/tendermint/node.startStateSync
2020-11-24T02:37:17.6652521Z [35mvalidator04 |[0m /src/tendermint/node/node.go:587 +0x150
```
2020-11-24 14:01:53 +01:00
Tess Rinearson
182fa32851
.goreleaser: build for windows
v0.34.0
2020-11-19 18:52:34 +01:00
Tess Rinearson
fe94825985
changelog: squash changelog from 0.34 RCs into one ( #5687 )
...
"Squashes" the changelog from RCs 2-6 into one changelog message for 0.34.0, and adds the changelog pending.
2020-11-19 18:43:04 +01:00
Tess Rinearson
386a44cd02
.goreleaser: don't build linux/arm
2020-11-19 18:32:32 +01:00
Marko
0f29b1631e
fix docker deployment ( #5647 )
2020-11-19 18:03:24 +01:00
Tess Rinearson
b80d4d8ff0
relase_notes: add release notes for v0.34.0
2020-11-19 17:41:41 +01:00
Tess Rinearson
b5b53bfc0d
upgrading: update 0.34 instructions with updates since RC4 ( #5686 )
2020-11-18 19:16:05 +01:00
Callum Waters
4ed0fddc37
light: make fraction parts uint64, ensuring that it is always positive ( #5655 )
2020-11-18 15:49:31 +01:00
Marko
23bc2f690c
ci: remove add-path ( #5674 )
2020-11-18 15:21:52 +01:00
Marko
bea7673c1c
e2e: use ed25519 for secretConn (remote signer) ( #5678 )
...
## Description
Hardcode ed25519 to dialTCPFn in e2e tests.
I will backport `DefaultRequestHandler` fixes
This will be replaced when grpc is implemented.
2020-11-18 15:21:52 +01:00
Marko
26493bbbd8
test/e2e: fix secp failures ( #5649 )
2020-11-18 15:21:52 +01:00
Marko
871d0514cd
abci: lastcommitinfo.round extra sentence ( #221 )
2020-11-17 10:33:01 +01:00
Aleksandr Bezobchuk
53463b3fef
rpc: fix content-type header
2020-11-16 10:54:34 -05:00
Anton Kaliaev
e0cf94f5b0
privval: reset pingTimer to avoid sending unnecessary pings ( #5642 ) ( #5668 )
...
Refs #5550
2020-11-16 18:10:49 +04:00
Anton Kaliaev
047b5ea85e
bump go version to 1.15 ( #5639 ) ( #5667 )
2020-11-16 17:58:55 +04:00
Anton Kaliaev
9567477d55
privval: increase read/write timeout to 5s and calculate ping interva… ( #5666 )
...
…l based on it (#5638 )
Partially closes #5550
2020-11-16 17:49:56 +04:00