You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shenyu.apache.org by "Aias00 (via GitHub)" <gi...@apache.org> on 2026/08/03 00:49:24 UTC
[I] [BUG] Zookeeper callback early-returns on all NODE_DELETED events — every config deletion is silently dropped [shenyu]
Aias00 opened a new issue, #6611:
URL: https://github.com/apache/shenyu/issues/6611
- Severity: Critical
- Location:
`shenyu-sync-data-center/shenyu-sync-data-zookeeper/src/main/java/org/apache/shenyu/sync/data/zookeeper/ZookeeperSyncDataService.java:86` (guard), `:102-112` (dead `NODE_DELETED` switch branch)
-
Description:
The `CuratorCacheListener` lambda (`(type, oldData, data)`) has an early guard `if (Objects.isNull(data) || Objects.isNull(data.getData())) { return; }`. Per the Curator 5.7.0 `CuratorCacheListener` contract (verified: the lambda maps to `event(Type, ChildData oldData, ChildData data)` where `data` is "the new data or null"), for `NODE_DELETED` the `data` parameter is `null` because the node no longer exists. Every delete event hits the early return and never reaches the `switch(type)` block. The `case NODE_DELETED: eventType = EventType.DELETE;` branch is dead code. No plugin/selector/rule/auth/metadata/proxy-selector deletion is ever processed on the ZK sync path.
-
Impact:
When any config item is deleted in admin (ZK sync backend), the gateway never removes it from its local cache. Deleted plugins, selectors, rules, app-auths, metadata, proxy-selectors remain active indefinitely — stale routing, phantom rules, security exposure (deleted auth keys still honored).
-
Suggested fix:
Before the null-data guard, check `type == NODE_DELETED` and use `oldData` (carries the path and last-known data) to dispatch `event(configNamespace, oldData.getPath(), null, registerPath, EventType.DELETE)`. Only guard on `data` for PUT events.
-
Confidence: High
- Related existing: none — #6526/#6525 are in `shenyu-registry` (discovery registry), not `shenyu-sync-data-zookeeper` (config sync). Different component.
---
_Identified during the 2026-08-02 deep re-scan; full list in [`docs/scan2-2026-08-02/00-consolidated-critical-high.md`](docs/scan2-2026-08-02/00-consolidated-critical-high.md)._
--
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: notifications-unsubscribe@shenyu.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] [BUG] Zookeeper callback early-returns on all NODE_DELETED events — every config deletion is silently dropped [shenyu]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on issue #6611:
URL: https://github.com/apache/shenyu/issues/6611#issuecomment-5161204347
👋 Hello @Aias00
A new issue has been opened by @Aias00:
- **Title**: [BUG] Zookeeper callback early-returns on all NODE_DELETED events — every config deletion is silently dropped
- **Link**: https://github.com/apache/shenyu/issues/6611
Please review when you have time. Thank you! 🙏
--
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: notifications-unsubscribe@shenyu.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] [BUG] Zookeeper callback early-returns on all NODE_DELETED events — every config deletion is silently dropped [shenyu]
Posted by "yuluo-yx (via GitHub)" <gi...@apache.org>.
yuluo-yx closed issue #6611: [BUG] Zookeeper callback early-returns on all NODE_DELETED events — every config deletion is silently dropped
URL: https://github.com/apache/shenyu/issues/6611
--
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: notifications-unsubscribe@shenyu.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org