Skip to content
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

Remove granular role registration #2107

Closed
ravenac95 opened this issue Sep 17, 2019 · 5 comments · Fixed by #2514
Closed

Remove granular role registration #2107

ravenac95 opened this issue Sep 17, 2019 · 5 comments · Fixed by #2514
Assignees
Labels
c:ops Category: operations c:registry Category: entity/node/runtime registry service c:runtime/compute Category: runtime compute worker

Comments

@ravenac95
Copy link
Contributor

ravenac95 commented Sep 17, 2019

Re: Core Platform Meeting (2019/09/17)

The registry currently allows granular registration of roles within the compute committee but this should be changed so that the per-runtime compute execution roles (txnscheduler/compute/merge nodes) are now a single "compute" role from the viewpoint of the registry.

The scheduler should still schedule individual roles as-is and would pick from all valid nodes registered with the new "compute" role.

@ravenac95 ravenac95 added the c:ops Category: operations label Sep 17, 2019
@kostko kostko added c:registry Category: entity/node/runtime registry service c:runtime/compute Category: runtime compute worker c:worker-merge labels Sep 17, 2019
@bennetyee
Copy link
Contributor

@lostnfound incentive Qs: how worried are we that we would get too many servers of one type and not enough of another? should we take the max of the hw requirements of non-validator compute and validators and merge the two categories together?

@kostko
Copy link
Member

kostko commented Nov 4, 2019

should we take the max of the hw requirements of non-validator compute and validators and merge the two categories together?

In light of recent architecture discussions, we should probably not combine validator and other compute node roles as we can imagine there being validator-only nodes and there being nodes that only run specific runtimes?

So it should be at least four classes:

  • Global: Consensus nodes.
  • Per-runtime: Compute execution nodes (txnscheduler/compute/merge).
  • Per-runtime: Storage nodes.
  • Per-runtime: Key manager nodes.

@kostko
Copy link
Member

kostko commented Dec 31, 2019

Updated the issue description to be more clear what needs to be done.

@pro-wh
Copy link
Contributor

pro-wh commented Jan 3, 2020

txnscheduler was not a per-runtime role

edit: hm neither was merge

edit: hm, other parts of our code consider txnscheduler to be a per-runtime role

edit: oh for some roles suitability is per-runtime but registration is not per-runtime. but it's not consistent for the merge workers right now

@kostko
Copy link
Member

kostko commented Jan 3, 2020

Oh just noticed this while implementing the runtime maintenance fee payments -- it seems that the committee scheduler currently does not take runtimes into account for merge and storage nodes.

This is incorrect and should be fixed (all these things should be per-runtime instead of global). Can you do it as part of this issue?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c:ops Category: operations c:registry Category: entity/node/runtime registry service c:runtime/compute Category: runtime compute worker
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants