apache / apache/servicecomb-java-chassis

RPC接口调用出现类无法找到:Could not initialize class rx.Observable

Ouverte
#3,722 5 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Java
Étoiles
1.9k
Forks
814
Merge moyen
8 j 23 h
PR mergées (30 j)
1

Description

我尝试通过rpc调用时出现如下异常,不知道rx.Observable是什么,请问这是哪里缺少了东西么?重启微服务可规避,目前已出现两次,均出现在补丁升级后。
2023-03-16 13:26:18,953Z | ERROR | pcs-182 | InvokerUtils | 46 - ioei-rpcservice - 2023.315.941.44 | |||protocol:null||org.apache.servicecomb.core.provider.consumer.InvokerUtils.innerSyncInvoke(InvokerUtils.java:80) | Msg: invoke failed, IoVehicle.apiAuthQueryService.queryApiCertCNameAuthStatus
java.lang.NoClassDefFoundError: Could not initialize class rx.Observable
at com.netflix.loadbalancer.reactive.LoadBalancerCommand.selectServer(LoadBalancerCommand.java:180) ~[46:ioei-rpcservice:2023.315.941.44]
at com.netflix.loadbalancer.reactive.LoadBalancerCommand.submit(LoadBalancerCommand.java:276) ~[46:ioei-rpcservice:2023.315.941.44]
at org.apache.servicecomb.loadbalance.LoadbalanceHandler.sendWithRetry(LoadbalanceHandler.java:303) ~[46:ioei-rpcservice:2023.315.941.44]
at org.apache.servicecomb.loadbalance.LoadbalanceHandler.handle(LoadbalanceHandler.java:184) ~[46:ioei-rpcservice:2023.315.941.44]
at org.apache.servicecomb.core.Invocation.next(Invocation.java:151) ~[46:ioei-rpcservice:2023.315.941.44]
at org.apache.servicecomb.core.provider.consumer.InvokerUtils.innerSyncInvoke(InvokerUtils.java:72) ~[46:ioei-rpcservice:2023.315.941.44]
at org.apache.servicecomb.provider.pojo.Invoker.syncInvoke(Invoker.java:161) ~[46:ioei-rpcservice:2023.315.941.44]
at org.apache.servicecomb.provider.pojo.Invoker.invoke(Invoker.java:157) ~[46:ioei-rpcservice:2023.315.941.44]
at com.xxx.jsf.invocation.PaaSInvoker.invoke(PaaSInvoker.java:21) ~[46:ioei-rpcservice:2023.315.941.44]
at com.sun.proxy.$Proxy311.queryApiCertCNameAuthStatus(Unknown Source) ~[46:ioei-rpcservice:2023.315.941.44]
at com.xxx.rpcservice.iovehicle.VehicleApiAuthQueryService.queryApiCertCNameAuthStatus(VehicleApiAuthQueryService.java:34) ~[46:ioei-rpcservice:2023.315.941.44]
at com.xxxx.vehicle.service.rpc.VehicleAuthService.isValidCertCname(VehicleAuthService.java:28) ~[?:?]
at com.xxxx.plugin.service.activation.process.ChoiceProcessor.process(ChoiceProcessor.java:92) ~[?:?]
at org.apache.camel.processor.DelegateSyncProcessor.process(DelegateSyncProcessor.java:63) ~[?:?]
at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201) ~[?:?]
at org.apache.camel.processor.Pipeline.process(Pipeline.java:138) ~[?:?]
at org.apache.camel.processor.Pipeline.process(Pipeline.java:101) ~[?:?]
at org.apache.camel.processor.TryProcessor.process(TryProcessor.java:113) ~[?:?]
at org.apache.camel.processor.TryProcessor.process(TryProcessor.java:84) ~[?:?]
at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201) ~[?:?]
at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:201) ~[?:?]
at org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:76) ~[?:?]
at org.apache.camel.processor.SharedCamelInternalProcessor.process(SharedCamelInternalProcessor.java:186) ~[?:?]
at org.apache.camel.processor.SharedCamelInternalProcessor.process(SharedCamelInternalProcessor.java:86) ~[?:?]
at org.apache.camel.impl.ProducerCache$1.doInProducer(ProducerCache.java:541) ~[?:?]
at org.apache.camel.impl.ProducerCache$1.doInProducer(ProducerCache.java:506) ~[?:?]
at org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:369) ~[?:?]
at org.apache.camel.impl.ProducerCache.sendExchange(ProducerCache.java:506) ~[?:?]
at org.apache.camel.impl.ProducerCache.send(ProducerCache.java:213) ~[?:?]
at org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:139) ~[?:?]
at org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:125) ~[?:?]
at com.xxx.service.common.cxf.CamelService$1.lambda$null$0(CamelService.java:75) ~[?:?]

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Commencez par l’échec au niveau de rx.Observable et par les frames de pile cités LoadBalancerCommand.selectServer, LoadbalanceHandler.sendWithRetry et InvokerUtils.innerSyncInvoke. Vérifiez comment la mise à niveau du correctif modifie les dépendances d’exécution et l’initialisation des classes du service RPC. Le travail est terminé lorsque l’appel RPC signalé n’échoue plus avec NoClassDefFoundError après une mise à niveau, et que l’échec est couvert par un test reproductible si le projet en fournit un.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
java
Domaine
backend, distributed-systems
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.