Re: [PR] Feat security [dubbo-go]

2024-04-30 Thread via GitHub


sonarcloud[bot] commented on PR #2643:
URL: https://github.com/apache/dubbo-go/pull/2643#issuecomment-2087890808

   ## [![Quality Gate 
Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png
 'Quality Gate 
Passed')](https://sonarcloud.io/dashboard?id=apache_dubbo-go=2643) 
**Quality Gate passed**  
   Issues  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [88 New 
issues](https://sonarcloud.io/project/issues?id=apache_dubbo-go=2643=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png
 '') [0 Accepted 
issues](https://sonarcloud.io/component_measures?id=apache_dubbo-go=2643=new_accepted_issues=list)
   
   Measures  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 Security 
Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_dubbo-go=2643=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/no-data-16px.png
 '') No data about Coverage  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0.6% Duplication on New 
Code](https://sonarcloud.io/component_measures?id=apache_dubbo-go=2643=new_duplicated_lines_density=list)
  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_dubbo-go=2643)
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [PR] Refactor 3.3 grpc http2 processes [dubbo]

2024-04-30 Thread via GitHub


BitoAgent commented on PR #13786:
URL: https://github.com/apache/dubbo/pull/13786#issuecomment-2087750624

   AI Code Review is in progress (usually takes <10 minutes unless it's a very 
large PR).


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [PR] Refactor 3.3 grpc http2 processes [dubbo]

2024-04-30 Thread via GitHub


BitoAgent commented on code in PR #13786:
URL: https://github.com/apache/dubbo/pull/13786#discussion_r1585704539


##
dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/h12/http2/GenericHttp2ServerTransportListener.java:
##
@@ -86,6 +86,7 @@ protected Executor initializeExecutor(Http2Header metadata) {
 return new SerializingExecutor(executorSupport.getExecutor(metadata));
 }
 
+@Override
 protected void doOnMetadata(Http2Header metadata) {
 if (metadata.isEndStream()) {
 if (!HttpMethods.supportBody(metadata.method())) {

Review Comment:
**Security Issue**: Missing authorization checks in the doOnMetadata method 
which processes HTTP/2 headers. This could potentially allow unauthorized 
access to sensitive operations based on metadata content.  **Fix**: 
Implement authorization checks to verify that the user has the necessary 
permissions to perform operations based on the metadata content.  **Code 
Suggestion**: 
```
+if (!authorizeUser(metadata)) {
+throw new SecurityException("Unauthorized metadata access");
+}
protected void doOnMetadata(Http2Header metadata) {
if (metadata.isEndStream()) {
if (!HttpMethods.supportBody(metadata.method())) {
```
   
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [PR] Refactor 3.3 grpc http2 processes [dubbo]

2024-04-30 Thread via GitHub


BitoAgent commented on code in PR #13786:
URL: https://github.com/apache/dubbo/pull/13786#discussion_r1585704504


##
dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/h12/grpc/GrpcCompositeCodec.java:
##
@@ -16,123 +16,103 @@
  */
 package org.apache.dubbo.rpc.protocol.tri.h12.grpc;
 
+import org.apache.dubbo.common.URL;
+import org.apache.dubbo.common.config.ConfigurationUtils;
+import org.apache.dubbo.common.io.StreamUtils;
+import org.apache.dubbo.common.utils.ArrayUtils;
 import org.apache.dubbo.remoting.http12.exception.DecodeException;
 import org.apache.dubbo.remoting.http12.exception.EncodeException;
 import org.apache.dubbo.remoting.http12.message.HttpMessageCodec;
 import org.apache.dubbo.remoting.http12.message.MediaType;
+import org.apache.dubbo.rpc.model.FrameworkModel;
+import org.apache.dubbo.rpc.model.MethodDescriptor;
+import org.apache.dubbo.rpc.model.PackableMethod;
+import org.apache.dubbo.rpc.model.PackableMethodFactory;
 
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.nio.charset.Charset;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 
-import com.google.protobuf.Message;
-
-import static 
org.apache.dubbo.common.constants.CommonConstants.PROTOBUF_MESSAGE_CLASS_NAME;
+import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_KEY;
+import static 
org.apache.dubbo.common.constants.CommonConstants.DUBBO_PACKABLE_METHOD_FACTORY;
 
 public class GrpcCompositeCodec implements HttpMessageCodec {
 
-private final ProtobufHttpMessageCodec protobufHttpMessageCodec;
+private static final String PACKABLE_METHOD_CACHE = 
"PACKABLE_METHOD_CACHE";
 
-private final WrapperHttpMessageCodec wrapperHttpMessageCodec;
+private final URL url;
 
-public GrpcCompositeCodec(
-ProtobufHttpMessageCodec protobufHttpMessageCodec, 
WrapperHttpMessageCodec wrapperHttpMessageCodec) {
-this.protobufHttpMessageCodec = protobufHttpMessageCodec;
-this.wrapperHttpMessageCodec = wrapperHttpMessageCodec;
-}
+private final FrameworkModel frameworkModel;
+
+private final String mediaType;
 
-public void setEncodeTypes(Class[] encodeTypes) {
-this.wrapperHttpMessageCodec.setEncodeTypes(encodeTypes);
+private PackableMethod packableMethod;
+
+public GrpcCompositeCodec(URL url, FrameworkModel frameworkModel, String 
mediaType) {
+this.url = url;
+this.frameworkModel = frameworkModel;
+this.mediaType = mediaType;
 }
 
-public void setDecodeTypes(Class[] decodeTypes) {
-this.wrapperHttpMessageCodec.setDecodeTypes(decodeTypes);
+public void loadPackableMethod(MethodDescriptor methodDescriptor) {
+if (methodDescriptor instanceof PackableMethod) {
+packableMethod = (PackableMethod) methodDescriptor;
+return;
+}
+Map cacheMap = 
(Map) url.getServiceModel()
+.getServiceMetadata()
+.getAttributeMap()
+.computeIfAbsent(PACKABLE_METHOD_CACHE, k -> new 
ConcurrentHashMap<>());
+packableMethod = cacheMap.computeIfAbsent(methodDescriptor, md -> 
frameworkModel
+.getExtensionLoader(PackableMethodFactory.class)
+
.getExtension(ConfigurationUtils.getGlobalConfiguration(url.getApplicationModel())
+.getString(DUBBO_PACKABLE_METHOD_FACTORY, DEFAULT_KEY))
+.create(methodDescriptor, url, mediaType));

Review Comment:
**Security Issue**: The implementation of loadPackableMethod lacks input 
validation for the MethodDescriptor parameter, potentially allowing the 
insertion of an invalid or malicious MethodDescriptor object. This can lead to 
security vulnerabilities such as code injection or unauthorized method 
execution.  **Fix**: Validate the MethodDescriptor object to ensure it is 
not null, and verify that it contains valid data before using it.  **Code 
Suggestion**: 
```
+if (methodDescriptor == null || 
!validateMethodDescriptor(methodDescriptor)) {
+throw new IllegalArgumentException("Invalid MethodDescriptor 
provided");
+}
+Map cacheMap = 
(Map) url.getServiceModel()
+.getServiceMetadata()
+.getAttributeMap()
+.computeIfAbsent(PACKABLE_METHOD_CACHE, k -> new 
ConcurrentHashMap<>());
+packableMethod = cacheMap.computeIfAbsent(methodDescriptor, md -> 
frameworkModel
+.getExtensionLoader(PackableMethodFactory.class)
+
.getExtension(ConfigurationUtils.getGlobalConfiguration(url.getApplicationModel())
+.getString(DUBBO_PACKABLE_METHOD_FACTORY, 
DEFAULT_KEY))
+.create(methodDescriptor, url, mediaType));
```
   
**Performance Issue**: The method 'loadPackableMethod' uses unchecked 
casting 

Re: [PR] Refactor 3.3 grpc http2 processes [dubbo]

2024-04-30 Thread via GitHub


BitoAgent commented on code in PR #13786:
URL: https://github.com/apache/dubbo/pull/13786#discussion_r1585704504


##
dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/h12/grpc/GrpcCompositeCodec.java:
##
@@ -16,123 +16,103 @@
  */
 package org.apache.dubbo.rpc.protocol.tri.h12.grpc;
 
+import org.apache.dubbo.common.URL;
+import org.apache.dubbo.common.config.ConfigurationUtils;
+import org.apache.dubbo.common.io.StreamUtils;
+import org.apache.dubbo.common.utils.ArrayUtils;
 import org.apache.dubbo.remoting.http12.exception.DecodeException;
 import org.apache.dubbo.remoting.http12.exception.EncodeException;
 import org.apache.dubbo.remoting.http12.message.HttpMessageCodec;
 import org.apache.dubbo.remoting.http12.message.MediaType;
+import org.apache.dubbo.rpc.model.FrameworkModel;
+import org.apache.dubbo.rpc.model.MethodDescriptor;
+import org.apache.dubbo.rpc.model.PackableMethod;
+import org.apache.dubbo.rpc.model.PackableMethodFactory;
 
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 import java.nio.charset.Charset;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 
-import com.google.protobuf.Message;
-
-import static 
org.apache.dubbo.common.constants.CommonConstants.PROTOBUF_MESSAGE_CLASS_NAME;
+import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_KEY;
+import static 
org.apache.dubbo.common.constants.CommonConstants.DUBBO_PACKABLE_METHOD_FACTORY;
 
 public class GrpcCompositeCodec implements HttpMessageCodec {
 
-private final ProtobufHttpMessageCodec protobufHttpMessageCodec;
+private static final String PACKABLE_METHOD_CACHE = 
"PACKABLE_METHOD_CACHE";
 
-private final WrapperHttpMessageCodec wrapperHttpMessageCodec;
+private final URL url;
 
-public GrpcCompositeCodec(
-ProtobufHttpMessageCodec protobufHttpMessageCodec, 
WrapperHttpMessageCodec wrapperHttpMessageCodec) {
-this.protobufHttpMessageCodec = protobufHttpMessageCodec;
-this.wrapperHttpMessageCodec = wrapperHttpMessageCodec;
-}
+private final FrameworkModel frameworkModel;
+
+private final String mediaType;
 
-public void setEncodeTypes(Class[] encodeTypes) {
-this.wrapperHttpMessageCodec.setEncodeTypes(encodeTypes);
+private PackableMethod packableMethod;
+
+public GrpcCompositeCodec(URL url, FrameworkModel frameworkModel, String 
mediaType) {
+this.url = url;
+this.frameworkModel = frameworkModel;
+this.mediaType = mediaType;
 }
 
-public void setDecodeTypes(Class[] decodeTypes) {
-this.wrapperHttpMessageCodec.setDecodeTypes(decodeTypes);
+public void loadPackableMethod(MethodDescriptor methodDescriptor) {
+if (methodDescriptor instanceof PackableMethod) {
+packableMethod = (PackableMethod) methodDescriptor;
+return;
+}
+Map cacheMap = 
(Map) url.getServiceModel()
+.getServiceMetadata()
+.getAttributeMap()
+.computeIfAbsent(PACKABLE_METHOD_CACHE, k -> new 
ConcurrentHashMap<>());
+packableMethod = cacheMap.computeIfAbsent(methodDescriptor, md -> 
frameworkModel
+.getExtensionLoader(PackableMethodFactory.class)
+
.getExtension(ConfigurationUtils.getGlobalConfiguration(url.getApplicationModel())
+.getString(DUBBO_PACKABLE_METHOD_FACTORY, DEFAULT_KEY))
+.create(methodDescriptor, url, mediaType));

Review Comment:
**Security Issue**: The implementation of loadPackableMethod lacks input 
validation for the MethodDescriptor parameter, potentially allowing the 
insertion of an invalid or malicious MethodDescriptor object. This can lead to 
security vulnerabilities such as code injection or unauthorized method 
execution.  **Fix**: Validate the MethodDescriptor object to ensure it is 
not null, and verify that it contains valid data before using it.  **Code 
Suggestion**: 
```
+if (methodDescriptor == null || 
!validateMethodDescriptor(methodDescriptor)) {
+throw new IllegalArgumentException("Invalid MethodDescriptor 
provided");
+}
+Map cacheMap = 
(Map) url.getServiceModel()
+.getServiceMetadata()
+.getAttributeMap()
+.computeIfAbsent(PACKABLE_METHOD_CACHE, k -> new 
ConcurrentHashMap<>());
+packableMethod = cacheMap.computeIfAbsent(methodDescriptor, md -> 
frameworkModel
+.getExtensionLoader(PackableMethodFactory.class)
+
.getExtension(ConfigurationUtils.getGlobalConfiguration(url.getApplicationModel())
+.getString(DUBBO_PACKABLE_METHOD_FACTORY, 
DEFAULT_KEY))
+.create(methodDescriptor, url, mediaType));
```
   
**Performance Issue**: The method 'loadPackableMethod' uses unchecked 
casting 

Re: [PR] Refactor 3.3 grpc http2 processes [dubbo]

2024-04-30 Thread via GitHub


BitoAgent commented on PR #13786:
URL: https://github.com/apache/dubbo/pull/13786#issuecomment-2087738532

   AI Code Review is in progress (usually takes <10 minutes unless it's a very 
large PR).


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [PR] Refactor 3.3 grpc http2 processes [dubbo]

2024-04-30 Thread via GitHub


BitoAgent commented on PR #13786:
URL: https://github.com/apache/dubbo/pull/13786#issuecomment-2087735031

   AI Code Review is in progress (usually takes <10 minutes unless it's a very 
large PR).


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [I] [Feature] Service Discovery support local cache when registry is unavailable [dubbo]

2024-04-30 Thread via GitHub


walkinggo commented on issue #13856:
URL: https://github.com/apache/dubbo/issues/13856#issuecomment-2087557883

   > > And, regarding the implementation of local cache, since you mentioned 
that it will be used as a fallback solution, I think it only needs to be 
implemented in memory (for example, through a `Map` ) without the need to store 
it in the disk (like Nacos) , because it is a small probability event after all.
   > 
   > The main purpose is to save in the disk. To prevent if registry crashed 
Dubbo cannot start.
   
   Indeed, you can use serialization interfaces to save information on the 
local disk. However, if users tamper with the files storing this information, 
it can lead to data security issues. Unauthorized changes might corrupt the 
data, introduce errors, or cause security vulnerabilities if sensitive data is 
exposed or manipulated.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [PR] [Feature][3.3] Triple rest jaxrs ParamConverter support [dubbo]

2024-04-30 Thread via GitHub


sonarcloud[bot] commented on PR #14148:
URL: https://github.com/apache/dubbo/pull/14148#issuecomment-2085861963

   ## [![Quality Gate 
Passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/qg-passed-20px.png
 'Quality Gate 
Passed')](https://sonarcloud.io/dashboard?id=apache_dubbo=14148) 
**Quality Gate passed**  
   Issues  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [2 New 
issues](https://sonarcloud.io/project/issues?id=apache_dubbo=14148=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/accepted-16px.png
 '') [0 Accepted 
issues](https://sonarcloud.io/component_measures?id=apache_dubbo=14148=new_accepted_issues=list)
   
   Measures  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0 Security 
Hotspots](https://sonarcloud.io/project/security_hotspots?id=apache_dubbo=14148=false=true)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0.0% Coverage on New 
Code](https://sonarcloud.io/component_measures?id=apache_dubbo=14148=new_coverage=list)
  
   
![](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/passed-16px.png
 '') [0.0% Duplication on New 
Code](https://sonarcloud.io/component_measures?id=apache_dubbo=14148=new_duplicated_lines_density=list)
  
 
   [See analysis details on 
SonarCloud](https://sonarcloud.io/dashboard?id=apache_dubbo=14148)
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [I] [Bug] The actual number of connections established is twice what I configured [dubbo]

2024-04-30 Thread via GitHub


walkinggo commented on issue #14129:
URL: https://github.com/apache/dubbo/issues/14129#issuecomment-2085581132

   In version 3.x of Dubbo, to maintain compatibility with the older 2.x 
versions, Dubbo adopted a dual registration method during service migration, 
registering services both at the interface level and the application level. 
This is why the number of connections appears to be doubled.
   you can see the explain in [chinese 
version](https://cn.dubbo.apache.org/zh-cn/overview/mannual/java-sdk/upgrades-and-compatibility/service-discovery/migration-service-discovery/)
 or [english 
version](https://cn.dubbo.apache.org/en/overview/tasks/migration/service-discovery-samples/)
 .
   You can find the details of the interface-level services in the ZooKeeper 
path `/dubbo/com.example.ProductService/providers`, and the details of the 
application-level services under the ZooKeeper path 
`/dubbo/metadata/ProductApp`.In ZooKeeper, you can indeed see that the specific 
number of connections is 7.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



[PR] [Feature][3.3] Triple rest jaxrs ParamConverter support [dubbo]

2024-04-30 Thread via GitHub


fanlobu opened a new pull request, #14148:
URL: https://github.com/apache/dubbo/pull/14148

   ## What is the purpose of the change
   Triple rest jaxrs ParamConverter support,related: #14037
   
   
   ## Brief changelog
   
   
   ## Verifying this change
   
   
   
   
   ## Checklist
   - [x] Make sure there is a 
[GitHub_issue](https://github.com/apache/dubbo/issues) field 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.
   - [ ] 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.
   - [ ] Check if is necessary to patch to Dubbo 3 if you are work on Dubbo 2.7
   - [ ] 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 sample in [dubbo 
samples](https://github.com/apache/dubbo-samples) project.
   - [ ] Add some description to 
[dubbo-website](https://github.com/apache/dubbo-website) project if you are 
requesting to add a feature.
   - [ ] GitHub Actions works fine on your own branch.
   - [ ] If this contribution is large, please follow the [Software Donation 
Guide](https://github.com/apache/dubbo/wiki/Software-donation-guide).
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [PR] Upgrade dubbo-go to v3.1.1 [dubbo-go-pixiu]

2024-04-30 Thread via GitHub


AlexStocks commented on code in PR #630:
URL: https://github.com/apache/dubbo-go-pixiu/pull/630#discussion_r1584922175


##
pkg/config/xds/apiclient/grpc_envoy.go:
##
@@ -19,12 +19,12 @@ package apiclient
 
 import (
"context"
+   "github.com/apache/dubbo-go-pixiu/pkg/logger"

Review Comment:
   这个不怎么 dubbogo 了,哈哈,换下位置吧



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [PR] Fix netty memory leak [dubbo]

2024-04-30 Thread via GitHub


finefuture commented on code in PR #14127:
URL: https://github.com/apache/dubbo/pull/14127#discussion_r1584753409


##
dubbo-rpc/dubbo-rpc-triple/src/main/java/org/apache/dubbo/rpc/protocol/tri/h12/http2/GenericHttp2ServerTransportListener.java:
##
@@ -164,7 +165,7 @@ protected void onMetadataCompletion(Http2Header metadata) {
 @Override
 protected void onDataCompletion(Http2InputMessage message) {
 if (message.isEndStream()) {
-serverCallListener.onComplete();

Review Comment:
   Closing the decoder triggers the onComplete method of the serverCallListener.
   
![image](https://github.com/apache/dubbo/assets/18413695/3a040fcc-70a6-4deb-b1aa-8ea563a7a04c)
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [PR] Add tests for triple upgrade http2 [dubbo-integration-cases]

2024-04-30 Thread via GitHub


walklown commented on PR #22:
URL: 
https://github.com/apache/dubbo-integration-cases/pull/22#issuecomment-2085131398

   The certificate file comes from the dubbo-samples project and the license 
cannot be added.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [PR] Triple protocol http1 upgrade support [dubbo]

2024-04-30 Thread via GitHub


walklown commented on PR #14026:
URL: https://github.com/apache/dubbo/pull/14026#issuecomment-2085123076

   @AlbumenJ The problem has been solved, PTAL.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [PR] Triple protocol http1 upgrade support [dubbo]

2024-04-30 Thread via GitHub


walklown commented on PR #14026:
URL: https://github.com/apache/dubbo/pull/14026#issuecomment-2085120737

   > LGTM, but have you tested no impact to dubbo protocol? And It would be 
good to place your test as a unit test in the Dubbo project, or you could put 
it in the integration tests as well: 
https://github.com/apache/dubbo-integration-cases
   
   Submitted some test cases to 
https://github.com/apache/dubbo-integration-cases/pull/22
   1. Http2ClientT: Test on triple protocol to support other clients http1 to 
upgrade http2
   2. DubboConsumerT: triple protocol and dubbo protocol RPC function testing, 
including turning on and off ssl


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [PR] Upgrade dubbo-go to v3.1.1 [dubbo-go-pixiu]

2024-04-30 Thread via GitHub


codecov-commenter commented on PR #630:
URL: https://github.com/apache/dubbo-go-pixiu/pull/630#issuecomment-2084688986

   ## 
[Codecov](https://app.codecov.io/gh/apache/dubbo-go-pixiu/pull/630?dropdown=coverage=pr=h1_medium=referral_source=github_content=comment_campaign=pr+comments_term=apache)
 Report
   All modified and coverable lines are covered by tests :white_check_mark:
   > Project coverage is 37.15%. Comparing base 
[(`26606a8`)](https://app.codecov.io/gh/apache/dubbo-go-pixiu/commit/26606a8317ac79fb8ce826138a34908b62beae1c?dropdown=coverage=desc_medium=referral_source=github_content=comment_campaign=pr+comments_term=apache)
 to head 
[(`02da6ee`)](https://app.codecov.io/gh/apache/dubbo-go-pixiu/pull/630?dropdown=coverage=pr=desc_medium=referral_source=github_content=comment_campaign=pr+comments_term=apache).
   > Report is 5 commits behind head on develop.
   
   > :exclamation: Current head 02da6ee differs from pull request most recent 
head e6158b0. Consider uploading reports for the commit e6158b0 to get more 
accurate results
   
   
   Additional details and impacted files
   
   
   ```diff
   @@ Coverage Diff  @@
   ##   develop #630   +/-   ##
   
   - Coverage54.67%   37.15%   -17.53% 
   
 Files  671   62  -609 
 Lines78658 4514-74144 
   
   - Hits 43006 1677-41329 
   + Misses   31981 2648-29333 
   + Partials  3671  189 -3482 
   ```
   
   
   
   
   
   [:umbrella: View full report in Codecov by 
Sentry](https://app.codecov.io/gh/apache/dubbo-go-pixiu/pull/630?dropdown=coverage=pr=continue_medium=referral_source=github_content=comment_campaign=pr+comments_term=apache).
   
   :loudspeaker: Have feedback on the report? [Share it 
here](https://about.codecov.io/codecov-pr-comment-feedback/?utm_medium=referral_source=github_content=comment_campaign=pr+comments_term=apache).
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



[I] [Bug] version [dubbo]

2024-04-30 Thread via GitHub


imgoby opened a new issue, #14147:
URL: https://github.com/apache/dubbo/issues/14147

   ### Pre-check
   
   - [X] I am sure that all the content I provide is in English.
   
   
   ### Search before asking
   
   - [X] I had searched in the 
[issues](https://github.com/apache/dubbo/issues?q=is%3Aissue) and found no 
similar issues.
   
   
   ### Apache Dubbo Component
   
   Java SDK (apache/dubbo)
   
   ### Dubbo Version
   
   3.3.0-beta.2 
   
   ### Steps to reproduce this issue
   
   1. check out the sub project source: 
https://github.com/imgoby/spring-cloud-alibaba-dubbo-native
   2.  mvn clean package native:compile
   3. enter sub project: cd dubbo-samples-native-image-registry-provider
   4. cd target
   5. run:  ./dubbo-spring-boot-zookeeper-provider
   
   ### What you expected to happen
   
   Run without Exception.
   
   ### Anything else
   
   ```
   2024-04-30T15:52:25.550+08:00  INFO 31307 --- [   main] 
.DubboRegistryZooKeeperProviderBootstrap : Starting AOT-processed 
DubboRegistryZooKeeperProviderBootstrap using Java 17.0.11 with PID 31307 
(/root/spring-cloud-alibaba-dubbo-native/dubbo-spring-boot-zookeeper-provider/target/dubbo-spring-boot-zookeeper-provider
 started by root in 
/root/spring-cloud-alibaba-dubbo-native/dubbo-spring-boot-zookeeper-provider/target)
   2024-04-30T15:52:25.550+08:00  INFO 31307 --- [   main] 
.DubboRegistryZooKeeperProviderBootstrap : No active profile set, falling back 
to 1 default profile: "default"
   2024-04-30T15:52:25.552+08:00  WARN 31307 --- [   main] 
w.s.c.ServletWebServerApplicationContext : Exception encountered during context 
initialization - cancelling refresh attempt: 
org.springframework.beans.factory.BeanCreationException: Error creating bean 
with name 'serviceAnnotationBeanProcessor': Instantiation of supplied bean 
failed
   2024-04-30T15:52:25.552+08:00 ERROR 31307 --- [   main] 
o.s.boot.SpringApplication   : Application run failed
   
   org.springframework.beans.factory.BeanCreationException: Error creating bean 
with name 'serviceAnnotationBeanProcessor': Instantiation of supplied bean 
failed
at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.obtainFromSupplier(AbstractAutowireCapableBeanFactory.java:1220)
 ~[dubbo-spring-boot-zookeeper-provider:6.0.11]
at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1158)
 ~[dubbo-spring-boot-zookeeper-provider:6.0.11]
at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:560)
 ~[dubbo-spring-boot-zookeeper-provider:6.0.11]
at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:520)
 ~[dubbo-spring-boot-zookeeper-provider:6.0.11]
at 
org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:326)
 ~[dubbo-spring-boot-zookeeper-provider:6.0.11]
at 
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
 ~[dubbo-spring-boot-zookeeper-provider:6.0.11]
at 
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:324)
 ~[dubbo-spring-boot-zookeeper-provider:6.0.11]
at 
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:205)
 ~[dubbo-spring-boot-zookeeper-provider:6.0.11]
at 
org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:138)
 ~[na:na]
at 
org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:771)
 ~[dubbo-spring-boot-zookeeper-provider:6.0.11]
at 
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:589)
 ~[dubbo-spring-boot-zookeeper-provider:6.0.11]
at 
org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146)
 ~[dubbo-spring-boot-zookeeper-provider:3.0.9]
at 
org.springframework.boot.SpringApplication.refresh(SpringApplication.java:732) 
~[dubbo-spring-boot-zookeeper-provider:3.0.9]
at 
org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:434)
 ~[dubbo-spring-boot-zookeeper-provider:3.0.9]
at 
org.springframework.boot.SpringApplication.run(SpringApplication.java:310) 
~[dubbo-spring-boot-zookeeper-provider:3.0.9]
at 
org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:150)
 ~[na:na]
at 

Re: [PR] Upgrade Dubbo go to v3.1.1 [dubbo-go-pixiu-samples]

2024-04-30 Thread via GitHub


mark4z merged PR #54:
URL: https://github.com/apache/dubbo-go-pixiu-samples/pull/54


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



[PR] Upgrade Dubbo go to v3.1.1 [dubbo-go-pixiu-samples]

2024-04-30 Thread via GitHub


mark4z opened a new pull request, #54:
URL: https://github.com/apache/dubbo-go-pixiu-samples/pull/54

   
   
   **What this PR does**:
   
   **Which issue(s) this PR fixes**:
   
   Fixes #
   
   **Special notes for your reviewer**:
   
   **Does this PR introduce a user-facing change?**:
   
   ```release-note
   
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [I] [Bug] The actual number of connections established is twice what I configured [dubbo]

2024-04-30 Thread via GitHub


lpcy commented on issue #14129:
URL: https://github.com/apache/dubbo/issues/14129#issuecomment-2084575796

   > i can see the number of connections in DubboProtocol#getClients and it's 
normal.can u provide more information?i can't reproduce this bug.
   
   I found that DubboProtocol#getClients will be called twice:
   First:
   ```
   getClients:419, DubboProtocol (org.apache.dubbo.rpc.protocol.dubbo)
   protocolBindingRefer:412, DubboProtocol (org.apache.dubbo.rpc.protocol.dubbo)
   ..
   toInvokers:430, RegistryDirectory (org.apache.dubbo.registry.integration)
   refreshInvoker:292, RegistryDirectory (org.apache.dubbo.registry.integration)
   refreshOverrideAndInvoker:233, RegistryDirectory 
(org.apache.dubbo.registry.integration)
   notify:209, RegistryDirectory (org.apache.dubbo.registry.integration)
   notify:533, AbstractRegistry (org.apache.dubbo.registry.support)
   doNotify:373, FailbackRegistry (org.apache.dubbo.registry.support)
   notify:365, FailbackRegistry (org.apache.dubbo.registry.support)
   doSubscribe:241, ZookeeperRegistry (org.apache.dubbo.registry.zookeeper)
   subscribe:300, FailbackRegistry (org.apache.dubbo.registry.support)
   ..
   refreshInterfaceInvoker:464, MigrationInvoker 
(org.apache.dubbo.registry.client.migration)
   migrateToApplicationFirstInvoker:245, MigrationInvoker 
(org.apache.dubbo.registry.client.migration)
   refreshInvoker:76, MigrationRuleHandler 
(org.apache.dubbo.registry.client.migration)
   doMigrate:60, MigrationRuleHandler 
(org.apache.dubbo.registry.client.migration)
   ..
   createInvoker:615, ReferenceConfig (org.apache.dubbo.config)
   createProxy:461, ReferenceConfig (org.apache.dubbo.config)
   init:348, ReferenceConfig (org.apache.dubbo.config)
   ..
   ```
   second:
   ```
   getClients:419, DubboProtocol (org.apache.dubbo.rpc.protocol.dubbo)
   protocolBindingRefer:412, DubboProtocol (org.apache.dubbo.rpc.protocol.dubbo)
   ..
   toInvokers:419, ServiceDiscoveryRegistryDirectory 
(org.apache.dubbo.registry.client)
   refreshInvoker:313, ServiceDiscoveryRegistryDirectory 
(org.apache.dubbo.registry.client)
   refreshOverrideAndInvoker:197, ServiceDiscoveryRegistryDirectory 
(org.apache.dubbo.registry.client)
   notify:189, ServiceDiscoveryRegistryDirectory 
(org.apache.dubbo.registry.client)
   addListenerAndNotify:236, ServiceInstancesChangedListener 
(org.apache.dubbo.registry.client.event.listener)
   subscribeURLs:330, ServiceDiscoveryRegistry 
(org.apache.dubbo.registry.client)
   doSubscribe:227, ServiceDiscoveryRegistry (org.apache.dubbo.registry.client)
   subscribe:189, ServiceDiscoveryRegistry (org.apache.dubbo.registry.client)
   subscribe:88, ListenerRegistryWrapper (org.apache.dubbo.registry)
   subscribe:184, DynamicDirectory (org.apache.dubbo.registry.integration)
   subscribe:140, ServiceDiscoveryRegistryDirectory 
(org.apache.dubbo.registry.client)
   doCreateInvoker:629, RegistryProtocol (org.apache.dubbo.registry.integration)
   getServiceDiscoveryInvoker:65, InterfaceCompatibleRegistryProtocol 
(org.apache.dubbo.registry.integration)
   refreshServiceDiscoveryInvoker:440, MigrationInvoker 
(org.apache.dubbo.registry.client.migration)
   migrateToApplicationFirstInvoker:246, MigrationInvoker 
(org.apache.dubbo.registry.client.migration)
   refreshInvoker:76, MigrationRuleHandler 
(org.apache.dubbo.registry.client.migration)
   doMigrate:60, MigrationRuleHandler 
(org.apache.dubbo.registry.client.migration)
   onRefer:249, MigrationRuleListener 
(org.apache.dubbo.registry.client.migration)
   interceptInvoker:594, RegistryProtocol 
(org.apache.dubbo.registry.integration)
   ..
   createInvoker:615, ReferenceConfig (org.apache.dubbo.config)
   createProxy:461, ReferenceConfig (org.apache.dubbo.config)
   init:348, ReferenceConfig (org.apache.dubbo.config)
   ```
   The key method is MigrationInvoker#migrateToApplicationFirstInvoker. The 
getClients method will be called separately once:
   ```java
   @Override
   public void migrateToApplicationFirstInvoker(MigrationRule newRule) {
   CountDownLatch latch = new CountDownLatch(0);
   refreshInterfaceInvoker(latch);
   refreshServiceDiscoveryInvoker(latch);
   
   // directly calculate preferred invoker, will not wait until address 
notify
   // calculation will re-occurred when address notify later
   calcPreferredInvoker(newRule);
   }
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org



Re: [I] Zookeeper need catch exception when write failed [dubbo]

2024-04-30 Thread via GitHub


walkinggo commented on issue #12941:
URL: https://github.com/apache/dubbo/issues/12941#issuecomment-2084476678

   is there done?i want to try it if nobody want do it.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


-
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org