William Banfield and GitHub
84c15857e4
mempool: return mempool errors to the abci client ( #6740 )
...
This changes adds an `MempoolError` field to the `ResponseCheckTx`. This will allow clients to understand that their transaction was rejected from the mempool despite passing the ABCI check.
This change also updates the code to make use of early returns to prevent highly nested code blocks. Namely, it returns when the type assertion fails at the beginning of the method, instead of wrapping the entire method in a large if statement. This has a somewhat large effect on the diff as rendered by github.
addresses: #3546
2021-07-22 14:52:29 +00:00
William Banfield and GitHub
f70396c6fd
add and run make target for generating existing mocks ( #6732 )
...
There are many `//go:generate mockery` lines in the source code.
This change adds a make target to invoke these mock generations.
This change also invokes the mock invocations and adds the resulting mocks to the repo.
Related to #5274
2021-07-18 00:46:04 +00:00
Marko and GitHub
4f885209aa
RPC: mark grpc as deprecated ( #6725 )
...
## Description
Mark gRPC as deprecated in the RPC layer.
closes #6718
2021-07-15 22:05:21 +00:00
Callum Waters and GitHub
c256edc622
fix evidence rpc test by extending wait time ( #6678 )
2021-07-08 14:43:41 +02:00
JayT106 and GitHub
d4cda544ae
fastsync/rpc: add TotalSyncedTime & RemainingTime to SyncInfo in /status RPC ( #6620 )
2021-07-07 07:26:01 -04:00
Callum Waters and GitHub
ba41d29b50
revert returning empty block ( #6647 )
2021-07-04 23:11:07 +02:00
Aleksandr Bezobchuk and GitHub
414130aee1
pubsub: Refactor Event Subscription ( #6634 )
2021-07-01 11:17:48 -04:00
JayT106 and GitHub
9d0817b308
Revert "rpc: re-index missing events ( #6535 )" ( #6631 )
...
This reverts commit 167fa738a3 .
2021-06-29 15:48:24 -04:00
JayT106 and GitHub
167fa738a3
rpc: re-index missing events ( #6535 )
2021-06-25 09:14:37 -04:00
crypto-facs and GitHub
10d174adcc
rpc: Add TotalGasUsed to block_results response ( #6615 )
...
Closes #6551
Simple PR to add the total gas used in the block by adding the gas used in all the transactions.
This adds a `TotalGasUsed` field to `coretypes.ResultBlockResults`.
Its my first PR to the repo so let me know if there is anything I am missing!
@fedekunze In case you want to take a look
2021-06-24 17:47:41 +00:00
Sam Kleinman and GitHub
9ffa7e8a2b
types: move NodeInfo from p2p ( #6618 )
2021-06-24 12:18:19 -04:00
JayT106 and GitHub
2cc872543b
rpc: add max peer block height into /status rpc call ( #6610 )
...
use `maxPeerBlockHeight` information to show the current network's best height.
Closes #3983
Relate to #3365
ref: the`highestBlock` in the response of `eth.isSyncing` call
https://web3js.readthedocs.io/en/v1.3.4/web3-eth.html#issyncing
2021-06-24 15:11:10 +00:00
Sam Kleinman and GitHub
144af9a81a
rpc: use shorter path names for tests ( #6602 )
2021-06-21 09:44:49 -04:00
Callum Waters and GitHub
c0f7fb08c0
config: add root dir to priv validator ( #6585 )
2021-06-16 17:13:14 +02:00
Sam Kleinman and GitHub
886519e3ca
rpc: add subscription id to events ( #6386 )
...
Addresses #3931
2021-06-15 17:33:47 +00:00
JayT106 and GitHub
cb63ab4ac0
rpc: fix RPC client doesn't handle url's without ports ( #6507 )
2021-06-14 10:34:02 +02:00
Callum Waters and GitHub
32bc399bdd
node: fix genesis on start up ( #6563 )
2021-06-10 10:22:35 +02:00
Callum Waters and GitHub
6f6ac5c04e
state sync: reverse sync implementation ( #6463 )
2021-06-08 19:23:52 +02:00
Sam Kleinman and GitHub
a855f96946
p2p: renames for reactors and routing layer internal moves ( #6547 )
2021-06-08 08:17:09 -04:00
Aleksandr Bezobchuk and GitHub
3635c7a382
logger: refactor Tendermint logger by using zerolog ( #6534 )
2021-06-07 08:30:48 -04:00
Sam Kleinman and GitHub
00c284d9d7
node: change package interface ( #6540 )
2021-06-04 11:36:30 -04:00
Callum Waters and GitHub
08b134ddbc
ws: parse remote addrs with trailing dash ( #6537 )
2021-06-04 17:07:50 +02:00
Sam Kleinman and GitHub
663c0bba9c
rpc: decouple test fixtures from node implementation ( #6533 )
2021-06-04 09:10:38 -04:00
Aleksandr Bezobchuk and GitHub
7ec123c968
improvement: update TxInfo ( #6529 )
...
Remove `Context` from the `TxInfo` type and instead require the caller to pass a `Context` to `CheckTx` which is idiomatic.
closes : #6497
2021-06-02 13:53:57 +00:00
Aleksandr Bezobchuk and GitHub
1e4bc04cd6
mempool: v1 implementation ( #6466 )
2021-06-01 11:17:45 -04:00
JayT106 and GitHub
711a718162
config/indexer: custom event indexing ( #6411 )
2021-05-27 10:44:46 -04:00
Marko and GitHub
719e028e00
libs: internalize some packages ( #6366 )
...
## Description
Internalize some libs. This reduces the amount ot public API tendermint is supporting. The moved libraries are mainly ones that are used within Tendermint-core.
2021-05-25 16:25:31 +00:00
Sam Kleinman and GitHub
d9134063e7
rpc: add chunked rpc interface ( #6445 )
2021-05-24 09:48:27 -04:00
Sam Kleinman and GitHub
fdd506a126
rpc: clean up client global state in tests ( #6438 )
2021-05-11 10:22:38 -04:00
Sam Kleinman and GitHub
0b0914b3df
rpc: remove global environment ( #6426 )
2021-05-06 17:06:16 -04:00
Sam Kleinman and GitHub
0407cd5258
github: fix linter configuration errors and occluded errors ( #6400 )
2021-04-28 11:08:42 -04:00
Ismail Khoffi and GitHub
ee70430255
libs: remove most of libs/rand ( #6364 )
2021-04-23 16:00:35 +02:00
JayT106 and GitHub
43eacd159f
state/indexer: reconstruct indexer, move txindex into the indexer package ( #6382 )
2021-04-21 16:37:44 -04:00
JayT106 and GitHub
ca7dbea05b
Set cache control in the HTTP-RPC response header ( #6265 )
2021-04-14 14:05:27 +02:00
gotjoshua and GitHub
f563bd4ff1
RPC: don't cap page size in unsafe mode ( #6329 )
2021-04-12 13:51:56 +02:00
Callum Waters and GitHub
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
2021-04-08 08:10:03 -07:00
Sam Kleinman and GitHub
6d9372bd39
test: improve cleanup for data and disk use ( #6311 )
2021-04-05 12:39:04 -04:00
Frojdi Dymylja and GitHub
9ecfcc93a6
fix: jsonrpc url parsing and dial function ( #6264 )
...
This PR fixes how the jsonrpc parses the URL, and how the dial function connects to the RPC.
Closes: https://github.com/tendermint/tendermint/issues/6260
2021-03-29 09:24:52 +00:00
Aleksandr Bezobchuk and GitHub
003f394512
rpc: index block events to support block event queries ( #6226 )
2021-03-22 11:47:35 -04:00
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 >
2021-03-18 11:17:53 +01:00
Anton Kaliaev and GitHub
00b9524168
rpc/jsonrpc/server: return an error in WriteRPCResponseHTTP(Error) ( #6204 )
...
instead of panicking
Closes #5529
2021-03-10 09:29:35 +04:00
Marko and GitHub
8c539f7c2b
logs: cleanup ( #6198 )
2021-03-04 10:09:08 +00:00
Aleksandr Bezobchuk and GitHub
be88fd3e63
mempool/rpc: log grooming ( #6201 )
2021-03-03 19:45:35 -05:00
Anton Kaliaev and GitHub
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
```
2021-03-02 10:25:52 +00:00
Anton Kaliaev and GitHub
089b314bdb
test/fuzz: fix PEX reactor test ( #6188 )
...
* test/fuzz: fix PEX reactor test
* .github: [fuzz] increase retention period for crashers
2021-03-01 20:18:51 +04:00
Anton Kaliaev and GitHub
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
2021-02-25 06:57:31 +00:00
Anton Kaliaev and GitHub
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
2021-02-24 04:16:13 +00:00
Anton Kaliaev and GitHub
c1ca749afa
rpc: change default sorting to desc for /tx_search results ( #6168 )
...
Closes #6155
2021-02-23 10:56:16 +00:00
Callum Waters and GitHub
29360f955c
light: improve timeout functionality ( #6145 )
2021-02-18 23:49:24 +01:00
Bipul Prasad and GitHub
90c290ac52
rpc: standardize error codes ( #6019 )
2021-02-18 17:54:02 +01:00