Speed up salt.matcher.confirm_top by using __context__ #647
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.
What does this PR do?
Backport of saltstack/salt#66494
In case of having complex
top.sls
with a list of different matchers based on grains/pillars etc. it could be possible that salt will reload matchers again and again for all of the possible matches intop.sls
, this fix is intended to speed up the pillar renderer by reusing he matchers loaded once and stored in the__context__
.What issues does this PR fix or reference?
Tracks: https://github.com/SUSE/spacewalk/issues/23526
Previous Behavior
If there is a list of different matches in
top.sls
forpillar
it could take much time to render pillar data on_pillar
calls from the minions.New Behavior
Each next call for rendering the pillar will reuse the matchers from the
__context__
so it will significantly speed up the calls.Merge requirements satisfied?
[NOTICE] Bug fixes or features added to Salt require tests.
Commits signed with GPG?
Yes/No
Please review Salt's Contributing Guide for best practices.
See GitHub's page on GPG signing for more information about signing commits with GPG.