Skip to content
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

[DUBBO-2525]: Problems of graceful shutdown in 2.6.3 and some recommendation #2725

Merged
merged 4 commits into from
Nov 5, 2018
Merged

[DUBBO-2525]: Problems of graceful shutdown in 2.6.3 and some recommendation #2725

merged 4 commits into from
Nov 5, 2018

Conversation

beiwei30
Copy link
Member

@beiwei30 beiwei30 commented Nov 1, 2018

What is the purpose of the change

[DUBBO-2525]: Problems of graceful shutdown in 2.6.3 and some recommendation

Brief changelog

dubbo-all/pom.xml
dubbo-bom/pom.xml
dubbo-bootstrap/pom.xml
dubbo-bootstrap/src/main/java/org/apache/dubbo/bootstrap/DubboBootstrap.java
dubbo-config/dubbo-config-api/src/main/java/org/apache/dubbo/config/ProtocolConfig.java
dubbo-config/dubbo-config-spring/pom.xml
dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/ServiceBean.java
dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/extension/SpringExtensionFactory.java
dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/initializer/DubboApplicationContextInitializer.java
dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/initializer/DubboApplicationListener.java
dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/initializer/DubboContextListener.java
dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/util/BeanFactoryUtils.java
dubbo-config/dubbo-config-spring/src/main/resources/META-INF/web-fragment.xml
dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/initializer/DubboApplicationContextInitializerTest.java
dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/initializer/DubboApplicationListenerTest.java
dubbo-container/dubbo-container-spring/pom.xml
dubbo-container/dubbo-container-spring/src/main/java/org/apache/dubbo/container/spring/SpringContainer.java
dubbo-distribution/pom.xml
pom.xml

Verifying this change

XXXXX

Follow this checklist to help us incorporate your contribution quickly and easily:

  • Make sure there is a GITHUB_issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a GITHUB issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
  • Format the pull request title like [Dubbo-XXX] Fix UnknownException when host config not exist #XXX. Each commit in the pull request should have a meaningful subject line and body.
  • Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
  • Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
  • Run mvn clean install -DskipTests & mvn clean test-compile failsafe:integration-test to make sure unit-test and integration-test pass.
  • If this contribution is large, please follow the Software Donation Guide.

@codecov-io
Copy link

codecov-io commented Nov 1, 2018

Codecov Report

Merging #2725 into master will increase coverage by 1.2%.
The diff coverage is 68.18%.

Impacted file tree graph

@@            Coverage Diff            @@
##           master    #2725     +/-   ##
=========================================
+ Coverage   62.35%   63.56%   +1.2%     
=========================================
  Files         602      576     -26     
  Lines       27978    25923   -2055     
  Branches     4831     4540    -291     
=========================================
- Hits        17446    16477    -969     
+ Misses       8259     7285    -974     
+ Partials     2273     2161    -112
Impacted Files Coverage Δ
...n/java/org/apache/dubbo/config/ProtocolConfig.java 75.18% <ø> (+1.11%) ⬆️
...va/org/apache/dubbo/config/spring/ServiceBean.java 49.57% <100%> (+1.91%) ⬆️
...onfig/spring/extension/SpringExtensionFactory.java 84.61% <100%> (+3.36%) ⬆️
...apache/dubbo/container/spring/SpringContainer.java 70.58% <100%> (-4.42%) ⬇️
...che/dubbo/config/spring/util/BeanFactoryUtils.java 66.66% <41.66%> (-25%) ⬇️
...ache/dubbo/remoting/p2p/support/AbstractGroup.java 45.45% <0%> (-11.37%) ⬇️
...org/apache/dubbo/rpc/filter/ActiveLimitFilter.java 83.33% <0%> (-5.56%) ⬇️
...ng/exchange/support/header/HeartbeatTimerTask.java 73.68% <0%> (-5.27%) ⬇️
.../dubbo/remoting/transport/netty4/NettyChannel.java 61.17% <0%> (-4.71%) ⬇️
...ache/dubbo/remoting/transport/mina/MinaClient.java 56.92% <0%> (-1.54%) ⬇️
... and 33 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3cf801b...f023841. Read the comment docs.

@chickenlj
Copy link
Contributor

#1763
#1820
#2126

@chickenlj
Copy link
Contributor

+1 to merge this PR.

The changes about gracefully shutdown looks good, and it's much easier to use and understand than before.

For the bootstrap part, I think the initial author has some other consideration and designs that are still not realize yet, e.g., a unified bootstrap entry for API usage, a fluent builder pattern, .... but I think it's ok to remove this module at this moment since it's nearly empty after refactoring the shutdown part.

@chickenlj chickenlj merged commit 0d51bc4 into apache:master Nov 5, 2018
@beiwei30 beiwei30 deleted the spring-shutdown branch November 5, 2018 02:58
@cvictory
Copy link
Contributor

cvictory commented Nov 5, 2018 via email

beiwei30 added a commit that referenced this pull request Nov 5, 2018
* merge #2725

* fix UT failure

* remove useless test

* fix unit test failures
CrazyHZM pushed a commit to CrazyHZM/dubbo that referenced this pull request Dec 6, 2018
CrazyHZM added a commit to CrazyHZM/dubbo that referenced this pull request Dec 6, 2018
* combine test coverage report (apache#2643)

* Optimize ut for serialization model. (apache#2632)

* 1. Integrate the unit test of the serialization module, code reuse.
2. Remove redundant unit tests and pojo classes.
3. Remove the useless pojo class in the common module.

* fix ci fail

* fix ci fail

* fix ci fail

* fix ci fail

* remove author info

* prototype for issue2570 (apache#2640)

* apache#2570: dubbo all in one fail to start from a tomcat server when spring framework is absent

* add comments and fix unit test

* add license header

* update comments in unit tests

* [Dubbo -fix annotation bug] Fix @reference bug (apache#2649)

It's fine.

* Merge pull request apache#2656, make sure serialization exception sends back to consumer to preventing endless waiting.

Fixes apache#1903: Our customized serialization id exceeds the maximum limit, now it cannot work on 2.6.2 anymore.

*     apache#1903: supplemental change (apache#2666)

* Optimize the doSelect method of RandomLoadBalance to reduce the times of invoke of the getWeight method of the AbstractLoadBalance (apache#2597)

* 解决与quartz集成报错问题 (apache#2677)

quartz初始化的Bean没有beanName,beanName=null,走这段代码的时候报空指针了。
org.springframework.boot.autoconfigure.quartz.AutowireCapableBeanJobFactory类的createJobInstance方法中使用this.beanFactory.initializeBean(jobInstance, null);初始化的Bean,其beanName=null。

* Code format (apache#2662)

* NullPointerException

* code rule

* Merge pull request#2679, consumer throws RpcException when RegistryDirectory notify in high QPS.

Fixes apache#2016

* remove ServiceClassHolder and use the ApplicationModel replacedly (apache#2646)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* [Dubbo-1983] Support Protobuf Serialization (apache#2618)

* finish support protobuf

* polish

* fix code review

* use the general test for serialization

* Smooth Round Robin selection (apache#2650)

* enhance pull request 2618 (apache#2691)

* enhance pull request 2618

* move spi file into the right directory

* ignore protostuff test case

* make unit test pass, support Time type

* fix useless imports issue

* add license header

* fix typo error in FAQ (apache#2684)

fix typo error in FAQ

* remove author info for RoundRobinLoadBalance (apache#2697)

* fix pom for protostuff serialization (apache#2700)

* Optimize REGISTRIES field in AbstractRegistryFactory. (apache#2703)

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* [version 2.7.0]remove the StaticContext class and refactor the code related to Async (apache#2688)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* remove StaticContext

* remove the unused imported classes of ReferenceConfig

* fix NPE of ConsumerModel

* fix the failed testcase of AbstractClusterInvokerTest

* [Dubbo] #PR2688 to fix the review issues

* Optimize heartbeat and reconnect task. (apache#2658)

* Optimize heartbeat and reconnect task.
1.Use hashedWheelTimer.
2.Distinguish between reconnect and heartbeat.
3.Increase inspection cycle.

* fix ci fail.

* fix ci fail.

* fix ci fail.

* polish the code for pull request 2658: Optimize heartbeat and reconnect task (apache#2709)

* 重构 ServiceBean 的 isDelay 方法,使其更符合语义 (apache#2686)

* Refactor method isDelay of ServiceBean to fix the wrong meaning of the method

* Remove unnecessary method isDelay of ServiceBean

* 【Unit Test】FailbackRegistry Test: recover method (apache#2591)

* FailbackRegistry Test: recover method

* fix the type error, and use CountDownLatch await method to fix the unstable problom

* trigger the travis ci test retry

* trigger the code static check again

* replace ServiceAnnotationBeanPostProcessor log.isInfoEnabled->log.isWarnEnabled (apache#2712)

simplify ExtensionLoader code segment

* [Dubbo-2678][For Master] Add ability to turn off SPI auto injection, special support for Object type.  (apache#2682)

* Add ability to turn off SPI auto injection, special support for generic Object type injection.

* Change Inject to AutoInject since it's main purpose is to turn off auto-injection.

* disable is redundant in DisableInject annotation

* Merge pull request apache#2725, problems of graceful shutdown in 2.6.3 and some recommendation.

* enhance comments (apache#2735)

* code format (apache#2730)

* NullPointerException

* code rule

* code rule

* Close all servers/ports after tests finish (apache#2741)

*  Simplify the code of StringUtils to make it more graceful. (apache#2740)

* Simplify the code of StringUtils to make it more graceful.

* Add Apache license

* Add 'forks' config into xml config (apache#2568)

* Add forks into xml config.

* Add forks into xml config.

* Add forks into xml config.

* fix typo (apache#2747)

* [DUBBO-2489] MockClusterInvoker provides local forced mock,I tested it locally, but it doesn't work (apache#2742)

*     apache#2748: Provider should disable mock configuration (apache#2749)

* Fix the bug that ReferenceBean refers service more than once when debugging. (apache#2754)

note:
please visit http://t.cn/EAhta27 for more detail.

* Close all servers/ports after tests finish (apache#2755)

* add checkstyle rule to check import order (apache#2745)

* Changing URL so tests can run in any order (apache#2760)

* [Dubbo-2353]fix Invalid property 'interfaceName' of bean class [org.apache.dubbo.config.spring.ServiceBean]apache#2353 (apache#2418)

* add getter and setter for ServiceConfig's interfaceName property#2353

* add interfaceName to ignoreAttributeNames and change the unit test

* delete the demo source code and update the unit test

* unchange ServiceConfig

* update unit test

* update unit test

*     apache#2762: [Dubbo - qos-http] stopServer should be invoked ? (apache#2767)

*     apache#2777: heartbeat threads blocks process shutdown (apache#2778)

Fix heartbeat threads blocks process shutdown because its hashed-wheel-timer is non-daemon thread.

* oschina vote (apache#2786)

* fix typo (apache#2791)

Fix typo confilict -> conflict

* improvement on Parameters and CollectionUtils (apache#2790)

Use CollectionUtils.toStringMap to reduce duplicate code in Parameters, and use Java 8 type inference for collections.

* [REFACTOR]:[fix typo] (apache#2804)

fix typos

* [Dubbo-2798]fix apporiate NotWritablePropertyException (apache#2800)

fix apache#2798 .
'propertyname in java donot contain '-' but camel format'.

* [Dubbo-2758] Adding dependency on dubbo-remoting-mina for tests in dubbo-rpc-dubbo (apache#2797)

* Adding dependency on dubbo-remoting-mina so DubboProtocolTest.testDubboProtocolWithMina is no longer flaky

* Changing port number to ensure new server/client created for test

* modify dubbo version to 2.6.5

* fix typo of field (apache#2825)

* [Dubbo-2845] Fix OOM in UT testSelectByWeight (apache#2845) (apache#2846)

Fix OOM Exception generated during UT

* Fix UT failed on windows with FileNetworkerTest (apache#2848)

Fix FileNetworkerTest failure

* Update README.md

remove oschina vote

* fixed typo of variable (apache#2875)

fixed type of variable

* Remove unnessesary code  in RegistryDirectory#doList (apache#2861)

* remove unnessesary code

* remove unused import

* add some ScriptRoute test case (apache#2879)

* add router test case

* correct an error word

* remove the duplicate superclass of TagRouter and ConditionRouter (apache#2885)

Remove the class ConditionRouter and TagRouter implement duplicate superclass Comparable
CrazyHZM added a commit to CrazyHZM/dubbo that referenced this pull request Dec 6, 2018
* combine test coverage report (apache#2643)

* Optimize ut for serialization model. (apache#2632)

* 1. Integrate the unit test of the serialization module, code reuse.
2. Remove redundant unit tests and pojo classes.
3. Remove the useless pojo class in the common module.

* fix ci fail

* fix ci fail

* fix ci fail

* fix ci fail

* remove author info

* prototype for issue2570 (apache#2640)

* apache#2570: dubbo all in one fail to start from a tomcat server when spring framework is absent

* add comments and fix unit test

* add license header

* update comments in unit tests

* [Dubbo -fix annotation bug] Fix @reference bug (apache#2649)

It's fine.

* Merge pull request apache#2656, make sure serialization exception sends back to consumer to preventing endless waiting.

Fixes apache#1903: Our customized serialization id exceeds the maximum limit, now it cannot work on 2.6.2 anymore.

*     apache#1903: supplemental change (apache#2666)

* Optimize the doSelect method of RandomLoadBalance to reduce the times of invoke of the getWeight method of the AbstractLoadBalance (apache#2597)

* 解决与quartz集成报错问题 (apache#2677)

quartz初始化的Bean没有beanName,beanName=null,走这段代码的时候报空指针了。
org.springframework.boot.autoconfigure.quartz.AutowireCapableBeanJobFactory类的createJobInstance方法中使用this.beanFactory.initializeBean(jobInstance, null);初始化的Bean,其beanName=null。

* Code format (apache#2662)

* NullPointerException

* code rule

* Merge pull request#2679, consumer throws RpcException when RegistryDirectory notify in high QPS.

Fixes apache#2016

* remove ServiceClassHolder and use the ApplicationModel replacedly (apache#2646)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* [Dubbo-1983] Support Protobuf Serialization (apache#2618)

* finish support protobuf

* polish

* fix code review

* use the general test for serialization

* Smooth Round Robin selection (apache#2650)

* enhance pull request 2618 (apache#2691)

* enhance pull request 2618

* move spi file into the right directory

* ignore protostuff test case

* make unit test pass, support Time type

* fix useless imports issue

* add license header

* fix typo error in FAQ (apache#2684)

fix typo error in FAQ

* remove author info for RoundRobinLoadBalance (apache#2697)

* fix pom for protostuff serialization (apache#2700)

* Optimize REGISTRIES field in AbstractRegistryFactory. (apache#2703)

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* [version 2.7.0]remove the StaticContext class and refactor the code related to Async (apache#2688)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* remove StaticContext

* remove the unused imported classes of ReferenceConfig

* fix NPE of ConsumerModel

* fix the failed testcase of AbstractClusterInvokerTest

* [Dubbo] #PR2688 to fix the review issues

* Optimize heartbeat and reconnect task. (apache#2658)

* Optimize heartbeat and reconnect task.
1.Use hashedWheelTimer.
2.Distinguish between reconnect and heartbeat.
3.Increase inspection cycle.

* fix ci fail.

* fix ci fail.

* fix ci fail.

* polish the code for pull request 2658: Optimize heartbeat and reconnect task (apache#2709)

* 重构 ServiceBean 的 isDelay 方法,使其更符合语义 (apache#2686)

* Refactor method isDelay of ServiceBean to fix the wrong meaning of the method

* Remove unnecessary method isDelay of ServiceBean

* 【Unit Test】FailbackRegistry Test: recover method (apache#2591)

* FailbackRegistry Test: recover method

* fix the type error, and use CountDownLatch await method to fix the unstable problom

* trigger the travis ci test retry

* trigger the code static check again

* replace ServiceAnnotationBeanPostProcessor log.isInfoEnabled->log.isWarnEnabled (apache#2712)

simplify ExtensionLoader code segment

* [Dubbo-2678][For Master] Add ability to turn off SPI auto injection, special support for Object type.  (apache#2682)

* Add ability to turn off SPI auto injection, special support for generic Object type injection.

* Change Inject to AutoInject since it's main purpose is to turn off auto-injection.

* disable is redundant in DisableInject annotation

* Merge pull request apache#2725, problems of graceful shutdown in 2.6.3 and some recommendation.

* enhance comments (apache#2735)

* code format (apache#2730)

* NullPointerException

* code rule

* code rule

* Close all servers/ports after tests finish (apache#2741)

*  Simplify the code of StringUtils to make it more graceful. (apache#2740)

* Simplify the code of StringUtils to make it more graceful.

* Add Apache license

* Add 'forks' config into xml config (apache#2568)

* Add forks into xml config.

* Add forks into xml config.

* Add forks into xml config.

* fix typo (apache#2747)

* [DUBBO-2489] MockClusterInvoker provides local forced mock,I tested it locally, but it doesn't work (apache#2742)

*     apache#2748: Provider should disable mock configuration (apache#2749)

* Fix the bug that ReferenceBean refers service more than once when debugging. (apache#2754)

note:
please visit http://t.cn/EAhta27 for more detail.

* Close all servers/ports after tests finish (apache#2755)

* add checkstyle rule to check import order (apache#2745)

* Changing URL so tests can run in any order (apache#2760)

* [Dubbo-2353]fix Invalid property 'interfaceName' of bean class [org.apache.dubbo.config.spring.ServiceBean]apache#2353 (apache#2418)

* add getter and setter for ServiceConfig's interfaceName property#2353

* add interfaceName to ignoreAttributeNames and change the unit test

* delete the demo source code and update the unit test

* unchange ServiceConfig

* update unit test

* update unit test

*     apache#2762: [Dubbo - qos-http] stopServer should be invoked ? (apache#2767)

*     apache#2777: heartbeat threads blocks process shutdown (apache#2778)

Fix heartbeat threads blocks process shutdown because its hashed-wheel-timer is non-daemon thread.

* oschina vote (apache#2786)

* fix typo (apache#2791)

Fix typo confilict -> conflict

* improvement on Parameters and CollectionUtils (apache#2790)

Use CollectionUtils.toStringMap to reduce duplicate code in Parameters, and use Java 8 type inference for collections.

* [REFACTOR]:[fix typo] (apache#2804)

fix typos

* [Dubbo-2798]fix apporiate NotWritablePropertyException (apache#2800)

fix apache#2798 .
'propertyname in java donot contain '-' but camel format'.

* [Dubbo-2758] Adding dependency on dubbo-remoting-mina for tests in dubbo-rpc-dubbo (apache#2797)

* Adding dependency on dubbo-remoting-mina so DubboProtocolTest.testDubboProtocolWithMina is no longer flaky

* Changing port number to ensure new server/client created for test

* modify dubbo version to 2.6.5

* fix typo of field (apache#2825)

* [Dubbo-2845] Fix OOM in UT testSelectByWeight (apache#2845) (apache#2846)

Fix OOM Exception generated during UT

* Fix UT failed on windows with FileNetworkerTest (apache#2848)

Fix FileNetworkerTest failure

* Update README.md

remove oschina vote

* fixed typo of variable (apache#2875)

fixed type of variable

* Remove unnessesary code  in RegistryDirectory#doList (apache#2861)

* remove unnessesary code

* remove unused import

* add some ScriptRoute test case (apache#2879)

* add router test case

* correct an error word

* remove the duplicate superclass of TagRouter and ConditionRouter (apache#2885)

Remove the class ConditionRouter and TagRouter implement duplicate superclass Comparable
CrazyHZM added a commit to CrazyHZM/dubbo that referenced this pull request Dec 6, 2018
* combine test coverage report (apache#2643)

* Optimize ut for serialization model. (apache#2632)

* 1. Integrate the unit test of the serialization module, code reuse.
2. Remove redundant unit tests and pojo classes.
3. Remove the useless pojo class in the common module.

* fix ci fail

* fix ci fail

* fix ci fail

* fix ci fail

* remove author info

* prototype for issue2570 (apache#2640)

* apache#2570: dubbo all in one fail to start from a tomcat server when spring framework is absent

* add comments and fix unit test

* add license header

* update comments in unit tests

* [Dubbo -fix annotation bug] Fix @reference bug (apache#2649)

It's fine.

* Merge pull request apache#2656, make sure serialization exception sends back to consumer to preventing endless waiting.

Fixes apache#1903: Our customized serialization id exceeds the maximum limit, now it cannot work on 2.6.2 anymore.

*     apache#1903: supplemental change (apache#2666)

* Optimize the doSelect method of RandomLoadBalance to reduce the times of invoke of the getWeight method of the AbstractLoadBalance (apache#2597)

* 解决与quartz集成报错问题 (apache#2677)

quartz初始化的Bean没有beanName,beanName=null,走这段代码的时候报空指针了。
org.springframework.boot.autoconfigure.quartz.AutowireCapableBeanJobFactory类的createJobInstance方法中使用this.beanFactory.initializeBean(jobInstance, null);初始化的Bean,其beanName=null。

* Code format (apache#2662)

* NullPointerException

* code rule

* Merge pull request#2679, consumer throws RpcException when RegistryDirectory notify in high QPS.

Fixes apache#2016

* remove ServiceClassHolder and use the ApplicationModel replacedly (apache#2646)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* [Dubbo-1983] Support Protobuf Serialization (apache#2618)

* finish support protobuf

* polish

* fix code review

* use the general test for serialization

* Smooth Round Robin selection (apache#2650)

* enhance pull request 2618 (apache#2691)

* enhance pull request 2618

* move spi file into the right directory

* ignore protostuff test case

* make unit test pass, support Time type

* fix useless imports issue

* add license header

* fix typo error in FAQ (apache#2684)

fix typo error in FAQ

* remove author info for RoundRobinLoadBalance (apache#2697)

* fix pom for protostuff serialization (apache#2700)

* Optimize REGISTRIES field in AbstractRegistryFactory. (apache#2703)

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* [version 2.7.0]remove the StaticContext class and refactor the code related to Async (apache#2688)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* remove StaticContext

* remove the unused imported classes of ReferenceConfig

* fix NPE of ConsumerModel

* fix the failed testcase of AbstractClusterInvokerTest

* [Dubbo] #PR2688 to fix the review issues

* Optimize heartbeat and reconnect task. (apache#2658)

* Optimize heartbeat and reconnect task.
1.Use hashedWheelTimer.
2.Distinguish between reconnect and heartbeat.
3.Increase inspection cycle.

* fix ci fail.

* fix ci fail.

* fix ci fail.

* polish the code for pull request 2658: Optimize heartbeat and reconnect task (apache#2709)

* 重构 ServiceBean 的 isDelay 方法,使其更符合语义 (apache#2686)

* Refactor method isDelay of ServiceBean to fix the wrong meaning of the method

* Remove unnecessary method isDelay of ServiceBean

* 【Unit Test】FailbackRegistry Test: recover method (apache#2591)

* FailbackRegistry Test: recover method

* fix the type error, and use CountDownLatch await method to fix the unstable problom

* trigger the travis ci test retry

* trigger the code static check again

* replace ServiceAnnotationBeanPostProcessor log.isInfoEnabled->log.isWarnEnabled (apache#2712)

simplify ExtensionLoader code segment

* [Dubbo-2678][For Master] Add ability to turn off SPI auto injection, special support for Object type.  (apache#2682)

* Add ability to turn off SPI auto injection, special support for generic Object type injection.

* Change Inject to AutoInject since it's main purpose is to turn off auto-injection.

* disable is redundant in DisableInject annotation

* Merge pull request apache#2725, problems of graceful shutdown in 2.6.3 and some recommendation.

* enhance comments (apache#2735)

* code format (apache#2730)

* NullPointerException

* code rule

* code rule

* Close all servers/ports after tests finish (apache#2741)

*  Simplify the code of StringUtils to make it more graceful. (apache#2740)

* Simplify the code of StringUtils to make it more graceful.

* Add Apache license

* Add 'forks' config into xml config (apache#2568)

* Add forks into xml config.

* Add forks into xml config.

* Add forks into xml config.

* fix typo (apache#2747)

* [DUBBO-2489] MockClusterInvoker provides local forced mock,I tested it locally, but it doesn't work (apache#2742)

*     apache#2748: Provider should disable mock configuration (apache#2749)

* Fix the bug that ReferenceBean refers service more than once when debugging. (apache#2754)

note:
please visit http://t.cn/EAhta27 for more detail.

* Close all servers/ports after tests finish (apache#2755)

* add checkstyle rule to check import order (apache#2745)

* Changing URL so tests can run in any order (apache#2760)

* [Dubbo-2353]fix Invalid property 'interfaceName' of bean class [org.apache.dubbo.config.spring.ServiceBean]apache#2353 (apache#2418)

* add getter and setter for ServiceConfig's interfaceName property#2353

* add interfaceName to ignoreAttributeNames and change the unit test

* delete the demo source code and update the unit test

* unchange ServiceConfig

* update unit test

* update unit test

*     apache#2762: [Dubbo - qos-http] stopServer should be invoked ? (apache#2767)

*     apache#2777: heartbeat threads blocks process shutdown (apache#2778)

Fix heartbeat threads blocks process shutdown because its hashed-wheel-timer is non-daemon thread.

* oschina vote (apache#2786)

* fix typo (apache#2791)

Fix typo confilict -> conflict

* improvement on Parameters and CollectionUtils (apache#2790)

Use CollectionUtils.toStringMap to reduce duplicate code in Parameters, and use Java 8 type inference for collections.

* [REFACTOR]:[fix typo] (apache#2804)

fix typos

* [Dubbo-2798]fix apporiate NotWritablePropertyException (apache#2800)

fix apache#2798 .
'propertyname in java donot contain '-' but camel format'.

* [Dubbo-2758] Adding dependency on dubbo-remoting-mina for tests in dubbo-rpc-dubbo (apache#2797)

* Adding dependency on dubbo-remoting-mina so DubboProtocolTest.testDubboProtocolWithMina is no longer flaky

* Changing port number to ensure new server/client created for test

* modify dubbo version to 2.6.5

* fix typo of field (apache#2825)

* [Dubbo-2845] Fix OOM in UT testSelectByWeight (apache#2845) (apache#2846)

Fix OOM Exception generated during UT

* Fix UT failed on windows with FileNetworkerTest (apache#2848)

Fix FileNetworkerTest failure

* Update README.md

remove oschina vote

* fixed typo of variable (apache#2875)

fixed type of variable

* Remove unnessesary code  in RegistryDirectory#doList (apache#2861)

* remove unnessesary code

* remove unused import

* add some ScriptRoute test case (apache#2879)

* add router test case

* correct an error word

* remove the duplicate superclass of TagRouter and ConditionRouter (apache#2885)

Remove the class ConditionRouter and TagRouter implement duplicate superclass Comparable
CrazyHZM pushed a commit to CrazyHZM/dubbo that referenced this pull request Dec 6, 2018
CrazyHZM added a commit to CrazyHZM/dubbo that referenced this pull request Dec 6, 2018
* combine test coverage report (apache#2643)

* Optimize ut for serialization model. (apache#2632)

* 1. Integrate the unit test of the serialization module, code reuse.
2. Remove redundant unit tests and pojo classes.
3. Remove the useless pojo class in the common module.

* fix ci fail

* fix ci fail

* fix ci fail

* fix ci fail

* remove author info

* prototype for issue2570 (apache#2640)

* apache#2570: dubbo all in one fail to start from a tomcat server when spring framework is absent

* add comments and fix unit test

* add license header

* update comments in unit tests

* [Dubbo -fix annotation bug] Fix @reference bug (apache#2649)

It's fine.

* Merge pull request apache#2656, make sure serialization exception sends back to consumer to preventing endless waiting.

Fixes apache#1903: Our customized serialization id exceeds the maximum limit, now it cannot work on 2.6.2 anymore.

*     apache#1903: supplemental change (apache#2666)

* Optimize the doSelect method of RandomLoadBalance to reduce the times of invoke of the getWeight method of the AbstractLoadBalance (apache#2597)

* 解决与quartz集成报错问题 (apache#2677)

quartz初始化的Bean没有beanName,beanName=null,走这段代码的时候报空指针了。
org.springframework.boot.autoconfigure.quartz.AutowireCapableBeanJobFactory类的createJobInstance方法中使用this.beanFactory.initializeBean(jobInstance, null);初始化的Bean,其beanName=null。

* Code format (apache#2662)

* NullPointerException

* code rule

* Merge pull request#2679, consumer throws RpcException when RegistryDirectory notify in high QPS.

Fixes apache#2016

* remove ServiceClassHolder and use the ApplicationModel replacedly (apache#2646)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* [Dubbo-1983] Support Protobuf Serialization (apache#2618)

* finish support protobuf

* polish

* fix code review

* use the general test for serialization

* Smooth Round Robin selection (apache#2650)

* enhance pull request 2618 (apache#2691)

* enhance pull request 2618

* move spi file into the right directory

* ignore protostuff test case

* make unit test pass, support Time type

* fix useless imports issue

* add license header

* fix typo error in FAQ (apache#2684)

fix typo error in FAQ

* remove author info for RoundRobinLoadBalance (apache#2697)

* fix pom for protostuff serialization (apache#2700)

* Optimize REGISTRIES field in AbstractRegistryFactory. (apache#2703)

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* modify ConcurrentHashMap to HashMap.这里REGISTRIES在使用的时候都会先加锁,不存在多线程安全的问题。所以这里建议使用hashmap

* [version 2.7.0]remove the StaticContext class and refactor the code related to Async (apache#2688)

* [Dubbo] move the classes of model from config to rpc-api for reusing

* remove ServiceClassHolder and use the ApplicationModel replacedly

* [Dubbo] delete the unused imported of ApplicationModel

* Update dubbo-demo-consumer.xml

this commits is no need to commit to remote repo.

* remove StaticContext

* remove the unused imported classes of ReferenceConfig

* fix NPE of ConsumerModel

* fix the failed testcase of AbstractClusterInvokerTest

* [Dubbo] #PR2688 to fix the review issues

* Optimize heartbeat and reconnect task. (apache#2658)

* Optimize heartbeat and reconnect task.
1.Use hashedWheelTimer.
2.Distinguish between reconnect and heartbeat.
3.Increase inspection cycle.

* fix ci fail.

* fix ci fail.

* fix ci fail.

* polish the code for pull request 2658: Optimize heartbeat and reconnect task (apache#2709)

* 重构 ServiceBean 的 isDelay 方法,使其更符合语义 (apache#2686)

* Refactor method isDelay of ServiceBean to fix the wrong meaning of the method

* Remove unnecessary method isDelay of ServiceBean

* 【Unit Test】FailbackRegistry Test: recover method (apache#2591)

* FailbackRegistry Test: recover method

* fix the type error, and use CountDownLatch await method to fix the unstable problom

* trigger the travis ci test retry

* trigger the code static check again

* replace ServiceAnnotationBeanPostProcessor log.isInfoEnabled->log.isWarnEnabled (apache#2712)

simplify ExtensionLoader code segment

* [Dubbo-2678][For Master] Add ability to turn off SPI auto injection, special support for Object type.  (apache#2682)

* Add ability to turn off SPI auto injection, special support for generic Object type injection.

* Change Inject to AutoInject since it's main purpose is to turn off auto-injection.

* disable is redundant in DisableInject annotation

* Merge pull request apache#2725, problems of graceful shutdown in 2.6.3 and some recommendation.

* enhance comments (apache#2735)

* code format (apache#2730)

* NullPointerException

* code rule

* code rule

* Close all servers/ports after tests finish (apache#2741)

*  Simplify the code of StringUtils to make it more graceful. (apache#2740)

* Simplify the code of StringUtils to make it more graceful.

* Add Apache license

* Add 'forks' config into xml config (apache#2568)

* Add forks into xml config.

* Add forks into xml config.

* Add forks into xml config.

* fix typo (apache#2747)

* [DUBBO-2489] MockClusterInvoker provides local forced mock,I tested it locally, but it doesn't work (apache#2742)

*     apache#2748: Provider should disable mock configuration (apache#2749)

* Fix the bug that ReferenceBean refers service more than once when debugging. (apache#2754)

note:
please visit http://t.cn/EAhta27 for more detail.

* Close all servers/ports after tests finish (apache#2755)

* add checkstyle rule to check import order (apache#2745)

* Changing URL so tests can run in any order (apache#2760)

* [Dubbo-2353]fix Invalid property 'interfaceName' of bean class [org.apache.dubbo.config.spring.ServiceBean]apache#2353 (apache#2418)

* add getter and setter for ServiceConfig's interfaceName property#2353

* add interfaceName to ignoreAttributeNames and change the unit test

* delete the demo source code and update the unit test

* unchange ServiceConfig

* update unit test

* update unit test

*     apache#2762: [Dubbo - qos-http] stopServer should be invoked ? (apache#2767)

*     apache#2777: heartbeat threads blocks process shutdown (apache#2778)

Fix heartbeat threads blocks process shutdown because its hashed-wheel-timer is non-daemon thread.

* oschina vote (apache#2786)

* fix typo (apache#2791)

Fix typo confilict -> conflict

* improvement on Parameters and CollectionUtils (apache#2790)

Use CollectionUtils.toStringMap to reduce duplicate code in Parameters, and use Java 8 type inference for collections.

* [REFACTOR]:[fix typo] (apache#2804)

fix typos

* [Dubbo-2798]fix apporiate NotWritablePropertyException (apache#2800)

fix apache#2798 .
'propertyname in java donot contain '-' but camel format'.

* [Dubbo-2758] Adding dependency on dubbo-remoting-mina for tests in dubbo-rpc-dubbo (apache#2797)

* Adding dependency on dubbo-remoting-mina so DubboProtocolTest.testDubboProtocolWithMina is no longer flaky

* Changing port number to ensure new server/client created for test

* modify dubbo version to 2.6.5

* fix typo of field (apache#2825)

* [Dubbo-2845] Fix OOM in UT testSelectByWeight (apache#2845) (apache#2846)

Fix OOM Exception generated during UT

* Fix UT failed on windows with FileNetworkerTest (apache#2848)

Fix FileNetworkerTest failure

* Update README.md

remove oschina vote

* fixed typo of variable (apache#2875)

fixed type of variable

* Remove unnessesary code  in RegistryDirectory#doList (apache#2861)

* remove unnessesary code

* remove unused import

* add some ScriptRoute test case (apache#2879)

* add router test case

* correct an error word

* remove the duplicate superclass of TagRouter and ConditionRouter (apache#2885)

Remove the class ConditionRouter and TagRouter implement duplicate superclass Comparable
mercyblitz pushed a commit that referenced this pull request Sep 10, 2019
* 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 <30755351+dongYES@users.noreply.github.com>

* 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)

* 解决冲突
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants