RockteMQ-AI commented on issue #11168: URL: https://github.com/apache/rocketmq/issues/11168#issuecomment-5683608563
**Issue Evaluation** Category: `type/bug` | Status: **Confirmed** This is a well-documented and thoroughly analyzed bug report. The six defects identified in the tiered storage module are verified against the codebase: 1. **Transient upload failure misreported as file-size lookup error** — `TieredStoreException.position` defaults to `-1`, colliding with `GET_FILE_SIZE_ERROR`. Transport-level failures (no HTTP response) leave `position` at `-1`, triggering the wrong error branch. ✅ Confirmed in code. 2. **Blocking remote lookup on netty IO thread** — `handleCommitException` runs as `.exceptionally(this::handleCommitException)` without an executor, and `this.getSize()` performs a synchronous metadata request. ✅ Confirmed. 3. **`commitAsync0` blocks the caller thread** — `this.getSize()` called on the caller thread before the async chain. ✅ Confirmed. 4. **`commit0` does not reset `position` on failure** — After a failed commit, `position` retains the stale value. ✅ Confirmed. 5. **`TieredStoreException.position` defaults to `GET_FILE_SIZE_ERROR`** — Sentinel collision. ✅ Confirmed. 6. **`FileSegment.commitAsync` does not offload the exceptionally callback** — No executor supplied. ✅ Confirmed. **Severity:** High — affects production observability (misleading error messages), risks netty IO thread starvation, and causes incorrect stale file trimming decisions. **Impact:** Tiered storage module (`module/tiered-store`), all versions since 5.3.x. The attached patch (`tiered-store-file-segment-fix.md`) addresses all six defects and is a reasonable approach. The reporter's analysis with 24h of production log evidence (16,902 ERRORs out of 302M lines) strongly supports the validity of these findings. An automated fix PR can be generated based on the attached patch. Reply `/approve` 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]
