chore(compute): Minor compute_ctl startup refactoring #11003
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Problem
While debugging neondatabase/cloud#24882 I noticed that there is a significant amount of startup time (hundreds of ms) that is not attributed to any particular phase.
The current code structure makes it harder to add additional per-startup phase metrics.
Summary of changes
Refactor compute startup:
start_compute()
we do not have any meaningful code except launching some aux threads.configure_vm()
compute helper.vm-monitor
if Postgres startup failed and we are exiting anyway.PR with more metrics will follow up, I do not want to pack too many changes in a single one.