* use client ip from connection setup request.
* reset remote connection for rollback
* npe bugfix
* npe bugfix
* stop long connection where server rollback
* stop long connection where server rollback
* from diamond over nacos 2.0
* config notify task type bugfix
* keep consistent with diamond over nacos 2.0
* remove config resync request and add getting cluster metrics
* add using address server to look up interface
* add using address server to look up interface
* convert payload type from full name to simple name.
* abilities both on client-server& server cluster submit
* Cas of update config, beta,tag publish
* tenant support on connection.
* modify health check tps point name
* tps monitor key use self define submit
* pmd and check style.
* active detection of client and server
* connection manager ,active send interval increase
* client use same executor during different connection.
* metrics count bugfix.
* recommend server check
* remove rsocket ;add client metrics
* add client metrics to get cache value
* rpc tps control basic api submit.
* check style ,pmd fix.
* Add single push task for retry push
* Add unit test for Push task
* Add unit test for Push executor
* Add unit test for Subscriber service v2
* PushService.java --> UdpPushService
* Refactor and add unit test for ClientInfo
* Solve Conflict and compile problem
[Problem]
testSerializeExtend add an item to a static mapper,
and testDeserializeExtend read that item from that static mapper.
So if testDeserializeExtend runs before testSerializeExtend,
testDeserializeExtend will fail.
@Ignore testSerializeExtend can stably reproduce this issue.
[Solution]
Add that item to the static mapper in @BeforeClass method
(Even though using static variables in unit tests is a bad practice)
* NacosNamingMetadataManager --> NamingMetadataManager
* Try to add ServiceMetadata consistency
* add catalog api support new data
* Change version to 2.0.0-SNAPSHOT
* feature. add update and delete operation on instance's metadata 90%
* 1.add unit test
2.fix-locateInstance error
* format code style
* add @link on class
* move metadata operate to InstanceController.
* format code 50%
* complete bacth operation of metadata
* remove unnecessary test unit
* modify the variable name
* perfect log info
* modify consumer's dto to match it's description
* 1.rename class OperationContext -> InstanceOperationContext
2.move Map operation from NamingUtils to MapUtils
* check datum is null
* code refactor.
* 1. code refactor
2. modify the batch operate http param. just support (1 services : n instance)
* 1.set default clusterName if instance not set
2.fix client params not set instances bug
* npe fix
* 1.remove consistencyType *, just support ephemeral or persist.
2.remove moditfy property method in InstanceOperationContext and InstanceOperationInfo, it just defined by constructor.
* add instance controller test
* fix code too length
* update the param name
* add feature's version of start
* fix-#3595, delete the unnecessary code (#3596)
* [ISSUE #3566] move the permission code of nacos-core module to nacos-auth module (#3593)
* move the permission code of nacos-core module to nacos-auth module.
* Fix some code style issues
* address server module auth package name change.
* test change
* Incorrect package name correction
* [ISSUE #3592] Fix incorrect prompt when accessing the restricted namespace (#3603)
* Fix incorrect prompt when accessing the restricted namespace
* Modify variable name
* [ISSUE #3600] Replace the deprecated api of jwt (#3616)
* replace the deprecated api of jwt
* transfer secretKey to byte array just using String encode with utf-8
* [ISSUE #3613] Fix `unit test method not be static` & update publish config listener in `ConfigTest.java` (#3614)
* fix `unit test method not be static` & update publish config listener in `ConfigTest.java`
* fix `unit test method not be static` & update publish config listener in `ConfigTest.java`
* move jwt dependency from console,core to auth. (#3624)
* refactor: unified implementation of http client api adjustment. (#3639)
* [ISSUE #3628] set naming client updateTask interval more flexible (#3637)
* 1.use server cacheMillis event service deleted
2.naming client UpdateTask's interval will inc by failCount that connect with server
* 1.move failCount to updateTask
2.redefine the updateService method name. updateServiceNow -> updateService, wrap updateService in updateServiceNow when first getServiceInfo
* 1.create push client even service is not exist
2.serviceInfo's hosts is empty or can't connect to server both add the updateTsk interval
* format the indent
* fix: create kvstorage
* refactor: create kv storage]
* refactor: refactor rocksdb storage code
* Fix issue 3661 (#3662)
* improvement: merge upstream/develop
* feat: merge upstream develop
* fix: fix issue #3661
* [ISSUE#3658] refactor TaskManager and move to nacos-common module (#3663)
* Add TaskManagerTest
* Move Abstract Task and Task processor to nacos-common
* Add Nacos execute engine interface and nacos task interface
* Refactor Task Manager to NacosDelayTaskExecuteEngine
* for code style
* [ISSUE #3671] move some tools class into common package (#3672)
* for #3621 (#3668)
* [ISSUE#3315]Nacos client support https (#3654)
* [ISSUE #3315] nacos client support https
* common module add tls related classes
* JdkHttpClientRequest support https
* unified IpUtils
* [ISSUE #3315] nacos client support https
* common module add tls related classes
* JdkHttpClientRequest support https
* unified IpUtils
* [ISSUE #3315] nacos client support https
* format code
* fix typo and doc format of README file (#3688)
1. It’s a little weird to use Chinese comma in English
2. Fix typo: change 'reposity' to 'repository', 'instance' to 'instances'
3. Format other details of the doc
* Try to fix nacos server CLOSE_WAIT (#3703)
* Fix revert chunk isn't work in Content Comparison page (#3686)
* fix: fixed cluster node version issue
* Fix Logging in with the wrong username or password will cause jackson serialization results to fail (#3695) (#3721)
* [ISSUE#3712] add apache http client factory (#3716)
* refactor: Add apache http client Factory.
* refactor: Add apache http client Factory.
* add license
* refactor: class name change
* [Issue#3692] Use new distro task engine replace old task dispatcher. (#3715)
* Add ServiceManagerTest
* Add DistroConsistencyServiceImplTest
* Add new distro entities
* Add new distro sync data change
* add new VerifyTask to do checksum.
* Replace old sync task and checksum task
* Add retry sync change task.
* Fix high cpu load
* For checkstyle
* Combine naming sync task to reduce http cost
* Move some classes
* Refactor keys combined logic
* enhance package construct
* Fix unit test
* For pmd
* [Issue #3692] Use new distro implmentation to handle sync datum and checksum request (#3734)
* Add receive data and verify data distro protocol interface
* Use new distro implmentation to handle sync datum and checksum request
* Use new distro implmentation to handle get datum request.
* refactor: adjust the data loading logic when a new protocol is started
* [ISSUE#3692] Use new distro implmentation to handle init all datum request. (#3744)
* Add load data task in DistroProtocol
* Use new distro implmentation to handle init all datum request.
* Fix unit test
* fix: #3617 (#3678)
* fix#3617
* 调整代码格式
* 修改抛出的Exception类型
* 调整逻辑
* 移除没用到的方法
* 修改注释
* [ISSUE#3658] Move distro sync code to nacos-core module (#3750)
* Move distro sync code to nacos-core module
* Update unit test
* feat: none
* fix: fixing serialization problems
* replace the deprecated api com.fasterxml.jackson.databind.node.ObjectNode#put(java.lang.String, com.fasterxml.jackson.databind.JsonNode)
* Revert "[#3368]Cancel empty Long polling thread to improve performance. (#ISSUE3432)" (#3778)
This reverts commit 95c8bf242b.
* [ISSUE #3658] Some enhance refactor for naming distro (#3765)
* Some enhance refactor for naming distro
* Remove null code
* [ISSUE #3687] check serviceName's format(groupName@@serviceName) in server and client (#3767)
* 1.in server, check serviceName's format 'groupName@@serviceName', groupName and serviceName can't be blank
2.in client, check 'groupName@@serviceName', groupName and serviceName can't be blank
* ignore the check to groupName
* check split's length instead of exception to check argument
* 1.add some notes
2.remove unnecessary code
* modify the notes
* [ISSUE#3790] Supplement http response Content-Encoding processing. (#3791)
* bug: fix issue #3790, Supplement http response Content-Encoding processing
* bug: fix issue #3790, Supplement http response Content-Encoding processing.
* bug: fix issue #3790, Supplement http response Content-Encoding processing.
* Update ConvertUtils.java (#3789)
* fix ConvertUtils can not handle FormatException.
* fix: fixed some logic errors
* [ISSUE#3192] naming module replace http client (#3763)
* naming module replace http client
* refactor: naming module replace http client.
* refactor: naming module replace http client.
* refactor: Add apache http client Factory.
* refactor: naming module replace http client.
* fix code style
* refactor: Add http client config
* refactor: naming module HttpClientManager change
* refactor: naming module HttpClientManager change
* refactor: naming module replace http client.
* fix code style
* refactor: fix JDK http client Use error problem.
* refactor: Query And Header entity init Add non-empty judgment
* Enhance the asynchronous http delete request method to support body passing parameters.
* refactor: apache http client set MaxConnTotal and maxConnPerRoute.
* Fix NullPointerException when no subscriber for slow event (#3835)
* Set mediaType charset as utf8 (#3837)
* Fix code style problem in DiskUtils (#3842)
* Fix http client contentType charset problem (#3848)
* feature issue #3804 (#3805)
* improvement: merge upstream/develop
* feat: merge upstream develop
* feat: manage the loading of configuration files uniformly
* fix: fix copyright style
* style: fix code style
* fix: fix code style
* bug: fix the problem of incorrect judgment of http response code in SubscribeManager#getSubscribers() method (#3879)
* [ISSUE #3867] replace the way which get version (#3872)
* replace the way which get version
* remove version sign application.properties in nacos-api
* [ISSUE #3871] fix description don't match the error (#3886)
* Fix jraft problem
* Fix chinese string are truncated in ConcunrrentDiskUtil (#3883)
* Temp fix raft server can't refresh raft configuration problem
* update spring boot dependencies version (#3900)
Co-authored-by: yanlinly <yan.lin2009@163.com>
Co-authored-by: 杨翊 SionYang <263976490@qq.com>
* [ISSUE #3781]Fix service list intermittently lost service (#3891)
* update service init
* commit futureMap.remove()
* update serviceManager
Co-authored-by: yanlinly <yan.lin2009@163.com>
Co-authored-by: 杨翊 SionYang <263976490@qq.com>
* Fix Listener do not listen new consistency problem
* Fix Performance logger thread call old raft error
* Use datum in new raft processor to compatible old data
* Use multiple kv storage in new raft processor to compatible old data
* Revert PR#2849.
* Move datum key check to KeyBuilder
* Fix 1.3.2 upgrade 1.4.0 can't notify service change problem
* [ISSUE #3850] ignore socket exception when client destroy already (#3906)
* if client destroy already, ignore socket exception.
* remove the exception's judgement
* remove unuseful import
* fix: fix merge conflict
* isAddressServerHealth set as true when request success (#3952)
* [ISSUE#3533] change cache dir with namespace -- part 1: unify the cache dir (#3859)
* [ISSUE#3533] change cache dir with namespace -- part 2: unify the log dir (#3882)
* fix typo error (#3954)
* [ISSUE #3909] add domain's judgement (#3913)
* add domain's judgement
* modify domain's judgement, can resolve = true
* remove judgement in 'if' code block
* replace Ip to IP in InetUtils
* log warn info when domain can not be resolved
* fix vaiable name
* 1.fix unit test can't pass (#3956)
2.update the unit test
* Move remove listener logic to ServiceManager
* Move remove listener logic to ServiceManager
* Fix#3973 (#3974)
* fix#3973
* 重复代码抽取到一个方法
* 删除私有方法的注释
* 处理namespace参数的方法提出到一个工具类中
* 修改注释
* 添加licences
* 增加 TenantUtil 的测试
* TenantUtil 改名为 NamespaceUtil
* For #3384, Fix member extend info do not update error. (#3982)
* refactor: code refactor
Co-authored-by: 赵延 <1060026287@qq.com>
Co-authored-by: mai.jh <maijh97@gmail.com>
Co-authored-by: ljhrot <296093710@qq.com>
Co-authored-by: Xarrow <zhangjian12424@gmail.com>
Co-authored-by: 杨翊 SionYang <263976490@qq.com>
Co-authored-by: Gagharv <wwfortunate@gmail.com>
Co-authored-by: syapollo <34880947+syapollo@users.noreply.github.com>
Co-authored-by: S2W <joexsue@foxmail.com>
Co-authored-by: Tboy <technotboy@yeah.net>
Co-authored-by: 邪影oO <213539@qq.com>
Co-authored-by: yanlinly <yan.lin2009@163.com>
Co-authored-by: Mark4z <36187602+mark4z@users.noreply.github.com>
Co-authored-by: Marcus <anymre@outlook.com>
Co-authored-by: shizhengxing <798187024@qq.com>
Co-authored-by: ljhrot <ljhrot@qq.com>
Co-authored-by: sanxun0325 <bbz17640380550@163.com>
Co-authored-by: JackSun-Developer <sjtusl@163.com>
* ak auth support on long connection
* server side aware of client port;basic optimize
* cluster config notify bugfix and log optimize
* client rpc log support for rpc
* server side aware of client port;basic optimize
* cluster config notify bugfix and log optimize
* client rpc log support for rpc
* reconnect rate control
* fix-#3595, delete the unnecessary code (#3596)
* [ISSUE #3566] move the permission code of nacos-core module to nacos-auth module (#3593)
* move the permission code of nacos-core module to nacos-auth module.
* Fix some code style issues
* address server module auth package name change.
* test change
* Incorrect package name correction
* [ISSUE #3592] Fix incorrect prompt when accessing the restricted namespace (#3603)
* Fix incorrect prompt when accessing the restricted namespace
* Modify variable name
* [ISSUE #3600] Replace the deprecated api of jwt (#3616)
* replace the deprecated api of jwt
* transfer secretKey to byte array just using String encode with utf-8
* [ISSUE #3613] Fix `unit test method not be static` & update publish config listener in `ConfigTest.java` (#3614)
* fix `unit test method not be static` & update publish config listener in `ConfigTest.java`
* fix `unit test method not be static` & update publish config listener in `ConfigTest.java`
* move jwt dependency from console,core to auth. (#3624)
* refactor: unified implementation of http client api adjustment. (#3639)
* [ISSUE #3628] set naming client updateTask interval more flexible (#3637)
* 1.use server cacheMillis event service deleted
2.naming client UpdateTask's interval will inc by failCount that connect with server
* 1.move failCount to updateTask
2.redefine the updateService method name. updateServiceNow -> updateService, wrap updateService in updateServiceNow when first getServiceInfo
* 1.create push client even service is not exist
2.serviceInfo's hosts is empty or can't connect to server both add the updateTsk interval
* format the indent
* fix: create kvstorage
* refactor: create kv storage]
* refactor: refactor rocksdb storage code
* Fix issue 3661 (#3662)
* improvement: merge upstream/develop
* feat: merge upstream develop
* fix: fix issue #3661
* [ISSUE#3658] refactor TaskManager and move to nacos-common module (#3663)
* Add TaskManagerTest
* Move Abstract Task and Task processor to nacos-common
* Add Nacos execute engine interface and nacos task interface
* Refactor Task Manager to NacosDelayTaskExecuteEngine
* for code style
* [ISSUE #3671] move some tools class into common package (#3672)
* for #3621 (#3668)
* [ISSUE#3315]Nacos client support https (#3654)
* [ISSUE #3315] nacos client support https
* common module add tls related classes
* JdkHttpClientRequest support https
* unified IpUtils
* [ISSUE #3315] nacos client support https
* common module add tls related classes
* JdkHttpClientRequest support https
* unified IpUtils
* [ISSUE #3315] nacos client support https
* format code
* fix typo and doc format of README file (#3688)
1. It’s a little weird to use Chinese comma in English
2. Fix typo: change 'reposity' to 'repository', 'instance' to 'instances'
3. Format other details of the doc
* Try to fix nacos server CLOSE_WAIT (#3703)
* Fix revert chunk isn't work in Content Comparison page (#3686)
* fix: fixed cluster node version issue
* Fix Logging in with the wrong username or password will cause jackson serialization results to fail (#3695) (#3721)
* [ISSUE#3712] add apache http client factory (#3716)
* refactor: Add apache http client Factory.
* refactor: Add apache http client Factory.
* add license
* refactor: class name change
* [Issue#3692] Use new distro task engine replace old task dispatcher. (#3715)
* Add ServiceManagerTest
* Add DistroConsistencyServiceImplTest
* Add new distro entities
* Add new distro sync data change
* add new VerifyTask to do checksum.
* Replace old sync task and checksum task
* Add retry sync change task.
* Fix high cpu load
* For checkstyle
* Combine naming sync task to reduce http cost
* Move some classes
* Refactor keys combined logic
* enhance package construct
* Fix unit test
* For pmd
* [Issue #3692] Use new distro implmentation to handle sync datum and checksum request (#3734)
* Add receive data and verify data distro protocol interface
* Use new distro implmentation to handle sync datum and checksum request
* Use new distro implmentation to handle get datum request.
* refactor: adjust the data loading logic when a new protocol is started
* [ISSUE#3692] Use new distro implmentation to handle init all datum request. (#3744)
* Add load data task in DistroProtocol
* Use new distro implmentation to handle init all datum request.
* Fix unit test
* fix: #3617 (#3678)
* fix#3617
* 调整代码格式
* 修改抛出的Exception类型
* 调整逻辑
* 移除没用到的方法
* 修改注释
* [ISSUE#3658] Move distro sync code to nacos-core module (#3750)
* Move distro sync code to nacos-core module
* Update unit test
* feat: none
* fix: fixing serialization problems
* fix: fixed some logic errors
Co-authored-by: 赵延 <1060026287@qq.com>
Co-authored-by: mai.jh <maijh97@gmail.com>
Co-authored-by: ljhrot <296093710@qq.com>
Co-authored-by: Xarrow <zhangjian12424@gmail.com>
Co-authored-by: 杨翊 SionYang <263976490@qq.com>
Co-authored-by: Gagharv <wwfortunate@gmail.com>
Co-authored-by: syapollo <34880947+syapollo@users.noreply.github.com>
Co-authored-by: S2W <joexsue@foxmail.com>
Co-authored-by: Tboy <technotboy@yeah.net>
Co-authored-by: 邪影oO <213539@qq.com>
* Adapt query service info request with new model
* Remove indexes when client disconnect
* Add distro sync client data
* Add sync delete client
* Add maintain expired cluster connection client
* 1.in server, check serviceName's format 'groupName@@serviceName', groupName and serviceName can't be blank
2.in client, check 'groupName@@serviceName', groupName and serviceName can't be blank
* ignore the check to groupName
* check split's length instead of exception to check argument
* 1.add some notes
2.remove unnecessary code
* modify the notes
* body string compress and opitimize request and meta info
* optimize request /header /meta info model, uniform request resolver pattern.
* delete useless code
* gzip support; using object list instead of string concat for batch listen config
* gzip support; using object list instead of string concat for batch listen config
* limiter support in rpc transport
* get next server optimize; server side notify concurrent bugfix; multi rpc client support in config module.
* toast alibaba repo refer. add client name
* rpc config change beta ips filter
* payload registry submit
* refactor request/response registry ; build response aware of server side in connection level.
* refactor request/response registry ; build response aware of server side in connection level.
* bi stream submit.
* bi stream submit.
* listen context query with groupy and ip support long connect
* remove connection on cleint side, server will generate instead.
* connect reset request support appointing ip address.
* server push retry
* basic api for loader balance
* basic api for loader balance
* re subscribe service when reconnect
* change grpc instance maintain by heartbeat
* Add lifecycle for remoting workers
* Refactor naming client redo when reconnect
* Fix checkstyle and PMD
* Implement forward instance request to responsible server
* Implement forward heart beat to servers
* Add gprc support-> try to connect the server synchronous on start up , start a thread to connect to server until successfully connected when fail.
* Add gprc support-> notify connect listeners.
* Add gprc support-> update client reconnect strategy.
* Add gprc support-> optimize push config request param model and meta request.
* Add gprc support-> notify on new connected
* Add gprc support->test submit
* Add gprc support-> Strengthen exception handling of server push handler process both at client and server
* Add gprc support-> starting status bugfix and base push model submit
* For #1097, server support subscribe service.
* For #1097, client support subscribe service.
* For #1097, server and client support unsubscribe service.
* Add gprc support-> 1.add server side client connection event listener ,base on heart beat expire time check 2.add client version info after grpc connection build
* Add gprc support-> add publish config and remove config in rpc channel ;and rename server push response handler
* Enhanced nacos resttemplate response handler
* Enhanced nacos resttemplate response handler
* Add license
* [#3212] Modify some class name and comment
* [#3212] Modify some class name and comment
* [#3212] Modify some class name and comment
* [#3212] change the name of property
* Fix code style issue