apache / apache/shenyu

[BUG] MqttBootstrapServer shutdown NPE on failed start; start swallows InterruptedException

Open
#6,747 2 comments 0 reactions 1 assignee Claimed by @wy471x View on GitHub
plugin: mqtt priority: medium type: bug
Dominant language
Java
Stars
8.8k
Forks
3.1k
Avg merge
7d 1h
Merged PRs (30d)
85

Description

- severity: Medium
- files: `shenyu-protocol/shenyu-protocol-mqtt/src/main/java/org/apache/shenyu/protocol/mqtt/MqttBootstrapServer.java:57-79`
- description: `start()` catches `InterruptedException` from `bootstrap.bind(...).sync()` and does nothing (no log, no interrupt-flag restore, no cleanup). If bind fails, `future` stays null. `shutdown()` calls `future.channel().close()` → NPE on `future`.
- impact: Failed/incomplete start leads to NPE on shutdown and leaked event-loop groups; interrupt status lost.
- suggested_fix: Null-check `future`/groups in shutdown; on bind failure dispose groups and re-interrupt.
- confidence: Medium
- related_existing: none

---
_Identified during the 2026-08-02 deep re-scan; full list in [`docs/scan2-2026-08-02/06-medium-tiers.md`](docs/scan2-2026-08-02/06-medium-tiers.md)._

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.