From 7b3975aced39659e915b49649d6a9f11cec8e41b Mon Sep 17 00:00:00 2001 From: AlexStocks <alexstocks@foxmail.com> Date: Wed, 14 Aug 2019 17:42:23 +0800 Subject: [PATCH] Add: version --- cluster/cluster_impl/base_cluster_invoker.go | 9 ++++--- .../cluster_impl/failover_cluster_invoker.go | 1 - common/constant/version.go | 24 +++++++++++++++++++ config/config_loader.go | 3 +-- registry/etcdv3/registry.go | 5 ++-- registry/zookeeper/registry.go | 7 +++--- 6 files changed, 34 insertions(+), 15 deletions(-) create mode 100644 common/constant/version.go diff --git a/cluster/cluster_impl/base_cluster_invoker.go b/cluster/cluster_impl/base_cluster_invoker.go index d42a099bb..5bcadee28 100644 --- a/cluster/cluster_impl/base_cluster_invoker.go +++ b/cluster/cluster_impl/base_cluster_invoker.go @@ -29,7 +29,6 @@ import ( "github.com/apache/dubbo-go/common/extension" "github.com/apache/dubbo-go/common/utils" "github.com/apache/dubbo-go/protocol" - "github.com/apache/dubbo-go/version" ) type baseClusterInvoker struct { @@ -66,8 +65,8 @@ func (invoker *baseClusterInvoker) checkInvokers(invokers []protocol.Invoker, in if len(invokers) == 0 { ip, _ := utils.GetLocalIP() return perrors.Errorf("Failed to invoke the method %v. No provider available for the service %v from "+ - "registry %v on the consumer %v using the dubbo version %v .Please check if the providers have been started and registered.", - invocation.MethodName(), invoker.directory.GetUrl().SubURL.Key(), invoker.directory.GetUrl().String(), ip, version.Version) + "registry %v on the consumer %v using the dubbo constant %v .Please check if the providers have been started and registered.", + invocation.MethodName(), invoker.directory.GetUrl().SubURL.Key(), invoker.directory.GetUrl().String(), ip, constant.Version) } return nil @@ -77,8 +76,8 @@ func (invoker *baseClusterInvoker) checkInvokers(invokers []protocol.Invoker, in func (invoker *baseClusterInvoker) checkWhetherDestroyed() error { if invoker.destroyed.Load() { ip, _ := utils.GetLocalIP() - return perrors.Errorf("Rpc cluster invoker for %v on consumer %v use dubbo version %v is now destroyed! can not invoke any more. ", - invoker.directory.GetUrl().Service(), ip, version.Version) + return perrors.Errorf("Rpc cluster invoker for %v on consumer %v use dubbo constant %v is now destroyed! can not invoke any more. ", + invoker.directory.GetUrl().Service(), ip, constant.Version) } return nil } diff --git a/cluster/cluster_impl/failover_cluster_invoker.go b/cluster/cluster_impl/failover_cluster_invoker.go index 69664269e..b29acbf11 100644 --- a/cluster/cluster_impl/failover_cluster_invoker.go +++ b/cluster/cluster_impl/failover_cluster_invoker.go @@ -26,7 +26,6 @@ import ( "github.com/apache/dubbo-go/common/constant" "github.com/apache/dubbo-go/common/utils" "github.com/apache/dubbo-go/protocol" - "github.com/apache/dubbo-go/version" ) type failoverClusterInvoker struct { diff --git a/common/constant/version.go b/common/constant/version.go new file mode 100644 index 000000000..d4c6821e7 --- /dev/null +++ b/common/constant/version.go @@ -0,0 +1,24 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package constant + +const ( + Version = "2.6.0" + Name = "dubbogo" + DATE = "2019/05/06" +) diff --git a/config/config_loader.go b/config/config_loader.go index 720f65f5d..cabf3d1ed 100644 --- a/config/config_loader.go +++ b/config/config_loader.go @@ -28,7 +28,6 @@ import ( "github.com/apache/dubbo-go/common" "github.com/apache/dubbo-go/common/constant" "github.com/apache/dubbo-go/common/logger" - "github.com/apache/dubbo-go/version" ) var ( @@ -94,7 +93,7 @@ func Load() { checkok = false count++ if count > maxWait { - panic(fmt.Sprintf("Failed to check the status of the service %v . No provider available for the service to the consumer use dubbo version %v", refconfig.InterfaceName, version.Version)) + panic(fmt.Sprintf("Failed to check the status of the service %v . No provider available for the service to the consumer use dubbo constant %v", refconfig.InterfaceName, constant.Version)) } time.Sleep(time.Second * 1) break diff --git a/registry/etcdv3/registry.go b/registry/etcdv3/registry.go index c716653cf..580214298 100644 --- a/registry/etcdv3/registry.go +++ b/registry/etcdv3/registry.go @@ -23,7 +23,6 @@ import ( "github.com/apache/dubbo-go/common/utils" "github.com/apache/dubbo-go/registry" "github.com/apache/dubbo-go/remoting/etcdv3" - "github.com/apache/dubbo-go/version" ) var ( @@ -229,7 +228,7 @@ func (r *etcdV3Registry) registerConsumer(svc common.URL) error { params.Add("protocol", svc.Protocol) params.Add("category", (common.RoleType(common.CONSUMER)).String()) - params.Add("dubbo", "dubbogo-consumer-"+version.Version) + params.Add("dubbo", "dubbogo-consumer-"+constant.Version) encodedURL := url.QueryEscape(fmt.Sprintf("consumer://%s%s?%s", localIP, svc.Path, params.Encode())) dubboPath := fmt.Sprintf("/dubbo/%s/%s", svc.Service(), (common.RoleType(common.CONSUMER)).String()) @@ -266,7 +265,7 @@ func (r *etcdV3Registry) registerProvider(svc common.URL) error { params.Add("ip", localIP) params.Add("anyhost", "true") params.Add("category", (common.RoleType(common.PROVIDER)).String()) - params.Add("dubbo", "dubbo-provider-golang-"+version.Version) + params.Add("dubbo", "dubbo-provider-golang-"+constant.Version) params.Add("side", (common.RoleType(common.PROVIDER)).Role()) if len(svc.Methods) == 0 { diff --git a/registry/zookeeper/registry.go b/registry/zookeeper/registry.go index 9ce3ee580..e5dabef82 100644 --- a/registry/zookeeper/registry.go +++ b/registry/zookeeper/registry.go @@ -41,7 +41,6 @@ import ( "github.com/apache/dubbo-go/common/utils" "github.com/apache/dubbo-go/registry" "github.com/apache/dubbo-go/remoting/zookeeper" - "github.com/apache/dubbo-go/version" ) const ( @@ -233,7 +232,7 @@ func (r *zkRegistry) Register(conf common.URL) error { // Check if the service has been registered r.cltLock.Lock() // 注意此处与consumerZookeeperRegistry的差异,consumer用的是conf.Path, - // 因为consumer要提供watch功能给selector使用, provider允许注册同一个service的多个group or version + // 因为consumer要提供watch功能给selector使用, provider允许注册同一个service的多个group or constant _, ok = r.services[conf.Key()] r.cltLock.Unlock() if ok { @@ -302,7 +301,7 @@ func (r *zkRegistry) register(c common.URL) error { // DubboRole = [...]string{"consumer", "", "", "provider"} // params.Add("category", (RoleType(PROVIDER)).Role()) params.Add("category", (common.RoleType(common.PROVIDER)).String()) - params.Add("dubbo", "dubbo-provider-golang-"+version.Version) + params.Add("dubbo", "dubbo-provider-golang-"+constant.Version) params.Add("side", (common.RoleType(common.PROVIDER)).Role()) @@ -345,7 +344,7 @@ func (r *zkRegistry) register(c common.URL) error { params.Add("protocol", c.Protocol) params.Add("category", (common.RoleType(common.CONSUMER)).String()) - params.Add("dubbo", "dubbogo-consumer-"+version.Version) + params.Add("dubbo", "dubbogo-consumer-"+constant.Version) rawURL = fmt.Sprintf("consumer://%s%s?%s", localIP, c.Path, params.Encode()) encodedURL = url.QueryEscape(rawURL) -- GitLab