Commit Graph

64 Commits

Author SHA1 Message Date
Bryan Stitt a43fda0c32
Bryan devel (#176)
* refactor more balance logic

* refactor more balance checks

* doc running full test suite
2023-07-09 21:37:50 -07:00
Bryan Stitt eb7b98fdbe
Split errors (#158)
* add migration for splitting errors

* fix type from u32 to u64

* update entities to match migrations

* no migration needed. these are only in stats

* add user_error_response to influx

* only if detailed

* set error_response and user_error_response

* 0 cost error responses

* only 33 migrations now

* put macros back

* get the stat buffer sender to the TestApp helper

* fixes
2023-07-05 18:18:10 -07:00
Bryan Stitt 501ec21442 drop workspace-hack for now
it doesn't work well with features and so we were installing things like kafka even if the feature was off
2023-06-30 13:18:37 -07:00
Bryan Stitt 272f7ce800 add cargo hakari and chef to build process 2023-06-27 11:59:49 -07:00
Bryan Stitt a440d51377 test fixture 2023-06-24 21:17:08 -07:00
Bryan Stitt fa55e5ce9b add eth_getBlockByNumber example 2023-06-19 18:55:31 -07:00
Bryan Stitt a083bc652d
Handle uncle transactions (#129)
* add more columns to handle uncled transactions

* handle payment uncles

* put relations back

* include all the new columns

* lower log levels

* improve block caching

if we have a block with a number, its canonical. uncles don't get returned

* improve disconnect logic

* lint

* clear first changed for new_top_config_receiver

* better logs around config changing

* i guess we do want one apply top_config at the start

* check correct variable for data limits
2023-06-16 00:46:27 -07:00
Bryan Stitt 40bee30730 back to moka 2023-06-07 17:30:05 -07:00
Bryan Stitt 5d64524aa6 add name to web3rpcs 2023-05-16 16:04:17 -07:00
Bryan Stitt 2080739865
Quick cache (#70)
* quick cache and allocate less

* improve /status cache

* prepare to cache raw transaction hashes so we dont dos our backends

* simple benchmark for /health and /status

* mut not needed with atomics

* DRY all the status pages

* use u64 instead of bytes for subscriptions

* fix setting earliest_retry_at and improve logs

* Revert "use kanal instead of flume or tokio channels (#68)"

This reverts commit 510612d343.

* fix automatic retries

* put relaxed back

* convert error message time to seconds

* assert instead of debug_assert while we debug

* ns instead of seconds

* disable peak_latency for now

* null is the default

* cargo fmt

* comments

* remove request caching for now

* log on exit

* unit weigher for now

* make cache smaller. we need a weigher for prod. just debugging

* oops. we need async

* add todo

* no need for to_string on a RawValue
2023-05-13 11:13:02 -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 fc8ca4ba4f less max lag 2023-05-11 17:04:33 -07:00
Bryan Stitt 9118117fe7 tell ethers to shut up 2023-04-18 20:50:35 -07:00
Bryan Stitt 5695c1b06e add steps for kafka library 2023-03-03 15:25:44 -08:00
Bryan Stitt 8e504254d0
daemon -> proxyd 2023-02-07 10:11:34 -08:00
Bryan Stitt 17d8ea0b7f make free tier even better and improve migration locking 2023-01-19 21:28:33 -08:00
Bryan Stitt 053947de40 one bin for everything 2023-01-18 13:56:23 -08:00
Bryan Stitt c6f02a33b0
Update README.md 2023-01-09 10:09:36 -08:00
Bryan Stitt f04905698a improve request caching 2022-12-16 20:05:01 -08:00
Bryan Stitt 9e32b02ada improve docs 2022-12-15 22:21:19 -08:00
Bryan Stitt 4e17a50a18 cost_calculator (and stubs of other scripts) 2022-11-30 05:57:52 +00:00
Bryan Stitt b18880c5e2 document health_compass 2022-11-28 07:06:47 +00:00
Bryan Stitt cf7239aa0b add example create user and change user tier commands 2022-11-22 06:02:59 +00:00
Bryan Stitt 91b7d2efd3 improve development instructions 2022-11-13 18:39:49 +00:00
Bryan Stitt 0e1cf5767c cut out tracing for now 2022-11-12 08:24:32 +00:00
Bryan Stitt 9ae2337d1d thread fast rng 2022-11-12 06:11:58 +00:00
Bryan Stitt 8b35bf5e63 clean up migration 2022-11-01 18:54:39 +00:00
Bryan Stitt 9ec8abdf49 only require invite_code on first login 2022-10-25 17:21:15 +00:00
Bryan Stitt 89ecf4fe1d
Update README.md 2022-10-21 23:02:32 -07:00
Bryan Stitt 9880c74e5f
Update README.md 2022-10-21 23:02:10 -07:00
Bryan Stitt c93a565d4a
Update README.md 2022-10-21 19:57:45 -07:00
Bryan Stitt 8035ee5a0c update entitites 2022-09-24 00:17:02 +00:00
Bryan Stitt 8481f6d44c wip 2022-09-21 23:50:55 +00:00
Bryan Stitt c9b2c0c0d2 dry cache code 2022-09-07 03:54:16 +00:00
Bryan Stitt 4c66bc32d7 polish docs 2022-08-16 21:10:03 +00:00
Bryan Stitt c57c2249c0 load the redirected page from config 2022-08-12 19:08:28 +00:00
Bryan Stitt 1923fd18ea use system ethspam 2022-08-10 05:20:52 +00:00
Bryan Stitt fe9b1580c8 disable less used chains for now 2022-08-10 04:27:27 +00:00
Bryan Stitt 2524168a0e move dev to different ports 2022-08-06 05:49:52 +00:00
Bryan Stitt 2811c84c25 dash consistency 2022-08-06 05:46:33 +00:00
Bryan Stitt 20384e7f2f use Uuid and bools in our generated types 2022-08-05 19:47:50 +00:00
Bryan Stitt dede79fde1 regenerate entities 2022-08-03 23:17:02 +00:00
Bryan Stitt 4cb65b0fa4 setup database and stub migrations 2022-07-26 04:55:07 +00:00
Bryan Stitt 1aa6b4cdb4 better logs 2022-07-25 22:38:23 +00:00
Bryan Stitt 88cb2cd1d1 document more and cache in block_map 2022-07-19 06:41:04 +00:00
Bryan Stitt 367e589fe7
Update README.md 2022-06-18 13:51:14 -07:00
Bryan Stitt b4afb89102
Update README.md 2022-05-19 19:50:22 -07:00
Bryan Stitt 5ed36cdd3d
Update README.md 2022-05-19 19:48:08 -07:00
Bryan Stitt 1aebcd2783 better errors on reconnect 2022-05-17 04:24:13 +00:00