Commit Graph

48 Commits

Author SHA1 Message Date
Bryan Stitt c1eba556a5 fix missing ttl send and add name to cache 2023-05-29 17:19:05 -07:00
Bryan Stitt bb50efb7f9
quick cache ttl max item size, better function names, and tests (#97)
* Revert "remove cache on /status and /health for now"

This reverts commit 166b0d810c.

* Revert "remove cache on backups needed, too"

This reverts commit 4597967def.

* add tests

* add max_item_weight

* comment

* add some helper functions, max weights, and tests
2023-05-29 15:48:22 -07:00
Bryan Stitt 9e935e2c44 cargo upgrade 2023-05-29 09:43:51 -07:00
Bryan Stitt b61675e928 replace all moka with quick_cache_ttl 2023-05-18 13:34:22 -07:00
Bryan Stitt 0f367d9035 more quick cache ttl 2023-05-18 00:04:30 -07:00
Bryan Stitt c54970da0a change ordering and move fetch_add and fetch_sub 2023-05-12 23:00:03 -07:00
Bryan Stitt 8a097dabbe
Bryan devel 2023-05-12 (#67)
* add minor todo

* BadRequest instead of web3_context

* more bad request error codes

* use tokio-uring for the tcp listener

* clear block instead of panic

* clone earlier

* more watch channels instead of rwlocks

* drop uring for now (its single threaded) and combine get/post/put routes

* clean up iter vs into_iter and unnecessary collect

* arcswap instead of rwlock for Web3Rpcs.by_name

* cargo upgrade

* uuid fast-rng and alphabetize

* if protected rpcs, only use protected rpcs

* listenfd

* make connectinfo optional

* try_get_with_by_ref instead of try_get_with

* anyhow ensure. and try_get_with_as_ref isn't actually needed

* fix feature flags

* more refs and less clone

* automatic retry for eth_getTransactionReceipt and eth_getTransactionByHash

thanks for the report Lefteris @ Rotki

* ArcSwap for provider

* set archive_request to true on transaction retrying

* merge durable stats

* Revert "ArcSwap for provider"

This reverts commit 166d77f204cde9fa7722c0cefecbb27008749d47.

* comments

* less clones

* more refs

* fix test

* add optional mimalloc feature

* remove stale dependency

* sort

* cargo upgrade

* lint constants

* add todo

* another todo

* lint

* anyhow::ensure instead of panic

* allow rpc_accounting_v2 entries for requests without an rpc key
2023-05-12 15:15:32 -07:00
Bryan Stitt 2a242fe37f cargo upgrade --incompatible 2023-05-11 13:25:55 -07:00
Bryan Stitt 2e934a41bf cargo upgrade 2023-04-05 12:30:52 -07:00
Bryan Stitt 684c37ef6c cargo upgrade 2023-03-10 09:45:47 -08:00
Bryan Stitt 0e2e45cf90 cargo upgrade 2023-02-12 01:47:06 -08:00
Bryan Stitt ff4cb9abce cargo upgrade 2023-02-08 11:11:16 -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 6c23b73f2d cargo upgrade 2023-01-30 15:57:06 -08:00
Bryan Stitt 274778cd12 cargo upgrade --workspace 2023-01-19 02:21:45 -08:00
Bryan Stitt 7d0ac54019 upgrade hashbrown 2023-01-15 12:02:33 -08:00
Bryan Stitt 99d095bc33 upgrade after revert 2023-01-06 15:59:36 -08:00
Bryan Stitt fb62243c3e Revert "cargo upgrade and use trailing slash route extra"
This reverts commit 5bfba3a87a.
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 221f2c1651 upgrade tokio
its a change for windows so doesn't really matter
2023-01-04 14:34:58 -08:00
Bryan Stitt 8868c35e95 comment 2022-12-28 13:53:36 -08:00
Bryan Stitt d9c01a59a3 salted recent ip tracking 2022-12-27 22:11:18 -08:00
Bryan Stitt 4683eadc89 fix overflow 2022-12-23 16:14:10 -08:00
Bryan Stitt 263f98ced5 minor updates 2022-12-19 10:58:49 -08:00
Bryan Stitt 081873e937 move pending logins to the database 2022-12-13 18:34:08 -08:00
Bryan Stitt 4018121e51 cargo upgrade 2022-11-21 17:49:57 +00:00
Bryan Stitt 21f2a78612 comments and todos 2022-11-16 20:18:37 +00:00
Bryan Stitt 0e1cf5767c cut out tracing for now 2022-11-12 08:24:32 +00:00
Bryan Stitt 1329084621 cargo upgrade 2022-11-11 18:40:52 +00:00
Bryan Stitt cb69a2d132 cargo upgrade (requires rust 1.65+) 2022-11-07 22:23:55 +00:00
Bryan Stitt f859ed56fc period instead of minute in variable names 2022-11-01 19:24:29 +00:00
Bryan Stitt 9422a335a7 allow origins on public entrypoints 2022-10-21 20:59:05 +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 53f9551180 finish adding semaphores 2022-09-28 03:35:55 +00:00
Bryan Stitt 81deb1103c login needs its own rate limiter 2022-09-24 03:59:21 +00:00
Bryan Stitt 37a1aa554b revert error saving and extract blockHash from requests 2022-09-21 04:48:21 +00:00
Bryan Stitt abe5001792 atomic and less expires 2022-09-20 06:56:24 +00:00
Bryan Stitt 739947792a instrument more. add max_wait to wait_for_request_handle 2022-09-20 06:00:27 +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 6ae24b1ff9 use cache's expiration and race-free get_with
when this was a dashmap, we needed our own expiration and parallel requests would do the same query.

with moka, we can use their expiration code and get_with
2022-09-20 01:33:39 +00:00
Bryan Stitt 8785cb6d2d no idle timeout or max lifetime 2022-09-19 22:41:53 +00:00
Bryan Stitt 3e3a9fcf64 larger max_capacity now that there is a weigher 2022-09-19 22:24:56 +00:00
Bryan Stitt b6275aff1e no need for an atomic bool 2022-09-19 22:17:24 +00:00
Bryan Stitt 05af0551c9 use ahash
this might actually be slower. do real benchmarks
2022-09-17 02:17:20 +00:00
Bryan Stitt 3d4bfbfde0 use ahash. allow no redis 2022-09-17 01:19:11 +00:00
Bryan Stitt 6182b5f8e6 need a mutex, not a cell 2022-09-17 01:06:10 +00:00
Bryan Stitt 5cc4ca8d9e it compiles, but theres something wrong with moves 2022-09-16 23:02:55 +00:00
Bryan Stitt 12b6d01434 work in progress 2022-09-15 17:57:24 +00:00