-
-
Notifications
You must be signed in to change notification settings - Fork 95
Print the import transformer status #1748
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
Conversation
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.
Just some smaller comments.
Please make the same adjustment in the status handlers of the SOURCE / DATAGRAM SOURCE actors.
This also needs a changelog entry.
6c57137
to
cffbee1
Compare
This turned into a bit of a refactoring of the status handlers now. I originally hoped to manage this with less code, but at least it should now be easier to write handlers that retrieve additional data from child components. |
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.
This is a good abstraction, but we should make sure with the API design that response promises cannot be used from outside of their hosting actor's context.
31bcf07
to
8d62d41
Compare
Rebased on top of 84140ff now. |
8d62d41
to
b2f0e26
Compare
b2f0e26
to
b4c9e51
Compare
This file will receive additional functionality in the next commit. This commit contains the mechanical preparation.
In some cases we need to calculate a reduced timeout so nested requests that that can't be handled fast enough don't cause the failure to bubble up to the root requester. A concrete example is the status request: the nested handlers can't wait the same amount as the ones in the layers above, because the outer requests are sent earlier. For example in the index, if a single partition fails to respond, we need to stop waiting earlier and send back the rest of the data, otherwise the entire "index" section would be missing from the output of `vast status`. Changing the type of the default value give us more headroom for those calculations without requiring extra casting of temporaries.
Many of our status message handlers have lot's of boilerplate to forward the requests to children and insert the collected subsection into a unified response. The tooling introduced here aims to reduce code duplication and abstract the response lifetime management out of the status handlers.
This changes the convenience overload of collect_status to take a `std::string_view` instead of a const char*. The general overload had to be restricted to only work with callables in the type signature to enable this, because it would otherwise be preferred over the conversion to `std::string_view`.
The previous change to the status handler in the node resulted in redundant sections for the top level components. This change aligns the insertion for the subcomponents with the ones that are nested at deeper levels.
79f8fb8
to
dc8c10d
Compare
📔 Description
We didn't request a status message from the import transformer so far. This fixes that oversight.