apache / apache/servicecomb-java-chassis
RPC接口调用出现类无法找到:Could not initialize class rx.Observable
- Lingua principale
- Java
- Stelle
- 1.9k
- Fork
- 814
- Merge medio
- 8g 23h
- PR unite (30g)
- 1
Descrizione
我尝试通过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) ~[?:?]
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Iniziate dal fallimento in rx.Observable e dagli stack frame citati LoadBalancerCommand.selectServer, LoadbalanceHandler.sendWithRetry e InvokerUtils.innerSyncInvoke. Verificate in che modo l’aggiornamento della patch modifica le dipendenze runtime e l’inizializzazione delle classi del servizio RPC. Il lavoro è completato quando la chiamata RPC segnalata non fallisce più con NoClassDefFoundError dopo un aggiornamento e il fallimento è coperto da un test riproducibile, se il progetto ne fornisce uno.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- java
- Ambito
- backend, distributed-systems
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 25/100