Commit Graph

127 Commits

Author SHA1 Message Date
Bryan Stitt
0d060033d0 upgrade, update, and use mold+clang 2023-11-14 14:48:37 -08:00
Bryan Stitt
156ff1c33a 1.43.85 2023-11-08 11:45:49 -08:00
Bryan Stitt
6c2917ba68 1.43.84 2023-11-06 17:49:32 -08:00
Bryan Stitt
8a1e8f614c 1.43.68 2023-10-26 11:06:15 -07:00
Bryan Stitt
da7bb4b07c 1.43.55 2023-10-20 12:30:54 -07:00
Bryan Stitt
d4e72a5455 1.43.43 2023-10-12 20:19:24 -07:00
Bryan Stitt
d732b8a171 cargo upgrade and update
ordered-float went from v3 to v4
2023-09-25 10:02:04 -07:00
Bryan Stitt
5913064809 add high concurrency tier 2023-09-11 11:32:24 -07:00
Bryan Stitt
ec533c8b30 cargo upgrade and update 2023-08-30 20:59:06 -07:00
Bryan Stitt
df12b3dc73 cargo upgrade and update 2023-08-24 14:37:04 -07:00
Bryan Stitt
d036806a61 cargo upgrade and cargo update 2023-08-22 10:42:59 -07:00
Bryan Stitt
d56d39c82f cargo upgrade 2023-08-07 15:40:59 -07:00
Bryan Stitt
5257329559 cargo upgrade 2023-08-04 16:19:43 -07:00
Bryan Stitt
2885bc6ef2 cargo upgrade 2023-07-31 12:58:20 -07:00
Bryan Stitt
32a73a0c53 cargo upgrade --incompatible 2023-07-27 12:29:10 -07:00
Bryan Stitt
ebfb4c6386 cargo upgrade 2023-07-27 12:29:10 -07:00
Bryan Stitt
d2f0d45dd2 reduce out of funds tier to match free config and bump to version 1 2023-07-26 16:40:08 -07:00
Bryan Stitt
4d8836538d drop old fk 2023-07-26 09:33:15 -07:00
Bryan Stitt
9b361cb849 cargo upgrade 2023-07-24 21:59:37 -07:00
Bryan Stitt
6c6a2406b7 cargo upgrade 2023-07-19 22:55:53 -07:00
Bryan Stitt
1b8ae5dee0 cargo upgrade 2023-07-18 09:54:56 -07:00
David
31f840432d
Add DateCreated fields to admin and on-chain deposit (#190)
* tests seem to be passing

* bump version

* bump version
2023-07-13 19:25:14 -07:00
Bryan Stitt
5d207fb2c6
Auto tier change (#184)
* lint

* change user to premium on admin credits

todo: change on other deposits

* set tier more places

* BadRequest instead of 500

* insert existing users too

* add the premium file
2023-07-12 10:24:16 -07:00
Bryan Stitt
df2f3d340f
More balance tests (#182)
* fix popularity contest

* more info in the Debug for Web3Rpc

* add frontend_requests and cache_misses to the Balance query

* add more to balance and stats flushing and improved test coverage

* it compiles

* deserializer for Ulid to Uuid

I think a wrapper type on Ulid that implements sea_orm::Value is probably better

* rename variable to match struct name

* add deserializer for Address -> Vec<u8>

* sql sum returns a Decimal. need to convert to u64

* assert more

* one log and assert more

* log more

* use a helper to get the user's rpc provider

* this should be 2 now that we have a public and authed call

* this should be zero. the public has the cache miss

* instrument cu calcs

* trace the value we took, not the default that replaced it

* move usd_per_chain into config

* remove some extra logging

* use Arc::into_inner to maybe avoid a race

* off by 1

* pass paid credits used instead of returning it

this lets us use it to write to our user balance cache first. importantly, this keeps us from holding a write lock while writing to mysql

* no cache misses expected in this test

* actually check the admin

* put the balance checks back now that the rest of the test works

* archive request is being set incorrectly

* wow howd we manage flipping the greater than sign on archive depth

* move latest_balance and premium_credits_used to before any stats are emitted

* lint

* and build undoes the linting. fun

i didnt even want to lint them in the first place, so this is fine

* missed incrementing total_spent when not incrementing total_spent_paid_credits

* use the credits on self

* use the credits on self (pt 2)

* fix type for 10 cu query

* convert the requestmetadata on the other side of the channel

* logs

* viewing stats is allowed even without a balance

* move paid_credits_used to AuthorizationChecks

* wip

* test_sum_credits_used finally passes

* UserBalanceCache::get_or_insert

* re-enable rpc_secret_key_cache

* move invalidate to a helper function

and always call it **after** the db is commited

* fix PartialEq and Eq on RpcSecretKey

* cargo upgrade
2023-07-12 00:35:07 -07:00
Bryan Stitt
cceee646ad cargo upgrade 2023-07-10 14:05:03 -07:00
Bryan Stitt
b527f5d0d6
David/remove balance logic non destructive (#173)
* WIP will work on locks

* added concurrent test for referral, numbers rn still add up

* will change balance table to be a view instead of a table

* merged in devel. will proceed with migrations for rpc_stats_v2 and referral

* WIP

* WIP

* WIP compiling

* gotta add the balance_v2 view

* about to add balance view

* stupid missing closing param

* compiles again, now i will just have to implement the raw sql

* need to paste the real query and play with it

* ok now on to testing

* addresses many comments in PR

* app works for simple unauthorized access. will look into tests

* some tests pass, referral logic tests fail

* not sure why the test is failing

---------

Co-authored-by: yenicelik <david.yenicelik@gmail.com>
2023-07-09 19:23:32 -07:00
Bryan Stitt
71aab0dedc cargo upgrade 2023-07-07 15:16:14 -07:00
Bryan Stitt
b234265458
Premium tier changes (#170)
* lower premium concurrency in preparation for key+IP limits

* include the ip in the user semaphore

* 3, not 5

this is our current limit for free

* per user_id+ip rate limiting
2023-07-07 15:15:41 -07:00
Bryan Stitt
04d58a68dd fix version number to match migration count 2023-07-05 20:58:24 -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
c1fc7d7a6a derive default to make 0 balance easy to get to 2023-07-03 16:53:07 -07:00
Bryan Stitt
64505953ee cargo upgrade 2023-07-03 12:28:07 -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
581af0d596
stripe integration first mvp (replaces #140) (#154)
* stripe integration first mvp

* addressing some points from #140

* stripe endpoint needs testing

* addressed some comments

* added Json(payload)

* update toolchain

* lint (well, most of it)

---------

Co-authored-by: yenicelik <david.yenicelik@gmail.com>
2023-06-29 14:32:05 -07:00
Bryan Stitt
272f7ce800 add cargo hakari and chef to build process 2023-06-27 11:59:49 -07:00
Bryan Stitt
1cf18b78a9 cargo upgrade 2023-06-27 10:04:48 -07:00
Bryan Stitt
89330cfba0 upstream ethers again 2023-06-23 22:23:51 -07:00
Bryan Stitt
6038351cb8 change default tracking in prep for premium-only keys 2023-06-19 13:00:57 -07:00
Bryan Stitt
9dd0bae40a text instead of string payload 2023-06-18 16:13:55 -07:00
Bryan Stitt
5d9365449f simplify max item weight by having the weigher send MAX for big things 2023-06-16 16:14:11 -07:00
Bryan Stitt
fe8675ddf2 cargo upgrade 2023-06-16 00:48:22 -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
b6ff14210d cargo upgrade 2023-06-08 22:35:14 -07:00
David
3f76b08364
Test balance and referral accounting (#111)
* removed bloom filter temporarily, added some fixes with decimals in payment.rs

* balance accounting for a single user (paid and free tier) seems to be ok

* fixed some balance accounting

* compute_cost reduced back to 0
2023-06-08 10:08:29 -07:00
David
de7d8919d3
Change balance to record total spend and total deposits (#109)
* lets test total deposit and total spent

* removed referrer from cache for performance reasons
2023-06-07 14:45:57 -07:00
Bryan Stitt
f6b2b0deab cargo upgrade 2023-06-07 10:50:34 -07:00
Bryan Stitt
2273637a07 move cli into a separate packge and clean up dependencies 2023-05-30 20:58:24 -07:00
Bryan Stitt
0d15d5baf7 bump versions to match number of migrations 2023-05-23 20:58:29 -07:00
David
ddfd1dbff1
Added admin balance increase, and also test (#72)
* added admin balance increase, and also test

* slightly hacky, but does do an update expression

* added note column to entities

* removed redundant printlns

* flattened items

* removed user tier logic from admin increase balance completely. admin will have to manually increase the user tier
2023-05-22 17:07:17 -07:00
Bryan Stitt
8898ffe578 cargo upgrade 2023-05-18 13:36:35 -07:00