RockteMQ-AI commented on issue #1432:
URL: 
https://github.com/apache/rocketmq-clients/issues/1432#issuecomment-6312212502

   **Issue Evaluation**
   
   Category: `type/bug` | Status: **Confirmed**
   
   The reported issue has been verified against the current Rust codebase.
   
   **Root Cause:** `Client::start` sets `shutdown_tx` before creating the first 
session and does not reset it on failure, leaving the client in a half-started 
state. `SimpleConsumer::start` returns the route lookup error without shutting 
the client down. `receive_with`, `ack`, and `change_invisible_duration` lack 
pre-flight `is_started()` checks.
   
   **Impact:** Rust SimpleConsumer — after a failed `start()`, subsequent 
operations silently reconnect or panic instead of returning a clear "not 
running" error.
   
   **Severity:** high — violates the fail-fast principle and can cause panics 
in `ack()`.
   
   **Resolution:** PR #1433 by @leizhiyuan addresses all three root causes:
   1. `Client::start` now rolls back `shutdown_tx` on session creation failure
   2. `SimpleConsumer::start` calls `shutdown_ref()` on route lookup failure
   3. `receive_with`, `ack`, `change_invisible_duration` now check 
`is_started()` before proceeding
   
   The PR includes proper test coverage and has been reviewed.
   
   ---
   *Automated evaluation by github-manager-bot*


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