Prevent bad data being added to application settings when Redis is unavailable
What does this MR do?
At present, any call to current_application_settings
with Redis down will cause a new row to be added to the application_settings
table in the database.
This commit bypasses the redis cache for ApplicationSetting.current
if there are any problems, allowing the uncached record to be used instead. This prevents the extra rows from being created.
Are there points in the code the reviewer needs to double check?
This MR doesn't prevent new rows from being added in-general; it just fixes a fairly common route by which they are being created at the moment. Let's address this problem in general in %9.5 against #30555 (moved)
Why was this MR needed?
Bad data being added to user databases. This is currently preventing RCs from being deployed.
Screenshots (if relevant)
Does this MR meet the acceptance criteria?
-
Changelog entry added, if necessary -
Documentation created/updated -
API support added - Tests
-
Added for this feature/bug -
All builds are passing
-
-
Conform by the merge request performance guides -
Conform by the style guides -
Branch has no merge conflicts with master
(if it does - rebase it please) -
Squashed related commits together
What are the relevant issue numbers?
Closes #34728 (moved)