Steps to reproduce:
- Make a clean install.
- Create a trigger, a service, an SLA, and link those together.
- Make the trigger to go into a problem state and back several times per second.
- Observe the SLA report.
- Make sure it's correct.
- Now make another trigger and service, link those together and generate several status changes per second.
- Observe the SLA report again.
Occasionally, the result of the first service will be different, because the service status updates will be processed in a wrong order, mixing alarms within the the same timestamp (seconds). This is due to database reporting alarms in a different order when those are requested for multiple services. This has been observed on MariaDB.
Service alarms are processed in right order, even if there are many status updates per second.