Commit Graph

220 Commits

Author SHA1 Message Date
felipe andrade
4e0100bbe9 feat(proxyd): make max batch size hard limit 1000 and default 100 (#7719)
* feat: make max batch size hard limit 1000 and default 100

* nit: rename const
2023-10-17 13:19:13 -07:00
felipe andrade
9e1c96e9c5 add debug tools to image (#7647) 2023-10-12 10:55:14 -07:00
felipe andrade
609bb4e4f9 chore(proxyd): remove -race from make tests (#7573) 2023-10-05 14:42:40 -07:00
dependabot[bot]
bc6f5d75aa build(deps): bump github.com/btcsuite/btcd in /proxyd
Bumps [github.com/btcsuite/btcd](https://github.com/btcsuite/btcd) from 0.22.0-beta to 0.23.2.
- [Release notes](https://github.com/btcsuite/btcd/releases)
- [Changelog](https://github.com/btcsuite/btcd/blob/master/CHANGES)
- [Commits](https://github.com/btcsuite/btcd/compare/v0.22.0-beta...v0.23.2)

---
updated-dependencies:
- dependency-name: github.com/btcsuite/btcd
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-02 22:24:01 +00:00
dependabot[bot]
89065e45bd build(deps): bump github.com/consensys/gnark-crypto in /proxyd
Bumps [github.com/consensys/gnark-crypto](https://github.com/consensys/gnark-crypto) from 0.10.0 to 0.12.0.
- [Release notes](https://github.com/consensys/gnark-crypto/releases)
- [Changelog](https://github.com/Consensys/gnark-crypto/blob/master/CHANGELOG.md)
- [Commits](https://github.com/consensys/gnark-crypto/compare/v0.10.0...v0.12.0)

---
updated-dependencies:
- dependency-name: github.com/consensys/gnark-crypto
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-02 22:10:02 +00:00
Michael de Hoog
d527545645 proxyd: avoid banning a backend that is a forced candidate (#7275)
* Add consensus configuration option to never ban a backend

* Fix panic

* Remove additional flag, use `consensus_forced_candidate` instead
2023-09-25 21:12:55 -07:00
Felipe Andrade
86cf9547e7 nits 2023-09-15 12:33:28 -07:00
Felipe Andrade
3911deccbd nits 2023-09-15 11:57:57 -07:00
Felipe Andrade
fa1912f594 release lock on errors, validate if local is behind remote before acquiring the lock 2023-09-14 15:58:36 -07:00
Felipe Andrade
fb7d24ce0c semgrep 2023-09-14 12:47:25 -07:00
Felipe Andrade
c200f2f8e3 revert weird comment replaces 2023-09-14 12:43:09 -07:00
Felipe Andrade
3e6f70c3fc feat(proxyd): high availability 2023-09-14 12:36:24 -07:00
dependabot[bot]
f93f2a8960 build(deps): bump github.com/supranational/blst in /proxyd
Bumps [github.com/supranational/blst](https://github.com/supranational/blst) from 0.3.11-0.20230406105308-e9dfc5ee724b to 0.3.11.
- [Release notes](https://github.com/supranational/blst/releases)
- [Commits](https://github.com/supranational/blst/commits/v0.3.11)

---
updated-dependencies:
- dependency-name: github.com/supranational/blst
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-10 21:22:59 +00:00
dependabot[bot]
b1f3d12549 build(deps): bump github.com/ethereum/go-ethereum in /proxyd
Bumps [github.com/ethereum/go-ethereum](https://github.com/ethereum/go-ethereum) from 1.12.0 to 1.12.1.
- [Release notes](https://github.com/ethereum/go-ethereum/releases)
- [Commits](https://github.com/ethereum/go-ethereum/compare/v1.12.0...v1.12.1)

---
updated-dependencies:
- dependency-name: github.com/ethereum/go-ethereum
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-10 12:28:43 +00:00
Adrian Sutton
1387fd2fe0 Update to golang 1.20.7 and alpine 3.18 (#6969)
* Update to golang 1.20.7 and alpine 3.18

* Update go version in go.mod files.

* Use crypto/rand.Read instead of math/read.Read

* Handle error response
2023-08-23 10:14:38 -06:00
Michael de Hoog
c24b77cbf8 proxyd: add support for limiting max block range 2023-08-21 08:51:59 -10:00
Felipe Andrade
6809ceb44f fix test 2023-07-27 14:33:55 -07:00
Felipe Andrade
3f48703f26 testz 2023-07-27 13:44:51 -07:00
Felipe Andrade
a65810b467 feat(proxyd): betterer timeoutz 2023-07-27 13:44:51 -07:00
Felipe Andrade
16b03049ae feat(proxyd): sender rate limiter should check chain id 2023-07-19 14:09:15 -07:00
Francis Li
d8ad7900d9 [proxyd] do not block auth rpc call when auth is not enabled 2023-06-21 11:06:49 -07:00
Felipe Andrade
3b56ec9d9e fix targets 2023-06-02 14:11:49 -07:00
Felipe Andrade
804a57566f fix input 2023-06-02 13:45:42 -07:00
Felipe Andrade
a3cf38f8b2 translate only methods with block params 2023-06-02 13:11:30 -07:00
Felipe Andrade
924030dd70 lint 2023-06-02 13:11:30 -07:00
Felipe Andrade
eb0fc1a837 lint 2023-06-02 13:11:30 -07:00
Felipe Andrade
33881542a9 feat(proxyd): add consensus_getReceipts meta method 2023-06-02 13:11:30 -07:00
Felipe Andrade
cb2492d661 typo 2023-05-31 13:24:43 -07:00
Felipe Andrade
a4d4d8750f delay 500ms instead of 100ms 2023-05-31 13:13:31 -07:00
Felipe Andrade
a09795f83d metric for degraded backend 2023-05-31 13:07:19 -07:00
Felipe Andrade
20648112b5 add test for debug_getRawReceipts with block hash 2023-05-31 10:56:59 -07:00
Felipe Andrade
52ceaa581f lint 2023-05-31 10:51:46 -07:00
Felipe Andrade
64dab786cf add cache support for debug_getRawReceipts when request is for block hash 2023-05-31 10:48:35 -07:00
Felipe Andrade
a2e1667b17 feat(proxyd): add debug_getRawReceipts to consensus 2023-05-31 10:04:20 -07:00
Felipe Andrade
4ebc07656a update readme 2023-05-30 08:43:07 -07:00
Felipe Andrade
2bf2329dd3 order params chronologically: latest, safe, finalized 2023-05-27 10:30:50 -07:00
Felipe Andrade
04058779a9 small fixes 2023-05-27 10:21:05 -07:00
Felipe Andrade
dbfb39a4fa lint 2023-05-27 07:38:19 -07:00
Felipe Andrade
8436728419 extract candidates logic, refactor update backend 2023-05-27 04:58:17 -07:00
Felipe Andrade
7405b8b360 refactor poller 2023-05-27 04:14:29 -07:00
Felipe Andrade
1f657b5f46 ban backend if error rate is too high 2023-05-27 02:02:50 -07:00
Felipe Andrade
0c27c83aba test refactor 2023-05-26 19:38:24 -07:00
Felipe Andrade
1b40d776a6 sane values for consensus_max_block_lag 2023-05-26 19:18:58 -07:00
Felipe Andrade
3cdac70a0d reset listeners, doc typos 2023-05-26 19:07:35 -07:00
Felipe Andrade
32be287887 typo 2023-05-26 15:57:22 -07:00
Felipe Andrade
d5594a62a0 moar tests for safe and finalized bans 2023-05-26 15:54:04 -07:00
Felipe Andrade
cdf9e9192a use go 1.20 2023-05-26 14:49:27 -07:00
Felipe Andrade
83c40076b6 typo 2023-05-26 14:25:56 -07:00
Felipe Andrade
2d9259ee20 better moar tests 2023-05-26 14:22:50 -07:00
Felipe Andrade
af863d39de consensus for {safe,finalized} and rewrite tags 2023-05-25 22:12:27 -07:00
felipe andrade
d5a476c5e8 fix(proxyd): use go-ethereum 1.12.0 parser for rpc.BlockNumberOrHash (#5791)
* bump go-ethereum to 1.12.0 to support finalized and safe block tags

* fix index out of range error for malformed requests

* goimports
2023-05-25 22:02:19 -07:00
Matthew Slipper
61db300042 proxyd: Pass through finalized and safe tags 2023-05-25 13:06:43 -06:00
felipe andrade
56938b6b01 normalize latency in ms (#5783) 2023-05-25 11:04:14 -07:00
felipe andrade
1d9406daa6 record sliding window metrics (#5782) 2023-05-25 09:16:16 -07:00
Felipe Andrade
10b8b8e32a fix(proxyd): avoid caching tx hash based methods, since the response may change with a reorg 2023-05-19 16:13:03 -07:00
Felipe Andrade
5616f40a16 also remove from config files 2023-05-18 16:30:33 -07:00
Felipe Andrade
7950eb9d7d fix(proxyd): clean up cache initialization 2023-05-18 16:27:23 -07:00
mergify[bot]
565073df19 Merge branch 'develop' into felipe/bg-shutdown 2023-05-18 05:12:58 +00:00
Felipe Andrade
d4956ee655 rename backend group receivers to be bg instead of just b to avoid misreading as a backend 2023-05-17 21:57:42 -07:00
Felipe Andrade
4c08681043 move consensus shutdown nested inside the backend group 2023-05-17 21:56:55 -07:00
mergify[bot]
991dc2627d Merge branch 'develop' into felipe/new-cache 2023-05-18 04:53:58 +00:00
Felipe Andrade
36e8e7a473 remove unused integration_tests/testdata/backend_rate_limit.toml 2023-05-17 21:43:25 -07:00
Felipe Andrade
3704119064 configs 2023-05-17 21:43:25 -07:00
Felipe Andrade
2f0f949784 refactor(proxyd): clean up backend rate limiter 2023-05-17 21:43:24 -07:00
Felipe Andrade
8aadf7abb1 replace base64 encoding for params with sha256 hash 2023-05-17 21:38:29 -07:00
mergify[bot]
64334e75df Merge branch 'develop' into felipe/fix-consensus-shutdown 2023-05-18 04:26:41 +00:00
mergify[bot]
3fe6123648 Merge branch 'develop' into felipe/event-dispatcher 2023-05-18 04:23:04 +00:00
mergify[bot]
4abf351490 Merge branch 'develop' into felipe/redis-namespace 2023-05-18 04:19:40 +00:00
Felipe Andrade
2bf0517c3f signature should be base64 2023-05-15 20:50:28 -07:00
Felipe Andrade
9757609d61 nits 2023-05-15 20:25:38 -07:00
Felipe Andrade
7db2391624 fix metric copypasta 2023-05-15 19:38:09 -07:00
Felipe Andrade
af481985fa lint 2023-05-15 19:30:03 -07:00
Felipe Andrade
490624b25e refactor(proxy): cache only immutable and hash-based methods 2023-05-15 19:20:08 -07:00
Felipe Andrade
29f7aa88ab feat(proxyd): redis namespace 2023-05-13 22:33:09 -07:00
Felipe Andrade
bae755b825 fix(proxyd): add missing shutdown for consensus poller 2023-05-13 22:19:32 -07:00
Felipe Andrade
ef42dde6e1 revert cache.go 2023-05-11 15:45:33 -07:00
Felipe Andrade
491369d32f lint 2023-05-11 15:44:12 -07:00
Felipe Andrade
e025bcc4b4 proxyd: emit event on consensus broken 2023-05-11 15:41:44 -07:00
Felipe Andrade
5c4b805efc ban logic 2023-05-11 15:33:47 -07:00
Felipe Andrade
8e45b5d5ca feat(proxyd): prevent banning out-of-sync backend 2023-05-11 15:19:52 -07:00
mergify[bot]
fdfbd9ce49 Merge branch 'develop' into felipe/moar-consensus-metrics 2023-05-10 19:36:37 +00:00
Felipe Andrade
88a172f739 skip reporting peer count according to config 2023-05-09 19:31:49 -07:00
Felipe Andrade
5f61935bc4 add filtered and total counts 2023-05-09 19:17:25 -07:00
Felipe Andrade
651b526c50 lint 2023-05-09 19:11:29 -07:00
Felipe Andrade
cfb26e6a8a convert update delay to ms 2023-05-09 17:50:25 -07:00
Felipe Andrade
cde638b11d moar consensus metrics 2023-05-09 17:21:25 -07:00
Felipe Andrade
53e4a369ab test edge cases 2023-05-09 14:20:23 -07:00
Felipe Andrade
c7caf2af4d rebase 2023-05-09 14:17:29 -07:00
Felipe Andrade
8d51c20079 use a global lag comparison, non order dependent 2023-05-09 14:14:19 -07:00
Felipe Andrade
3fd2abea84 test on edge 2023-05-09 14:13:38 -07:00
Felipe Andrade
2856a2c9e1 proxyd: add limit to consensus block lag 2023-05-09 14:13:35 -07:00
mergify[bot]
96ebb5a1c4 Merge branch 'develop' into felipe/fix-cache-for-eth2-block-tags 2023-05-09 19:55:22 +00:00
mergify[bot]
5b635ce32d Merge branch 'develop' into felipe/fix-bs-access 2023-05-09 19:52:11 +00:00
Felipe Andrade
020bc66243 fix test 2023-05-09 11:33:38 -07:00
Felipe Andrade
b95f2a6a62 make tag earliest cacheable 2023-05-09 09:39:11 -07:00
Felipe Andrade
cc9f6022de proxyd/fix: eth2 block tags {safe, finalized} should be valid tag values and avoid cache 2023-05-09 09:39:11 -07:00
Felipe Andrade
d4b2693ffd ban / isbanned 2023-05-09 03:58:35 -07:00
Felipe Andrade
32064105c8 prevent direct access to backend state struct 2023-05-09 02:59:32 -07:00
Felipe Andrade
92b54553c8 proxyd/fix: use correct context for auth 2023-05-08 19:19:46 -07:00
mergify[bot]
f5a8f900d6 Merge branch 'develop' into felipe/log-level 2023-05-04 23:55:14 +00:00