RockteMQ-AI commented on issue #2661:
URL: 
https://github.com/apache/rocketmq-dashboard/issues/2661#issuecomment-5454242874

   **Issue Evaluation**
   
   Category:  | Status: **Confirmed**
   
   The reported issue has been verified against the current codebase on the  
branch.
   
   **Root Cause (two state-machine gaps confirmed):**
   
   1. **No claim renewal during in-flight delivery:**  calls  which sets , then 
 performs the SMTP/webhook call synchronously. The claim is never renewed 
during this call. If the external call exceeds  (1 minute),  in another replica 
will treat the row as stale and re-claim it, causing a duplicate send.
   
   2. **Post-send bookkeeping failure triggers retry of already-delivered 
notification:** In , after the SMTP/webhook call succeeds (lines 267-269), the 
code updates status to  (line 271-274) and then calls  (line 277). If  throws, 
the catch block at line 278 calls , which moves the row to  — even though the 
notification was already delivered to the recipient. The next dispatcher will 
re-send it.
   
   **Impact:** Duplicate alert notifications via email/webhook, potentially 
causing alert fatigue or incorrect operational responses.
   
   **Severity:** Medium-High — affects notification reliability and can cause 
duplicate alerts in production.
   
   **Code references verified:**
   -  —  with claim but no renewal
   -  —  with post-delivery exception routing to 
   -  —  moves row to 
   
   An automated fix proposal can be generated. Reply  to proceed with PR 
generation.
   
   ---
   *Automated evaluation by @RockteMQ-AI*


-- 
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]

Reply via email to