-
Notifications
You must be signed in to change notification settings - Fork 26.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Activate SPI sort #3412
Activate SPI sort #3412
Conversation
Why there are so many changes ? |
branch Wrong choice |
maybe you need to set config autocrlf |
make sure your
|
dubbo-common/src/main/java/com/alibaba/dubbo/common/extension/support/ActivateComparator.java
Outdated
Show resolved
Hide resolved
ps, pls. consider to make the same change to the master branch. |
…support/ActivateComparator.java code style Co-Authored-By: dongYES <[email protected]>
get!! |
thanks! |
Codecov Report
@@ Coverage Diff @@
## 2.6.x #3412 +/- ##
============================================
+ Coverage 47.28% 47.28% +<.01%
Complexity 4300 4300
============================================
Files 554 554
Lines 24412 24416 +4
Branches 4321 4322 +1
============================================
+ Hits 11544 11546 +2
+ Misses 11077 11076 -1
- Partials 1791 1794 +3
Continue to review full report at Codecov.
|
LGTM. |
* Release resource after use in ConfigParserTest (#3127) Release resource after use in ConfigParserTest * add javadoc for registry and some code (#3140) add javadoc for registry and optimize code * Correct spelling error (#3146) * Code optimization (#3118) * code optimization * useless import * optimization * Code rule (#3016) * code optimization (#3167) code optimization * Add javadoc for dubbo-serialization module(#3002). (#3004) Add javadoc for dubbo-serialization module(#3002). * optimize ReconnectTimerTask's log output (#3162) * optimize log output * Separate logs for reconnect and close * remove reconnect exception log * add some small optimize (#3171) * modify some log describe * use java8 lambda expression * fix telnet trace times is always 1 (#3038) * fix telnet trace times is always 1 * use StringUtils determine if the string is empty * Fix 3105 , make invoke command with Json string parameter without "class" key * Fix 3105 ,Keep the class key to support overloaded methods * optimize InvokerTelnetHandlerTest * Upgrade junt to junit5 (#3149) * upgrade junit to junit5 * modify test * 批量修改upgrade_junt_to_junit5 * 删除多余的文件 * fi test case * Disabled soem test case temporarily * upgrade junit to junit5 and batch modify test case * copy some code from jupiter5.4.0.M1 for some issues * 修改rat福泽 * update rat path * revert case * add junit-platform-surefire-provider to maven-surefire-plugin * update dependency * fix coverage issue (#1) * use jupiter 5.4.0-M1 and remove junit5 source code * Format change. * fix wrong word spelling (#3217) * Fix provicer --> provider (#3222) * Optimize the code: use logger instead of printStackTrace(). (#3202) * Optimize code: remove unnecessary judgment code. (#3196) * Optimize the code: fix CallbackServiceCodec.java exportOrunexportCallbackService method issue. (#3199) * Optimize the code: fix url to null, NullPointerException, change private variable to camel mode. * Optimize the code: exportOrUnexportCallbackService method camel mode. * Optimize the code: fix method:encodeInvocationArgument private callbackStatus is camel writing. * Optimize the code: fix name issue * Exporter is a noun, we should use a verb here, like Export. * The generics that can be inferred automatically are also deleted. * Refactor telnet invoke command (#3210) * refactor telnet invoke command * add select command for telnet * fix test case * Remove deprecated AnnotationBean, please refer #1485 for the new method to replace. (#3232) * [Dubbo-3231]keep TagRouter consistent with 2.6.x (#3233) * keep TagRouter consistent with 2.6.x * refactor filterUsingStaticTag using lambda in tagRouter * Modified to lower camel case (#3003) * wrong event setting (#3043) * wrong event setting * modify event seeting * modify * call the util method (#3230) * Code optimization, call the util method * mofidy * modify * * import package * Qos heart (#3170) * qos heart question fix #3165 * modify * judge if it's a IdleStateEvent * add UT * modify * Merge pull request #3246 from cvictory:2.7.0-release remove gson from dubbo.jar in shading mode , and change to dependency way. * just for modify comments and imports * remove gson from dubbo.jar in shading mode, add dependency * Extract compareTo impl to Router interface and concrete Router only responsible for provide priority. (#3240) something is waiting for us to disscuss: 1. Every Route implement should set a priority? 2.#3249 * Protocol compatibility (#3254) add default method into Protocol . * remove getContext() (#3235) * modify some typos (#3257) * modify some typos * fix some other addionalParameterKeys and paramter typos * Merge 2.6.6 source code into 2.7 (#3241) * Merge 2.6.6 source code into 2.7 * Fixed logging level for #3241 (comment) * Change the implementation for #3241 * Remove the implementation Ordered, because it does not work in Spring Framework : #3241 * Remove the implementation Ordered, because it does not work in Spring Framework : #3241 * Only Optimize Imports * Add activation for the release profile * Update the Java SE link to Java 8. * Move the doclint configuration to correct position. * Deactivate maven release profile. * Fix final name. * Optimize the Apollo extension of Config-Center SPI * must shutdown thread pool when no in use (#3255) * must shutdown thread pool when no in use * Update 2.7.0 release notes * Igonre .patch file. * [maven-release-plugin] prepare release dubbo-2.7.0 * [maven-release-plugin] prepare for next development iteration * [maven-release-plugin] prepare release dubbo-2.7.0 * [maven-release-plugin] prepare for next development iteration * Bring back redis auth UT (#3278) * Optimize code: Fix Constructor to determine illegal logic problems (#3197) * fix return type (#3284) * use standardcharset.utf-8 instead of literal (#3285) * use standardcharset.utf-8 instead of literal * remove unused import * Move the iteration of methods of a service config to the if block of the class have method declared not by Object; remove some useless parameter type (#3282) * Add shutdown command for telnet (#3280) * telnet add shutdown command * refactor rename shutDown to shutdown * remove unregister in doDestroy * unregister the ShutdownHook when the shutdown command invoked * Ignore mvn wrapper binary files. * [maven-release-plugin] prepare release dubbo-2.7.0 * [maven-release-plugin] prepare for next development iteration * Fix typo (#3293) * Improve/heartbeat (#3276) * add the notice of code style * modify the pic * del teh faq.md, move to dubbo admin * improve:remove the heartbeat on server side * improve:change the scope of timer to static * code optimization (#3297) * further enhancement for pull request #3297, also fix an issue introduced in this pull request (#3303) * further enhancement for pull request #3297, also fix an issue introduced in this pull request * rename the variable * enhance the readability * Fix UT conflicts of merging 2.7.0-release * Remove usage of classes in Junit 4 * Remove usage of classes in Junit 4 * Remove usage of classes in Junit 4 * Remove usage of classes in Junit 4 * Remove usage of classes in Junit 4 * remove not used import (#3309) * remove unused import (#3311) * remove not used import * remove unused import * Degrade some UTs in dubbo-config-spring to use junit 4. * use beforeEach and afterEach * Merge pull request #3295, unregister consumer url when client destroyed (referenceconfig#destroy). * fix client reconnect offline provider. * refactor cancel future. * fix client reconnect offline provider. * refactor cancel future. * fix client reconnect offline provider. * refactor cancel future. * fix unregister when client destroyed * Optimize heartbeat (#3299) * Optimize heartbeat. We should cancel the timeout when the client or server is close. * change the hashedWheelTimer's ticks * Optimize tasks keeper. * fix timeout cancel to task cancel. keep task directly. * simply telnet command enabled check logic (#3316) * simply telnet command enabled check * Add comments, manually merge #3181. * Fix for loop reference test pass on protostuff (#3252) * Fix maven compile warning (#3322) * Merge pull request #3174, make timeout filter not work in async way. * Merge pull request #3323, fix double-checked locking. * Merge pull request #2959, fix a bug of service config. * Fix random ut falling in DubboMonitorTest (#3327) * Merge pull request #3017, fixes #2981, refresh invocation's attachments in each invoke. Fixes #2981. * Merge pull request #3141, optimize outbound event and some code formatting. * Merge pull request #3333, add @OverRide for sub-class method. * Fix thrift protocol, use path to locate exporter. (#3331) * Fix thrift protocol, use path to locate exporter. * Fix UT * fix #2842. remove duplicate SPI definitions for 2.7.x (#3340) remove duplicate SPI definitions for 2.7.x * fix org.apache.dubbo replace com.alibaba.dubbo (#3338) org.apache.dubbo replace com.alibaba.dubbo * fix the typo of notification mail list address (#3335) fix the typo of notification mail list address * Review code of TypeDefinitionBuilder (#3064) * Review code of TypeDefinitionBuilder 1. use init method to init builds' list * use single list for all builders. Seems like the builder is thread-safe, we can keep them static and final. * clean code. * [Dubbo-3339] Remove futility check code (#3346) * Remove futility check code * add no-argument constructor method to URL.java fix #3342 (#3350) * Fix NullPointerException when Hessian instantiate URL with JavaDeserializer * Enable ZookeeperMetadataReportTest (#3360) * Package name error (#3354) * some optimize on ExtensionLoader (#3307) * some optimize on ExtensionLoader * make ci rerun * fix compile error * fix ci failure * Fix some unit test failure (#3337) * Fix compilation error fix #3365 (#3366) * [Dubbo-900] Fix 通过 override 修改 hessian协议的提供者的配置 不生效 #900 (#3363) * reExport fail fix#900 * modify * use Objects.equals * compare URL for all proxy protocol * delete useless judgment (#3326) * Fix self assignment (#3301) * Fix self assignment * Replace set with list to insure item order * Minor tweak of codestyle * [Dubbo-2423] Multicast demo fails with message "Can't assign requested address". (#3317) * Fix #2423, Multicast demo fails with message "Can't assign requested address" * temporarily disable ipv6 test * simplify map empty judgment (#3376) * 应该是非空才循环,不然会导致在使用redis注册中心时消费者引用不到服务 (#3291) * enhance unit test and logging (#3374) * enhance unit test and logging * enhance logging message * fix unit test * make code clean * follow up for #3291 (#3378) * correct typos,eg: occured -> occurred (#3380) LGTM * follow up for #3376 (#3377) * [Dubbo-3347] Update package name in README file fix#3347 (#3362) * [Enhancement] Replace explicit resource management with try-with-resource (#3281) * first pull request (#3396) * [Dubbo-3361] Make DubboAppender extends from FileAppender (#3383) * Modify deprecated class to updated class in some comments (#3402) * Merge pull request #3341, start to use IdleStateHandler in Netty4. * Enhancement/logger factory (#3389) * polishing LoggerFactory * polishing code using map.computeIfAbsent * fix ci failure * remove unnecessary break in switch * call overloaded method * update as requested * add unit test * move construction of ConfigChangeEvent outside the lambda expression (#3398) * make ConfigChangeEvent immutable (#3403) * Fix license issues (#3382) * Fix license issues * revert change to Netty's copyright * [Dubbo-936]fix The nc command is unstable in the dubbo startup script #936 (#3375) * fix dubbo启动脚本中nc命令不稳定 #936 * modify * refactor ScriptRouter: (#3404) 1, remove priority field, the same as super class 2, remove getUrl method, the same as super class 3, refactor constructor, extract method: getRule, getEngine 4, refactor route, extract method: createBindings, getRoutedInvokers * Clean pom.xml file #3186 (#3211) * update as requested * add meta space size arguments * [Enhancement] Use ThreadLocalRandom and try-with-resource (#3239) * polish * fix code reviews * empty * polish pom.xml (remove test profile and jvm permSize args) (#3407) * update dubbo samples' link (#3413) * Acesslog dateformat enhancemnet (#3274) * #3026 Access log related changed * Reviwe comment incorporated given by @satansk and removed unuded method * Incorporated @beiwei30 review comment, incorporated common-lang3 time package modified version * Added rat entry for common lang3 FastDateFormat related java files * switch back to jdk's dateformatter * refactor loadClass method (#3410) * refactor: expression is always true, remove it (names != null && names.length > 0) * Update dubbo-common/src/main/java/org/apache/dubbo/common/extension/ExtensionLoader.java Co-Authored-By: wanghbxxxx <[email protected]> * Update ExtensionLoader.java * Update ExtensionLoader.java * Update ExtensionLoader.java * Update ExtensionLoader.java * implement pull request #3412 on master branch (#3418) * event of response fix#3244 (#3247) * [Dubbo-3069]Use regular expressions to judge fix #3069 (#3093) * Use regular expressions to judge fix #3069 * moved into Constants class * modify * Unused import * modify * can not put it in front * catch NumberFormatException and return 'null' if necessary * remove recursive call * support .1 and 1. * modify * Support multiple shared links (#2457) * make dubbo support multiple shared links, upgrading RPC throughput * Fix compilation error * Fix compilation error * opti import * if add {} * checkstyle fail * fix getSharedClient referenceCount calculation error bug * 优化 import * Fix the problem that the getSharedClient thread is not safe * Fix the problem that the getSharedClient thread is not safe * Try fixing ci error, https://travis-ci.org/apache/incubator-dubbo/jobs/453185295 * 将DEFAULT_CONNECTIONS_KEY修改成SERVICE_CONNECTIONS_KEY * dubbo.xsd add shareconnections attribute, * Optimize code format * Fix mult connect ghost connect problem * format code * Remove the concept of ghostClientMap and ghost connection. In fact, ghostClient is LazyConnectExchangeClient. At present, the LazyConnectExchangeClient object is added directly in ReferenceCountExchangeClient to realize the mapping relationship with ReferenceCountExchangeClient. The relationship between previous ghostClient and url mapping is not applicable to the current new share. Multiple connections. * Optimize the ReferenceCountExchangeClient and remove the reference to the lazyConnectExchangeClient because it doesn't make much sense; add locks in the close operation of the AbstractClient, because connect, disconnect, and close should not be done at the same time. * format code * try remove close lock * Restore close method * Restore ReferenceCountExchangeClient reference to LazyConnectExchangeClient object * Optimize the logic of using the LazyConnectExchangeClient inside the ReferenceCountExchangeClient; Supplemental shared multi-connected unit test * remove useless catch exception (#3421) * remove duplicated import (#3440) * Update junit to 5.4.0 release version (#3441) * update junit to 5.4.0 release version * remove uesles config * remove duplicated unused method and move unit test (#3446) * Add checkstyle rule for redundant import (#3444) * add checkstyle for redundant import and fix all issue in repo * fix git diff issue * Enhance the java doc of dubbo-container module (#3437) Fixes #2994 * refactor adaptive extension class code creation: extract class AdaptiveClassCodeGenerator (#3419) * refactor adaptive extension class code creation: extract createAdaptiveExtensionClassCode to class AdaptiveClassCodeGenerator * add some comment * add license and comment * remove main method * refactor javassist compiler: extract class CtClassBuilder (#3424) * refactor JavassistCompiler * rename variable names * reformat code * refactor: prepend modifier of constructor, field and method outside the JavassistClassInfo * add null for ClassUtils.getSimpleClassName * rename JavassistClassInfo to CtClassBuilder * fix #2619: is there a problem in NettyBackedChannelBuffer.setBytes(...)? (#3448) * Bugfix/timeout queue full (#3451) replace ArrayBlockingQueue with LinkedBlockingQueue and remove capacity. * extract 2 methods: (#3453) isSetter: test if a method is a setter getSetterProperty: get property for setter, for instance setVersion return "version" * Add delay export test case (#3447) * [Dubbo-3237]fix connectionMonitor in RestProtocol seems not work #3237 (#3455) * extract method to cache default extension name (#3456) * possibly bug fix (#3460) * Merge pull request #3470, Apache parent pom version is updated to 21. * A follow up of 6058846, update apache pom version to 21 * Class comment error (#3481) * enhancement: extract duplicated method calls to variable (#3482) extract duplicated method calls to variable * [Enhancement]: language level migration (#3485) * use java7 diamond operator * replace Collections.sort with List.sort * extract duplicated code blocks * use StandardCharsets.UTF_8 * use try-with-resources * use java7 diamond operator * enhance log message * fix unit tests failures * Branch refactor version (#3471) * fix typo (#3491) * [Enhancement]: RestProtocol (#3480) * Merge pull request #3466, Condition is not properly used. fixes #1917 * fix issue#1293: A question for ReferenceConfigCache. (#3505) * [Enhancement]: refactor categorizing with Collectors.groupingBy (#3490) * Fix invocation of toString on an array (#3507) Fix invocation of toString on an array * Fix inefficient use of keySet iterator instead of entrySet iterator (#3508) Fix inefficient use of keySet iterator instead of entrySet iterator * Boolean class use method toString() instead of String.valueof() (#3495) * Merge pull request #3515, add metadataFactory SPI config for all-in-one shade jar. Fixes #3514, missing redis metadata SPI extension in dubbo.jar. * Merge pull request #3513, bump up hessian-lite version Fixes #3423. * [Dubbo-3106]Make getRegistered return unmodifiable collection. #3106 (#3425) * make getRegistered return unmodifiable collection. #3106 * fix ci failure * Merge pull request #3527 Bricks-Man/incubator-dubbo, fix accidentally check exchanger in setDispatcher fixes #3518 * Fix UT error following PR #3527 * Cache CompiledScript #390 (#3524) * Merge pull request #3532 from beiwei30:use-concurrent-map, avoid using synchronized. * Fix context filter's bug (#3526) * Modify MetadataReportRetry ThreadName (#3550) * fix: rename the thread name from DubboRegistryFailedRetryTimer to DubboMetadataReportRetryTimer in MetadataReportRetry * fix issue #3533 (#3548) * fix issue #195: @reference check=false不生效 (#3530) * Merge pull request #3528, fixes #208, setOnreturn does not work with generic invocation. * fix issue #274: monitor的cluster一定是failsafe的,而且无法修改 (#3523) * fix issue #274: monitor的cluster一定是failsafe的,而且无法修改 * remove unused import * Merge pull request #3520, fix #538 polish the process of deciding the ip to bind. * Fix npe when package is null. (#3557) * a more elegant way (#3567) * Correct security report link. * Add go implementation link. * fix DubboCodec re-implements Codec2 #2977 (#3547) * Merge pull request #3566, optimize compareTo of Router to guarantee consistent behaviour. * Merge pull request #3577, rmi support generic. Fixes #2779 * Fixes #3367, fail to parse config text with white space (#3589) * [DUBBO-3476]: NullPointerException happened when using SpringContainer.getContext() (#3600) * #3476: NullPointerException happened when using SpringContainer.getContext() * rollback change for DEFAULT_SPRING_CONFIG * replace magic string "dubbo" with constants (#3602) * dubbo-parent是头文件不包含依赖。替换成dubbo, 同时增加zk连接的依赖。因为curator-framework在dubbo-dependencies当中去除掉了zookeeper的包,所以外部使用的时候需要额外配置. (#3516) * Merge pul request #3607, introduce dubbo-dependencies-zookeeper. * Merge RestProtocolTest.java (#3597) * [DUBBO-3494]: Refactor URL to URLBuilder (#3500) * refactor URL to URLBuilder. #3494 * remove unrelated changes * replace more with URLBuilder * fix ci failure * remove unnecessary comment * Dubbo-3473 Fix Not Properly Closed Resources (#3474) * Dump TagRouterRule (#3536) Dump TagRouterRule since the TagRouterRule can be changed to `null` by ConfigCenter * Merge pull request #3578, fixes #3289, enhance tagRoute: support ip expression match. * Merge pull request #2614, follow up for issue #195. * [Dubbo-3367] Fail to parse config text with white space (#3590) * Merge pull request #3558, check if remoteGroup is empty or not. Fixes #3555. * Fluent style builder API support(#3431) (#3549) * Update maven central badge. * Merge pull request #3593, Consul support for Registry and Metadata. * [Dubbo-808] Support etcd registry (#3605) * Merge https://github.com/dubbo/dubbo-registry-etcd into incubator-dubbo * Add UT to ConfigurationUtilsTest * rename dubbo-ops to dubbo-admin (#3628) * typo for AccessLogFilter (#3633) * Fix some etcd3 registry bugs. (#3632) * fix some bugs. * fix typo * cancel keep alive if recovery failed. * remove duplicate license header. * [Dubbo-3570] repackage compatible enhancement. (#3622) * Fixes #3570, NoSuchMethodError are thrown when add custorm Filter using dubbo2.6.5 and JDK1.6 and upgrade to dubbo2.7.0 * Add compatible UT * fix UT * Replace RpcStatus to count (#2984) (#3636) * Fix when qos is disable,log will print every time. (#3397) * fix when qos is disable,log will print every time. * change qos server boos thread number 1 * add openjdk to travis (#3300) * add openjdk to travis * add openjdk to travis * Merge pull request #3647, workaround to fix #3646. * add metrics integration #3598 (#3643) * add metrics integration * add license * Merge pull request #3639, Add equivalent annotation support for MethodConfig. Fixes #2045 * Fixes #3478, #3477 and #3445 * fix heartbeat internal (#3579) * Merge pull request #3603, configcenter share zookeeper connection with registry. Fixes #3288 * correct spelling error (#3645) * make snakeyaml transitive, governance rule relies on this dependency to work. (#3659) * check null for path before call rest server (#3665) * [Dubbo-3653] etcd as config center (#3663) * Minor refactor, no functinoal change. * Separate ConnectionStateListener * Simplify code * Fix typo * Support get external config from etcd config center * Polish diamond operator * Initial etcd support as config center * Add a put interface for JEtcdClient * Enhanced Etcd config center support with the ability to watch and cancel watch * Polish code * Distinguish modification event and delete event * Add etcd registry and configcenter to dubbo-all * Watch again when connection is re-established * Polish code and fix some documentation errors (#3655) * [Dubbo-3657] Fix junit test failed (#3658) * Improve the checking of lease id. #3684 (#3692) It looks good. * Optimize DefaultTpsLimiter (#3654) * Correct @parameter config of field of ConfigCenterConfig (#3688) * fix-3678 (#3681) * Add unit test for unpack and stick pack of dubbo and telent (#3703) * fix compile error after merged master branch * remove useless imports * add AddressListener into RegistryDirectory
* Add pull request coverage check and set threshold as 0.1% (#1678) * Optimize_hessian_desr_performance (#1705) * We need to change the version to SNAPSHOT to satisfy release:prepare * upgrade to 2.6.2-SNAPSHOT * fixes #1089, make ExecutionDispatcher meet dubbo-user-book (#1449) * fixes #1089, make ExecutionDispatcher meets dubbo-user-book * remove heartbeat condition * enhance comments, javadoc and logging message for (#1722) ExecutionChannelHandler * Merge pull request #1716, unit test for AbstractConfigTest. * add test for serialization api & fastjson & fst module (#1718) * Merge pull request #1717, NettyHelper in netty extension populated Logger "InternalLogger" in netty. * [Dubbo-1687]Enhance test coverage for dubbo filter (#1715) * use three different kinds of cache factory to increase test coverages * add unit test cases for dubbo-filter module * add copyright and made small refactor * make sure Jcache will exceed expired period * optimize unit test for serialization hession2/jdk/kryo (#1726) * fix * imports issue (#1721) * #1731: checkMultiExtension in com.alibaba.dubbo.config.AbstractInterfaceConfig should be in setter instead of getter (#1732) * unit test for dubbo-config-api (#1733) * finish unit test for AbstractMethodConfig * finish unit test for AbstractReferenceConfig * move to right package * finish unit test for AbstractReferenceConfig * finish unit test for AbstractMethodConfig * finish unit test for AbstractReferenceConfig * move to right package * finish unit test for AbstractReferenceConfig * unit test for AbstractServiceConfig, also fix logic issue in setListener/getListener * Fix isShutdown() always return true (#1426) * Bump version to 2.6.2-SNAPSHOT. * Fix #934 #1756 use loadBalance policy to choose invoke when providers less 2 (#1759) * fix #934 use loadBalance policy to choose invoke when providers less than 2 * fix #1756, clear mock invocation after invoking * Remove unnecessary null check. * Remove redundant final modifier. * Remove unnecessary null check. * Remove redundant array creation. * Remove unnecessary null check. * Remove unnecessary null check and fix typo. * Config api unit test (#1758) * unit test for ApplicationConfig * fix typo * unit test for ArgumentConfig * unit test for ConsumerConfig * unit test for MethodConfig * unit test for ModuleConfig * unit test for MonitorConfig * unit test for ProtocolConfig * unit test for ApplicationConfig * fix typo * unit test for ArgumentConfig * unit test for ConsumerConfig * unit test for MethodConfig * unit test for ModuleConfig * unit test for MonitorConfig * unit test for ProtocolConfig * unit test for ProviderConfig * make test stable * enable tcp no delay for netty 3 server (#1746) (cherry picked from commit 430fb4c) * Change parent pom back to oss in this version * Add binary release module 'distribution' * Bump version to 2.6.2 for release * Merge pull request #1616, fix hessian1 serialized short, byte is converted to int. * Polish distribution pom * unit test for RegistryConfigTest (#1775) * Fix hessian-lite spelling mistake (#1779) * Remove unecessary cast. * Remove unnecessary null check. (#1764) * Such logic already exists in findAnnotationName (#1750) * Remove unnecessary null check. * Ignore testStatusChecker since it is unstable and consider removing it later. * unit test for ServiceConfig (#1780) * unit test for RegistryConfigTest * unit test for ServiceConfig * ignore com.alibaba.dubbo.config.ServiceConfigTest.testUnexport to make unit test stable * Merge pull request #1761, add Locale serialize & deserialize support. Fixed #906 * Upgrade tomcat version to 8.5.31. (#1781) * add test for monitor module (#1741) * [Dubbo-1687]Add unit tests for dubbo-filter-validation module (#1736) * Add unit tests for dubbo-filter-validation module * add more jaxb api libs for testing with jdk9, because it does't contain them by default any more * clean up: finish unit test for config-api (#1795) * Extracting public code to the parent class (#1776) * Extracting public code to the parent class * test * Support package NOTICE & LICENSE into sub-module jar. * Bump version to 2.6.2-SNAPSHOT * Bump version to 2.6.2-SNAPSHOT * [maven-release-plugin] prepare release dubbo-2.6.2 * [maven-release-plugin] prepare for next development iteration * Add assembly plugin * unit test for com.alibaba.dubbo.common.status.support (#1796) * unit test for Status * remove unnecessary 'static' * unit test for StatusUtils * unit test for LoadStatusChecker * reformat the code * unit test for MemoryStatusChecker * New threadLocal provides more performance. (#1745) * SerializerFactory 获取Serializer时,锁住整个hashmap,导致整个过程被block * 单元测试。保证一个class只有一个serializer和deserializer。单线程和多线程测试 * 增加线程数 50 模拟多个线程来获取serializer和deserializer * 当cores线程数全都使用的情况下,默认线程池会把任务放入到队列中。队列满则再创建线程(总数不会超过Max线程数) 增强线程池:在请求量阶段性出现高峰时使用 特性:cores线程全部使用的情况下,优先创建线程(总数不会超过max),当max个线程全都在忙的情况下,才将任务放入队列。请求量下降时,线程池会自动维持cores个线程,多余的线程退出。 * 当cores线程数全都使用的情况下,默认线程池会把任务放入到队列中。队列满则再创建线程(总数不会超过Max线程数) 增强线程池:在请求量阶段性出现高峰时使用 特性:cores线程全部使用的情况下,优先创建线程(总数不会超过max),当max个线程全都在忙的情况下,才将任务放入队列。请求量下降时,线程池会自动维持cores个线程,多余的线程退出。 * 补全单元测试,测试扩展是否生效 * 错误命名 * 增加@OverRide注解 long 初始化赋值时,小写l改为大写L防止误读 * 修复单元测试 * remove enhanced * remove enhanced * Faster ThreadLocal impl in internal use * Used in RpcContext`s LOCAL field. * Faster get than the traditional ThreadLocal * add License * fix ci failed * fix ci failed * fix ci failed * fix ci failed * fix ci failed * remove author info * fix destroy method * fix bug at method size. * unit test for SimpleDataStore (#1797) * Add CHANGES.md as release note. * Polish release notes in CHANGES.md * Thread pool unit test (#1802) * reformat the code, and move the test into the correct package * unit test for c.a.d.c.threadpool * Fix bug in InternalThreadLocal and provides unit test (#1803) * SerializerFactory 获取Serializer时,锁住整个hashmap,导致整个过程被block * 单元测试。保证一个class只有一个serializer和deserializer。单线程和多线程测试 * 增加线程数 50 模拟多个线程来获取serializer和deserializer * 当cores线程数全都使用的情况下,默认线程池会把任务放入到队列中。队列满则再创建线程(总数不会超过Max线程数) 增强线程池:在请求量阶段性出现高峰时使用 特性:cores线程全部使用的情况下,优先创建线程(总数不会超过max),当max个线程全都在忙的情况下,才将任务放入队列。请求量下降时,线程池会自动维持cores个线程,多余的线程退出。 * 当cores线程数全都使用的情况下,默认线程池会把任务放入到队列中。队列满则再创建线程(总数不会超过Max线程数) 增强线程池:在请求量阶段性出现高峰时使用 特性:cores线程全部使用的情况下,优先创建线程(总数不会超过max),当max个线程全都在忙的情况下,才将任务放入队列。请求量下降时,线程池会自动维持cores个线程,多余的线程退出。 * 补全单元测试,测试扩展是否生效 * 错误命名 * 增加@OverRide注解 long 初始化赋值时,小写l改为大写L防止误读 * 修复单元测试 * remove enhanced * remove enhanced * Faster ThreadLocal impl in internal use * Used in RpcContext`s LOCAL field. * Faster get than the traditional ThreadLocal * add License * fix ci failed * fix ci failed * fix ci failed * fix ci failed * fix ci failed * remove author info * fix destroy method * fix bug at method size. * Unit test for InternalThreadLocal * Unit test for InternalThreadLocal Fix bug in method removeAll * make unit test stable (#1805) * #1682: Enhance the test coverage part-4: dubbo-common/src/main/java/com/alibaba/dubbo/common/status(store|threadpoolutils) modules (#1806) * Remove redundant cast. * Merge pull request #1792, fix zk unsubscribe issue. * Merge pull request #1570, fix annotation demo in dubbo-test. * Add a construtor to accept address and protocol for RegistryConfig. * Remove unused code. * Ensure Dubbo can shutdown correctly when running both under tomcat and programmably. * Add comments. * Add dependency. * Using ExecutorUtil#gracefulShutdown instead of create a new method. * Correct pom version. * Fix UT failure. * Merge pull request #1811, fix unstable hessian protocol unit test by adding overload. Fixed #1667, fixed #1727 * Merge pull request #1808, fix URL parsing problem when user filed contains '@' characters. Fixed #1470 * Simplify code, no function change. * Remove unnecessary null check. * Ensure merger is specified to true to demonstrate the merger feature. * Merge pull request #1643, ChannelState branch prediction optimization. * Remove .orig file and update gitigonre. * #1816: dubbo schema compatibility * Go back to 2.6.2-SNAPSHOT to prepare for the next release. * Add source-release assembly config * Add arguments for release-plugin * #1816: dubbo schema compatibility * Fix minor issues reported in 2.6.2 RC1 * Add *.log exclude pattern for source-release assembly * Skip checkstyle by default * Skip rat by default * Merge checkstyle-plugin configuration * Exclude release temp files * Exclude release temp files * #1597: CacheFilter,when value is null,it will throw NPE(if use ehcache for jcache),why not check null here (#1828) * #1830: dbindex support in redis (#1831) * Merge pull request #1839, remove validation key from provider url registered to registry. Fixes #1386. * Add profile for distribution module * [maven-release-plugin] prepare release dubbo-2.6.2 * [maven-release-plugin] prepare for next development iteration * Merge pull request #1836, there is a potential deadlock in DubboProtocol#getSharedClient. Fixes #677. * Use InternalThreadLocal in consumer side (#1825) * SerializerFactory 获取Serializer时,锁住整个hashmap,导致整个过程被block * 单元测试。保证一个class只有一个serializer和deserializer。单线程和多线程测试 * 增加线程数 50 模拟多个线程来获取serializer和deserializer * 当cores线程数全都使用的情况下,默认线程池会把任务放入到队列中。队列满则再创建线程(总数不会超过Max线程数) 增强线程池:在请求量阶段性出现高峰时使用 特性:cores线程全部使用的情况下,优先创建线程(总数不会超过max),当max个线程全都在忙的情况下,才将任务放入队列。请求量下降时,线程池会自动维持cores个线程,多余的线程退出。 * 当cores线程数全都使用的情况下,默认线程池会把任务放入到队列中。队列满则再创建线程(总数不会超过Max线程数) 增强线程池:在请求量阶段性出现高峰时使用 特性:cores线程全部使用的情况下,优先创建线程(总数不会超过max),当max个线程全都在忙的情况下,才将任务放入队列。请求量下降时,线程池会自动维持cores个线程,多余的线程退出。 * 补全单元测试,测试扩展是否生效 * 错误命名 * 增加@OverRide注解 long 初始化赋值时,小写l改为大写L防止误读 * 修复单元测试 * remove enhanced * remove enhanced * Change ThreadFactory for consumer side which is to use InternalThreadLocal in RpcContext. * optimize_zk_create (#1833) * fix #1845 (#1851) * update CXF to latest version and add test case for webservice protocol (#1564) * update cxf version and add test cases * support jdk7 * add profile for dependency in jdk9 * modify profile location * fix jaxb version * add dependency for jdk9 * extract dependencies to dependencies bom project * #1682: Enhance the test coverage part-4 (#1862) * [Dubbo-1693] Enhance the test coverage part-14 (#1859) * add testcase * remove useless code * Merge pull request #1866, clarify license for codes referencing thirdparty repositories. Clarify netty License. * Merge pull request #1820, improve graceful shutdown. * Merge pull request #1837, spring spi support inject by type. * Merge pull request #1843, support implicit delivery of attachments from provider to consumer. Fixes #889, #1466, #1834, #1466, #1524 * Merge pull request #1868, add test for rpc modules. fixes #1697 * [Dubbo-1684] add unit test for dubbo spring config (#1809) * add test for config spring module * add more test for serviceBean and refBean * Merge pull request #1827, support generic invoke and attachment for http/hessian protocol. fixes #1768, #19 * Merge pull request #1872, get the real methodname to support consistenthash for generic invoke. * Merge pull request #348, AtomicPositiveInteger less memory used & provides better perf. * Merge pull request #1873, support proxy for provider side. fixes #67 * Merge #1740 manually, fix typo. * Adding maven wrapper to Dubbo project (#1887) * 当cores线程数全都使用的情况下,默认线程池会把任务放入到队列中。队列满则再创建线程(总数不会超过Max线程数) 增强线程池:在请求量阶段性出现高峰时使用 特性:cores线程全部使用的情况下,优先创建线程(总数不会超过max),当max个线程全都在忙的情况下,才将任务放入队列。请求量下降时,线程池会自动维持cores个线程,多余的线程退出。 * 当cores线程数全都使用的情况下,默认线程池会把任务放入到队列中。队列满则再创建线程(总数不会超过Max线程数) 增强线程池:在请求量阶段性出现高峰时使用 特性:cores线程全部使用的情况下,优先创建线程(总数不会超过max),当max个线程全都在忙的情况下,才将任务放入队列。请求量下降时,线程池会自动维持cores个线程,多余的线程退出。 * 补全单元测试,测试扩展是否生效 * 增加@OverRide注解 long 初始化赋值时,小写l改为大写L防止误读 * remove enhanced * remove enhanced * feat: 增加maven-wrapper,用户可以使用自己的maven,应用工程构建时将会使用工程的maven版本 * use mvnw to ci. * Merge pull request #1453, restore the bug that attachment has not been updated in the RpcContext when the Dubbo built-in retry mechanism is triggered. * remove author info from #1453 * upgrade version manually after merge 2.6.2-release * remove hessian-lite of 2.6.x and use https://github.com/dubbo/hessian-lite (#2073) * remove hessian-lite * add hessian-lite dependency to dependencies-bom/pom.xml * Merge pull request #2117, fix protocol version compatibility with lower versions. * #1431: here is a StackOverflow bug? dubbo version 2.5.9, FailsafeLogger.appendContextMessage() > NetUtils.getLocalAddress() (#1912) * Updage changes for 2.6.3 * Merge #2114 mannually from master, enable configuration of Consumer thread pool. * Merge #2114 mannually from master, enable configuration of Consumer thread pool. * Merge pull request #2126, ensure compatibility for elegant shutdown under servlet container. Fixes #1998 * Resolve conflicts of merging #1820 * Upgrade hessian-lite dependency to 3.2.4 * [maven-release-plugin] prepare release dubbo-2.6.3 * [maven-release-plugin] prepare for next development iteration * support char[] for generic invoke #2003 (#2137) * support char[] for generic invoke, #2003 * add null or empty string testcase * Update CHANGES.md polish * Exclude maven wrapper when package * Merge pull request #2024, binding attachment before a clusterInvoker invoke. Fixes #1978 * Merge pull request #2146, fix redis auth problem for RedisProtocol. Fixes #2017 * fix subscription when enable monitor (#2166) It looks good. * solve compatible issue with dubbo 2.5.9, 2.5.10 (#2175) * solve compatible issue with dubbo 2.5.9, 2.5.10 (#2175) * Add compatibility notice to Release Notes * fix ut unstable (#2192) * Replace hard coded version number of hessian-lite #2136 (#2195) * Fixes #2136, replace hard coded hessian-lite version with mavne property. (#2223) * Remove hessian-lite license. * fix ut stable, #2227 (#2302) * fix ut, #2227 * add cache for travis ci * fix travis problem, skip javadoc * fix retries to 2, #2162 (#2303) * Revert version to 2.6.2-SNAPSHOT to prepare for 2.6.3 RC4 * Replace outdated license header * Include 'apache' in release package name. * Fix version issue: 2.6.2-SNAPSHOT to 2.6.3-SNAPSHOT * [maven-release-plugin] prepare release dubbo-2.6.3 * [maven-release-plugin] prepare for next development iteration * complete LICENSE for test xml, fix checkstyle problem * [maven-release-plugin] prepare release dubbo-2.6.3 * New ascii logo for 2.6.x (#2402) * Merge pull request #2417, add release script (draft). * Direct return when the server goes down unnormally. (#2451) * fix telnet invoke NPE #2218 (#2273) (#2453) * upgrade javadoc to 3.0.1 (#2454) * Qos enhancement, take #2153 back to 2.6.x (#2455) * remove dubbo-all javadoc plugin (#2456) * Prepare for the next development version * add cache for travis, fix ut for stable (#2501) * fix time, timestamp, SQL. Date type conversion problems (#2502) * add change log for 2.6.4 * Enhance NOTICE file. * change port for unit test * [maven-release-plugin] prepare release dubbo-2.6.4 * [maven-release-plugin] prepare for next development iteration * fix #2560, use target/test-classes as the basedir (#2564) * Optimize LeastActiveLoadBalance and add weight test case. (#2584) * fix #2600, add javadoc plugin to dubbo-all module (#2602) * Removed jdk9 from .travis.yml. (#2609) * update release script (#2615) * Fix incorrect descriptions for dubbo-serialization module for 2.6.x. (#2624) Fix incorrect descriptions for dubbo-serialization module for 2.6.x. * Fixed 2.6.x branch a minor issue with doConnect not using getConnectTimeout() in NettyClient,like #2595 (#2622) * fix #1641, support get system load on windows. (#2621) * fix #2063 * @service and @reference Optimization (#2657) * Polish #2235 #2251 apache/dubbo-spring-boot-project#243 * Fixed bugs and optimized imports * #1903: merge issue 1903's fix from 2.7.0 to 2.6.x (#2668) * #2016: merge fix from 2.7.0 to 2.6.x (#2680) * Smooth Round Robin selection (#2647) * remove author info for RoundRobinLoadBalance (#2696) * Bug Fix & Enhancement (#2687) * Polish #2235 #2251 apache/dubbo-spring-boot-project#243 * Fixed bugs and optimized imports * Remove local PropertySourcesUtils and re-use it from spring-context-extras * Add Test cases for YAML properties issues : apache/dubbo-spring-boot-project/issues/273 * Optimize imports using code-style template * Refactor Utilities class * Fixed test cases * [Enhancement] @EnableDubboConfigBinding annotates @repeatable #1770 * Bug fix * Remove feature : [Enhancement] @EnableDubboConfigBinding annotates @repeatable #1770 * release 2.6.5 (#2705) * 2.6.5 release changes.md (#2708) * release 2.6.5 * release 2.6.5 * release 2.6.5 changes * add 2.6.5 release note * add 2.6.5 release note * modify 2.6.5 release log (replace pr link with issue link) (#2716) * release 2.6.5 * edit release note for 2.6.5 (rewrite log) * remove serviceclassHolder and also fix the issue #2637 (#2607) * remove serviceclassHolder * [Dubbo-2637] fix the issue #2637 to make sure the properties load properly * ServiceConfig.java:33: Using the '.*' form of import should be avoided * replace the import rpc.* with rpc Exporter etc * replace the import rpc.* with rpc Exporter etc * fix referenceBean initialization issue (#2719) * [Dubbo-2678] Add ability to turn off SPI auto injection, special support for Object type. (#2681) * Add ability to turn off SPI auto injection, special support for generic Object type injection. * Add ability to turn off SPI auto injection, special support for generic Object type injection. * disable() is redundant in DisableInject annotation. * merge #2725 (#2734) * merge #2725 * fix UT failure * remove useless test * fix unit test failures * [DUBBO-2489] MockClusterInvoker provides local forced mock,I tested it locally, but it doesn't work (#2739) * Add forks support for ForkingCluster. (#2751) Add forks support for ForkingCluster. * #2748: Provider should disable mock configuration (#2750) * Fix the bug that ReferenceBean refers service more than once when debugging. (#2759) note: please visit http://t.cn/EAhta27 for more detail. * merge pull request #2353 to 2.6.x to fix #2353 (#2761) * #2762: [Dubbo - qos-http] stopServer should be invoked ? (#2768) * 2.6.5 release note change (#2775) * release 2.6.5 * edit release note for 2.6.5 (rewrite log) * mmm * edit release note to remove some unuseful word * merge from upstream and origin * [Dubbo-2678] Add ability to turn off SPI auto injection, special support for Object type. (#2681) * Add ability to turn off SPI auto injection, special support for generic Object type injection. * Add ability to turn off SPI auto injection, special support for generic Object type injection. * disable() is redundant in DisableInject annotation. * Update release note * fix #2459 sha512 issue * [maven-release-plugin] prepare release dubbo-2.6.5 * [maven-release-plugin] prepare for next development iteration * fix 2798 on branch 2.6.x (#2805) 'propertyname in java donot contain '-' but camel format'. * Remove extra modifiers (#2876) Remove extra modifiers * feature:import TagRouter (#3065) * Merge pull request #3315, fixes #2842, duplicate SPI config items. * Fix random ut falling in DubboMonitorTest (#3336) * use netty4 as default transporter for 2.6.6 #3029 (#3318) * use netty4 as default transporter for 2.6.6 #3029 * fix config file issue && enhance UT * ignore unstable test * Activate SPI sort (#3412) * 修正排序 * Update dubbo-common/src/main/java/com/alibaba/dubbo/common/extension/support/ActivateComparator.java code style Co-Authored-By: dongYES <[email protected]> * Merge pull request #3502, apply #3295 to 2.6 branch. Fixes #3294, referenceconfig#destroy never invoke unregister. * Merge pull request #3511, apply #2925 to branch 2.6.x (to make telnet config work again). * Revise the naming conventions (#3506) * apply #2220 to 2.6.x branch, issue #2178 (#3519) * Apply #2925 to branch 2.6.x * apply #2220 to 2.6.x branch, issue #2178 * Revise the naming conventions (#3506) * apply #2220 to 2.6.x branch, issue #2178 * remove java.time package * update hessian-lite to 2.6.5 (#3538) * [Enhancement] inline the source code of spring-context-support (#3225) * Manually merge pull request #1486, to make travis ci and codecov work after apache incubator transition. * Polish #1306 * Optimize imports * Optimize imports * Remove invalid JavaDoc * Update DubboConfigBinder.java Remove invalid JavaDoc * Fix #1653 * Fixed #1772 * Reactor ReferenceAnnotationBeanPostProcessor * Fixed incubator-dubbo-spring-boot-project#243 * Add ServiceBeanNameBuilder * Polish apache/incubator-dubbo/#2235 * Polish incubator-dubbo#2251 * Update spring-context-supprt version to be release * Rename ServiceBeanExportEvent to be ServiceBeanExportedEvent * Poblish #2297 * Polish #2301 * Polish #2315 * Polish #2897 : DubboConfigConfigurationSelector precedence is too high * Polish #2897 : implements ImportBeanDefinitionRegistrar in order to reduce precedence * Polish #2897 : rename DubboConfigConfigurationSelector to DubboConfigConfigurationRegistrar * Polish #3192 : inline the source code of spring-context-support * Fixed the issues of the test-cases * Polish #3193 : [Enhancement] Change the default behavior of @EnableDubboConfig.multiple() * Polish #3192 : inline the source code of spring-context-support * Polish #3189 Simplify externalized configuration of Dubbo Protocol name * Polish #3193 * Polish #2987 * Polish #3355 : Add the "protocol" attribute * Polish #3355 : Still exists the issues in service discovery. * Polish #3355 : fix the issues in samples * Polish #3355 : fix the issues in samples * Polish #3296 : Merge and enhancement dubbo-registry-nacos * Polish #3251 : @service supports the hierarchical interface * Polish #3275 : ReferenceBeanInvocationHandler does not throw the actual exception * Polish #3429 : Fix the NPE * add license header * Polish #3296 : Supports Docker * [Dubbo-2298] Add Annotation-Driven for MethodConfig and ArgumentConfig (#2603) * support methodConfig and argementConfig. fix #2298 * unit test * unit test * remove unused * remove author * add licence * format the code * update notice * update CHANGE.md * [maven-release-plugin] prepare release dubbo-2.6.6 * [maven-release-plugin] prepare for next development iteration * [DUBBO-3243] Fix Invalid use of BasicClientConnManager: connection still allocated #3243 (#3581) * Multicast ipv6 support for branch 2.6.x (#3430) * Multicast demo fails with message "Can't assign requested address * remove useless code * Fix multicast registry ut * fix fastjson serialize type (#3767) * Add ASF header #3721 (#3783) * fix for #4111 (#4114) do not ignore empty value when we construct servicename * Disclaimer removed (#4233) * [No issue] Fix: @method default value will be set to the field of MethodConfig (#3642) * fix #2842. fix duplicate SPI definitions * fix @method set empty string into field * Polish /#3695 : @reference field can't refer its' @service Bean in same JVM from v2.6.6 (#4385) * Nacos Dubbo Registry can't sense the change (#4392) fixes #4348 : * Dubbo throws IoException with error message while decoding fail (#4396) Really have this problem * Dubbo throws exception when use java serializer (#4530) * Dubbo throws exception when use java serializer issues: #3951 #3698 * Dubbo throws exception when use java serializer issues: #3951 #3698 fix travis-ci UnusedImports * upgrade fastjson to 1.2.58 (#4624) fixes #4623 * 修复注册中心域名解析导致的单点问题 (#4293) Fix #2545 * enhance travis * travis config on 2.6.x (#4916) * fix default setting * enhance travis build * switch back to openjdk since zulu 7 doesn't support javascript, see issue #4961 * use zulu jdk 7 but disable ScriptRouterTest * add timeout config to zookeeper client (#4963) * 解决冲突
What is the purpose of the change
[dubbo-3309] fix #3309
When all active implementation classes of a SPI interface are sorted (Activate Comparator), and when the implementation classes of the SPI interface not only implement the SPI interface, but also other non-SPI interfaces, if the SPI interface is not in the first place of the implements, the function of before and after will fail.
Brief changelog
get the specified SPI interface modifier.
Verifying this change
XXXXX
Follow this checklist to help us incorporate your contribution quickly and easily:
[Dubbo-XXX] Fix UnknownException when host config not exist #XXX
. Each commit in the pull request should have a meaningful subject line and body.mvn clean install -DskipTests=false
&mvn clean test-compile failsafe:integration-test
to make sure unit-test and integration-test pass.