After an upgrade from 12.0.0 to 13.0.0 the Audit configuration "Enable" switch does the opposite of what it's supposed to do.
Steps to reproduce
- Upgrade from 12 to 13
- Navigate to Configuration | Global | Audit Logging
- Enable Audit Logging
Audit logging is switched on and audit logs are produced.
No logs are produced. However if you repeat the process and Disable Audit Logging, the logs are produced.
The problem is with the sequence in which the Service Listeners are notified of a configuration change. The Audit listener is notified first and will then refresh it's locally stored config from the SMS cache. The SerciveConfigManager is notified later and will refresh the SMS cache. This means the audit config is always in the previous state.
We need to make sure that the SMS cache refresh is the first thing that happens to allow subsequent listeners to read from valid config cache.