fix: port conflict in worker process for prometheus port#12667
Merged
Conversation
nic-6443
previously approved these changes
Oct 13, 2025
nic-chen
previously approved these changes
Oct 13, 2025
bzp2010
reviewed
Oct 14, 2025
membphis
approved these changes
Oct 14, 2025
nic-6443
approved these changes
Oct 14, 2025
bzp2010
approved these changes
Oct 14, 2025
nic-chen
approved these changes
Oct 14, 2025
SkyeYoung
approved these changes
Oct 14, 2025
Revolyssup
added a commit
that referenced
this pull request
Oct 14, 2025
jizhuozhi
pushed a commit
to jizhuozhi/apisix
that referenced
this pull request
Oct 18, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
In a previous change, the prometheus server was moved from priviliged agent to worker which sometimes during restarts causes port conflict issues. This PR fixes it by enabling port reuse for prometheus server address. Since manual testing is hard for it, as it doesn't consistently reproduce locally, I have added script to reproduce in container environment where its being reproduced consistently.
Reproduction steps
Result: Request will be forbidden. To confirm check error log and you will see the log
bind() to 0.0.0.0:9091 failed (98: Address already in use)Fix
The above script is modified to update the code in apisix container with the fix
Result: The request passes
Checklist