89799969 opened a new issue, #4203: URL: https://github.com/apache/rocketmq-dashboard/issues/4203
### Description `AlertService#acknowledgeAlert` persists two related pieces of state: 1. it marks the selected `rmq_system_alert` event as acknowledged; and 2. for the matching FIRING occurrence, it changes `rmq_alert_state` to ACKED. The service method currently has no transaction boundary. If the second database write throws after the event update succeeds, the request fails but the event remains acknowledged while the active state remains FIRING. The state machine may then continue producing reminder notifications for an event that the UI already shows as acknowledged. This is distinct from the expected stale-occurrence case where `AlertStateRepository#acknowledge` returns `false`: an old event may still be acknowledged without changing a newer incident. The inconsistent state here is caused by a persistence exception midway through the current occurrence update. ### Expected behavior The event acknowledgement and matching active-state acknowledgement should commit or roll back atomically when both writes are attempted. ### Proposed fix Add a transaction boundary to `AlertService#acknowledgeAlert` and cover both rollback-on-failure and successful retry with an H2-backed integration test. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
