importccl: refactor import processor to use ProcessorBase #57124
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.
This commit refactors the import processor to use ProcessorBase.
Although this processor doesn't have any inputs and the main utility
that ProcessorBase provides is management of draining inputs, there is
still some utility for this processor to embed a ProcessorBase. As
tracing and other infrastructural improvements are made to
ProcessorBase, this allows the import processor to stay up to date with
these changes.
The way that this processor works is that it kicks off a goroutine on
start that will begin the import and start sending progress updates over
an internally maintained channel. Next() will continually read from that
channel until it is fully consumed, and then read the returned summary
generated by the goroutine.
Import is build this way so that it can manage concurrency internally to
the processor.
Relates to #57293.
Release note: None