Spring Cloud Gateway 升级Sentinel版本后,一个资源配置了多条规则,其中一条规则触发熔断抛出异常后没有退出规则链,还会继续触发剩余的规则
Open
- Dominant language
- Java
- Stars
- 23.1k
- Forks
- 8.1k
- PR merge metrics
- No merged PRs in 30d
Description
升级前 版本是2021.0.0
升级后的的Sentinel版本
com.alibaba.cloud
spring-cloud-starter-alibaba-sentinel
2023.0.1.2
com.alibaba.cloud
spring-cloud-alibaba-sentinel-gateway
2023.0.1.2
新版本jdk1.8不支持,也同步升级jdk到17了
同一个资源配置了【限流规则】、【授权规则】、【自定义的规则】
【授权规则】 抛出指定的AuthorityException后,没有跳出规则链,还会继续流转到【自定义规则】。
【授权规则】
for (AuthorityRule rule : rules) {
if (!AuthorityRuleChecker.passCheck(rule, context)) {
// 此处会抛出异常
throw new AuthorityException(context.getOrigin(), rule);
}
}
【自定义的规则】是参考授权规则写的,通过SPI实现
这个问题是因为什么导致的呢?
Contributor guide
Assessment
This issue has not been assessed yet.