Commit Graph

257 Commits

Author SHA1 Message Date
Bryan Stitt
d6662afbe8 turn on more production servers 2022-10-12 23:30:50 +00:00
Bryan Stitt
eace40aa91 bug todos 2022-10-11 23:18:18 +00:00
Bryan Stitt
6209c44d9e even more todos 2022-10-11 22:42:18 +00:00
Bryan Stitt
6d7f2e0580 update TODOs 2022-10-11 22:39:02 +00:00
Bryan Stitt
c17f6a2a42 todos 2022-10-11 22:25:44 +00:00
Bryan Stitt
552f3dbffc proper sizes for caches and emit all stats 2022-10-11 19:58:25 +00:00
Bryan Stitt
25aa68a5bf add per-user rpc accounting 2022-10-10 04:15:49 +00:00
Bryan Stitt
c8fbf46885 stats in redis that actually work
we should still investigate a real time series db, but stats in redis is much simpler for now
2022-10-07 02:15:53 +00:00
Bryan Stitt
875ae457ef emit our first stats-- cache hits and misses 2022-10-03 20:02:05 +00:00
Bryan Stitt
25d34da98d add stat emitter 2022-10-03 18:08:01 +00:00
Bryan Stitt
a7b5f25467 unwrap less 2022-09-30 04:18:18 +00:00
Bryan Stitt
9cc34f7aa8 move warning 2022-09-28 17:01:11 +00:00
Bryan Stitt
c78d7a03b7 todos 2022-09-28 04:24:02 +00:00
Bryan Stitt
53f9551180 finish adding semaphores 2022-09-28 03:35:55 +00:00
Bryan Stitt
0c7a2b05ec start adding semaphores 2022-09-27 02:01:45 +00:00
Bryan Stitt
664cf93668 add influxdb to example prod config 2022-09-27 00:35:33 +00:00
Bryan Stitt
a199f13426 not everything needs to be under /rpc 2022-09-25 16:37:45 +00:00
Bryan Stitt
7ed7f96a2f very permissive cors policy 2022-09-25 04:26:13 +00:00
Bryan Stitt
5df2469d53 ULID or UUID. Prefer ULID 2022-09-24 05:53:45 +00:00
Bryan Stitt
81deb1103c login needs its own rate limiter 2022-09-24 03:59:21 +00:00
Bryan Stitt
8459dcd1f1 let the frontend handle their own cookies 2022-09-24 02:47:44 +00:00
Bryan Stitt
dbd8ea2429 add logout endpoint and prefix with /rpc 2022-09-23 21:49:18 +00:00
Bryan Stitt
961ccf7cf2 ip, origin, referer, and user agent checks 2022-09-23 05:22:33 +00:00
Bryan Stitt
8481f6d44c wip 2022-09-21 23:50:55 +00:00
Bryan Stitt
339bd41f50 change rpm to u64 and create RevertLogs table 2022-09-21 19:55:43 +00:00
Bryan Stitt
6054c3f340 we do need fetch_sub 2022-09-21 02:48:02 +00:00
Bryan Stitt
d98b6aeff3 split error counts 2022-09-20 06:59:10 +00:00
Bryan Stitt
28a4438c0c thinking about the next task 2022-09-20 03:28:42 +00:00
Bryan Stitt
dfd6aed6e6 no timeouts here, we already have a timeout on requests 2022-09-20 03:26:12 +00:00
Bryan Stitt
3e3a9fcf64 larger max_capacity now that there is a weigher 2022-09-19 22:24:56 +00:00
Bryan Stitt
a7761a0430 add a weigher function to sized caches 2022-09-19 22:17:35 +00:00
Bryan Stitt
12b6d01434 work in progress 2022-09-15 17:57:24 +00:00
Bryan Stitt
369187452f we did this already 2022-09-14 20:02:42 +00:00
Bryan Stitt
7a1433e3c9 no longer need to use total difficulty on ETH 2.0 2022-09-14 19:39:08 +00:00
Bryan Stitt
731a255d2f add old block to log and more todos 2022-09-14 06:57:24 +00:00
Bryan Stitt
7eaf6f3540 retrying reconnect 2022-09-14 01:43:09 +00:00
Bryan Stitt
7ff319e9b0 reconnect sooner 2022-09-12 14:33:19 +00:00
Bryan Stitt
5e33694d47 order most of the todos 2022-09-12 14:31:57 +00:00
Bryan Stitt
879c6e49f2 dry errors so that rate limits dont log so much 2022-09-10 00:12:14 +00:00
Bryan Stitt
03b5d94acb more small todos 2022-09-07 20:24:35 +00:00
Bryan Stitt
d3d6f16373 todo cleanup 2022-09-07 04:51:51 +00:00
Bryan Stitt
45d51e2ac5 more todos 2022-09-05 06:36:32 +00:00
Bryan Stitt
e261886c60 user_address change not made yet 2022-09-05 06:29:27 +00:00
Bryan Stitt
ee3c55401c todos 2022-09-05 06:25:15 +00:00
Bryan Stitt
6e12edd555 use sized Caches 2022-09-05 05:53:58 +00:00
Bryan Stitt
593eb461b8 more dashmap 2022-09-05 01:52:59 +00:00
Bryan Stitt
1c2f3e1445 dry user data caching 2022-09-03 19:43:19 +00:00
Bryan Stitt
6450a4cd42 more fork detection work 2022-09-01 05:58:55 +00:00
Bryan Stitt
4bb32e2767 update TODO list 2022-08-30 21:02:35 +00:00
Bryan Stitt
e5e137f76c fix deadlock 2022-08-30 20:01:42 +00:00
Bryan Stitt
11c66636bb rewrite cannonical block 2022-08-27 23:49:41 +00:00
Bryan Stitt
93fe878748 more use login things 2022-08-27 05:42:25 +00:00
Bryan Stitt
4c0db2d4ff move todo 2022-08-27 00:19:49 +00:00
Bryan Stitt
5719397466 i think it works 2022-08-26 23:44:25 +00:00
Bryan Stitt
81254a24be wip 2022-08-26 17:26:17 +00:00
Bryan Stitt
d9be55f83e move no unwrap todo to v1 2022-08-19 21:09:03 +00:00
Bryan Stitt
23e5e2c777 more todos 2022-08-19 20:15:11 +00:00
Bryan Stitt
f06304e202 temp fix for routing to eth_getTransactionByHash and eth_getTransactionReceipt 2022-08-17 22:19:34 +00:00
Bryan Stitt
a61af53117 cache api keys that are not in the database 2022-08-16 21:10:09 +00:00
Bryan Stitt
8ebe7000ad Address, not String 2022-08-16 17:56:22 +00:00
Bryan Stitt
5c95338573 part of the command got deleted 2022-08-16 17:14:47 +00:00
Bryan Stitt
4bb70d38b9 add todo from issue #2 2022-08-16 05:20:26 +00:00
Bryan Stitt
bc0a817259 polish todo list 2022-08-16 05:13:19 +00:00
Bryan Stitt
1ea94bc1d0 setup volatile redis 2022-08-16 05:00:29 +00:00
Bryan Stitt
d822c607d9 instrument with spans and allow skipping jsonrpc 2022-08-16 04:56:01 +00:00
Bryan Stitt
3b23ed1f8e tower-request-id 2022-08-16 00:33:26 +00:00
Bryan Stitt
e42737a7d2 missed these todos 2022-08-15 23:09:18 +00:00
Bryan Stitt
e8951cdb46 disable redis persistence in dev 2022-08-15 23:06:10 +00:00
Bryan Stitt
0cfe5bbb8a cleanup 2022-08-15 17:23:56 +00:00
Bryan Stitt
2d5e7f263d serve prometheus stats and use unsigned ints for ids 2022-08-12 21:00:26 +00:00
Bryan Stitt
20a4cd126e todos 2022-08-12 19:16:50 +00:00
Bryan Stitt
c57c2249c0 load the redirected page from config 2022-08-12 19:08:28 +00:00
Bryan Stitt
6766f53422 make it work inside and outside docker 2022-08-11 02:57:01 +00:00
Bryan Stitt
05925ec8f4 more todo 2022-08-11 02:06:22 +00:00
Bryan Stitt
661a7ad244 better redirect and jsonrpc handling 2022-08-11 01:53:27 +00:00
Bryan Stitt
7cf82ce156 simple page instead of websocket error 2022-08-11 00:16:13 +00:00
Bryan Stitt
63abd1251b dont subscribe to blocks on the private tier 2022-08-10 21:52:28 +00:00
Bryan Stitt
6d92f33dc4 bug fixes 2022-08-10 21:29:50 +00:00
Bryan Stitt
94c33f2ca0 more todos 2022-08-10 06:33:39 +00:00
Bryan Stitt
77a589a96d pass name through and use pub more 2022-08-10 05:56:09 +00:00
Bryan Stitt
21055799f3 did this earlier 2022-08-10 05:23:32 +00:00
Bryan Stitt
fe9b1580c8 disable less used chains for now 2022-08-10 04:27:27 +00:00
Bryan Stitt
80a3c74120 cache db data in a map 2022-08-10 02:37:43 +00:00
Bryan Stitt
7802d9b6f7 remove incomplete code 2022-08-09 16:54:05 +00:00
Bryan Stitt
71b07f0e45 add weight to rpcs 2022-08-08 19:57:54 +00:00
Bryan Stitt
a65e250bb5 todos 2022-08-07 20:49:46 +00:00
Bryan Stitt
9915a097cb todos 2022-08-07 20:49:06 +00:00
Bryan Stitt
31a6efb5f2 sorting on total difficulty doesnt work with geth websocket 2022-08-07 20:44:56 +00:00
Bryan Stitt
439e27101d better results and errors 2022-08-07 06:48:57 +00:00
Bryan Stitt
33dda4dad9 another one 2022-08-06 07:06:24 +00:00
Bryan Stitt
e2ffdefd99 and yet more todo 2022-08-06 06:57:29 +00:00
Bryan Stitt
48d8f3858e even more todo 2022-08-06 06:23:38 +00:00
Bryan Stitt
62b53208ee more todo 2022-08-06 06:20:29 +00:00
Bryan Stitt
2811c84c25 dash consistency 2022-08-06 05:46:33 +00:00
Bryan Stitt
3cd463127b another todo 2022-08-06 05:33:32 +00:00
Bryan Stitt
3d67fcf74c make it work 2022-08-06 05:26:43 +00:00
Bryan Stitt
64f4a4b419 more todos 2022-08-06 02:29:55 +00:00
Bryan Stitt
ba981d7948 use uuid earlier 2022-08-06 01:17:25 +00:00
Bryan Stitt
63ae98e9a4 shorter function names 2022-08-03 22:23:10 +00:00
Bryan Stitt
4cb65b0fa4 setup database and stub migrations 2022-07-26 04:55:07 +00:00
Bryan Stitt
4ec10e7a98 first pass at a schema 2022-07-26 00:38:00 +00:00
Bryan Stitt
1aa6b4cdb4 better logs 2022-07-25 22:38:23 +00:00
Bryan Stitt
68190fb3c9 synced connections still needs a small refactor 2022-07-25 19:22:44 +00:00
Bryan Stitt
0178d09b79 make missing docs a warning 2022-07-25 18:21:58 +00:00
Bryan Stitt
f0691efc5c always serve something 2022-07-25 18:00:29 +00:00
Bryan Stitt
ee98de4065 thresholds and fork detection 2022-07-25 00:27:00 +00:00
Bryan Stitt
430bae67cd test more 2022-07-23 00:19:13 +00:00
Bryan Stitt
0b184ae9c9 shutdown signal 2022-07-22 23:26:04 +00:00
Bryan Stitt
2833737ae7 improve caching 2022-07-22 19:30:39 +00:00
Bryan Stitt
c10be3c78d merge todo list from phone 2022-07-21 03:30:39 +00:00
Bryan Stitt
800f4761e5 rearrange todos 2022-07-21 03:14:54 +00:00
Bryan Stitt
b3c005e787 error if future block is requested 2022-07-20 23:49:29 +00:00
Bryan Stitt
164c2c0765 todos 2022-07-19 07:01:55 +00:00
Bryan Stitt
88cb2cd1d1 document more and cache in block_map 2022-07-19 06:41:04 +00:00
Bryan Stitt
3eec828f1b fix http interval 2022-07-16 05:21:08 +00:00
Bryan Stitt
b87540d99d better archive split 2022-07-16 04:13:02 +00:00
Bryan Stitt
9d52df2a57 more todo
this should probably all be moved to the google doc
2022-07-13 21:57:50 +00:00
Bryan Stitt
fef1caa056 just do one app for now 2022-07-13 21:50:08 +00:00
Bryan Stitt
b61b00de3b todos 2022-07-10 18:06:20 +00:00
Bryan Stitt
856f4e8e86 getCode instead of balance 2022-07-09 04:28:23 +00:00
Bryan Stitt
58fa7af105 add is_archive_needed and a bunch of rpc commands 2022-07-09 02:23:26 +00:00
Bryan Stitt
efee5c83fc improve redis connection pool 2022-07-08 23:02:32 +00:00
Bryan Stitt
4080209eeb move this to v1 2022-07-08 22:15:28 +00:00
Bryan Stitt
df15353a83 per connection subscription id 2022-07-08 22:14:45 +00:00
Bryan Stitt
52bea50745 better error handling 2022-07-08 18:27:06 +00:00
Bryan Stitt
96fe04b6c8 todo complete 2022-07-07 03:30:04 +00:00
Bryan Stitt
600df2cd3a whitespace 2022-07-07 03:22:59 +00:00
Bryan Stitt
8cc2fab48e connection pooling 2022-07-07 03:22:09 +00:00
Bryan Stitt
3ddde56665 todos 2022-07-07 00:00:15 +00:00
Bryan Stitt
8fe571ae68 retries 2022-07-02 01:28:26 +00:00
Bryan Stitt
f36ca5e702 getTransaction from the private rpcs 2022-06-30 00:52:04 +00:00
Bryan Stitt
fe53ffdb40 shared interval for http 2022-06-29 19:15:05 +00:00
Bryan Stitt
98e027b966 status codes on health 2022-06-29 18:22:53 +00:00
Bryan Stitt
0fbbd1b34d todos 2022-06-25 03:33:49 +00:00
Bryan Stitt
6e003ea3e3 todos 2022-06-25 02:45:50 +00:00
Bryan Stitt
42c8d33d83 less queries 2022-06-25 02:24:31 +00:00
Bryan Stitt
ad59c08543 clean up todos 2022-06-21 01:02:55 +00:00
Bryan Stitt
afb3dde4b3 newPendingRawTransactions 2022-06-18 07:06:54 +00:00
Bryan Stitt
27e07b3fc9 funnel survive rate limiting 2022-06-16 22:23:41 +00:00
Bryan Stitt
4ca292c3e1 getting closer 2022-06-16 02:53:37 +00:00
Bryan Stitt
3d3e0c8c8b it works, but we need it to be optional 2022-06-14 22:02:18 +00:00
Bryan Stitt
2e559f3063 transaction subscription getting closer 2022-06-14 04:04:14 +00:00
Bryan Stitt
035a1f531f json errors 2022-05-29 14:39:17 +00:00
Bryan Stitt
07fbd3c71d todos 2022-05-28 18:45:45 +00:00
Bryan Stitt
5e14333e61 start adding redis-cell for rate limits 2022-05-21 20:40:22 +00:00
Bryan Stitt
1e9284d5e8 check to see if this gets stuck 2022-05-19 03:00:54 +00:00
Bryan Stitt
1aebcd2783 better errors on reconnect 2022-05-17 04:24:13 +00:00
Bryan Stitt
9213e1a796 instrument 2022-05-17 00:56:56 +00:00
Bryan Stitt
4e142d1fb1 more comments 2022-05-16 05:56:57 +00:00
Bryan Stitt
0041709f3e check block hash and store block number fewer places 2022-05-15 06:27:13 +00:00