wanwenq33 commented on issue #13810:
URL: https://github.com/apache/dubbo/issues/13810#issuecomment-1972960208

   artahs抓到的报错path=null,dubbo只使用了基本功能,消费者和提供者都是简单的xml配置<dubbo:service
                interface="com.XXX....IUserService"
                ref="userService" />
   
   
   method=org.apache.dubbo.rpc.protocol.AbstractInvoker.waitForResultIfSync 
location=AtExceptionExit
   ts=2024-03-01 18:34:00; [cost=3.200506ms] result=@ArrayList[
       @Object[][
           @AsyncRpcResult[
               logger=@FailsafeLogger[
                   
logger=@Slf4jLogger[org.apache.dubbo.common.logger.slf4j.Slf4jLogger@67aa23a],
                   disabled=@Boolean[false],
               ],
               storedContext=null,
               executor=@ThreadlessExecutor[
                   
logger=@FailsafeLogger[org.apache.dubbo.common.logger.support.FailsafeLogger@2e474dce],
                   queue=@LinkedBlockingQueue[isEmpty=true;size=0],
                   
waitingFuture=@DefaultFuture[org.apache.dubbo.remoting.exchange.support.DefaultFuture@346c86dc[Completed
 exceptionally]],
                   finished=@Boolean[true],
                   waiting=@Boolean[false],
                   lock=@Object[java.lang.Object@646d4d53],
                   $assertionsDisabled=@Boolean[true],
               ],
               invocation=@RpcInvocation[
                   serialVersionUID=@Long[-4355285085441097045],
                   
targetServiceUniqueName=@String[com.XX.XX.XX.XX.dubbo.service.user.IUserService],
                   
protocolServiceKey=@String[com.XX.XX.XX.XX.dubbo.service.user.IUserService],
                   
serviceModel=@ConsumerModel[org.apache.dubbo.rpc.model.ConsumerModel@cb7c76e9],
                   methodName=@String[updateUserAndroidDeviceToken],
                   
interfaceName=@String[com.XX.XX.XX.XX.dubbo.service.user.IUserService],
                   parameterTypes=@Class[][isEmpty=false;size=4],
                   
parameterTypesDesc=@String[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/XX/XX/XX/XX/common/enums/AndroidDevice;],
                   compatibleParamSignatures=@String[][isEmpty=false;size=4],
                   arguments=@Object[][isEmpty=false;size=4],
                   attachments=@HashMap[isEmpty=false;size=6],
                   
attachmentLock=@ReentrantLock[java.util.concurrent.locks.ReentrantLock@6fb2781d[Unlocked]],
                   attributes=@SynchronizedMap[isEmpty=false;size=4],
                   invoker=@DubboInvoker[interface 
com.XX.XX.XX.XX.dubbo.service.user.IUserService -> 10.112.126.226:18882],
                   returnType=@Class[void],
                   returnTypes=@Type[][isEmpty=false;size=2],
                   invokeMode=@InvokeMode[SYNC],
               ],
               async=@Boolean[false],
               responseFuture=@CompletableFuture[
                   
result=@AltResult[java.util.concurrent.CompletableFuture$AltResult@3e4b8814],
                   stack=null,
                   
NIL=@AltResult[java.util.concurrent.CompletableFuture$AltResult@4de7fe33],
                   useCommonPool=@Boolean[false],
                   
asyncPool=@ThreadPerTaskExecutor[java.util.concurrent.CompletableFuture$ThreadPerTaskExecutor@59dae37c],
                   SYNC=@Integer[0],
                   ASYNC=@Integer[1],
                   NESTED=@Integer[-1],
                   UNSAFE=@Unsafe[sun.misc.Unsafe@3149fddd],
                   RESULT=@Long[12],
                   STACK=@Long[16],
                   NEXT=@Long[16],
               ],
               setFutureWhenSync=@Boolean[true],
           ],
           @RpcInvocation[
               serialVersionUID=@Long[-4355285085441097045],
               
targetServiceUniqueName=@String[com.XX.XX.XX.XX.dubbo.service.user.IUserService],
               
protocolServiceKey=@String[com.XX.XX.XX.XX.dubbo.service.user.IUserService],
               serviceModel=@ConsumerModel[
                   apps=@TreeSet[isEmpty=true;size=0],
                   methodConfigs=@HashMap[isEmpty=true;size=0],
                   methodModels=@HashMap[isEmpty=false;size=21],
                   
serviceKey=@String[com.XX.XX.XX.XX.dubbo.service.user.IUserService],
                   
proxyObject=@IUserServiceDubboProxy24[com.XX.XX.XX.XX.dubbo.service.user.IUserServiceDubboProxy24@4a91e2a3],
                   
destroyRunner=@ReferenceConfig$$Lambda$464/1827302216[org.apache.dubbo.config.ReferenceConfig$$Lambda$464/1827302216@38f58ba4],
                   
classLoader=@ParallelWebappClassLoader[ParallelWebappClassLoader
     context: ROOT
     delegate: false
   ----------> Parent Classloader:
   java.net.URLClassLoader@7cca494b
   ],
                   interfaceClassLoader=null,
                   moduleModel=@ModuleModel[Dubbo Module[1.2.1]],
                   
serviceModel=@ReflectionServiceDescriptor[org.apache.dubbo.rpc.model.ReflectionServiceDescriptor@7f72b8b3],
                   config=@ReferenceConfig[<dubbo:reference cluster="failover" 
sticky="false" check="false" validation="false" id="userService" 
interface="com.XX.XX.XX.XX.dubbo.service.user.IUserService" />],
                   
serviceMetadata=@ServiceMetadata[org.apache.dubbo.rpc.model.ServiceMetadata@2ad4b6f2],
               ],
               methodName=@String[updateUserAndroidDeviceToken],
               
interfaceName=@String[com.XX.XX.XX.XX.dubbo.service.user.IUserService],
               parameterTypes=@Class[][
                   @Class[class java.lang.String],
                   @Class[class java.lang.String],
                   @Class[class java.lang.String],
                   @Class[class com.XX.XX.XX.XX.common.enums.AndroidDevice],
               ],
               
parameterTypesDesc=@String[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/XX/XX/XX/XX/common/enums/AndroidDevice;],
               compatibleParamSignatures=@String[][
                   @String[java.lang.String],
                   @String[java.lang.String],
                   @String[java.lang.String],
                   @String[com.XX.XX.XX.XX.common.enums.AndroidDevice],
               ],
               arguments=@Object[][
                   @String[4442730.esntest.upesn],
                   @String[104433437],
                   
@String[rQI7cJ8JoYsxFzk54whyhOnu/1htAm/XmIl5WwzwAup32iq1EiO2zkJZwTy4t9XN],
                   @AndroidDevice[HONOR],
               ],
               attachments=@HashMap[
                   @String[path]:null,
                   @String[remote.application]:@String[rest-server],
                   
@String[interface]:@String[com.XX.XX.XX.XX.dubbo.service.user.IUserService],
                   @String[version]:@String[0.0.0],
                   @String[timeout]:@Integer[1000],
                   @String[token]:@String[false],
               ],
               attachmentLock=@ReentrantLock[
                   serialVersionUID=@Long[7373984872572414699],
                   
sync=@NonfairSync[java.util.concurrent.locks.ReentrantLock$NonfairSync@27c171c7[State
 = 0, empty queue]],
               ],
               attributes=@SynchronizedMap[
                   
@String[methodModel]:@ConsumerMethodModel[org.apache.dubbo.rpc.model.ConsumerMethodModel@338308c2],
                   
@String[DUBBO_INVOKE_PROFILER]:@ProfilerEntry[org.apache.dubbo.common.profiler.ProfilerEntry@39e1e407],
                   
@String[consumerModel]:@ConsumerModel[org.apache.dubbo.rpc.model.ConsumerModel@cb7c76e9],
                   @String[serialization_id]:@Byte[2],
               ],
               invoker=@DubboInvoker[
                   clients=@ExchangeClient[][isEmpty=false;size=2],
                   index=@AtomicPositiveInteger[567],
                   version=@String[0.0.0],
                   
destroyLock=@ReentrantLock[java.util.concurrent.locks.ReentrantLock@5ac38271[Unlocked]],
                   invokers=@ConcurrentHashSet[isEmpty=false;size=392],
                   serverShutdownTimeout=@Integer[10000],
                   
logger=@FailsafeLogger[org.apache.dubbo.common.logger.support.FailsafeLogger@2e180d5b],
                   type=@Class[interface 
com.XX.XX.XX.XX.dubbo.service.user.IUserService],
                   
url=@InstanceAddressURL[DefaultServiceInstance{serviceName='XX-server', 
host='10.112.126.226', port=18882, enabled=true, healthy=true, 
metadata={dubbo.endpoints=[{"port":18882,"protocol":"dubbo"}], 
dubbo.metadata-service.url-params={"connections":"1","version":"1.0.0","dubbo":"2.0.2","release":"3.0.15","side":"provider","port":"18882","protocol":"dubbo"},
 dubbo.metadata.revision=f12482bf56b945ebee94b5868b1802c0, 
dubbo.metadata.storage-type=local, timestamp=1709203304527}}],
                   attachment=@UnmodifiableMap[isEmpty=false;size=2],
                   available=@Boolean[true],
                   destroyed=@Boolean[false],
                   setFutureWhenSync=@Boolean[true],
               ],
               returnType=@Class[
                   ANNOTATION=@Integer[8192],
                   ENUM=@Integer[16384],
                   SYNTHETIC=@Integer[4096],
                   cachedConstructor=null,
                   newInstanceCallerCache=null,
                   name=@String[void],
                   allPermDomain=@ProtectionDomain[ProtectionDomain  null
    null
    <no principals>
    java.security.Permissions@5ff6829f (
    ("java.security.AllPermission" "<all permissions>" "<all actions>")
   )
   
   ],
                   useCaches=@Boolean[true],
                   
reflectionData=@SoftReference[java.lang.ref.SoftReference@7fb6f4c],
                   classRedefinedCount=@Integer[0],
                   
genericInfo=@ClassRepository[sun.reflect.generics.repository.ClassRepository@1e649177],
                   serialVersionUID=@Long[3206093459760846163],
                   
serialPersistentFields=@ObjectStreamField[][isEmpty=true;size=0],
                   
reflectionFactory=@ReflectionFactory[sun.reflect.ReflectionFactory@17c6705f],
                   initted=@Boolean[true],
                   enumConstants=null,
                   enumConstantDirectory=null,
                   
annotationData=@AnnotationData[java.lang.Class$AnnotationData@29119c4a],
                   annotationType=null,
                   classValueMap=null,
               ],
               returnTypes=@Type[][
                   @Class[void],
                   @Class[void],
               ],
               invokeMode=@InvokeMode[
                   SYNC=@InvokeMode[SYNC],
                   ASYNC=@InvokeMode[ASYNC],
                   FUTURE=@InvokeMode[FUTURE],
                   $VALUES=@InvokeMode[][isEmpty=false;size=3],
                   name=@String[SYNC],
                   ordinal=@Integer[0],
               ],
           ],
       ],
       null,
       org.apache.dubbo.rpc.RpcException: Failed to invoke remote method: 
updateUserAndroidDeviceToken, provider: 
DefaultServiceInstance{serviceName='XX-server', host='10.112.126.226', 
port=18882, enabled=true, healthy=true, 
metadata={dubbo.endpoints=[{"port":18882,"protocol":"dubbo"}], 
dubbo.metadata-service.url-params={"connections":"1","version":"1.0.0","dubbo":"2.0.2","release":"3.0.15","side":"provider","port":"18882","protocol":"dubbo"},
 dubbo.metadata.revision=f12482bf56b945ebee94b5868b1802c0, 
dubbo.metadata.storage-type=local, timestamp=1709203304527}}, cause: 
org.apache.dubbo.remoting.RemotingException: Fail to decode request due to: 
java.lang.NullPointerException
   java.lang.NullPointerException
   
           at 
org.apache.dubbo.rpc.protocol.AbstractInvoker.waitForResultIfSync(AbstractInvoker.java:279)
           at 
org.apache.dubbo.rpc.protocol.AbstractInvoker.invoke(AbstractInvoker.java:185)
           at 
org.apache.dubbo.rpc.listener.ListenerInvokerWrapper.invoke(ListenerInvokerWrapper.java:78)
           at 
org.apache.dubbo.rpc.cluster.support.AbstractClusterInvoker.invokeWithContext(AbstractClusterInvoker.java:378)
           at 
org.apache.dubbo.rpc.cluster.support.FailoverClusterInvoker.doInvoke(FailoverClusterInvoker.java:80)
           at 
org.apache.dubbo.rpc.cluster.support.AbstractClusterInvoker.invoke(AbstractClusterInvoker.java:340)
           at 
org.apache.dubbo.rpc.cluster.router.RouterSnapshotFilter.invoke(RouterSnapshotFilter.java:46)
           at 
org.apache.dubbo.rpc.cluster.filter.FilterChainBuilder$CopyOfFilterChainNode.invoke(FilterChainBuilder.java:326)
           at 
org.apache.dubbo.monitor.support.MonitorFilter.invoke(MonitorFilter.java:99)
           at 
org.apache.dubbo.rpc.cluster.filter.FilterChainBuilder$CopyOfFilterChainNode.invoke(FilterChainBuilder.java:326)
           at 
org.apache.dubbo.rpc.protocol.dubbo.filter.FutureFilter.invoke(FutureFilter.java:51)
           at 
org.apache.dubbo.rpc.cluster.filter.FilterChainBuilder$CopyOfFilterChainNode.invoke(FilterChainBuilder.java:326)
           at 
org.apache.dubbo.rpc.cluster.filter.support.ConsumerContextFilter.invoke(ConsumerContextFilter.java:110)
           at 
org.apache.dubbo.rpc.cluster.filter.FilterChainBuilder$CopyOfFilterChainNode.invoke(FilterChainBuilder.java:326)
           at 
org.apache.dubbo.rpc.cluster.filter.FilterChainBuilder$CallbackRegistrationInvoker.invoke(FilterChainBuilder.java:193)
           at 
org.apache.dubbo.rpc.cluster.support.wrapper.AbstractCluster$ClusterFilterInvoker.invoke(AbstractCluster.java:92)
           at 
org.apache.dubbo.rpc.cluster.support.wrapper.MockClusterInvoker.invoke(MockClusterInvoker.java:102)
           at 
org.apache.dubbo.registry.client.migration.MigrationInvoker.invoke(MigrationInvoker.java:281)
           at 
org.apache.dubbo.rpc.proxy.InvocationUtil.invoke(InvocationUtil.java:55)
           at 
org.apache.dubbo.rpc.proxy.InvokerInvocationHandler.invoke(InvokerInvocationHandler.java:75)
           at 
com.XX.XX.XX.XX.dubbo.service.user.IUserServiceDubboProxy24.updateUserAndroidDeviceToken(IUserServiceDubboProxy24.java)
           at sun.reflect.GeneratedMethodAccessor274.invoke(Unknown Source)
           at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
           at java.lang.reflect.Method.invoke(Method.java:498)
           at 
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344)
           at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:208)
           at com.sun.proxy.$Proxy53.updateUserAndroidDeviceToken(Unknown 
Source)
           at 
com.XX.XX.sns.rest.webserver.controller.client.android.devicetoken.AndroidPushDeviceTokenController.setHonorDeviceToken(AndroidPushDeviceTokenController.java:298)
           at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
           at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
           at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
           at java.lang.reflect.Method.invoke(Method.java:498)
           at 
org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
           at 
org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:150)
           at 
org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:117)
           at 
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895)
           at 
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:808)
           at 
org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
           at 
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1072)
           at 
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:965)
           at 
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
           at 
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
           at javax.servlet.http.HttpServlet.service(HttpServlet.java:681)
           at 
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
           at javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
           at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
           at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
           at 
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
           at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
           at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
           at 
com.XX.XX.sns.rest.webserver.filter.MyHttpPutFilter.doFilterInternal(MyHttpPutFilter.java:74)
           at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
           at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
           at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
           at 
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
           at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
           at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
           at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
           at 
com.XX.XX.XX.XX.common.web.filter.CorsFilter.doFilter(CorsFilter.java:46)
           at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
           at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
           at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
           at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
           at 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543)
           at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
           at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
           at 
org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:769)
           at 
org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:698)
           at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
           at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:367)
           at 
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:639)
           at 
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
           at 
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:882)
           at 
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1647)
           at 
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
           at 
org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
           at 
org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
           at 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
           at java.lang.Thread.run(Thread.java:748)
   Caused by: java.util.concurrent.ExecutionException: 
org.apache.dubbo.remoting.RemotingException: Fail to decode request due to: 
java.lang.NullPointerException
   java.lang.NullPointerException
   
           at 
java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)
           at 
java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1915)
           at org.apache.dubbo.rpc.AsyncRpcResult.get(AsyncRpcResult.java:195)
           at 
org.apache.dubbo.rpc.protocol.AbstractInvoker.waitForResultIfSync(AbstractInvoker.java:264)
           ... 78 more
   Caused by: org.apache.dubbo.remoting.RemotingException: Fail to decode 
request due to: java.lang.NullPointerException
   java.lang.NullPointerException
   
           at 
org.apache.dubbo.remoting.exchange.support.DefaultFuture.doReceived(DefaultFuture.java:223)
           at 
org.apache.dubbo.remoting.exchange.support.DefaultFuture.received(DefaultFuture.java:185)
           at 
org.apache.dubbo.remoting.exchange.support.DefaultFuture.received(DefaultFuture.java:173)
           at 
org.apache.dubbo.remoting.exchange.support.header.HeaderExchangeHandler.handleResponse(HeaderExchangeHandler.java:60)
           at 
org.apache.dubbo.remoting.exchange.support.header.HeaderExchangeHandler.received(HeaderExchangeHandler.java:181)
           at 
org.apache.dubbo.remoting.transport.DecodeHandler.received(DecodeHandler.java:51)
           at 
org.apache.dubbo.remoting.transport.dispatcher.ChannelEventRunnable.run(ChannelEventRunnable.java:59)
           at 
org.apache.dubbo.common.threadpool.ThreadlessExecutor$RunnableWrapper.run(ThreadlessExecutor.java:184)
           at 
org.apache.dubbo.common.threadpool.ThreadlessExecutor.waitAndDrain(ThreadlessExecutor.java:103)
           at org.apache.dubbo.rpc.AsyncRpcResult.get(AsyncRpcResult.java:193)
           ... 79 more
   ,
   ]


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to