From 86b5e00ba2d0399ac53ce1ca57b85d7c94ad3794 Mon Sep 17 00:00:00 2001 From: "ken.lj" Date: Wed, 11 Aug 2021 12:23:38 +0800 Subject: [PATCH 1/6] backport hessian protocol change from 2.7 (#8432) * backport hessian protocol change from 2.7 * add spi configuration --- dependencies-bom/pom.xml | 2 +- .../rpc/protocol/hessian/HessianProtocol.java | 5 +- .../AbstractHessian2FactoryInitializer.java | 36 +++++++++++++ .../DefaultHessian2FactoryInitializer.java | 26 ++++++++++ .../Hessian2FactoryInitializer.java | 25 +++++++++ .../serialization/Hessian2FactoryUtil.java | 36 +++++++++++++ .../WhitelistHessian2FactoryInitializer.java | 52 +++++++++++++++++++ ...n.serialization.Hessian2FactoryInitializer | 2 + 8 files changed, 181 insertions(+), 3 deletions(-) create mode 100644 dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/AbstractHessian2FactoryInitializer.java create mode 100644 dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/DefaultHessian2FactoryInitializer.java create mode 100644 dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/Hessian2FactoryInitializer.java create mode 100644 dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/Hessian2FactoryUtil.java create mode 100644 dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/WhitelistHessian2FactoryInitializer.java create mode 100644 dubbo-rpc/dubbo-rpc-hessian/src/main/resources/META-INF/dubbo/internal/com.alibaba.dubbo.rpc.protocol.hessian.serialization.Hessian2FactoryInitializer diff --git a/dependencies-bom/pom.xml b/dependencies-bom/pom.xml index 0e91323cceb..95a45d5e8f6 100644 --- a/dependencies-bom/pom.xml +++ b/dependencies-bom/pom.xml @@ -102,7 +102,7 @@ 1.3.6 3.1.15 0.8.0 - 4.0.38 + 4.0.51 3.1.0 6.1.26 1.1.0.Final diff --git a/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/HessianProtocol.java b/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/HessianProtocol.java index b0e4a8202d0..d9004fac51f 100644 --- a/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/HessianProtocol.java +++ b/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/HessianProtocol.java @@ -24,7 +24,7 @@ import com.alibaba.dubbo.rpc.RpcContext; import com.alibaba.dubbo.rpc.RpcException; import com.alibaba.dubbo.rpc.protocol.AbstractProxyProtocol; - +import com.alibaba.dubbo.rpc.protocol.hessian.serialization.Hessian2FactoryUtil; import com.alibaba.dubbo.rpc.service.GenericService; import com.alibaba.dubbo.rpc.support.ProtocolUtils; import com.caucho.hessian.HessianException; @@ -122,6 +122,7 @@ protected T doRefer(Class serviceType, URL url) throws RpcException { int timeout = url.getParameter(Constants.TIMEOUT_KEY, Constants.DEFAULT_TIMEOUT); hessianProxyFactory.setConnectTimeout(timeout); hessianProxyFactory.setReadTimeout(timeout); + hessianProxyFactory.setSerializerFactory(Hessian2FactoryUtil.getInstance().getSerializerFactory()); return (T) hessianProxyFactory.create(serviceType, url.setProtocol("http").toJavaURL(), Thread.currentThread().getContextClassLoader()); } @@ -181,7 +182,7 @@ public void handle(HttpServletRequest request, HttpServletResponse response) } try { - skeleton.invoke(request.getInputStream(), response.getOutputStream()); + skeleton.invoke(request.getInputStream(), response.getOutputStream(), Hessian2FactoryUtil.getInstance().getSerializerFactory()); } catch (Throwable e) { throw new ServletException(e); } diff --git a/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/AbstractHessian2FactoryInitializer.java b/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/AbstractHessian2FactoryInitializer.java new file mode 100644 index 00000000000..96c4497dedd --- /dev/null +++ b/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/AbstractHessian2FactoryInitializer.java @@ -0,0 +1,36 @@ +/* + * 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 com.alibaba.dubbo.rpc.protocol.hessian.serialization; + +import com.caucho.hessian.io.SerializerFactory; + +public abstract class AbstractHessian2FactoryInitializer implements Hessian2FactoryInitializer { + private static SerializerFactory SERIALIZER_FACTORY; + + @Override + public SerializerFactory getSerializerFactory() { + if (SERIALIZER_FACTORY != null) { + return SERIALIZER_FACTORY; + } + synchronized (this) { + SERIALIZER_FACTORY = createSerializerFactory(); + } + return SERIALIZER_FACTORY; + } + + protected abstract SerializerFactory createSerializerFactory(); +} \ No newline at end of file diff --git a/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/DefaultHessian2FactoryInitializer.java b/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/DefaultHessian2FactoryInitializer.java new file mode 100644 index 00000000000..fdcf726934b --- /dev/null +++ b/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/DefaultHessian2FactoryInitializer.java @@ -0,0 +1,26 @@ +/* + * 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 com.alibaba.dubbo.rpc.protocol.hessian.serialization; + +import com.caucho.hessian.io.SerializerFactory; + +public class DefaultHessian2FactoryInitializer extends AbstractHessian2FactoryInitializer { + @Override + protected SerializerFactory createSerializerFactory() { + return new SerializerFactory(); + } +} diff --git a/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/Hessian2FactoryInitializer.java b/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/Hessian2FactoryInitializer.java new file mode 100644 index 00000000000..96f2f8b0a14 --- /dev/null +++ b/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/Hessian2FactoryInitializer.java @@ -0,0 +1,25 @@ +/* + * 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 com.alibaba.dubbo.rpc.protocol.hessian.serialization; + +import com.alibaba.dubbo.common.extension.SPI; +import com.caucho.hessian.io.SerializerFactory; + +@SPI("default") +public interface Hessian2FactoryInitializer { + SerializerFactory getSerializerFactory(); +} \ No newline at end of file diff --git a/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/Hessian2FactoryUtil.java b/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/Hessian2FactoryUtil.java new file mode 100644 index 00000000000..c5673aa9323 --- /dev/null +++ b/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/Hessian2FactoryUtil.java @@ -0,0 +1,36 @@ +/* + * 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 com.alibaba.dubbo.rpc.protocol.hessian.serialization; + +import com.alibaba.dubbo.common.extension.ExtensionLoader; +import com.alibaba.dubbo.common.utils.ConfigUtils; +import com.alibaba.dubbo.common.utils.StringUtils; + +public class Hessian2FactoryUtil { + static String WHITELIST = "dubbo.application.hessian2.whitelist"; + static String ALLOW = "dubbo.application.hessian2.allow"; + static String DENY = "dubbo.application.hessian2.deny"; + static ExtensionLoader loader = ExtensionLoader.getExtensionLoader(Hessian2FactoryInitializer.class); + + public static Hessian2FactoryInitializer getInstance() { + String whitelist = ConfigUtils.getProperty(WHITELIST); + if (StringUtils.isNotEmpty(whitelist)) { + return loader.getExtension("whitelist"); + } + return loader.getDefaultExtension(); + } +} diff --git a/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/WhitelistHessian2FactoryInitializer.java b/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/WhitelistHessian2FactoryInitializer.java new file mode 100644 index 00000000000..eec2928d51d --- /dev/null +++ b/dubbo-rpc/dubbo-rpc-hessian/src/main/java/com/alibaba/dubbo/rpc/protocol/hessian/serialization/WhitelistHessian2FactoryInitializer.java @@ -0,0 +1,52 @@ +/* + * 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 com.alibaba.dubbo.rpc.protocol.hessian.serialization; + +import com.alibaba.dubbo.common.utils.ConfigUtils; +import com.alibaba.dubbo.common.utils.StringUtils; +import com.caucho.hessian.io.SerializerFactory; + +import static com.alibaba.dubbo.rpc.protocol.hessian.serialization.Hessian2FactoryUtil.ALLOW; +import static com.alibaba.dubbo.rpc.protocol.hessian.serialization.Hessian2FactoryUtil.DENY; +import static com.alibaba.dubbo.rpc.protocol.hessian.serialization.Hessian2FactoryUtil.WHITELIST; + +/** + * see https://github.com/ebourg/hessian/commit/cf851f5131707891e723f7f6a9718c2461aed826 + */ +public class WhitelistHessian2FactoryInitializer extends AbstractHessian2FactoryInitializer { + + @Override + public SerializerFactory createSerializerFactory() { + SerializerFactory serializerFactory = new SerializerFactory(); + String whiteList = ConfigUtils.getProperty(WHITELIST); + if ("true".equals(whiteList)) { + serializerFactory.getClassFactory().setWhitelist(true); + String allowPattern = ConfigUtils.getProperty(ALLOW); + if (StringUtils.isNotEmpty(allowPattern)) { + serializerFactory.getClassFactory().allow(allowPattern); + } + } else { + serializerFactory.getClassFactory().setWhitelist(false); + String denyPattern = ConfigUtils.getProperty(DENY); + if (StringUtils.isNotEmpty(denyPattern)) { + serializerFactory.getClassFactory().deny(denyPattern); + } + } + return serializerFactory; + } + +} diff --git a/dubbo-rpc/dubbo-rpc-hessian/src/main/resources/META-INF/dubbo/internal/com.alibaba.dubbo.rpc.protocol.hessian.serialization.Hessian2FactoryInitializer b/dubbo-rpc/dubbo-rpc-hessian/src/main/resources/META-INF/dubbo/internal/com.alibaba.dubbo.rpc.protocol.hessian.serialization.Hessian2FactoryInitializer new file mode 100644 index 00000000000..4796b5c550c --- /dev/null +++ b/dubbo-rpc/dubbo-rpc-hessian/src/main/resources/META-INF/dubbo/internal/com.alibaba.dubbo.rpc.protocol.hessian.serialization.Hessian2FactoryInitializer @@ -0,0 +1,2 @@ +default=com.alibaba.dubbo.rpc.protocol.hessian.serialization.DefaultHessian2FactoryInitializer +whitelist=com.alibaba.dubbo.rpc.protocol.hessian.serialization.WhitelistHessian2FactoryInitializer \ No newline at end of file From f62ca3f71a6db624cd4e3b23a58ed7dacf736d91 Mon Sep 17 00:00:00 2001 From: qixiaobo Date: Mon, 23 Aug 2021 13:15:20 +0800 Subject: [PATCH 2/6] Dubbo ProviderConsumerRegTable class cause outOfMemory while no provider available exception occurs (#8522) since create proxy error , so we must be the first consumer. Simply clear ConcurrentHashSet --- .../com/alibaba/dubbo/config/ReferenceConfig.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/dubbo-config/dubbo-config-api/src/main/java/com/alibaba/dubbo/config/ReferenceConfig.java b/dubbo-config/dubbo-config-api/src/main/java/com/alibaba/dubbo/config/ReferenceConfig.java index 8be61c5020b..47ecfee2ca1 100644 --- a/dubbo-config/dubbo-config-api/src/main/java/com/alibaba/dubbo/config/ReferenceConfig.java +++ b/dubbo-config/dubbo-config-api/src/main/java/com/alibaba/dubbo/config/ReferenceConfig.java @@ -29,6 +29,8 @@ import com.alibaba.dubbo.config.model.ApplicationModel; import com.alibaba.dubbo.config.model.ConsumerModel; import com.alibaba.dubbo.config.support.Parameter; +import com.alibaba.dubbo.registry.support.ConsumerInvokerWrapper; +import com.alibaba.dubbo.registry.support.ProviderConsumerRegTable; import com.alibaba.dubbo.rpc.Invoker; import com.alibaba.dubbo.rpc.Protocol; import com.alibaba.dubbo.rpc.ProxyFactory; @@ -47,11 +49,13 @@ import java.lang.reflect.Method; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Properties; +import java.util.Set; import static com.alibaba.dubbo.common.utils.NetUtils.isInvalidLocalHost; @@ -423,7 +427,14 @@ private T createProxy(Map map) { if (c && !invoker.isAvailable()) { // make it possible for consumer to retry later if provider is temporarily unavailable initialized = false; - throw new IllegalStateException("Failed to check the status of the service " + interfaceName + ". No provider available for the service " + (group == null ? "" : group + "/") + interfaceName + (version == null ? "" : ":" + version) + " from the url " + invoker.getUrl() + " to the consumer " + NetUtils.getLocalHost() + " use dubbo version " + Version.getVersion()); + final String serviceKey = (group == null ? "" : group + "/") + interfaceName + (version == null ? "" : + ":" + version); + Set consumerInvoker = ProviderConsumerRegTable.getConsumerInvoker(serviceKey); + if (consumerInvoker != Collections.emptySet()) { + //since create proxy error , so we must be the first consumer. Simply clear ConcurrentHashSet + consumerInvoker.clear(); + } + throw new IllegalStateException("Failed to check the status of the service " + interfaceName + ". No provider available for the service " + serviceKey + " from the url " + invoker.getUrl() + " to the consumer " + NetUtils.getLocalHost() + " use dubbo version " + Version.getVersion()); } if (logger.isInfoEnabled()) { logger.info("Refer dubbo service " + interfaceClass.getName() + " from url " + invoker.getUrl()); From 2e39f6d31b201a7f01f19ca7f602d71bfb273c14 Mon Sep 17 00:00:00 2001 From: "ken.lj" Date: Fri, 3 Sep 2021 17:23:03 +0800 Subject: [PATCH 3/6] prepare for 2.6.11 release --- bom/pom.xml | 2 +- dependencies-bom/pom.xml | 2 +- distribution/pom.xml | 2 +- dubbo-cluster/pom.xml | 2 +- dubbo-common/pom.xml | 2 +- dubbo-config/dubbo-config-api/pom.xml | 2 +- dubbo-config/dubbo-config-spring/pom.xml | 2 +- dubbo-config/pom.xml | 2 +- dubbo-container/dubbo-container-api/pom.xml | 2 +- dubbo-container/dubbo-container-log4j/pom.xml | 2 +- dubbo-container/dubbo-container-logback/pom.xml | 2 +- dubbo-container/dubbo-container-spring/pom.xml | 2 +- dubbo-container/pom.xml | 2 +- dubbo-demo/dubbo-demo-api/pom.xml | 2 +- dubbo-demo/dubbo-demo-consumer/pom.xml | 2 +- dubbo-demo/dubbo-demo-provider/pom.xml | 2 +- dubbo-demo/pom.xml | 2 +- dubbo-filter/dubbo-filter-cache/pom.xml | 2 +- dubbo-filter/dubbo-filter-validation/pom.xml | 2 +- dubbo-filter/pom.xml | 2 +- dubbo-monitor/dubbo-monitor-api/pom.xml | 2 +- dubbo-monitor/dubbo-monitor-default/pom.xml | 2 +- dubbo-monitor/pom.xml | 2 +- dubbo-plugin/dubbo-qos/pom.xml | 2 +- dubbo-plugin/pom.xml | 2 +- dubbo-registry/dubbo-registry-api/pom.xml | 2 +- dubbo-registry/dubbo-registry-default/pom.xml | 2 +- dubbo-registry/dubbo-registry-multicast/pom.xml | 2 +- dubbo-registry/dubbo-registry-nacos/pom.xml | 2 +- dubbo-registry/dubbo-registry-redis/pom.xml | 2 +- dubbo-registry/dubbo-registry-zookeeper/pom.xml | 2 +- dubbo-registry/pom.xml | 2 +- dubbo-remoting/dubbo-remoting-api/pom.xml | 2 +- dubbo-remoting/dubbo-remoting-grizzly/pom.xml | 2 +- dubbo-remoting/dubbo-remoting-http/pom.xml | 2 +- dubbo-remoting/dubbo-remoting-mina/pom.xml | 2 +- dubbo-remoting/dubbo-remoting-netty/pom.xml | 2 +- dubbo-remoting/dubbo-remoting-netty4/pom.xml | 2 +- dubbo-remoting/dubbo-remoting-p2p/pom.xml | 2 +- dubbo-remoting/dubbo-remoting-zookeeper/pom.xml | 2 +- dubbo-remoting/pom.xml | 2 +- dubbo-rpc/dubbo-rpc-api/pom.xml | 2 +- dubbo-rpc/dubbo-rpc-dubbo/pom.xml | 2 +- dubbo-rpc/dubbo-rpc-hessian/pom.xml | 2 +- dubbo-rpc/dubbo-rpc-http/pom.xml | 2 +- dubbo-rpc/dubbo-rpc-injvm/pom.xml | 2 +- dubbo-rpc/dubbo-rpc-memcached/pom.xml | 2 +- dubbo-rpc/dubbo-rpc-redis/pom.xml | 2 +- dubbo-rpc/dubbo-rpc-rest/pom.xml | 2 +- dubbo-rpc/dubbo-rpc-rmi/pom.xml | 2 +- dubbo-rpc/dubbo-rpc-thrift/pom.xml | 2 +- dubbo-rpc/dubbo-rpc-webservice/pom.xml | 2 +- dubbo-rpc/pom.xml | 2 +- dubbo-serialization/dubbo-serialization-api/pom.xml | 2 +- dubbo-serialization/dubbo-serialization-fastjson/pom.xml | 2 +- dubbo-serialization/dubbo-serialization-fst/pom.xml | 2 +- dubbo-serialization/dubbo-serialization-hessian2/pom.xml | 2 +- dubbo-serialization/dubbo-serialization-jdk/pom.xml | 2 +- dubbo-serialization/dubbo-serialization-kryo/pom.xml | 2 +- dubbo-serialization/pom.xml | 2 +- dubbo-test/dubbo-test-benchmark/pom.xml | 2 +- .../dubbo-test-compatibility/dubbo-test-spring3/pom.xml | 2 +- dubbo-test/dubbo-test-compatibility/pom.xml | 2 +- dubbo-test/dubbo-test-examples/pom.xml | 2 +- dubbo-test/dubbo-test-integration/pom.xml | 2 +- dubbo-test/pom.xml | 4 ++-- pom.xml | 4 ++-- 67 files changed, 69 insertions(+), 69 deletions(-) diff --git a/bom/pom.xml b/bom/pom.xml index 39ba7553841..bcde0c27bfa 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -32,7 +32,7 @@ com.alibaba dubbo-bom - 2.6.11-SNAPSHOT + 2.6.11 pom dubbo-bom diff --git a/dependencies-bom/pom.xml b/dependencies-bom/pom.xml index 95a45d5e8f6..a06628e7e69 100644 --- a/dependencies-bom/pom.xml +++ b/dependencies-bom/pom.xml @@ -25,7 +25,7 @@ com.alibaba dubbo-dependencies-bom - 2.6.11-SNAPSHOT + 2.6.11 pom dubbo-dependencies-bom diff --git a/distribution/pom.xml b/distribution/pom.xml index 03bd673e94d..cf8c360e5a8 100644 --- a/distribution/pom.xml +++ b/distribution/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 dubbo-distribution pom diff --git a/dubbo-cluster/pom.xml b/dubbo-cluster/pom.xml index 2cc903f77bc..ca8497e9c30 100644 --- a/dubbo-cluster/pom.xml +++ b/dubbo-cluster/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 dubbo-cluster jar diff --git a/dubbo-common/pom.xml b/dubbo-common/pom.xml index 4549517878a..33f8340232d 100644 --- a/dubbo-common/pom.xml +++ b/dubbo-common/pom.xml @@ -20,7 +20,7 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 dubbo-common jar diff --git a/dubbo-config/dubbo-config-api/pom.xml b/dubbo-config/dubbo-config-api/pom.xml index 2e12aed6120..80a9f0dffb0 100644 --- a/dubbo-config/dubbo-config-api/pom.xml +++ b/dubbo-config/dubbo-config-api/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-config - 2.6.11-SNAPSHOT + 2.6.11 dubbo-config-api jar diff --git a/dubbo-config/dubbo-config-spring/pom.xml b/dubbo-config/dubbo-config-spring/pom.xml index f7d03f48e71..38df59b9194 100644 --- a/dubbo-config/dubbo-config-spring/pom.xml +++ b/dubbo-config/dubbo-config-spring/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-config - 2.6.11-SNAPSHOT + 2.6.11 dubbo-config-spring jar diff --git a/dubbo-config/pom.xml b/dubbo-config/pom.xml index 1fdfcebfdfb..8025e818d03 100644 --- a/dubbo-config/pom.xml +++ b/dubbo-config/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 dubbo-config pom diff --git a/dubbo-container/dubbo-container-api/pom.xml b/dubbo-container/dubbo-container-api/pom.xml index 8648857a938..3f1b0237a8a 100644 --- a/dubbo-container/dubbo-container-api/pom.xml +++ b/dubbo-container/dubbo-container-api/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-container - 2.6.11-SNAPSHOT + 2.6.11 dubbo-container-api jar diff --git a/dubbo-container/dubbo-container-log4j/pom.xml b/dubbo-container/dubbo-container-log4j/pom.xml index a3b20586d95..0ea92466d9d 100644 --- a/dubbo-container/dubbo-container-log4j/pom.xml +++ b/dubbo-container/dubbo-container-log4j/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-container - 2.6.11-SNAPSHOT + 2.6.11 dubbo-container-log4j jar diff --git a/dubbo-container/dubbo-container-logback/pom.xml b/dubbo-container/dubbo-container-logback/pom.xml index 04823907548..174002fe026 100644 --- a/dubbo-container/dubbo-container-logback/pom.xml +++ b/dubbo-container/dubbo-container-logback/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-container - 2.6.11-SNAPSHOT + 2.6.11 dubbo-container-logback jar diff --git a/dubbo-container/dubbo-container-spring/pom.xml b/dubbo-container/dubbo-container-spring/pom.xml index 334c903d6e8..750917874cb 100644 --- a/dubbo-container/dubbo-container-spring/pom.xml +++ b/dubbo-container/dubbo-container-spring/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-container - 2.6.11-SNAPSHOT + 2.6.11 dubbo-container-spring jar diff --git a/dubbo-container/pom.xml b/dubbo-container/pom.xml index bbc814da3bf..47253ce872a 100644 --- a/dubbo-container/pom.xml +++ b/dubbo-container/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 dubbo-container pom diff --git a/dubbo-demo/dubbo-demo-api/pom.xml b/dubbo-demo/dubbo-demo-api/pom.xml index 8c75ec0e518..b909e71e38d 100644 --- a/dubbo-demo/dubbo-demo-api/pom.xml +++ b/dubbo-demo/dubbo-demo-api/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-demo - 2.6.11-SNAPSHOT + 2.6.11 dubbo-demo-api jar diff --git a/dubbo-demo/dubbo-demo-consumer/pom.xml b/dubbo-demo/dubbo-demo-consumer/pom.xml index 8380ba7e731..75d3311a4e3 100644 --- a/dubbo-demo/dubbo-demo-consumer/pom.xml +++ b/dubbo-demo/dubbo-demo-consumer/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-demo - 2.6.11-SNAPSHOT + 2.6.11 dubbo-demo-consumer jar diff --git a/dubbo-demo/dubbo-demo-provider/pom.xml b/dubbo-demo/dubbo-demo-provider/pom.xml index 5b213a470a4..1c4af06c5b1 100644 --- a/dubbo-demo/dubbo-demo-provider/pom.xml +++ b/dubbo-demo/dubbo-demo-provider/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-demo - 2.6.11-SNAPSHOT + 2.6.11 dubbo-demo-provider jar diff --git a/dubbo-demo/pom.xml b/dubbo-demo/pom.xml index 1b604352014..71cb019fbac 100644 --- a/dubbo-demo/pom.xml +++ b/dubbo-demo/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 dubbo-demo pom diff --git a/dubbo-filter/dubbo-filter-cache/pom.xml b/dubbo-filter/dubbo-filter-cache/pom.xml index f60cdde508c..bc5edf3cf76 100644 --- a/dubbo-filter/dubbo-filter-cache/pom.xml +++ b/dubbo-filter/dubbo-filter-cache/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-filter - 2.6.11-SNAPSHOT + 2.6.11 dubbo-filter-cache jar diff --git a/dubbo-filter/dubbo-filter-validation/pom.xml b/dubbo-filter/dubbo-filter-validation/pom.xml index 6121fb48ff6..c59d5dbbb54 100644 --- a/dubbo-filter/dubbo-filter-validation/pom.xml +++ b/dubbo-filter/dubbo-filter-validation/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-filter - 2.6.11-SNAPSHOT + 2.6.11 dubbo-filter-validation jar diff --git a/dubbo-filter/pom.xml b/dubbo-filter/pom.xml index 968befaaba0..ee91f57be55 100644 --- a/dubbo-filter/pom.xml +++ b/dubbo-filter/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 dubbo-filter pom diff --git a/dubbo-monitor/dubbo-monitor-api/pom.xml b/dubbo-monitor/dubbo-monitor-api/pom.xml index 93ba6c85f7d..e9ec5eb4020 100644 --- a/dubbo-monitor/dubbo-monitor-api/pom.xml +++ b/dubbo-monitor/dubbo-monitor-api/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-monitor - 2.6.11-SNAPSHOT + 2.6.11 dubbo-monitor-api jar diff --git a/dubbo-monitor/dubbo-monitor-default/pom.xml b/dubbo-monitor/dubbo-monitor-default/pom.xml index 5c5283caf46..b9fdc5fc3dd 100644 --- a/dubbo-monitor/dubbo-monitor-default/pom.xml +++ b/dubbo-monitor/dubbo-monitor-default/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-monitor - 2.6.11-SNAPSHOT + 2.6.11 dubbo-monitor-default jar diff --git a/dubbo-monitor/pom.xml b/dubbo-monitor/pom.xml index 9d15a40a7aa..98d00bd667f 100644 --- a/dubbo-monitor/pom.xml +++ b/dubbo-monitor/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 dubbo-monitor pom diff --git a/dubbo-plugin/dubbo-qos/pom.xml b/dubbo-plugin/dubbo-qos/pom.xml index 3b7dad5126b..8025c99e17b 100644 --- a/dubbo-plugin/dubbo-qos/pom.xml +++ b/dubbo-plugin/dubbo-qos/pom.xml @@ -18,7 +18,7 @@ com.alibaba dubbo-plugin - 2.6.11-SNAPSHOT + 2.6.11 4.0.0 diff --git a/dubbo-plugin/pom.xml b/dubbo-plugin/pom.xml index 6ec721be1b1..d7b0d1e5489 100644 --- a/dubbo-plugin/pom.xml +++ b/dubbo-plugin/pom.xml @@ -18,7 +18,7 @@ dubbo-parent com.alibaba - 2.6.11-SNAPSHOT + 2.6.11 4.0.0 diff --git a/dubbo-registry/dubbo-registry-api/pom.xml b/dubbo-registry/dubbo-registry-api/pom.xml index 4c5bf1d76c3..8760bb7a73f 100644 --- a/dubbo-registry/dubbo-registry-api/pom.xml +++ b/dubbo-registry/dubbo-registry-api/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-registry - 2.6.11-SNAPSHOT + 2.6.11 dubbo-registry-api jar diff --git a/dubbo-registry/dubbo-registry-default/pom.xml b/dubbo-registry/dubbo-registry-default/pom.xml index b2b7f9788ce..78f3c3a0333 100644 --- a/dubbo-registry/dubbo-registry-default/pom.xml +++ b/dubbo-registry/dubbo-registry-default/pom.xml @@ -20,7 +20,7 @@ com.alibaba dubbo-registry - 2.6.11-SNAPSHOT + 2.6.11 dubbo-registry-default jar diff --git a/dubbo-registry/dubbo-registry-multicast/pom.xml b/dubbo-registry/dubbo-registry-multicast/pom.xml index bf7b42033a7..4824ae37609 100644 --- a/dubbo-registry/dubbo-registry-multicast/pom.xml +++ b/dubbo-registry/dubbo-registry-multicast/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-registry - 2.6.11-SNAPSHOT + 2.6.11 dubbo-registry-multicast jar diff --git a/dubbo-registry/dubbo-registry-nacos/pom.xml b/dubbo-registry/dubbo-registry-nacos/pom.xml index db5221b4900..bf5dec497dc 100644 --- a/dubbo-registry/dubbo-registry-nacos/pom.xml +++ b/dubbo-registry/dubbo-registry-nacos/pom.xml @@ -19,7 +19,7 @@ dubbo-registry com.alibaba - 2.6.11-SNAPSHOT + 2.6.11 ../pom.xml 4.0.0 diff --git a/dubbo-registry/dubbo-registry-redis/pom.xml b/dubbo-registry/dubbo-registry-redis/pom.xml index 33bca42e844..7e695140870 100644 --- a/dubbo-registry/dubbo-registry-redis/pom.xml +++ b/dubbo-registry/dubbo-registry-redis/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-registry - 2.6.11-SNAPSHOT + 2.6.11 dubbo-registry-redis jar diff --git a/dubbo-registry/dubbo-registry-zookeeper/pom.xml b/dubbo-registry/dubbo-registry-zookeeper/pom.xml index fb659bd93c0..5a4ebaf4f3b 100644 --- a/dubbo-registry/dubbo-registry-zookeeper/pom.xml +++ b/dubbo-registry/dubbo-registry-zookeeper/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-registry - 2.6.11-SNAPSHOT + 2.6.11 dubbo-registry-zookeeper jar diff --git a/dubbo-registry/pom.xml b/dubbo-registry/pom.xml index f4ad495c9c3..b14c9c7963e 100644 --- a/dubbo-registry/pom.xml +++ b/dubbo-registry/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 dubbo-registry pom diff --git a/dubbo-remoting/dubbo-remoting-api/pom.xml b/dubbo-remoting/dubbo-remoting-api/pom.xml index cd89e04e169..fbf785b4aeb 100644 --- a/dubbo-remoting/dubbo-remoting-api/pom.xml +++ b/dubbo-remoting/dubbo-remoting-api/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-remoting - 2.6.11-SNAPSHOT + 2.6.11 dubbo-remoting-api jar diff --git a/dubbo-remoting/dubbo-remoting-grizzly/pom.xml b/dubbo-remoting/dubbo-remoting-grizzly/pom.xml index a8825bbec87..1a9d6a6fc83 100644 --- a/dubbo-remoting/dubbo-remoting-grizzly/pom.xml +++ b/dubbo-remoting/dubbo-remoting-grizzly/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-remoting - 2.6.11-SNAPSHOT + 2.6.11 dubbo-remoting-grizzly jar diff --git a/dubbo-remoting/dubbo-remoting-http/pom.xml b/dubbo-remoting/dubbo-remoting-http/pom.xml index f9e622ca73e..72fa3a9b687 100644 --- a/dubbo-remoting/dubbo-remoting-http/pom.xml +++ b/dubbo-remoting/dubbo-remoting-http/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-remoting - 2.6.11-SNAPSHOT + 2.6.11 dubbo-remoting-http jar diff --git a/dubbo-remoting/dubbo-remoting-mina/pom.xml b/dubbo-remoting/dubbo-remoting-mina/pom.xml index 28406cd361b..c0207c8fc7c 100644 --- a/dubbo-remoting/dubbo-remoting-mina/pom.xml +++ b/dubbo-remoting/dubbo-remoting-mina/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-remoting - 2.6.11-SNAPSHOT + 2.6.11 dubbo-remoting-mina jar diff --git a/dubbo-remoting/dubbo-remoting-netty/pom.xml b/dubbo-remoting/dubbo-remoting-netty/pom.xml index 44933456048..7151198a101 100644 --- a/dubbo-remoting/dubbo-remoting-netty/pom.xml +++ b/dubbo-remoting/dubbo-remoting-netty/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-remoting - 2.6.11-SNAPSHOT + 2.6.11 dubbo-remoting-netty jar diff --git a/dubbo-remoting/dubbo-remoting-netty4/pom.xml b/dubbo-remoting/dubbo-remoting-netty4/pom.xml index 0903be72220..940567624a8 100644 --- a/dubbo-remoting/dubbo-remoting-netty4/pom.xml +++ b/dubbo-remoting/dubbo-remoting-netty4/pom.xml @@ -18,7 +18,7 @@ dubbo-remoting com.alibaba - 2.6.11-SNAPSHOT + 2.6.11 4.0.0 diff --git a/dubbo-remoting/dubbo-remoting-p2p/pom.xml b/dubbo-remoting/dubbo-remoting-p2p/pom.xml index 8016bda4baa..2e2d8f73620 100644 --- a/dubbo-remoting/dubbo-remoting-p2p/pom.xml +++ b/dubbo-remoting/dubbo-remoting-p2p/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-remoting - 2.6.11-SNAPSHOT + 2.6.11 dubbo-remoting-p2p jar diff --git a/dubbo-remoting/dubbo-remoting-zookeeper/pom.xml b/dubbo-remoting/dubbo-remoting-zookeeper/pom.xml index 0685600cf88..df63fdc8a5d 100644 --- a/dubbo-remoting/dubbo-remoting-zookeeper/pom.xml +++ b/dubbo-remoting/dubbo-remoting-zookeeper/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-remoting - 2.6.11-SNAPSHOT + 2.6.11 dubbo-remoting-zookeeper jar diff --git a/dubbo-remoting/pom.xml b/dubbo-remoting/pom.xml index be1484580fd..0b2bda55045 100644 --- a/dubbo-remoting/pom.xml +++ b/dubbo-remoting/pom.xml @@ -20,7 +20,7 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 dubbo-remoting pom diff --git a/dubbo-rpc/dubbo-rpc-api/pom.xml b/dubbo-rpc/dubbo-rpc-api/pom.xml index df74757a8d8..9735c8bb3a1 100644 --- a/dubbo-rpc/dubbo-rpc-api/pom.xml +++ b/dubbo-rpc/dubbo-rpc-api/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-rpc - 2.6.11-SNAPSHOT + 2.6.11 dubbo-rpc-api jar diff --git a/dubbo-rpc/dubbo-rpc-dubbo/pom.xml b/dubbo-rpc/dubbo-rpc-dubbo/pom.xml index 4a69781a2b8..965e8c892c9 100644 --- a/dubbo-rpc/dubbo-rpc-dubbo/pom.xml +++ b/dubbo-rpc/dubbo-rpc-dubbo/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-rpc - 2.6.11-SNAPSHOT + 2.6.11 dubbo-rpc-dubbo jar diff --git a/dubbo-rpc/dubbo-rpc-hessian/pom.xml b/dubbo-rpc/dubbo-rpc-hessian/pom.xml index 1d3d3611311..1c4a26e0ce8 100644 --- a/dubbo-rpc/dubbo-rpc-hessian/pom.xml +++ b/dubbo-rpc/dubbo-rpc-hessian/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-rpc - 2.6.11-SNAPSHOT + 2.6.11 dubbo-rpc-hessian jar diff --git a/dubbo-rpc/dubbo-rpc-http/pom.xml b/dubbo-rpc/dubbo-rpc-http/pom.xml index 877c6edcd27..5a86a129f90 100644 --- a/dubbo-rpc/dubbo-rpc-http/pom.xml +++ b/dubbo-rpc/dubbo-rpc-http/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-rpc - 2.6.11-SNAPSHOT + 2.6.11 dubbo-rpc-http jar diff --git a/dubbo-rpc/dubbo-rpc-injvm/pom.xml b/dubbo-rpc/dubbo-rpc-injvm/pom.xml index afc4bba850c..ba7f0dac154 100644 --- a/dubbo-rpc/dubbo-rpc-injvm/pom.xml +++ b/dubbo-rpc/dubbo-rpc-injvm/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-rpc - 2.6.11-SNAPSHOT + 2.6.11 dubbo-rpc-injvm jar diff --git a/dubbo-rpc/dubbo-rpc-memcached/pom.xml b/dubbo-rpc/dubbo-rpc-memcached/pom.xml index 59f14404ffa..2554ecb144e 100644 --- a/dubbo-rpc/dubbo-rpc-memcached/pom.xml +++ b/dubbo-rpc/dubbo-rpc-memcached/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-rpc - 2.6.11-SNAPSHOT + 2.6.11 dubbo-rpc-memcached jar diff --git a/dubbo-rpc/dubbo-rpc-redis/pom.xml b/dubbo-rpc/dubbo-rpc-redis/pom.xml index e5e11588793..0e15a0996ff 100644 --- a/dubbo-rpc/dubbo-rpc-redis/pom.xml +++ b/dubbo-rpc/dubbo-rpc-redis/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-rpc - 2.6.11-SNAPSHOT + 2.6.11 dubbo-rpc-redis jar diff --git a/dubbo-rpc/dubbo-rpc-rest/pom.xml b/dubbo-rpc/dubbo-rpc-rest/pom.xml index b5e7039c84b..5790ef92d86 100644 --- a/dubbo-rpc/dubbo-rpc-rest/pom.xml +++ b/dubbo-rpc/dubbo-rpc-rest/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-rpc - 2.6.11-SNAPSHOT + 2.6.11 dubbo-rpc-rest jar diff --git a/dubbo-rpc/dubbo-rpc-rmi/pom.xml b/dubbo-rpc/dubbo-rpc-rmi/pom.xml index 5346dc2d6bf..ae376df1fd6 100644 --- a/dubbo-rpc/dubbo-rpc-rmi/pom.xml +++ b/dubbo-rpc/dubbo-rpc-rmi/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-rpc - 2.6.11-SNAPSHOT + 2.6.11 dubbo-rpc-rmi jar diff --git a/dubbo-rpc/dubbo-rpc-thrift/pom.xml b/dubbo-rpc/dubbo-rpc-thrift/pom.xml index 9c3c9a05d08..7324aebd00a 100644 --- a/dubbo-rpc/dubbo-rpc-thrift/pom.xml +++ b/dubbo-rpc/dubbo-rpc-thrift/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-rpc - 2.6.11-SNAPSHOT + 2.6.11 dubbo-rpc-thrift jar diff --git a/dubbo-rpc/dubbo-rpc-webservice/pom.xml b/dubbo-rpc/dubbo-rpc-webservice/pom.xml index 829c015e1ce..60a4c866d65 100644 --- a/dubbo-rpc/dubbo-rpc-webservice/pom.xml +++ b/dubbo-rpc/dubbo-rpc-webservice/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-rpc - 2.6.11-SNAPSHOT + 2.6.11 dubbo-rpc-webservice jar diff --git a/dubbo-rpc/pom.xml b/dubbo-rpc/pom.xml index 14190ed2d6e..d803e0b34d7 100644 --- a/dubbo-rpc/pom.xml +++ b/dubbo-rpc/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 dubbo-rpc pom diff --git a/dubbo-serialization/dubbo-serialization-api/pom.xml b/dubbo-serialization/dubbo-serialization-api/pom.xml index 644364b8461..49c748d70ad 100644 --- a/dubbo-serialization/dubbo-serialization-api/pom.xml +++ b/dubbo-serialization/dubbo-serialization-api/pom.xml @@ -20,7 +20,7 @@ limitations under the License. com.alibaba dubbo-serialization - 2.6.11-SNAPSHOT + 2.6.11 dubbo-serialization-api jar diff --git a/dubbo-serialization/dubbo-serialization-fastjson/pom.xml b/dubbo-serialization/dubbo-serialization-fastjson/pom.xml index 86c694bb1eb..87fb45d6e0e 100644 --- a/dubbo-serialization/dubbo-serialization-fastjson/pom.xml +++ b/dubbo-serialization/dubbo-serialization-fastjson/pom.xml @@ -20,7 +20,7 @@ limitations under the License. com.alibaba dubbo-serialization - 2.6.11-SNAPSHOT + 2.6.11 dubbo-serialization-fastjson jar diff --git a/dubbo-serialization/dubbo-serialization-fst/pom.xml b/dubbo-serialization/dubbo-serialization-fst/pom.xml index 9c9a1106856..0ee54b7bc29 100644 --- a/dubbo-serialization/dubbo-serialization-fst/pom.xml +++ b/dubbo-serialization/dubbo-serialization-fst/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-serialization - 2.6.11-SNAPSHOT + 2.6.11 dubbo-serialization-fst jar diff --git a/dubbo-serialization/dubbo-serialization-hessian2/pom.xml b/dubbo-serialization/dubbo-serialization-hessian2/pom.xml index 21042383f41..2382c0000c3 100644 --- a/dubbo-serialization/dubbo-serialization-hessian2/pom.xml +++ b/dubbo-serialization/dubbo-serialization-hessian2/pom.xml @@ -20,7 +20,7 @@ limitations under the License. com.alibaba dubbo-serialization - 2.6.11-SNAPSHOT + 2.6.11 dubbo-serialization-hessian2 jar diff --git a/dubbo-serialization/dubbo-serialization-jdk/pom.xml b/dubbo-serialization/dubbo-serialization-jdk/pom.xml index 724c468791e..cb867ffc93e 100644 --- a/dubbo-serialization/dubbo-serialization-jdk/pom.xml +++ b/dubbo-serialization/dubbo-serialization-jdk/pom.xml @@ -20,7 +20,7 @@ limitations under the License. com.alibaba dubbo-serialization - 2.6.11-SNAPSHOT + 2.6.11 dubbo-serialization-jdk jar diff --git a/dubbo-serialization/dubbo-serialization-kryo/pom.xml b/dubbo-serialization/dubbo-serialization-kryo/pom.xml index 4cd31ae5f86..33fc853e38a 100644 --- a/dubbo-serialization/dubbo-serialization-kryo/pom.xml +++ b/dubbo-serialization/dubbo-serialization-kryo/pom.xml @@ -20,7 +20,7 @@ limitations under the License. com.alibaba dubbo-serialization - 2.6.11-SNAPSHOT + 2.6.11 dubbo-serialization-kryo jar diff --git a/dubbo-serialization/pom.xml b/dubbo-serialization/pom.xml index f70d1f6badc..7499a54eff5 100644 --- a/dubbo-serialization/pom.xml +++ b/dubbo-serialization/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 dubbo-serialization pom diff --git a/dubbo-test/dubbo-test-benchmark/pom.xml b/dubbo-test/dubbo-test-benchmark/pom.xml index 79691ca7a0c..290998b753e 100644 --- a/dubbo-test/dubbo-test-benchmark/pom.xml +++ b/dubbo-test/dubbo-test-benchmark/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-test - 2.6.11-SNAPSHOT + 2.6.11 dubbo-test-benchmark jar diff --git a/dubbo-test/dubbo-test-compatibility/dubbo-test-spring3/pom.xml b/dubbo-test/dubbo-test-compatibility/dubbo-test-spring3/pom.xml index 12a4d0ea6b4..f479d3c239f 100644 --- a/dubbo-test/dubbo-test-compatibility/dubbo-test-spring3/pom.xml +++ b/dubbo-test/dubbo-test-compatibility/dubbo-test-spring3/pom.xml @@ -19,7 +19,7 @@ dubbo-test-compatibility com.alibaba - 2.6.11-SNAPSHOT + 2.6.11 4.0.0 diff --git a/dubbo-test/dubbo-test-compatibility/pom.xml b/dubbo-test/dubbo-test-compatibility/pom.xml index ac22e5c4902..de1e24f17cb 100644 --- a/dubbo-test/dubbo-test-compatibility/pom.xml +++ b/dubbo-test/dubbo-test-compatibility/pom.xml @@ -22,7 +22,7 @@ com.alibaba dubbo-test - 2.6.11-SNAPSHOT + 2.6.11 dubbo-test-compatibility pom diff --git a/dubbo-test/dubbo-test-examples/pom.xml b/dubbo-test/dubbo-test-examples/pom.xml index 45558e55465..b5cc8a5b57f 100644 --- a/dubbo-test/dubbo-test-examples/pom.xml +++ b/dubbo-test/dubbo-test-examples/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-test - 2.6.11-SNAPSHOT + 2.6.11 dubbo-test-examples jar diff --git a/dubbo-test/dubbo-test-integration/pom.xml b/dubbo-test/dubbo-test-integration/pom.xml index a15c2f7ed43..dfd22918282 100644 --- a/dubbo-test/dubbo-test-integration/pom.xml +++ b/dubbo-test/dubbo-test-integration/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-test - 2.6.11-SNAPSHOT + 2.6.11 dubbo-test-integration jar diff --git a/dubbo-test/pom.xml b/dubbo-test/pom.xml index abaf21ec210..ef40cc0003a 100644 --- a/dubbo-test/pom.xml +++ b/dubbo-test/pom.xml @@ -19,7 +19,7 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 dubbo-test pom @@ -203,7 +203,7 @@ com.alibaba dubbo-serialization-jdk - 2.6.11-SNAPSHOT + 2.6.11 org.hibernate diff --git a/pom.xml b/pom.xml index e9ef844bbb1..48f6109dbff 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 pom ${project.artifactId} @@ -149,7 +149,7 @@ com.alibaba dubbo-dependencies-bom - 2.6.11-SNAPSHOT + 2.6.11 pom import From 59da412eae06e9892ec15acc3da7a36aa6c3dec4 Mon Sep 17 00:00:00 2001 From: changfu Date: Fri, 3 Sep 2021 21:51:13 +0800 Subject: [PATCH 4/6] fix issue-8516 on 2.6.x (#8623) --- .../dubbo/rpc/support/MockInvoker.java | 7 +- .../dubbo/rpc/support/DemoServiceA.java | 21 ++++ .../dubbo/rpc/support/DemoServiceAMock.java | 28 +++++ .../dubbo/rpc/support/DemoServiceB.java | 21 ++++ .../dubbo/rpc/support/DemoServiceBMock.java | 29 +++++ .../dubbo/rpc/support/MockInvokerTest.java | 108 ++++++++++++++++++ 6 files changed, 211 insertions(+), 3 deletions(-) create mode 100644 dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceA.java create mode 100644 dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceAMock.java create mode 100644 dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceB.java create mode 100644 dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceBMock.java create mode 100644 dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/MockInvokerTest.java diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/com/alibaba/dubbo/rpc/support/MockInvoker.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/com/alibaba/dubbo/rpc/support/MockInvoker.java index fc99bdcd1e3..2dce7a049a3 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/com/alibaba/dubbo/rpc/support/MockInvoker.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/com/alibaba/dubbo/rpc/support/MockInvoker.java @@ -147,14 +147,15 @@ public static Throwable getThrowable(String throwstr) { } @SuppressWarnings("unchecked") - private Invoker getInvoker(String mockService) { + private Invoker getInvoker(String mock) { + Class serviceType = (Class) ReflectUtils.forName(url.getServiceInterface()); + String mockService = ConfigUtils.isDefault(mock) ? serviceType.getName() + "Mock" : mock; Invoker invoker = (Invoker) mocks.get(mockService); if (invoker != null) { return invoker; } - Class serviceType = (Class) ReflectUtils.forName(url.getServiceInterface()); - T mockObject = (T) getMockObject(mockService, serviceType); + T mockObject = (T) getMockObject(mock, serviceType); invoker = proxyFactory.getInvoker(mockObject, serviceType, url); if (mocks.size() < 10000) { mocks.put(mockService, invoker); diff --git a/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceA.java b/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceA.java new file mode 100644 index 00000000000..c7804ac5ef1 --- /dev/null +++ b/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceA.java @@ -0,0 +1,21 @@ +/* + * 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 com.alibaba.dubbo.rpc.support; + +public interface DemoServiceA { + String methodA(); +} diff --git a/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceAMock.java b/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceAMock.java new file mode 100644 index 00000000000..5b98121067c --- /dev/null +++ b/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceAMock.java @@ -0,0 +1,28 @@ +/* + * 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 com.alibaba.dubbo.rpc.support; + +/** + * default mock service for DemoServiceA + */ +public class DemoServiceAMock implements DemoServiceA{ + public static final String MOCK_VALUE = "mockA"; + @Override + public String methodA() { + return MOCK_VALUE; + } +} diff --git a/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceB.java b/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceB.java new file mode 100644 index 00000000000..2df05955989 --- /dev/null +++ b/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceB.java @@ -0,0 +1,21 @@ +/* + * 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 com.alibaba.dubbo.rpc.support; + +public interface DemoServiceB { + String methodB(); +} diff --git a/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceBMock.java b/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceBMock.java new file mode 100644 index 00000000000..c08177fd256 --- /dev/null +++ b/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/DemoServiceBMock.java @@ -0,0 +1,29 @@ +/* + * 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 com.alibaba.dubbo.rpc.support; + +/** + * default mock service for DemoServiceA + */ +public class DemoServiceBMock implements DemoServiceB { + public static final String MOCK_VALUE = "mockB"; + + @Override + public String methodB() { + return MOCK_VALUE; + } +} diff --git a/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/MockInvokerTest.java b/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/MockInvokerTest.java new file mode 100644 index 00000000000..ca77bce846d --- /dev/null +++ b/dubbo-rpc/dubbo-rpc-api/src/test/java/com/alibaba/dubbo/rpc/support/MockInvokerTest.java @@ -0,0 +1,108 @@ +/* + * 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 com.alibaba.dubbo.rpc.support; + +import com.alibaba.dubbo.common.URL; +import com.alibaba.dubbo.rpc.RpcInvocation; +import org.junit.Assert; +import org.junit.Test; + +import java.lang.reflect.Type; +import java.util.ArrayList; +import java.util.HashMap; + +import static com.alibaba.dubbo.common.Constants.MOCK_KEY; + + +public class MockInvokerTest { + + @Test + public void testParseMockValue() throws Exception { + Assert.assertNull(MockInvoker.parseMockValue("null")); + Assert.assertNull(MockInvoker.parseMockValue("empty")); + + Assert.assertTrue((Boolean) MockInvoker.parseMockValue("true")); + Assert.assertFalse((Boolean) MockInvoker.parseMockValue("false")); + + Assert.assertEquals(123, MockInvoker.parseMockValue("123")); + Assert.assertEquals("foo", MockInvoker.parseMockValue("foo")); + Assert.assertEquals("foo", MockInvoker.parseMockValue("\"foo\"")); + Assert.assertEquals("foo", MockInvoker.parseMockValue("\'foo\'")); + + Assert.assertEquals( + new HashMap(), MockInvoker.parseMockValue("{}")); + Assert.assertEquals( + new ArrayList(), MockInvoker.parseMockValue("[]")); + Assert.assertEquals("foo", + MockInvoker.parseMockValue("foo", new Type[]{String.class})); + } + + @Test + public void testInvoke() { + URL url = URL.valueOf("remote://1.2.3.4/" + String.class.getName()); + url = url.addParameter(MOCK_KEY, "return "); + MockInvoker mockInvoker = new MockInvoker(url); + + RpcInvocation invocation = new RpcInvocation(); + invocation.setMethodName("getSomething"); + Assert.assertEquals(new HashMap(), + mockInvoker.invoke(invocation).getAttachments()); + } + + @Test + public void testGetDefaultObject() { + // test methodA in DemoServiceAMock + final Class demoServiceAClass = DemoServiceA.class; + URL url = URL.valueOf("remote://1.2.3.4/" + demoServiceAClass.getName()); + url = url.addParameter(MOCK_KEY, "force:true"); + MockInvoker mockInvoker = new MockInvoker(url); + + RpcInvocation invocation = new RpcInvocation(); + invocation.setMethodName("methodA"); + Assert.assertEquals(new HashMap(), + mockInvoker.invoke(invocation).getAttachments()); + + // test methodB in DemoServiceBMock + final Class demoServiceBClass = DemoServiceB.class; + url = URL.valueOf("remote://1.2.3.4/" + demoServiceBClass.getName()); + url = url.addParameter(MOCK_KEY, "force:true"); + mockInvoker = new MockInvoker(url); + invocation = new RpcInvocation(); + invocation.setMethodName("methodB"); + Assert.assertEquals(new HashMap(), + mockInvoker.invoke(invocation).getAttachments()); + } + + @Test + public void testNormalizeMock() { + Assert.assertNull(MockInvoker.normalizeMock(null)); + + Assert.assertEquals("", MockInvoker.normalizeMock("")); + Assert.assertEquals("", MockInvoker.normalizeMock("fail:")); + Assert.assertEquals("", MockInvoker.normalizeMock("force:")); + Assert.assertEquals("throw", MockInvoker.normalizeMock("throw")); + Assert.assertEquals("default", MockInvoker.normalizeMock("fail")); + Assert.assertEquals("default", MockInvoker.normalizeMock("force")); + Assert.assertEquals("default", MockInvoker.normalizeMock("true")); + Assert.assertEquals("default", + MockInvoker.normalizeMock("default")); + Assert.assertEquals("return null", + MockInvoker.normalizeMock("return")); + Assert.assertEquals("return null", + MockInvoker.normalizeMock("return null")); + } +} From e9d35554c788309ffa48218decd432456e01b21d Mon Sep 17 00:00:00 2001 From: "ken.lj" Date: Fri, 10 Sep 2021 15:41:44 +0800 Subject: [PATCH 5/6] prepare for 2.6.11 release --- all/pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/all/pom.xml b/all/pom.xml index 2779f767be8..aa80093b563 100644 --- a/all/pom.xml +++ b/all/pom.xml @@ -19,11 +19,11 @@ com.alibaba dubbo-parent - 2.6.11-SNAPSHOT + 2.6.11 ../pom.xml dubbo - 2.6.11-SNAPSHOT + 2.6.11 jar dubbo-all The all in one project of dubbo From 6ea05b5a201d5f0bb67dc41a4bcc23d3e76cecda Mon Sep 17 00:00:00 2001 From: Albumen Kevin Date: Sun, 12 Sep 2021 23:44:17 +0800 Subject: [PATCH 6/6] [2.6] update hessian lite version (#8781) --- dependencies-bom/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dependencies-bom/pom.xml b/dependencies-bom/pom.xml index a06628e7e69..7abc1d91ab8 100644 --- a/dependencies-bom/pom.xml +++ b/dependencies-bom/pom.xml @@ -127,7 +127,7 @@ 2.2.7 1.2.0 - 3.2.8 + 3.2.11 1.0.2 1.17