ZhangYan
9db0c70cbb
Fix thread-blocked problem of EtcdDataSource ( #2991 )
...
* fix thread blocked problem of etcd watcher
in the previous version of EtcdDataSource, when the flowRules defined in the etcd change and trigger etcd watcher, there will be a following error:
2022-12-07 14:36:03.592 [vertx-blocked-thread-checker] WARN io.vertx.core.impl.BlockedThreadChecker [?:?] - Thread Thread[vert.x-eventloop-thread-0,5,main] has been blocked for 2336 ms, time limit is 2000 ms
2022-12-07 14:36:04.592 [vertx-blocked-thread-checker] WARN io.vertx.core.impl.BlockedThreadChecker [?:?] - Thread Thread[vert.x-eventloop-thread-0,5,main] has been blocked for 3337 ms, time limit is 2000 ms
2022-12-07 14:36:05.592 [vertx-blocked-thread-checker] WARN io.vertx.core.impl.BlockedThreadChecker [?:?] - Thread Thread[vert.x-eventloop-thread-0,5,main] has been blocked for 4337 ms, time limit is 2000 ms
2022-12-07 14:36:06.595 [vertx-blocked-thread-checker] WARN io.vertx.core.impl.BlockedThreadChecker [?:?] - Thread Thread[vert.x-eventloop-thread-0,5,main] has been blocked for 5337 ms, time limit is 2000 ms
io.vertx.core.VertxException: Thread blocked
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.CompletableFuture$Signaller.block(CompletableFuture.java:1707)
at java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3334)
at java.util.concurrent.CompletableFuture.waitingGet(CompletableFuture.java:1742)
at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1908)
at com.htsc.fst.saas.infrastructure.component.EtcdDataSource.readSource(EtcdDataSource.java:92)
at com.htsc.fst.saas.infrastructure.component.EtcdDataSource.readSource(EtcdDataSource.java:23)
at com.alibaba.csp.sentinel.datasource.AbstractDataSource.loadConfig(AbstractDataSource.java:44)
at com.htsc.fst.saas.infrastructure.component.EtcdDataSource.lambda$initWatcher$0(EtcdDataSource.java:74)
at com.htsc.fst.saas.infrastructure.component.EtcdDataSource$$Lambda$480/1375681611.accept(Unknown Source)
at io.etcd.jetcd.Watch$1.onNext(Watch.java:183)
at io.etcd.jetcd.impl.WatchImpl$WatcherImpl.onNext(WatchImpl.java:310)
at io.etcd.jetcd.impl.WatchImpl$WatcherImpl$$Lambda$488/2088661957.handle(Unknown Source
I guess the reason is : when the watcher hold etcd Client, you can't use etcd Client in the Watch's consumer function.
Besides the problem above, use getKeyValue() in the watchEvent can reduce once invoke with etcd server to getting the latest flowRules :)
* Update EtcdDataSource.java
Add charset adaptation -- accept the suggestion from @LProDreamAll
2023-12-27 20:40:26 +08:00
quguai
59a32994cd
Fix the bug that error occurs in JMX metrics exporter when resource name contains '*' ( #2992 )
2023-12-27 20:40:26 +08:00
Joseph Zhang
9f3712eed7
Fix NPE bug in LogSlot#entry when recording rule ID ( #2980 )
2023-12-27 20:40:26 +08:00
Eric Zhao
e34d55273f
Refactor RateLimiterController: improve accuracy and support maxQps > 1000
...
* Rename to ThrottlingController
* Improve accuracy: use nanoseconds when necessary and support maxQps threshold > 1000 (i.e. wait < 1ms)
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2023-12-27 20:40:26 +08:00
Eric Zhao
4e41c14514
Polish AssertUtil: add assertNotNull and assertTrue
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2023-12-27 20:40:26 +08:00
garroshh
1483669aaf
Update metrics name for better monitor selection in JMX MetricBeanWriter extension ( #2976 )
2023-12-27 20:40:26 +08:00
Kirk Lin
e03444768b
ci: Update actions/checkout and actions/setup-java to v3 ( #2973 )
2023-12-27 20:40:26 +08:00
Wilson Wu
30ec6b103f
dashboard: Add Dockerfile for dashboard and update doc ( #2970 )
...
* Add dockerfile for dashboard with doc update
2023-12-27 20:40:26 +08:00
dependabot[bot]
ee9ea81746
build(deps): Bump dubbo to 2.7.18 in sentinel-demo/sentinel-demo-apache-dubbo ( #2923 )
...
Bumps [dubbo](https://github.com/apache/dubbo ) from 2.7.3 to 2.7.18.
- [Release notes](https://github.com/apache/dubbo/releases )
- [Changelog](https://github.com/apache/dubbo/blob/3.1/CHANGES.md )
- [Commits](https://github.com/apache/dubbo/compare/dubbo-2.7.3...dubbo-2.7.18 )
---
updated-dependencies:
- dependency-name: org.apache.dubbo:dubbo
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-27 20:40:26 +08:00
Ezreal
826f40f0fc
opt: 移除无用的代码
2023-12-27 20:40:26 +08:00
小贼贼子
3c9dba3eba
Fix spelling typo in code ( #2948 )
2023-12-27 20:40:26 +08:00
Eric Zhao
19418e71ad
Refactor and refine implementation of default circuit breaker rule
...
* Rename: DefaultDegradeSlot -> DefaultCircuitBreakerSlot
* Refine DefaultCircuitBreakerRuleManager
* Add test cases
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2023-12-27 20:40:26 +08:00
wuwen
8b43caede4
Add default circuit breaker rule support ( #2232 )
2023-12-27 20:40:26 +08:00
dependabot[bot]
6a8a01a8c1
build(deps): Update snakeyaml to 1.32 in sentinel-cluster/sentinel-cluster-server-envoy-rls module ( #2921 )
...
Bumps [snakeyaml](https://bitbucket.org/snakeyaml/snakeyaml ) from 1.26 to 1.32.
- [Commits](https://bitbucket.org/snakeyaml/snakeyaml/branches/compare/snakeyaml-1.32..snakeyaml-1.26 )
---
updated-dependencies:
- dependency-name: org.yaml:snakeyaml
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-27 20:40:26 +08:00
Eric Zhao
3cf5506b79
docs: Update README.md and doc/awesome-sentinel.md
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2023-12-27 20:40:26 +08:00
Eric Zhao
dd1ba2725e
Bump version to 1.8.6
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-10-25 16:57:18 +08:00
hongpy
5864ab577f
Fix the bug that SpiLoader#closeResources may not record the exception when error occurs ( #2890 )
2022-10-09 11:04:57 +08:00
Eric Zhao
e13d20ce55
dashboard: Improve IP validation in SentinelApiClient and rule controllers
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-09-26 19:16:04 +08:00
Eric Zhao
84df19b2c5
Bump version to 1.8.6-SNAPSHOT
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-09-15 09:50:36 +08:00
ZhongJinHacker
b9dd399697
Fix incorrect code description in sliding window logic of LeapArray ( #2876 )
...
* The "clean" logic has been removed in earlier version
2022-09-15 09:40:37 +08:00
Ze
9ac8e89dc4
Removing unnecessary checks in SystemRuleManager#checkSystem ( #2869 )
2022-09-15 09:33:56 +08:00
一个不知名的Java靓仔
6c74a4cf70
Add id field in Rule entity and record ruleId in block log ( #2853 )
...
* Add id field (Long) in Rule
* optimize BlockException log
2022-08-31 10:32:33 +08:00
Albumen Kevin
bef6574734
Fix Dubbo SPI path in Dubbo 3 adapter and improve test cases ( #2822 )
2022-08-17 09:52:12 +08:00
Eric Zhao
24ac1be442
Bump version to 1.8.5 and update README.md
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-08-08 21:29:40 +08:00
benyamin2014
0bd27fb80a
Auto-extract value from ParamFlowArgument when blocked in ParamFlowSlot ( #2776 )
...
* Assign actual value with the result of paramFlowKey method
2022-08-08 11:20:42 +08:00
Eric Zhao
e0eb63e80e
doc: Update docs for Dubbo 2.7.x and 3.x adapter
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-08-08 10:12:19 +08:00
Eric Zhao
9b7786259e
Bump version to 1.8.5-SNAPSHOT
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-08-08 09:52:51 +08:00
Albumen Kevin
e5a62cb634
Add adapter for Apache Dubbo 3.x ( #2789 )
...
* Add apache dubbo3 support implementation
2022-07-22 17:07:21 +08:00
李海峰
9f08a6a49c
docs: Update dashboard frontend Node.js version restriction ( #2760 )
2022-07-09 13:17:06 +08:00
Eric Zhao
04e5047014
deps: Update fastjson to 1.2.83_noneautotype
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-06-21 10:45:03 +08:00
Eric Zhao
855e3880a4
deps: Update fastjson to 1.2.69_noneautotype
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-06-01 13:40:27 +08:00
zuohl
374481c9d4
Replace deprecated API for Lettuce in sentinel-datasource-redis ( #2704 )
2022-05-10 09:59:20 +08:00
一个不知名的Java靓仔
d358b1d7ca
dashboard: Fix deprecated Spring config key in application.properties ( #2713 )
2022-05-10 09:55:54 +08:00
一个不知名的Java靓仔
2e173753ff
dashboard: Refactor IP verify logic in MachineRegistryController to support JDK 17 ( #2694 )
2022-04-25 11:27:36 +08:00
Eric Zhao
16e1bb8fe8
Bump version to 1.8.4
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-04-12 10:14:53 +08:00
zhuyou1234
679625e299
Improve AuthorityRuleManager: replace the rule map instead of clear-then-insert when updating rules ( #2655 )
2022-04-06 14:45:18 +08:00
Eric Zhao
fcc539d660
build(deps): Update Spring dependencies for adapters (provided or test scope)
...
* Close all the PR: #2654 , #2653 , #2652 , #2647 , #2646 , #2634 , #2632
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-04-06 11:08:44 +08:00
Eric Zhao
dcd139438f
Update CircleCI config.yml
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-04-06 10:30:29 +08:00
Eric Zhao
1576500178
build(deps): Bump spring.boot.version to 2.5.12 for sentinel-demo modules and polish demo dependencies
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-04-02 15:20:33 +08:00
Eric Zhao
e93f72232f
dashboard: Update Spring Boot starter to 2.5.12
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-04-02 14:52:57 +08:00
DaneBrown
3832f2bc5a
Fix the bug that stopping CommandCenter may throw NPE when it was not initialized ( #2630 )
2022-04-02 09:48:26 +08:00
Eric Zhao
d706ce5767
dashboard: Update Spring Boot starter to 2.2.13.RELEASE
...
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-03-29 14:10:56 +08:00
一个不知名的Java靓仔
3cd8970e07
Add interceptor SPI for transport command handler ( #2587 )
...
* support intercept specified command handler
* add unit test and demo
2022-03-29 11:42:43 +08:00
David Huang
2cb9747e56
doc: Improve javadoc for DegradeRule and dashboard ApiPredicateItemVo ( #2614 )
2022-03-23 21:15:36 +08:00
解玉乾
ab6c9adcec
Fix maxQueueingTimeoutMs checking logic in GatewayRuleManager#isValidRule ( #2609 )
2022-03-22 09:49:49 +08:00
一个不知名的Java靓仔
0bb7532425
Use unified entrance context name by default in Spring WebFlux adapter ( #2610 )
2022-03-21 10:42:09 +08:00
一个不知名的Java靓仔
42878a29e0
dashboard: Fix the bug that removing token servers may fail when there are servers with the same IP ( #2591 )
2022-03-15 10:57:46 +08:00
dependabot[bot]
0cd06291f3
build(deps): Bump log4j-core to 2.17.1 in sentinel-demo-apollo-datasource ( #2525 )
...
Bumps log4j-core from 2.17.0 to 2.17.1.
---
updated-dependencies:
- dependency-name: org.apache.logging.log4j:log4j-core
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-10 10:39:24 +08:00
Roger3581321
ca13ea6a2a
Use CopyOnWriteArraySet for ConnectionGroup#connectionSet to avoid iterator fast-fail ( #2559 )
2022-02-07 10:38:23 +08:00
程露
33d14fc12e
doc: Add README.md for sentinel-metric-exporter module ( #2550 )
...
* add the reademe file to module `sentinel-metric-exporter`
* format the md file
* [ISSUE #2545 ] update the screenshot.
2022-01-25 17:22:30 +08:00