-
Notifications
You must be signed in to change notification settings - Fork 120
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add(metrics): Track mempool actions and size bucketed by weight #6972
Conversation
zcash/zcash#6632 updates our default Grafana dashboard to use these new metrics. This PR can either be tested against that dashboard, or those changes could be pulled into the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you, str4d. I noticed some tests needed adjustments. I fixed them right away.
I can't think of a suitable way to import the dashboards from zcashd. I guess other engineers will know.
Ahh, I checked with
The |
This test https://github.com/str4d/zebra/blob/c697558b79d81a3236b3c56261292a48dd3370f6/zebrad/src/components/mempool/storage/tests/prop.rs#L113 panics here https://github.com/str4d/zebra/blob/c697558b79d81a3236b3c56261292a48dd3370f6/zebrad/src/components/mempool/storage/verified_set.rs#L312. Likely because |
I opened #6976 to handle the dashboards. I think we can merge this PR first and add the dashboards later, adjusting the code if there are issues. |
Due to #4529, we'll need to push this branch to the zebra repository to get all our CI to run on it. |
|
… of #6972, credit @str4d) (#7019) * metrics: Track mempool actions and size bucketed by weight * Fix tests * draft fix tests * fix `fix_arbitrary_generated_action_overflows` * add some docs * manually derive arbitrary * remove unused import --------- Co-authored-by: Jack Grigg <jack@electriccoin.co> Co-authored-by: Marek <mail@marek.onl> Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
Motivation
It is useful to have insight into the composition of the mempool along the axes used for the default block construction algorithm. The algorithm from the now-deployed ZIP 317 takes into account both a transaction's weight, and the number of "unpaid actions" it contains.
Solution
This PR adds the following new metrics:
zcash.mempool.actions.unpaid { "bk" = ["< 0.2", "< 0.4", "< 0.6", "< 0.8", "< 1"] }
zcash.mempool.actions.paid
zcash.mempool.size.weighted { "bk" = ["< 1", "1", "> 1", "> 2", "> 3"] }
These are proposed as common Zcash metrics (with a
zcash.
prefix). The correspondingzcashd
PR is zcash/zcash#6632.Reviewer Checklist