Closed iwangjie closed 9 months ago
不太了解源码,只能提供一个信息,正常调用不会走:org.apache.dubbo.rpc.protocol.tri.call.AbstractServerCallListener#invoke 逻辑,异常调用会走到 :org.apache.dubbo.rpc.protocol.tri.call.AbstractServerCallListener#invoke
不好意思,补充信息,似乎 tri 的会有问题,Dubbo 的不会有问题,是不是因为协议复用呢?
2024-01-25 15:11:39.337 [TID: N/A] [] [DubboServerHandler-192.168.48.17:20880-thread-31] DEBUG org.apache.dubbo.remoting.transport.DecodeHandler:? - [DUBBO] Decode decodeable message org.apache.dubbo.rpc.protocol.dubbo.DecodeableRpcInvocation, dubbo version: 3.1.11, current host: 192.168.48.17
2024-01-25 15:11:39.337 [TID: N/A] [] [DubboServerHandler-192.168.48.17:20880-thread-31] INFO c.e.zhenghe.common.filters.ProviderRecordLogFilter:? - Receive request: [dubbo:192.168.48.17:20880:cloud-caring:instance:test]: from sp-oms-consumer (unknown/unknown:54736) to com.serviceshare.cloud.caring.rpcapi.CloudCaringEmployeeAPI(batchSaveEmployee), args [1706164860382250]
2024-01-25 15:11:39.337 [TID: N/A] [] [DubboServerHandler-192.168.48.17:20880-thread-31] INFO c.e.zhenghe.common.filters.ProviderRecordLogFilter:? - Process request complete: com.serviceshare.cloud.caring.rpcapi.CloudCaringEmployeeAPI(batchSaveEmployee), return: null, elapsed: 0ms
2024-01-25 15:11:39.337 [TID: N/A] [] [DubboServerHandler-192.168.48.17:20880-thread-31] ERROR org.apache.dubbo.rpc.filter.ExceptionFilter:? - [DUBBO] Got unchecked and undeclared exception which called by 192.168.48.17. service: com.serviceshare.cloud.caring.rpcapi.CloudCaringEmployeeAPI, method: batchSaveEmployee, exception: org.springframework.data.redis.serializer.SerializationException: fileUploadKey is null, dubbo version: 3.1.11, current host: 192.168.48.17, error code: 5-36. This may be caused by , go to https://dubbo.apache.org/faq/5/36 to find instructions. org.springframework.data.redis.serializer.SerializationException: fileUploadKey is null
2024-01-25 15:11:42.138 [TID: N/A] [] [DubboServerHandler-192.168.48.17:20880-thread-32] DEBUG org.apache.dubbo.remoting.transport.DecodeHandler:? - [DUBBO] Decode decodeable message org.apache.dubbo.rpc.protocol.dubbo.DecodeableRpcInvocation, dubbo version: 3.1.11, current host: 192.168.48.17
2024-01-25 15:11:42.138 [TID: N/A] [] [DubboServerHandler-192.168.48.17:20880-thread-32] INFO c.e.zhenghe.common.filters.ProviderRecordLogFilter:? - Receive request: [dubbo:192.168.48.17:20880:cloud-caring:instance:test]: from sp-oms-consumer (unknown/unknown:54736) to com.serviceshare.cloud.caring.rpcapi.CloudCaringEmployeeAPI(batchSaveEmployee), args [1706164860382250]
2024-01-25 15:11:42.138 [TID: N/A] [] [DubboServerHandler-192.168.48.17:20880-thread-32] INFO c.e.zhenghe.common.filters.ProviderRecordLogFilter:? - Process request complete: com.serviceshare.cloud.caring.rpcapi.CloudCaringEmployeeAPI(batchSaveEmployee), return: null, elapsed: 0ms
2024-01-25 15:11:42.138 [TID: N/A] [] [DubboServerHandler-192.168.48.17:20880-thread-32] ERROR org.apache.dubbo.rpc.filter.ExceptionFilter:? - [DUBBO] Got unchecked and undeclared exception which called by 192.168.48.17. service: com.serviceshare.cloud.caring.rpcapi.CloudCaringEmployeeAPI, method: batchSaveEmployee, exception: org.springframework.data.redis.serializer.SerializationException: fileUploadKey is null, dubbo version: 3.1.11, current host: 192.168.48.17, error code: 5-36. This may be caused by , go to https://dubbo.apache.org/faq/5/36 to find instructions. org.springframework.data.redis.serializer.SerializationException: fileUploadKey is null
2024-01-25 15:11:43.226 [TID: N/A] [] [DubboServerHandler-192.168.48.17:20880-thread-33] DEBUG org.apache.dubbo.remoting.transport.DecodeHandler:? - [DUBBO] Decode decodeable message org.apache.dubbo.rpc.protocol.dubbo.DecodeableRpcInvocation, dubbo version: 3.1.11, current host: 192.168.48.17
2024-01-25 15:11:43.226 [TID: N/A] [] [DubboServerHandler-192.168.48.17:20880-thread-33] INFO c.e.zhenghe.common.filters.ProviderRecordLogFilter:? - Receive request: [dubbo:192.168.48.17:20880:cloud-caring:instance:test]: from sp-oms-consumer (unknown/unknown:54736) to com.serviceshare.cloud.caring.rpcapi.CloudCaringEmployeeAPI(batchSaveEmployee), args [1706164860382250]
2024-01-25 15:11:43.226 [TID: N/A] [] [DubboServerHandler-192.168.48.17:20880-thread-33] INFO c.e.zhenghe.common.filters.ProviderRecordLogFilter:? - Process request complete: com.serviceshare.cloud.caring.rpcapi.CloudCaringEmployeeAPI(batchSaveEmployee), return: null, elapsed: 0ms
2024-01-25 15:11:43.226 [TID: N/A] [] [DubboServerHandler-192.168.48.17:20880-thread-33] ERROR org.apache.dubbo.rpc.filter.ExceptionFilter:? - [DUBBO] Got unchecked and undeclared exception which called by 192.168.48.17. service: com.serviceshare.cloud.caring.rpcapi.CloudCaringEmployeeAPI, method: batchSaveEmployee, exception: org.springframework.data.redis.serializer.SerializationException: fileUploadKey is null, dubbo version: 3.1.11, current host: 192.168.48.17, error code: 5-36. This may be caused by , go to https://dubbo.apache.org/faq/5/36 to find instructions. org.springframework.data.redis.serializer.SerializationException: fileUploadKey is null
2024-01-25 15:11:47.808 [TID: N/A] [] [tri-protocol-50051-thread-24] INFO c.e.zhenghe.common.filters.ProviderRecordLogFilter:? - Receive request: [tri:192.168.48.17:50051:cloud-caring:instance:test]: from sp-oms-consumer (unknown/unknown:54481) to com.serviceshare.cloud.caring.rpcapi.CloudCaringEmployeeAPI(batchSaveEmployee), args [1706164860382250]
2024-01-25 15:11:47.808 [TID: N/A] [] [tri-protocol-50051-thread-24] INFO c.e.zhenghe.common.filters.ProviderRecordLogFilter:? - Process request complete: com.serviceshare.cloud.caring.rpcapi.CloudCaringEmployeeAPI(batchSaveEmployee), return: null, elapsed: 0ms
2024-01-25 15:11:47.808 [TID: N/A] [] [tri-protocol-50051-thread-24] ERROR org.apache.dubbo.rpc.filter.ExceptionFilter:? - [DUBBO] Got unchecked and undeclared exception which called by 192.168.48.17. service: com.serviceshare.cloud.caring.rpcapi.CloudCaringEmployeeAPI, method: batchSaveEmployee, exception: org.springframework.data.redis.serializer.SerializationException: fileUploadKey is null, dubbo version: 3.1.11, current host: 192.168.48.17, error code: 5-36. This may be caused by , go to https://dubbo.apache.org/faq/5/36 to find instructions. org.springframework.data.redis.serializer.SerializationException: fileUploadKey is null
Can you please submit a demo?
Can you please submit a demo?
已经解决,原因: org.apache.dubbo.rpc.protocol.tri.stream.TripleServerStream#complete 抛出异常 Method threw 'java.lang.NoSuchMethodError' exception. com.google.protobuf.GeneratedMessageV3.isStringEmpty(Ljava/lang/Object;)Z
因为 mysql8 驱动引入了 protobuf 依赖,和 Dubbo 这块代码冲突,没有使用 protobuf 需求,规约 protobuf 版本即可。但是 Dubbo直接吞掉异常不响应如果可以,最好优化一下
Can you please submit a demo?
另外,建议 Dubbo 3 传递 protobuf 依赖,或者文档注明应该使用的兼容版本是多少🥲。
Version information
DUBBO: 3.1.11 JDK: 1.8
JVM parameters
-Dlogging.level.org.apache.dubbo=debug -Dlogging.level.org.jboss.netty=debug -Dspring.rabbitmq.listener.allow-start-up=true -Ddubbo.protocol.name=tri -Ddubbo.application.enable-empty-protection=false -Ddubbo.application.serialize-check-status=DISABLE -Ddubbo.provider.prefer-serialization=hessian2 -Dmanagement.endpoints.web.base-path=/actuator -Dmanagement.endpoints.web.exposure.include=*
Phenomenon
Server startup casually throws an exception, the same server thread, the client can receive it for the first time, and the client will time out for the second time. client :Waiting server-side response timeout
Expect
No timeout occurs when returning results normally
Client timeout stack
Server-side evidence