-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
config remote reload without rebuild the whole pipeline #3560
config remote reload without rebuild the whole pipeline #3560
Conversation
Please sign the CLA. |
Done |
@pjanotti will you be able to review this? |
This PR was marked stale due to lack of activity. It will be closed in 7 days. |
@buptubuntu sorry for the delay, I finally was able to look at the PR. First of all, I believe this is a very important feature, so the contribution is very welcome. Unfortunately reviewing such a complicated and huge feature in a single PR is very difficult. There is a lot going on here and I have a hard time understanding all of it at once. I would suggest to break down this work into smaller steps and move incrementally, submitting smaller PRs one by one. For example here are some possible breakdown (in no particular order):
Before submitting the individual PRs it would be good to have a sort of a design document that explains how this all is expected to work. We will need to review the design before we commit to it. Ideally it should be reviewed in Collector SIG meeting. One quick advice on code style: for non-trivial feature like this I would expect to see a lot more comments explaining what is going on in the code and why. A couple random design questions that I didn't see by just glancing at the code:
|
Thanks for reply Agree to break down prs, suggestion is quite reasonable
The three above I think is the what we can do now. And after the two above is finished, we can implement the reload logic is two situation:
For the two questions:
Above all, I think the three prs below is what I will work on recently:
Meanwhile I will complete the design ducoment Thanks! |
So, perhaps the behavior for exporters should be component-specific or maybe we always first stop then start to be safe. This needs to be called out in the design.
That makes sense. However for wrapped components I think the wrapper needs to take care of this and I don't think I see this in the code at the moment. During reload the replacement of the reference to the wrapped component I think currently races with the ConsumeXXX call through that reference.
@buptubuntu great! And thank you again for working on this. This is an important and non-trivial capability, so it will take some time to get right. |
This PR was marked stale due to lack of activity. It will be closed in 7 days. |
This PR was marked stale due to lack of activity. It will be closed in 7 days. |
This PR was marked stale due to lack of activity. It will be closed in 7 days. |
This PR was marked stale due to lack of activity. It will be closed in 7 days. |
This PR was marked stale due to lack of activity. It will be closed in 7 days. |
@buptubuntu I am closing this while awaiting for a design document. Can be reopened when it is ready for review after the design is presented and approved. |
Description:
add reloadable interface for component to enable reloadService without rebuild the pipeline
Link to tracking Issue: #2374
Testing: