Callum Waters
9efc20c963
p2p: improve PEX reactor ( #6305 )
4 years ago
Ismail Khoffi
ee70430255
libs: remove most of libs/rand ( #6364 )
4 years ago
Callum Waters
36d8cb09df
config: create `BootstrapPeers` p2p config parameter ( #6372 )
4 years ago
Marko
990504cd07
crypto: add sr25519 as a validator key ( #6376 )
## Description
Add sr25519 as a validator key option. We support the crypto in tendermint and added batch verification recently.
4 years ago
JayT106
43eacd159f
state/indexer: reconstruct indexer, move txindex into the indexer package ( #6382 )
4 years ago
Callum Waters
5bafedff17
evidence: fix bug with hashes ( #6375 )
4 years ago
Sam Kleinman
d36a5905a6
statesync: improve e2e test outcomes ( #6378 )
I believe that this, in my testing seems to help the e2e state-sync
tests complete more reliably, by fixing some potential, range-related
slice building, as well as the way the test app hashes snapshots.
Additionally, and I'm not sure if we want to do this, but I added this
hook to the reactor that re-sends the request for snapshots during the
retry. This helps in tests prevent systems from getting stuck, but I
think in reality, it might create more traffic, and operators would
just restart a state-syncing node to get a similar effect.
4 years ago
Tess Rinearson
281b5234b2
changelog: update for 0.34.10 ( #6358 )
4 years ago
JayT106
ca7dbea05b
Set cache control in the HTTP-RPC response header ( #6265 )
4 years ago
Callum Waters
d4d2b66067
light: handle too high errors correctly ( #6346 )
4 years ago
gotjoshua
f563bd4ff1
RPC: don't cap page size in unsafe mode ( #6329 )
4 years ago
Tess Rinearson
8b7a53bdb2
changelog: update to reflect 0.34.9 ( #6334 )
4 years ago
Callum Waters
b272746444
Merge pull request from GHSA-f3w5-v9xx-rp8p
* add time warping lunatic attack test
* create too high and connecton refused errors and add to the light client provider
* add height check to provider
* introduce block lag
* add detection logic for processing forward lunatic attack
* add node-side verification logic
* clean up tests and formatting
* update adr's
* update testing
* fix fetching the latest block
* format
* update changelog
* implement suggestions
* modify ADR's
* format
* clean up node evidence verification
4 years ago
Callum Waters
358d1a28b8
node: remove mode defaults. Make node mode explicit ( #6282 )
4 years ago
Aleksandr Bezobchuk
003f394512
rpc: index block events to support block event queries ( #6226 )
4 years ago
Callum Waters
9f7051d38a
node: implement tendermint modes ( #6241 )
Co-authored-by: dongsam <dongsamb@gmail.com>
Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
4 years ago
Marko
efd2fde474
privval: add ctx to privval interface ( #6240 )
## Description
- Add `context.Context` to Privval interface
This pr does not introduce context into our custom privval connection protocol because this will be removed in the next release. When this pr is released.
4 years ago
Marko
6ffdf181f2
crypto: ed25519 & sr25519 batch verification ( #6120 )
Co-authored-by: Aleksandr Bezobchuk <alexanderbez@users.noreply.github.com>
Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
4 years ago
Anton Kaliaev
00b9524168
rpc/jsonrpc/server: return an error in WriteRPCResponseHTTP(Error) ( #6204 )
instead of panicking
Closes #5529
4 years ago
Anton Kaliaev
fe4e97afe0
rpc/jsonrpc: Unmarshal RPCRequest correctly ( #6191 )
i.e. without double pointer. With double pointer, it was possible to
submit `null` value, which will crash the server.
```
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x189ddc0]
goroutine 1 [running]:
github.com/tendermint/tendermint/rpc/jsonrpc/types.(*RPCRequest).UnmarshalJSON(0xc0000147e0, 0xc00029f201, 0x4, 0x1ff, 0x883baa0, 0xc0000147e0)
/Users/anton/go/src/github.com/tendermint/tendermint/rpc/jsonrpc/types/types.go:70 +0x100
encoding/json.(*decodeState).literalStore(0xc000216bb0, 0xc00029f201, 0x4, 0x1ff, 0x1998800, 0xc0000147e0, 0x199, 0xc000231700, 0x10e0a5e, 0x197)
/usr/local/Cellar/go/1.16/libexec/src/encoding/json/decode.go:860 +0x30ce
encoding/json.(*decodeState).value(0xc000216bb0, 0x1998800, 0xc0000147e0, 0x199, 0x1998800, 0xc0000147e0)
/usr/local/Cellar/go/1.16/libexec/src/encoding/json/decode.go:384 +0x40c
encoding/json.(*decodeState).array(0xc000216bb0, 0x18df040, 0xc0001be540, 0x16, 0xc000216bd8, 0x10e405b)
/usr/local/Cellar/go/1.16/libexec/src/encoding/json/decode.go:558 +0x365
encoding/json.(*decodeState).value(0xc000216bb0, 0x18df040, 0xc0001be540, 0x16, 0x16, 0x6e)
/usr/local/Cellar/go/1.16/libexec/src/encoding/json/decode.go:360 +0x22f
encoding/json.(*decodeState).unmarshal(0xc000216bb0, 0x18df040, 0xc0001be540, 0xc000216bd8, 0x0)
/usr/local/Cellar/go/1.16/libexec/src/encoding/json/decode.go:180 +0x2c9
encoding/json.Unmarshal(0xc00029f200, 0x6, 0x200, 0x18df040, 0xc0001be540, 0x0, 0x0)
/usr/local/Cellar/go/1.16/libexec/src/encoding/json/decode.go:107 +0x15d
```
4 years ago
Tess Rinearson
ddba7f931a
changelog: update for 0.34.8 ( #6183 )
4 years ago
Marko
e2384a00ce
privval: return errors on loadFilePV ( #6185 )
## Description
- return errors on `loadFilePv`
closes #6182
4 years ago
Anton Kaliaev
fc5a108d53
libs/log: [JSON format] include timestamp ( #6174 )
Closes #6146
4 years ago
Anton Kaliaev
e9e5026dac
rpc/client/http: drop endpoint arg from New and add WSOptions ( #6176 )
also
- replace `MaxReconnectAttempts`, `ReadWait`, `WriteWait` and `PingPeriod` options with `WSOptions` in `WSClient` (rpc/jsonrpc/client/ws_client.go).
- set default write wait to 10s for `WSClient`(rpc/jsonrpc/client/ws_client.go)
- unexpose `WSEvents`(rpc/client/http.go)
Closes #6162
4 years ago
Anton Kaliaev
0f4124fb54
rpc/client/http: Do not drop events even if the `out` channel is full ( #6163 )
```
// unbuffered
out, err := httpClient.Subscribe(ctx, "event.type=NewTx and account.name=Jack", 0)
// buffered
out, err := httpClient.Subscribe(ctx, "event.type=NewTx AND account.name=Jack", 20)
```
Before: when the `out` channel is buffered and becomes full, we drop an event (+ log the error)
After: when the `out` channel is buffered and becomes full, we block
**Before it was not apparent to the app when an event was dropped (looking at the logs is manual task). After this PR, if the user does not read from `out` on 1 subscription, all other subscriptions will be stuck too.**
Closes #6161
4 years ago
githubsands
d5cf7831f1
state: save in batches within the state store ( #6067 )
4 years ago
Silas Davis
9498cd80bd
Normalise GenesisDoc before saving to state ( #6059 )
Co-authored-by: Callum <cmwaters19@gmail.com>
4 years ago
Anton Kaliaev
c1ca749afa
rpc: change default sorting to desc for `/tx_search` results ( #6168 )
Closes #6155
4 years ago
Bipul Prasad
90c290ac52
rpc: standardize error codes ( #6019 )
4 years ago
Aleksandr Bezobchuk
5b52f87789
ABCI: Fix ReCheckTx for Socket Client ( #6124 )
Fixes the race condition between a callback being set and called during ReCheckTx. Note, I do not see equivalent logic in the gRPC client (anymore) as #5439 suggests, so only the socket client was updated.
closes : #5439
4 years ago
Tess Rinearson
3e6f9329c1
changelog: update to reflect v0.34.4 release ( #6105 )
4 years ago
Callum Waters
c8a661091d
CHANGELOG_PENDING: update changelog for changes to American spelling ( #6100 )
4 years ago
githubsands
e00ffc42d7
store: use a batch instead of individual writes in SaveBlock ( #6018 )
4 years ago
Callum Waters
b9b55db4e5
light: remove max retry attempts from client and add to provider ( #6054 )
4 years ago
Callum Waters
c7b619188d
light: fix panic with RPC calls to commit and validator when height is nil ( #6026 )
4 years ago
Marko
2a2279e010
types: cleanup protobuf.go ( #6023 )
## Description
- remove unused functions
- remove a function used in tests.
Closes: #XXX
4 years ago
Anton Kaliaev
1cd9bdb80b
light/provider/http: fix Validators ( #6022 )
Closes #6010
4 years ago
Marko
1f01e5d726
params: remove blockTimeIota ( #5987 )
## Description
- removes blocktimeiota
- merges block params in abci and core state
- spec change: https://github.com/tendermint/spec/pull/248
Closes : #5939
4 years ago
Marko
70bb8cc8b7
proto: seperate native and proto types ( #5994 )
## Description
Separate protobuf and domain types. We should avoid using protobuf in our core logic.
ref #5460
4 years ago
Tess Rinearson
178d421c77
changelog: update changelogs to reflect changes released in 0.34.2
4 years ago
Callum Waters
bada08c50c
state sync: last consensus params height is not set ( #5889 )
4 years ago
Callum Waters
956b59af87
evidence: buffer evidence from consensus ( #5890 )
4 years ago
Marko
f05788e632
privval: Query validator key ( #5876 )
## Description
- Query validator key when a remote signer is used. This is supported gRPC remote signing and filePV only.
Closes : #3009
4 years ago
Callum Waters
03a6fb2777
state: prune states using an iterator ( #5864 )
4 years ago
Callum Waters
385ea1db7d
store: use db iterators for pruning and range-based queries ( #5848 )
4 years ago
Marko
09cf0bcb01
privval: add grpc ( #5725 )
Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
4 years ago
Tess Rinearson
2c95b0b5e0
changelog: update with changes released in 0.34.1 ( #5875 )
4 years ago
Erik Grinaker
1ccd23ca1d
p2p: fix MConnection inbound traffic statistics and rate limiting ( #5868 )
Fixes #5866 . Inbound traffic monitoring (and by extension inbound rate limiting) was inadvertently removed in 660e72a
.
4 years ago
Callum Waters
9b9222f461
store: order-preserving varint key encoding ( #5771 )
4 years ago
Erik Grinaker
9c47b572f7
libs/os: EnsureDir now returns IO errors and checks file type ( #5852 )
Fixes #5839 .
4 years ago