Commit Graph

665 Commits

Author SHA1 Message Date
Bryan Stitt
f1e6de3677 fixed one test. still more to fix though 2023-02-14 12:41:05 -08:00
Bryan Stitt
824a6fa1f0 well it compiles. doesnt work yet. but it compiles 2023-02-14 12:14:50 -08:00
yenicelik
0d4acfbacc still struggingling with login 2023-02-14 17:15:54 +01:00
Bryan Stitt
70105bc7bb variable rename 2023-02-12 10:22:20 -08:00
Bryan Stitt
0e2e45cf90 cargo upgrade 2023-02-12 01:47:06 -08:00
Bryan Stitt
c008f50943 use http and ws providers in a single config 2023-02-12 01:40:01 -08:00
yenicelik
4904bc6734 will wait for how to login as a third party user 2023-02-11 14:19:33 +00:00
Bryan Stitt
f1bc00082a include to_block more places 2023-02-10 20:45:57 -08:00
Bryan Stitt
c959110986 better sorting of connections 2023-02-10 20:24:20 -08:00
yenicelik
8562fc3384 changes from review. will test now 2023-02-10 17:48:51 +00:00
yenicelik
cc41e54cbf Merge branch 'upstream-main' into 19-admin-imitate 2023-02-10 17:12:22 +00:00
David
67765d2bd5
Merge branch 'llamanodes:main' into main 2023-02-10 16:34:10 +00:00
Bryan Stitt
90b57c7aed fix test. usize -> u64 2023-02-09 12:02:57 -08:00
Bryan Stitt
1a93e39b09 FuturesUnordered on the spawn handles 2023-02-09 11:56:07 -08:00
Bryan Stitt
6741cd72ac lint 2023-02-09 11:55:54 -08:00
Bryan Stitt
4e63e69c97 actually use app.response_cache_max_bytes 2023-02-09 11:55:39 -08:00
Bryan Stitt
5ffe2aa72a eth_sendRawTransactions should use backups more often 2023-02-09 11:47:56 -08:00
Bryan Stitt
1efa8e7772 improve log message
we don't always get an empty block because we aren't synced. sometimes it is because we got disconnected
2023-02-08 11:30:16 -08:00
Bryan Stitt
ff4cb9abce cargo upgrade 2023-02-08 11:11:16 -08:00
Bryan Stitt
0b1929a820 add minimal config for quick testing 2023-02-06 15:20:36 -08:00
Bryan Stitt
0edd11349f web3 rpc spawn should be unordered 2023-02-06 14:13:43 -08:00
Bryan Stitt
19e51ce328 check http servers twice as often 2023-02-06 13:48:50 -08:00
Bryan Stitt
0f280ce483 cargo upgrade and shorten variable names
also begin adding a latency tracker for rpc stats
2023-02-06 09:55:27 -08:00
Bryan Stitt
266c410f15 add todo 2023-02-05 18:19:13 -08:00
Bryan Stitt
f2d35ba5eb remove metered in favor of influxdb stats 2023-02-05 18:17:26 -08:00
Bryan Stitt
6d959e2c1f add archive depth to app config 2023-02-05 17:58:03 -08:00
yenicelik
a0e257c8cb added endpoint to get or create the referral link for a given user 2023-02-05 14:53:41 +01:00
Bryan Stitt
37830f1156 Jenkinsfile from llamanodes/erigon 2023-02-05 00:13:14 -08:00
Bryan Stitt
1d749ed33d block all admin_ commands 2023-02-03 10:56:19 -08:00
Bryan Stitt
ca1e550370 improve sort order during eth_sendRawTransaction 2023-02-02 14:48:23 -08:00
Bryan Stitt
9ac3ef1e3d cache /health and cache /status for longer 2023-02-02 13:58:04 -08:00
Bryan Stitt
a3f2eff512 simple request counts 2023-02-02 13:45:05 -08:00
Bryan Stitt
cac31303f3 include backup in web3connection serializer 2023-02-02 08:00:59 -08:00
Bryan Stitt
414501fb57 eth_pollSubscriptions is not supported 2023-02-01 14:02:53 -08:00
Bryan Stitt
0fcff5947a one more take 2023-01-31 11:05:29 -08:00
Bryan Stitt
a76a45f63a clone instead of take 2023-01-31 09:47:19 -08:00
Bryan Stitt
8bcf40b62d Revert "Revert "include from_block and to_block for caching getLogs""
This reverts commit 13bab2c9cfcc09f8d503ff24f6e2c2a3fc0faaa2.
2023-01-31 08:30:24 -08:00
Bryan Stitt
13bab2c9cf Revert "include from_block and to_block for caching getLogs"
This reverts commit 203969f62833668c4081acbb2188989fd6545c24.
2023-01-31 08:30:11 -08:00
yenicelik
4582cf3e37 should next write some simple end2end test 2023-01-31 15:08:46 +01:00
Bryan Stitt
203969f628 include from_block and to_block for caching getLogs 2023-01-30 15:47:17 -08:00
yenicelik
fadb61114a should write some tests next 2023-01-30 20:02:28 +01:00
yenicelik
31788bb228 imitating user. login flow still needs to check for read-only at every checkpoint. also referral logic can be removed from the login_post function 2023-01-30 17:45:24 +01:00
yenicelik
04687b3392 ingested changes from upstream main. added another cli admin endpoint 2023-01-29 23:27:34 +01:00
Bryan Stitt
b358463928 use error_builder 2023-01-26 19:18:58 -08:00
Bryan Stitt
2c05c63350 error with body if not json 2023-01-26 19:07:27 -08:00
Bryan Stitt
f9d3eb1e0d cut /rpc/ off 2023-01-25 19:05:11 -08:00
Bryan Stitt
b808a72b35 actually add the script 2023-01-25 17:59:08 -08:00
Bryan Stitt
c0ab400af6 add create_key cli command 2023-01-25 17:58:10 -08:00
Bryan Stitt
f756bc7390 longer timeout 2023-01-25 17:42:16 -08:00
Bryan Stitt
315ac4838d include code in the error message 2023-01-25 14:59:11 -08:00
Bryan Stitt
43b5652ba8 better handling when rate limited 2023-01-25 14:24:38 -08:00
Bryan Stitt
d5f2d6eb18 improve pager duty errors for smarter deduping 2023-01-25 14:04:06 -08:00
Bryan Stitt
f2260ecdba don't require hard limit send 2023-01-25 10:01:36 -08:00
Bryan Stitt
e85965ec12 more context on everything 2023-01-25 01:00:28 -08:00
Bryan Stitt
0c879c5613 one less unwrap 2023-01-25 00:45:49 -08:00
Bryan Stitt
0c387af589 dedup keys 2023-01-25 00:27:07 -08:00
Bryan Stitt
7e5418a8e7 handle empty result 2023-01-25 00:19:35 -08:00
Bryan Stitt
0c058614ce fix not using the workers config option 2023-01-24 23:21:50 -08:00
Bryan Stitt
cffc60e7f6 improve responses when blocks are not available 2023-01-24 22:45:20 -08:00
Bryan Stitt
694e552b5d improve waiting for sync when rate limited 2023-01-24 20:45:03 -08:00
Bryan Stitt
0ae240492a easy trace logging 2023-01-24 20:44:17 -08:00
Bryan Stitt
641d11a19b remove excess continues 2023-01-24 10:09:12 -08:00
Bryan Stitt
522678e394 don't send pagerduty alerts for websocket panics 2023-01-24 09:38:12 -08:00
Bryan Stitt
106dec294f better handling when method not available 2023-01-24 09:36:07 -08:00
Bryan Stitt
447cf90eed jsonrpc instead of 500 errors 2023-01-24 08:07:10 -08:00
Bryan Stitt
4f9d0f6336 add --chain-id to sentryd too 2023-01-24 04:51:55 -08:00
Bryan Stitt
23f31c9129 sanitize inputs and improve logs 2023-01-24 04:29:12 -08:00
Bryan Stitt
953bb27adc add --chain-id to sentryd 2023-01-24 04:17:39 -08:00
Bryan Stitt
7b046451be actually add the file 2023-01-24 03:12:36 -08:00
Bryan Stitt
36d64489d8 sentryd to pagerduty 2023-01-24 03:12:23 -08:00
Bryan Stitt
54d190acfc dryer pagerduty code 2023-01-24 02:45:48 -08:00
Bryan Stitt
a242244a35 broadcast transactions to more servers 2023-01-24 01:58:31 -08:00
Bryan Stitt
7ec4c69fd7 actually add the new file 2023-01-24 00:05:41 -08:00
Bryan Stitt
776bcd149f send panics to pagerduty 2023-01-24 00:05:31 -08:00
Bryan Stitt
47daab3b67 drop log level for backup servers 2023-01-23 21:37:23 -08:00
Bryan Stitt
cfa840a140 DRY and fix comment 2023-01-23 21:08:24 -08:00
Bryan Stitt
56fcd68be7 increase gas estimation on polygon even more 2023-01-23 12:32:59 -08:00
Bryan Stitt
86e3f2991f use watch instead of arcswap 2023-01-22 22:02:08 -08:00
Bryan Stitt
ec5c28b64b better way to allow no config 2023-01-22 17:48:33 -08:00
Bryan Stitt
51a9beaf6f allow no config 2023-01-22 17:19:31 -08:00
Bryan Stitt
6ffdcd42e3 add todo 2023-01-20 15:50:39 -08:00
Bryan Stitt
412733d505 improve wait_for_sync 2023-01-20 15:43:16 -08:00
Bryan Stitt
b9a12756b9 collect request_metadata.response_from_backup_rpc 2023-01-19 21:46:47 -08:00
Bryan Stitt
17d8ea0b7f make free tier even better and improve migration locking 2023-01-19 21:28:33 -08:00
Bryan Stitt
0731d92dec use best, not fastest with websocket 2023-01-19 18:32:31 -08:00
Bryan Stitt
e53030e053 move backup indicator 2023-01-19 18:30:30 -08:00
Bryan Stitt
c3b53eb5f2 add backup indicator to more logs 2023-01-19 18:14:47 -08:00
Bryan Stitt
2f8920085b configurable gas buffer 2023-01-19 18:08:53 -08:00
Bryan Stitt
ad169eda0e log cleanup 2023-01-19 17:57:36 -08:00
Bryan Stitt
52a9ba604c remove allowed lag 2023-01-19 03:05:39 -08:00
Bryan Stitt
2cb6dde052 more log improvements 2023-01-19 02:26:54 -08:00
Bryan Stitt
76e51e3d11 better log level 2023-01-19 02:21:39 -08:00
Bryan Stitt
0c05b5bdee major refactor to only use backup servers when absolutely necessary 2023-01-19 02:20:06 -08:00
Bryan Stitt
e4b0d4b76d todo comment 2023-01-18 16:21:15 -08:00
Bryan Stitt
90d3371eee improved rate limiting on websockets 2023-01-18 16:17:47 -08:00
Bryan Stitt
053947de40 one bin for everything 2023-01-18 13:56:23 -08:00
yenicelik
942865b6ac also removing login from cache. should add tests for all these cases 2023-01-18 14:00:30 +01:00
Bryan Stitt
e4a223732a add APP_USER_AGENT to the status page 2023-01-17 20:18:18 -08:00
Bryan Stitt
9fe6365283 serarate max_age and max_lag 2023-01-17 15:52:31 -08:00
Bryan Stitt
9ba4c288c6 quick health check script that logs to sentry 2023-01-17 15:42:25 -08:00
yenicelik
74f5a27f0b added binary to change admin status of a user 2023-01-17 21:44:16 +01:00
yenicelik
f0be397b09 tiny refactoring and added admin entities. some bugs coming up 2023-01-17 20:12:40 +01:00
yenicelik
62f89a127d will stash wrong entities 2023-01-17 19:55:54 +01:00
yenicelik
dc11cc89f7 first commit adding admin endpoint to modify users tier. TODO: clear cache 2023-01-17 16:04:23 +01:00
Bryan Stitt
d7c75f843e add stub try_proxy_connection 2023-01-16 22:54:40 -08:00
Bryan Stitt
b21b5699db print result as json 2023-01-16 17:03:31 -08:00
Bryan Stitt
5c03249bda fix accidental merge. moved to a branch 2023-01-16 16:56:43 -08:00
Bryan Stitt
81b178e71c exit with errors better 2023-01-15 14:50:20 -08:00
Bryan Stitt
a5df2ea00d make deadlock feature optional 2023-01-15 14:50:20 -08:00
Bryan Stitt
8c02e4420d remove weight now that we use tiers 2023-01-13 13:45:48 -08:00
Bryan Stitt
8ddfd111d5 lint 2023-01-13 13:45:33 -08:00
Bryan Stitt
5645f89773 actually filter on chain id 2023-01-13 13:45:19 -08:00
Bryan Stitt
9f7d28b538 retry if we get the method X is not available 2023-01-12 22:40:47 -08:00
Bryan Stitt
256cb5bd5d more verbose error 2023-01-12 13:56:39 -08:00
Bryan Stitt
80b84f3a60 add rpc_accounting bin 2023-01-11 17:36:23 -08:00
Bryan Stitt
e4f1716f06 broadcast txs to less servers 2023-01-11 14:55:41 -08:00
Bryan Stitt
30fd0476e5 finish transfer_key 2023-01-09 18:28:41 -08:00
Bryan Stitt
e2d0369cd5 lower level for reconnect 2023-01-09 18:23:27 -08:00
Bryan Stitt
b193e5cfeb transfer key script 2023-01-09 17:50:32 -08:00
Bryan Stitt
cefbfef4d0 lint 2023-01-06 16:01:10 -08:00
Bryan Stitt
fb62243c3e Revert "cargo upgrade and use trailing slash route extra"
This reverts commit 5bfba3a87afbf4157c2b0bd36273e3dcc4075578.
2023-01-06 15:58:52 -08:00
Bryan Stitt
5bfba3a87a cargo upgrade and use trailing slash route extra 2023-01-06 14:22:57 -08:00
Bryan Stitt
eb3fe0b1b5 start moving more stats from /status to /prometheus 2023-01-06 14:02:06 -08:00
Bryan Stitt
bc5ffc2366 add trailing slash for some routes 2023-01-06 13:40:10 -08:00
Bryan Stitt
ec43d69462 fake weight for now 2023-01-04 14:33:39 -08:00
Bryan Stitt
664ecf5924 use None if on head block 2023-01-04 12:12:44 -08:00
Bryan Stitt
045065986a move allowed_lag around 2023-01-04 12:07:53 -08:00
Bryan Stitt
c0fc999e02 change weight to tier 2023-01-03 22:37:51 -08:00
Bryan Stitt
5a567ebeea try a new way to check block data limit if no longer syncing but limit is 0 2023-01-03 11:54:24 -08:00
Bryan Stitt
d5a17c914d lint 2023-01-03 11:38:06 -08:00
Bryan Stitt
1aefcf166d different polling for different chains 2023-01-03 11:37:42 -08:00
Bryan Stitt
5be5128c93 partial refactor of allowed lag 2023-01-03 08:33:49 -08:00
Bryan Stitt
43dd9628e6 Revert "Revert "Revert "self.check_block_data_limit when syncing changes"""
This reverts commit 36a33a8a1f1ed054a539736cc439e76bd2e7f945.
2023-01-03 07:51:18 -08:00
Bryan Stitt
36a33a8a1f Revert "Revert "self.check_block_data_limit when syncing changes""
This reverts commit ccb79522b6698625c2a00c71f8e71644008ca943.
2023-01-03 06:08:40 -08:00
Bryan Stitt
ccb79522b6 Revert "self.check_block_data_limit when syncing changes"
This reverts commit f3802a48357bd95d4e2b61e650341a458323aa45.
2023-01-03 05:26:21 -08:00
Bryan Stitt
f3802a4835 self.check_block_data_limit when syncing changes 2023-01-02 21:01:04 -08:00
Bryan Stitt
8ccb2e6c46 missed a git add 2023-01-02 17:24:49 -08:00
Bryan Stitt
80dfe8b7f2 count users script and stat 2023-01-02 17:06:36 -08:00
Bryan Stitt
5d368bfd1d rolling counts for a week 2023-01-02 16:34:32 -08:00
Bryan Stitt
31fb3f1a58 use a const 2023-01-02 16:34:22 -08:00
Bryan Stitt
eaea79c055 fix missing import 2023-01-02 10:44:36 -08:00
Bryan Stitt
9b6b0ab7d2 remove extra brace 2023-01-02 10:42:27 -08:00
Bryan Stitt
206d339d45 all_backend_connections skips syncing servers 2023-01-02 10:34:16 -08:00
Bryan Stitt
fb56729ab1 fix key 2022-12-28 23:16:35 -08:00
Bryan Stitt
81c49d08cf tx stats too 2022-12-28 22:21:09 -08:00
Bryan Stitt
68183c34c7 more stats and rate limit on user, not key 2022-12-28 13:50:40 -08:00
Bryan Stitt
3a8f30f87d lint 2022-12-28 08:49:21 -08:00
Bryan Stitt
84517ed5a5 add change_user_tier_by_address subcommand 2022-12-28 08:43:44 -08:00
Bryan Stitt
3b1d6574e3 warn instead of exit on unknown fields 2022-12-28 08:36:22 -08:00
Bryan Stitt
516e130558 missing clone 2022-12-28 00:32:51 -08:00
Bryan Stitt
d9c01a59a3 salted recent ip tracking 2022-12-27 22:11:18 -08:00
Bryan Stitt
15c5ebf3bc spawn less 2022-12-27 19:43:02 -08:00
Bryan Stitt
6a201e1e47 don't set block_data_limit to 0 2022-12-27 18:17:11 -08:00
Bryan Stitt
8c9ad4f453 trim whitespace on authorization checks 2022-12-23 19:03:30 -08:00
Bryan Stitt
4a837b35cc improve eth_sendRawTransaction 2022-12-23 17:35:35 -08:00
Bryan Stitt
ce1b0da1e3 fix off by one error 2022-12-23 16:15:48 -08:00
Bryan Stitt
9bcbadd81a improve some errors 2022-12-23 12:17:14 -08:00
Bryan Stitt
11a7aff8e0 don't unwrap. still might be more errors to handle though 2022-12-23 12:12:17 -08:00
Bryan Stitt
1fecfd8821 don't unwrap an error 2022-12-23 12:03:48 -08:00
Bryan Stitt
95045ec78e block eth_subscribe and eth_unsubscribe over http 2022-12-22 12:05:15 -08:00
Bryan Stitt
d6dfcbd2d7 add wait_for_sync helper 2022-12-22 11:49:34 -08:00
Bryan Stitt
e60b9dc3fe lower eth_getBlockByNumber level to Warn 2022-12-20 22:01:35 -08:00
Bryan Stitt
79075f9974 lowest log level for eth_sendRawTransaction
these are showing up in sentry with things like 'not enough funds'. its an error for the user to see, not us
2022-12-20 21:55:12 -08:00
Bryan Stitt
c0b457cec8 fix allow_not_ready 2022-12-20 21:47:41 -08:00
Bryan Stitt
fc48f2469c check db_replica_url being the same as db_url 2022-12-20 13:38:10 -08:00
Bryan Stitt
ef64ee0a12 longer header name 2022-12-20 11:01:34 -08:00
Bryan Stitt
4d34bc629c whitespace 2022-12-20 10:58:57 -08:00
Bryan Stitt
fd1be8a702 move more into the spawned task 2022-12-20 10:54:13 -08:00
Bryan Stitt
28510f8bba fix warn message on 500 error codes 2022-12-19 21:39:17 -08:00
Bryan Stitt
82eb449e96 add backend nodes to the rpc response headers
only do this in dev?
2022-12-19 21:37:12 -08:00
Bryan Stitt
f27c764a07 more logs 2022-12-19 15:59:01 -08:00
Bryan Stitt
2a19d9791b more logging 2022-12-19 13:53:38 -08:00
Bryan Stitt
27a318c70e default description to None. frontend shows a cute llama 2022-12-19 10:57:30 -08:00
Bryan Stitt
f04905698a improve request caching 2022-12-16 20:05:01 -08:00
Bryan Stitt
1465ee355c add support for optional db replica
also add cleanup of expired login data
2022-12-16 00:48:24 -08:00
Bryan Stitt
0a60ccd95e query_user_stats caching 2022-12-15 22:32:58 -08:00
Bryan Stitt
1d438527e6 chain id needs to be a U64 so it turns to hex 2022-12-15 14:20:58 -08:00
Bryan Stitt
c49782a6ba use mutables 2022-12-15 12:27:39 -08:00
Bryan Stitt
5fe88c6227 serve eth_chainId from config 2022-12-14 18:49:40 -08:00
Bryan Stitt
fbafcca528 fix row and page counts 2022-12-14 18:45:54 -08:00
Bryan Stitt
44ca5a50f1 Merge branch 'gas_estimate_increase' 2022-12-14 14:38:56 -08:00
Bryan Stitt
cd24c240c9 remove stale todo 2022-12-14 14:38:06 -08:00
Bryan Stitt
284eec360b add total_rows 2022-12-14 11:21:56 -08:00
Bryan Stitt
c47655d4ff increase gas estimates mk.1
related to gh#5, but i don't think its a great fix
2022-12-14 11:03:47 -08:00
Bryan Stitt
6f618bbcda todos 2022-12-13 21:05:23 -08:00
Bryan Stitt
081873e937 move pending logins to the database 2022-12-13 18:34:08 -08:00
Bryan Stitt
78df4177a6 consistent case 2022-12-12 11:00:15 -08:00
Bryan Stitt
4c2d3634c5 default to less detailed stats 2022-12-11 20:39:54 -08:00
Bryan Stitt
86f6b16761 another pass at server selection 2022-12-07 22:54:38 -08:00
Bryan Stitt
78a2119c07 quieter syncing nodes 2022-12-05 16:55:18 -08:00
Bryan Stitt
b02c851237 raise log level for block data limit 2022-12-05 16:47:27 -08:00
Bryan Stitt
c10a0e9d3c better error context 2022-12-05 16:35:51 -08:00
Bryan Stitt
a54a061bd2 handle null case 2022-12-05 16:18:31 -08:00
Bryan Stitt
33f7256236 clones to avoid deadlock 2022-12-05 16:06:28 -08:00
Bryan Stitt
f010166ee0 better lag error 2022-12-05 14:45:12 -08:00
Bryan Stitt
dc5c944545 rename head_block_id to head_block 2022-12-05 14:38:54 -08:00
Bryan Stitt
5bec8bb5b9 much smarter connection logic 2022-12-05 14:11:56 -08:00
Bryan Stitt
f736aeb027 move config safty checks earlier 2022-12-04 17:25:23 -08:00
Bryan Stitt
69f0125eba tests must include the current time 2022-12-04 17:10:20 -08:00
Bryan Stitt
0b93cb966e trailing commas 2022-12-02 21:55:46 -08:00