BUG/MINOR: prevents clash on custom routes names to avoid unecessary restarts #569
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.
Fixes #567
All custom routes are stored in the
routes.CustomRoutes
map using the backend name as the key (ServiceNS_ServiceName_PortName
). When we encounter two distinct IngressRules, whether they are within the same Ingress or not, and they utilize different hosts or paths while pointing to the same Service, they end up sharing the same key inCustomRoutes
. This similarity in keys results in comparison failures during every synchronization, requiring a hard reload of HAProxy.Rather than storing the custom routes in a map keyed by backend name, this PR stores all the resulting
use_backend
directives in a slice and compares them between syncs.