Commit Graph
100 Commits
Author SHA1 Message Date
Callum WatersandGitHub 02f8e4c0bd blockstore: fix problem with seen commit (#6782) 2021-07-30 17:37:04 +02:00
Callum WatersandGitHub 6ff4c3139c blockchain: rename to blocksync service (#6755) 2021-07-28 17:25:42 +02:00
Callum WatersandGitHub 9a3861fb82 light: wait for tendermint node to start before running example test (#6744) 2021-07-27 18:59:34 +02:00
Callum WatersandGitHub 91e277d7b7 enable pex reactor depending on config param (#6762) 2021-07-26 15:22:12 +02:00
Callum WatersandGitHub a341a626e0 p2p: avoid blocking on the dequeCh (#6765) 2021-07-26 09:09:07 -04:00
Callum WatersandGitHub 0e2752ae42 light: improve error handling and allow providers to be added (#6733) 2021-07-22 18:12:34 +02:00
Callum WatersandGitHub 97a8f125e0 e2e: allow for both v0 and v1 mempool implementations (#6752) 2021-07-22 17:59:02 +02:00
Callum WatersandGitHub 2abfe20114 e2e: prevent adding light clients as persistent peers (#6743) 2021-07-20 18:11:43 +00:00
Callum WatersandGitHub 6dd0cf92c8 router/statesync: add helpful log messages (#6724) 2021-07-15 19:26:35 +02:00
Callum WatersandGitHub 40fba3960d add missing context catch and tests (#6701) 2021-07-14 11:23:15 +02:00
Callum WatersandGitHub 36a859ae54 e2e: ensure evidence validator set matches nodes validator set (#6712) 2021-07-13 19:47:36 +02:00
Callum WatersandGitHub a12e2bbb60 statesync: use initial height as a floor to backfilling (#6709) 2021-07-13 16:36:16 +02:00
Callum WatersandGitHub aa4854ff8f docs: add docs file for the peer exchange (#6665) 2021-07-12 14:11:29 +02:00
Callum WatersandGitHub 051e127d38 light: correctly handle contexts (#6687) 2021-07-09 18:48:18 +02:00
Callum WatersandGitHub decac693ab p2p: remove annoying error log (#6688)
I put this error log in here because I thought it might be a helpful indicator to see when a reactor sends a message to a peer that doesn't have that channel open but it turns out this is happening all the time and it's kind of annoying
2021-07-09 12:48:33 +00:00
Callum WatersandGitHub 2c14d491f6 fix leaking statesync test (#6680) 2021-07-08 15:26:35 +02:00
Callum WatersandGitHub c256edc622 fix evidence rpc test by extending wait time (#6678) 2021-07-08 14:43:41 +02:00
Callum WatersandGitHub 9d9360774f adjust tx load (#6681) 2021-07-08 14:22:50 +02:00
Callum WatersandGitHub 800cce80b7 e2e: allow variable tx size (#6659) 2021-07-07 12:59:27 +02:00
Callum WatersandGitHub 2d95e38986 Revert "consensus: skip all messages during sync (#6577)" (#6654)
This reverts commit 13b95e7127.
2021-07-06 14:27:20 +02:00
Callum WatersandGitHub 6bb4b688e0 use grpc abci protocol in e2e tests (#6652) 2021-07-05 18:18:52 +02:00
Callum WatersandGitHub a1e1e6c290 test: fix non-deterministic backfill test (#6648) 2021-07-05 16:42:36 +02:00
Callum WatersandGitHub c769e3e09b p2p: track peer channels to avoid sending across a channel a peer doesn't have (#6601) 2021-07-05 13:00:19 +02:00
Callum WatersandGitHub ba41d29b50 revert returning empty block (#6647) 2021-07-04 23:11:07 +02:00
Callum WatersandGitHub 5ae3c24d55 evidence: update ADR 59 and add comments to the use of common height (#6628) 2021-06-29 18:15:11 +02:00
Callum WatersandGitHub 6e238b5b9d statesync: make fetching chunks more robust (#6587) 2021-06-21 10:14:15 -04:00
Callum WatersandGitHub e8f38e3260 changelog: have a single friendly bug bounty reminder (#6600) 2021-06-18 14:07:36 +02:00
Callum WatersandGitHub 6ade17997c release: update changelog and version (#6599) 2021-06-18 12:54:06 +02:00
Callum WatersandGitHub 25bb556fee p2p: increase queue size to 16MB (#6588) 2021-06-16 17:27:41 +02:00
Callum WatersandGitHub c0f7fb08c0 config: add root dir to priv validator (#6585) 2021-06-16 17:13:14 +02:00
Callum WatersandGitHub 74af343f28 statesync: tune backfill process (#6565)
This PR make some tweaks to backfill after running e2e tests:
- Separates sync and backfill as two distinct processes that the node calls. The reason is because if sync fails then the node should fail but if backfill fails it is still possible to proceed.
- Removes peers who don't have the block at a height from the local peer list. As the process goes backwards if a node doesn't have a block at a height they're likely pruning blocks and thus they won't have any prior ones either. 
- Sleep when we've run out of peers, then try again.
2021-06-11 15:26:18 +00:00
Callum WatersandGitHub 2c81638787 e2e: fix looping problem while waiting (#6568) 2021-06-11 14:47:55 +02:00
Callum WatersandGitHub 32bc399bdd node: fix genesis on start up (#6563) 2021-06-10 10:22:35 +02:00
Callum WatersandGitHub d6b4bc267b node/tests: clean up use of genesis doc and surrounding tests (#6554) 2021-06-08 19:32:15 +02:00
Callum WatersandGitHub 6f6ac5c04e state sync: reverse sync implementation (#6463) 2021-06-08 19:23:52 +02:00
Callum WatersandGitHub 08b134ddbc ws: parse remote addrs with trailing dash (#6537) 2021-06-04 17:07:50 +02:00
Callum WatersandGitHub 618c945d54 simplify initialization of light client (#6530) 2021-06-03 15:57:55 +02:00
Callum WatersandGitHub e3d5a31d6e docs: rename tendermint-core to system (#6515) 2021-05-31 17:02:00 +02:00
Callum WatersandGitHub c0fcc5f6bb fix net_info call on light rpc (#6514) 2021-05-31 15:46:49 +02:00
Callum WatersandGitHub 89b3b10740 docs: hide security page (second attempt) (#6511) 2021-05-31 12:00:14 +02:00
Callum WatersandGitHub 72ee5aab26 evidence: separate abci specific validation (#6473) 2021-05-25 16:53:14 +02:00
Callum WatersandGitHub 09e0df8479 light: spec alignment on verify skipping (#6474) 2021-05-25 14:48:15 +02:00
Callum WatersandGitHub 230abbe676 fix pex test to handle too many addresses (#6451) 2021-05-12 15:35:28 +02:00
Callum WatersandGitHub c320eb1407 split out initializers into setup.go (#6446) 2021-05-12 11:11:24 +02:00
Callum WatersandGitHub 811dbe439f light: ensure trust level is strictly less than 1 (#6447) 2021-05-11 15:13:52 +02:00
Callum WatersandGitHub 9e2af66a0a types: fix verify commit light / trusting bug (#6414) 2021-05-11 11:06:37 +02:00
Callum WatersandGitHub 64e7b5efea p2p: add channel descriptors to open channel (#6440) 2021-05-10 22:22:07 +02:00
Callum WatersandGitHub 4dded9c852 pex: fix send requests too often test (#6437) 2021-05-10 09:48:24 +02:00
Callum WatersandGitHub a91680efee test: create common functions for easily producing tm data structures (#6435) 2021-05-07 17:00:02 +02:00
Callum WatersandGitHub 0740d8626c remove visibility of security page from tendermint docs (#6420) 2021-05-06 20:13:57 +02:00
Callum WatersandGitHub ec5e3b0b02 p2p: wire pex v2 reactor to router (#6407) 2021-05-05 18:46:51 +02:00
Callum WatersandGitHub 1c63d81bd3 ADR 068: Reverse Sync (#6399) 2021-04-30 09:52:13 +02:00
Callum WatersandGitHub 20610be98c state: keep a cache of block verification results (#6402) 2021-04-29 08:31:38 +02:00
Callum WatersandGitHub 3c50c5a845 github actions: fix e2e-nightly-master.yml (#6398) 2021-04-28 12:22:18 +02:00
Callum WatersandGitHub be2ac87ab0 e2e: split out nightly tests (#6395) 2021-04-27 21:34:08 +02:00
Callum WatersandGitHub 9efc20c963 p2p: improve PEX reactor (#6305) 2021-04-26 13:03:19 +02:00
Callum WatersandGitHub 36d8cb09df config: create BootstrapPeers p2p config parameter (#6372) 2021-04-22 12:55:50 +02:00
Callum WatersandGitHub 5bafedff17 evidence: fix bug with hashes (#6375) 2021-04-21 18:50:39 +02:00
Callum WatersandGitHub 8e8de2b2fb node: use db provider instead of mem db (#6362) 2021-04-16 19:07:18 +02:00
Callum WatersandGitHub 2b8aa65e4f e2e: tx load to use broadcast sync instead of commit (#6347) 2021-04-13 17:59:15 +02:00
Callum WatersandGitHub d4d2b66067 light: handle too high errors correctly (#6346) 2021-04-13 14:21:00 +02:00
Callum WatersandGitHub a818f914ab fix deadlock in light tests (#6332) 2021-04-08 19:30:19 +02:00
Callum WatersandGitHub 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
Callum WatersandGitHub 845efdb76e remove event bus from evidence reactor (#6320) 2021-04-06 16:19:30 +02:00
Callum WatersandGitHub 358d1a28b8 node: remove mode defaults. Make node mode explicit (#6282) 2021-04-02 09:31:25 +02:00
Callum WatersandGitHub cbae3613dd e2e: add evidence generation and testing (#6276) 2021-03-29 20:00:20 +02:00
Callum WatersandGitHub 63f6c26072 update tm command from node to start (#6283) 2021-03-29 11:13:24 +02:00
Callum WatersandGitHub 7d53cb232c e2e: fix perturbation of seed nodes (#6272) 2021-03-25 15:50:27 +01:00
Callum WatersandGitHub 6f6083dae3 linter: fix nolintlint warnings (#6257) 2021-03-19 10:59:14 +01:00
Callum WatersandGitHub dd84867e2b bump linter version to 1.38 (#6253) 2021-03-18 11:31:20 +01: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
Callum WatersandGitHub fa781e6bb7 e2e: fix light client generator (#6236) 2021-03-15 13:04:33 +01:00
Callum WatersandGitHub bf8cce83db use error.Is to check for nondeterminstic vote error type (#6237) 2021-03-15 11:02:54 +01:00
Callum WatersandGitHub 6b4024ad75 fix e2e app test (#6223) 2021-03-10 10:32:51 +01:00
Callum WatersandGitHub 1c314c830e blockstore: save only the last seen commit (#6212) 2021-03-05 19:37:18 +01:00
Callum WatersandGitHub 418e2c140f e2e: integrate light clients (#6196) 2021-03-05 14:24:45 +01:00
Callum WatersandGitHub 0566bea8b2 e2e: add benchmarking functionality (#6210) 2021-03-05 13:26:18 +01:00
Callum WatersandGitHub cab10db725 e2e: adjust timeouts to be dynamic to size of network (#6202) 2021-03-03 18:41:07 -05:00
Callum WatersandGitHub 90fe178b52 mempool: don't return an error on checktx with the same tx (#6199) 2021-03-03 21:02:45 +01:00
Callum WatersandGitHub 37d36cd5bc light: improve provider handling (#6053)
Introduces heuristics that track the amount of no responses or unavailable blocks a provider has for more robust provider handling by the light client. Use concurrent calls to all witnesses when a new primary is needed.
2021-03-01 12:04:02 +01:00
Callum WatersandGitHub 42f6c40751 p2p: enable scheme-less parsing of IPv6 strings (#6158) 2021-02-22 16:24:56 +01:00
Callum WatersandGitHub 29360f955c light: improve timeout functionality (#6145) 2021-02-18 23:49:24 +01:00
Callum WatersandGitHub c8a661091d CHANGELOG_PENDING: update changelog for changes to American spelling (#6100) 2021-02-11 22:54:05 +01:00
Callum WatersandGitHub d4b04776bd e2e: disconnect maverick (#6099) 2021-02-11 15:09:57 -05:00
Callum WatersandGitHub f8bacae0c7 blockchain/v2: internalize behavior package (#6094) 2021-02-11 19:32:11 +01:00
Callum WatersandGitHub 162f67cf26 correct spelling to US english (#6077) 2021-02-11 18:59:18 +01:00
Callum WatersandGitHub 059d42866c .github: remove erik as reviewer from dependapot (#6076) 2021-02-10 17:01:45 +01:00
Callum WatersandGitHub ee3f34f4ab light: create provider options struct (#6064) 2021-02-08 18:23:31 +01:00
Callum WatersandGitHub 1608484de8 remove witnesses in order of decreasing index (#6058) 2021-02-08 12:34:02 +01:00
Callum WatersandGitHub b9b55db4e5 light: remove max retry attempts from client and add to provider (#6054) 2021-02-05 18:01:34 +01:00
Callum WatersandGitHub 78a05d3b9e check block store base is non negative before sending block meta or commits (#6042) 2021-02-04 21:33:29 +01:00
Callum WatersandGitHub c7b619188d light: fix panic with RPC calls to commit and validator when height is nil (#6026) 2021-02-02 14:01:39 +01:00
Callum WatersandGitHub 90d3f56797 store: fix deadlock in pruning (#6007) 2021-02-02 11:36:52 +01:00
Callum WatersandGitHub aecfb0ecf0 e2e: add control over the log level of nodes (#5958) 2021-01-25 17:20:39 +01:00
CallumandTess Rinearson af723eca8a use correct source of evidence time
Conflicting votes are now sent to the evidence pool to form duplicate vote evidence only once
the height of the evidence is finished and the time of the block finalised.
2021-01-19 16:00:02 +01:00
Callum WatersandGitHub 5cbb8263b4 patch concurrency issue with pruning in the light store (#5910) 2021-01-17 17:14:14 +01:00
Callum WatersandGitHub ca285844ea light: fix light store deadlock (#5901) 2021-01-14 17:22:09 +01:00
Callum WatersandGitHub bada08c50c state sync: last consensus params height is not set (#5889) 2021-01-12 14:41:16 +01:00
Callum WatersandGitHub 956b59af87 evidence: buffer evidence from consensus (#5890) 2021-01-12 12:50:49 +01:00
Callum WatersandGitHub 5b698ed13b tx indexer: use different field separator for keys (#5865) 2021-01-12 10:55:47 +01:00