Commit Graph

85 Commits

Author SHA1 Message Date
LearningGp eb3a9b099a
Bump version to 1.8.9 (#3566)
* chore: update release configuration

* Bump version to 1.8.9
2025-10-16 20:26:58 +08:00
XenoAmess 7e17ae7c0d
chore: refine pom (#3560) 2025-09-30 15:08:50 +08:00
mawen ca596457b0
refactor: remove repeat check code (#3501) 2025-08-19 19:27:34 +08:00
LearningGp 3892514c53 Bump version to 1.8.8 2024-06-04 16:05:34 +08:00
Robert Lu cd02b1dc8d
fix flaky tests and fix passDefaultLocalCheck (#3367)
* fix test case SentinelDubboConsumerFilterTest#testDegradeSync

* When test is run slow, count bucket will count on next time span, causing failed test.

* dos2unix ParamFlowDefaultCheckerTest.java

* fix testParamFlowDefaultCheckSingleValueCheckQpsMultipleThreads by rule.setDurationInSec(2)

* set threshold as count in 2 seconds to prevent the failure of the unit test when the unit test runs longer than 1 second.

* fix quarkus test by set /txt sleep 300

* If /txt sleep 500 ms, in testSentinelJaxRsQuarkusAdapter, may cause 2 request intervals of more than 1 s, which cause rate limit policy is not effective.

* fix testDegradeAsync

* When test is run slow, count bucket will count on next time span, causing failed test.

* use testcontainers to fix testConsulDataSourceWhenInit

* Project embedded-consul has been deprecated in favour of org.testcontainers:consul
* use consul testcontainers to fix testConsulDataSourceWhenInit, which means docker is required to run tests.
```
Error:  com.alibaba.csp.sentinel.datasource.consul.ConsulDataSourceTest.testConsulDataSourceWhenInit -- Time elapsed: 34.47 s <<< ERROR!
  com.pszymczyk.consul.EmbeddedConsulException: Could not start Consul process in 30 seconds
  	at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62)
  	at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502)
  	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:486)
  	at org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:72)
 ```

* introduce intermediate node to avoid ABA problem
2024-04-17 10:25:25 +08:00
Robert Lu befdc56885
fix flaky tests (#3364)
* fix ParamFlowPartialIntegrationTest

mock TimeUtil to avoid time changed, and bucket moved to next.

* remove csp.sentinel.log.output.type

remove sysprop csp.sentinel.log.output.type in TimeUtilTest,
to avoid a few outputs.

* try fix testConcurrentAcquireAndRelease

* remove stdout

remove sout in ParamFlowThrottleRateLimitingCheckerTest,
to avoid a few outputs.

* ConcurrentClusterFlowCheckerTest,djust the flowId to prevent conflicts

* CurrentConcurrencyManagerTest,adjust the flowId to prevent conflicts

* update year
2024-03-25 10:09:16 +08:00
Robert Lu ae6ebb49d0
Move document-lint from circleci to github-actions (#3345)
Move document-lint from circleci to github-actions.
Adjust document according to markdownlint-cli rules.
2024-02-21 17:05:29 +08:00
Robert Lu 8fef1b5eee
Support jdk17 (#3339)
Adjust the test logic, use jdk17 to build, 8, 11, 17 to run
2024-02-20 18:58:52 +08:00
LearningGp f3fd4e6187 Bump version to 1.8.7 2023-12-28 19:32:10 +08:00
LearningGp 665fb541a7 Bump version to 1.8.7-SNAPSHOT 2023-12-28 17:48:44 +08:00
quguai c4ed9a3aba Resource rules (flow/degrade/param/authority) support regex matching (#3251) 2023-12-27 20:44:06 +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
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
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 9b7786259e Bump version to 1.8.5-SNAPSHOT
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-08-08 09:52:51 +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
Eric Zhao 8724a7c0a1 Bump version to 1.8.4-SNAPSHOT
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2022-01-01 11:00:04 +08:00
Eric Zhao 6135ff290a Bump version to 1.8.3
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2021-12-31 14:46:52 +08:00
Eric Zhao 51b21921f5 Bump version to 1.8.3-SNAPSHOT
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2021-12-22 14:48:43 +08:00
Eric Zhao 4498de480f Bump version to 1.8.2
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2021-07-05 19:59:44 +08:00
Yan Haonan 4aaf8e9093
Remove unused HotParameterLeapArray in param flow control module (#2070) 2021-03-08 10:52:25 +08:00
Eric Zhao fca70646ad Bump version to 1.8.2-SNAPSHOT
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2021-02-04 16:45:40 +08:00
Eric Zhao ae214b5244 Bump version to 1.8.1
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2021-02-04 15:30:44 +08:00
cdfive 62efb78d4e
Refactor SpiLoader and enhance SPI mechanism (#1383)
* Add `@Spi` annotation as the general annotation for SPI definition.
* Add isDefault in @Spi, add loadDefaultInstance and improve loadFirstInstanceOrDefault method, improve test cases
* Add SpiLoaderException class for thrown when something goes wrong while loading Provider
* Rearrange packages of base SPI mechanism

NOTE: this PR contains breaking changes regarding API.
2021-01-27 09:45:56 +08:00
brothelul 70b457bdc8
Fix potential NPE bug when updating ParamFlowRule before the resource has been requested once (#1901) 2020-12-18 11:20:38 +08:00
nickChenyx cc2d1a69a9
Optimize logging statements using placeholder (#1736)
* Optimize logging statements using placeholder to avoid unnecessary concatenation (issue #1735)
2020-09-17 20:42:01 +08:00
Eric Zhao e58267012d Bump version to 1.8.1-SNAPSHOT
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2020-08-21 14:36:49 +08:00
Eric Zhao d17bf8c7cc Bump version to 1.8.0
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2020-08-20 19:47:20 +08:00
Eric Zhao a18ef7cbfa Remove deprecated passCheck() in Rule and polish interface
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2020-08-05 10:42:15 +08:00
zechao zheng 0d7da77d03
Add support for extracting param from complex object (#1491)
* This could enable specified parameter flow control for customized objects.
2020-05-26 19:38:00 +08:00
wavesZh 096a9ebf7d
Improve deprecated ParameterMetric purge mechanism (#1372)
* Clear useless data in ParameterMetric for all removed rules
2020-05-07 20:04:12 +08:00
Eric Zhao 7f3165740a Refactor the mechanism of recording error in Entry and StatisticSlot
* Also polish related complete callbacks

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2020-04-28 10:11:17 +08:00
Eric Zhao a0196b6b00 Bump version to 1.8.0-SNAPSHOT
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2020-04-13 20:19:22 +08:00
Eric Zhao 6a7ec708bc Bump version to 1.7.2
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2020-04-08 09:42:02 +08:00
cdfive be4d058bf8
refactor: Make the ProcessorSlot itself as SPI and deprecate legacy slot chain builder (#411)
* Make slots loaded by SPI, mark all slots with @SpiOrder from -10000 to -1000, improve comment
* Reserve gateway and param slot chain builder (just extends DefaultSlotChainBuilder) and mark them as @Deprecated
2020-03-26 12:38:01 +08:00
echooymxq b136848873 Adjust the order of slots in HotParamSlotChainBuilder (#1246) 2020-01-15 10:42:58 +08:00
Eric Zhao 87142ce512 Bump version to 1.7.2-SNAPSHOT
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2019-12-25 11:19:07 +08:00
Eric Zhao 9c909e3631 Bump version to 1.7.1
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2019-12-24 20:05:23 +08:00
Eric Zhao 9705f54611 Bump version to 1.7.1-SNAPSHOT
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2019-11-12 11:08:14 +08:00
Eric Zhao 8cdf1de854 Bump version to 1.7.0
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2019-11-11 21:12:58 +08:00
Eric Zhao d59beaec66
Fix the bug that numeric overflow might occur when refilling tokens in ParamFlowChecker (#838)
- use AtomicLong to replace AtomicInteger

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2019-06-18 13:39:37 +08:00
Eric Zhao f8ebbbccf4 Bump version to 1.7.0-SNAPSHOT
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2019-05-25 15:07:19 +08:00
Eric Zhao 3d2c33ef1d Bump version to 1.6.1 (release)
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2019-05-23 09:49:15 +08:00
Eric Zhao 77dec5f845 Separate parameter metric storage from ParamFlowSlot and improve ParamFlowRuleUtil
- Add a ParameterMetricStorage specific for caching ParameterMetric (moved from ParamSlot)
- Add rule map building helper method in ParamFlowRuleUtil so that we can reuse it in other rule managers

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2019-05-22 09:47:41 +08:00
Eric Zhao 346e9b274e Bump version to 1.6.1-SNAPSHOT
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2019-04-25 09:38:59 +08:00
Eric Zhao b1345f751f Bump version to 1.6.0 (release)
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2019-04-24 20:42:32 +08:00
Eric Zhao 5f713bd404 Update toString() method of ParamFlowRule
Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2019-04-22 14:46:38 +08:00
Eric Zhao e9719d32ec
Refactor flow algorithm for parameter flow control and support more traffic shaping mode (#677)
* support burst count, statistic interval per rule and throttling mode.
* Add fields in ParamFlowRule to support burst count, throttle, statistic interval per rule.
* Deprecate HotParamLeapArray and use token bucket algorithm directly.
2019-04-22 11:06:26 +08:00
Eric Zhao 29f22e370b
Fix the NPE bug when passing null args to SphU.entry() and paramIdx is negative (#642)
- Also rearrangement of some code

Signed-off-by: Eric Zhao <sczyh16@gmail.com>
2019-04-04 09:40:23 +08:00