[PR #744/1cb9f369 backport][stable-3] fix: case when grant options is set with no other user permissions in… #750
+3
−1
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 is a backport of PR #744 as merged into main (1cb9f36).
SUMMARY
fixes the edge case where we need to change permissions on a user which do not have any permissions on the database but have the grant option
Fixes #664
ISSUE TYPE
COMPONENT NAME
community.mysql_user
ADDITIONAL INFORMATION
the issue comes from the fact that when parsing the current permissions the USAGE (i.e. no permissions) is added to the privileges array then when we try to edit and the database the user has only USAGE and PRIVILEGES OPTION
like:
the revoke function first remove the PRIVILEGES OPTION with:
which remove the USAGE GRANT as well because it does not have any other purpose than holding the grant option
but then we try to remove also the USAGE GRANT with:
which is already removed and mariadb throws an error: