-
Notifications
You must be signed in to change notification settings - Fork 12
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
NetworkDatabase
impl with new ssv_types
system
#67
Conversation
…er operations added, in memory construction
…n, move metadata insertion
ssv_types
systemNetworkDatabase
impl with new ssv_types
system
… into clean-newtypes-database
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.
great work here zac, happy with it based on our walkthrough review yesterday. Let's try and break these down a bit in future so we can merge faster and get more collaborative with the other guys. sick effort though
/// Metadata about the validator this committee represents | ||
pub validator_metadata: ValidatorMetadata, | ||
/// Operators in this cluster | ||
pub cluster_members: HashSet<OperatorId>, |
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.
Should this be a Committee?
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.
I think committee is too broad of a term here. A committee just refers to a general set of operators while here the cluster_members
are meant to be the direct members of the cluster. Its trying to enforce the relationship. But, there is also an argument that committee is also applicable.
Issue Addressed
Proposed Changes
This PR introduces
a newassv_types
system and associatedNetworkDatabase
.Edit: New
ssv_types
split into #69The
NetworkDatabase
portion of this PR is a MVP of the database which holds all of the types information above. The database is just simple CRUD with in memory stores for relevant information. It will store all of the information during execution event sync and turn it into in memory stores that we deem relevant. These stores will be recreated via the DB upon node restart.