Uploaded image for project: 'Apache ServiceComb'
  1. Apache ServiceComb
  2. SCB-2139

Fix NPE when no service found for CommonHttpEdgeDispatcher

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • java-chassis-2.1.5
    • Java-Chassis
    • None

    Description

      2020-12-01 20:40:24.783 ERROR 3152 — [ntloop-thread-4] o.a.s.edge.core.AbstractEdgeDispatcher   : edge server failed.2020-12-01 20:40:24.783 ERROR 3152 — [ntloop-thread-4] o.a.s.edge.core.AbstractEdgeDispatcher   : edge server failed.
       java.lang.NullPointerException: null at org.apache.servicecomb.edge.core.CommonHttpEdgeDispatcher.onRequest(CommonHttpEdgeDispatcher.java:138) ~[edge-core-2.1.3.jar:2.1.3] at io.vertx.ext.web.impl.RouteState.handleContext(RouteState.java:1036) ~[vertx-web-3.9.4.jar:3.9.4] at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:131) [vertx-web-3.9.4.jar:3.9.4] at io.vertx.ext.web.impl.RoutingContextImpl.next(RoutingContextImpl.java:132) ~[vertx-web-3.9.4.jar:3.9.4] at org.apache.servicecomb.transport.rest.vertx.RestServerVerticle.lambda$mountAccessLogHandler$5(RestServerVerticle.java:183) ~[transport-rest-vertx-2.1.3.jar:2.1.3] at io.vertx.ext.web.impl.RouteState.handleContext(RouteState.java:1036) ~[vertx-web-3.9.4.jar:3.9.4] at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:131) [vertx-web-3.9.4.jar:3.9.4] at io.vertx.ext.web.impl.RoutingContextImpl.next(RoutingContextImpl.java:132) ~[vertx-web-3.9.4.jar:3.9.4] at io.vertx.ext.web.impl.RouterImpl.handle(RouterImpl.java:54) ~[vertx-web-3.9.4.jar:3.9.4] at io.vertx.ext.web.impl.RouterImpl.handle(RouterImpl.java:36) ~[vertx-web-3.9.4.jar:3.9.4] at io.vertx.core.http.impl.WebSocketRequestHandler.handle(WebSocketRequestHandler.java:50) ~[vertx-core-3.9.4.jar:3.9.4]

       

       

       

       
      2020-12-01 20:45:28.611 ERROR 5156 --- [ntloop-thread-1] o.a.s.r.consumer.MicroserviceVersions    : Failed to setInstances, appId=dtm, microserviceName=customer-service.2020-12-01 20:45:28.611 ERROR 5156 --- [ntloop-thread-1] o.a.s.r.consumer.MicroserviceVersions    : Failed to setInstances, appId=dtm, microserviceName=customer-service.
      java.lang.IllegalStateException: no schema in local, and can not get schema from service center, appId=dtm, microserviceName=customer-service, version=1.0.0, serviceId=365ab922215634b173cdb1bc9604d1fe80b59b92, schemaId=com.huawei.cse.houseapp.customer.api.CustomerEndpoint. at org.apache.servicecomb.registry.swagger.SwaggerLoader.loadFromRemote(SwaggerLoader.java:204) ~[foundation-registry-2.1.3.jar:2.1.3] at org.apache.servicecomb.registry.swagger.SwaggerLoader.loadSwagger(SwaggerLoader.java:144) ~[foundation-registry-2.1.3.jar:2.1.3] at org.apache.servicecomb.core.definition.ServiceRegistryListener.onCreateMicroserviceVersion(ServiceRegistryListener.java:90) ~[java-chassis-core-2.1.3.jar:2.1.3] at org.apache.servicecomb.foundation.common.event.SimpleSubscriber.syncDispatch(SimpleSubscriber.java:118) ~[foundation-common-2.1.3.jar:2.1.3] at org.apache.servicecomb.foundation.common.event.SimpleSubscriber.dispatchEvent(SimpleSubscriber.java:107) ~[foundation-common-2.1.3.jar:2.1.3] at org.apache.servicecomb.foundation.common.event.SimpleEventBus.post(SimpleEventBus.java:73) ~[foundation-common-2.1.3.jar:2.1.3] at org.apache.servicecomb.registry.consumer.MicroserviceVersion.<init>(MicroserviceVersion.java:58) ~[foundation-registry-2.1.3.jar:2.1.3] at org.apache.servicecomb.registry.consumer.MicroserviceVersions.createMicroserviceVersion(MicroserviceVersions.java:244) [foundation-registry-2.1.3.jar:2.1.3] at org.apache.servicecomb.registry.consumer.MicroserviceVersions.lambda$setInstances$2(MicroserviceVersions.java:232) [foundation-registry-2.1.3.jar:2.1.3] at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1660) ~[na:1.8.0_131] at org.apache.servicecomb.foundation.common.concurrent.ConcurrentHashMapEx.computeIfAbsent(ConcurrentHashMapEx.java:56) ~[foundation-common-2.1.3.jar:2.1.3] at org.apache.servicecomb.registry.consumer.MicroserviceVersions.setInstances(MicroserviceVersions.java:231) [foundation-registry-2.1.3.jar:2.1.3] at org.apache.servicecomb.registry.consumer.MicroserviceVersions.safeSetInstances(MicroserviceVersions.java:198) [foundation-registry-2.1.3.jar:2.1.3] at org.apache.servicecomb.registry.consumer.MicroserviceVersions.pullInstances(MicroserviceVersions.java:178) [foundation-registry-2.1.3.jar:2.1.3] at org.apache.servicecomb.registry.consumer.MicroserviceManager.getOrCreateMicroserviceVersions(MicroserviceManager.java:64) [foundation-registry-2.1.3.jar:2.1.3] at org.apache.servicecomb.registry.consumer.MicroserviceManager.getOrCreateMicroserviceVersionRule(MicroserviceManager.java:108) [foundation-registry-2.1.3.jar:2.1.3] at org.apache.servicecomb.registry.consumer.AppManager.getOrCreateMicroserviceVersionRule(AppManager.java:51) [foundation-registry-2.1.3.jar:2.1.3] at org.apache.servicecomb.registry.cache.InstanceCacheManagerNew.getOrCreateVersionedCache(InstanceCacheManagerNew.java:39) [foundation-registry-2.1.3.jar:2.1.3] at org.apache.servicecomb.registry.discovery.DiscoveryTree.discovery(DiscoveryTree.java:120) [foundation-registry-2.1.3.jar:2.1.3] at org.apache.servicecomb.edge.core.CommonHttpEdgeDispatcher.getOrCreateLoadBalancer(CommonHttpEdgeDispatcher.java:173) [edge-core-2.1.3.jar:2.1.3] at org.apache.servicecomb.edge.core.CommonHttpEdgeDispatcher.onRequest(CommonHttpEdgeDispatcher.java:135) [edge-core-2.1.3.jar:2.1.3]
      

       

      Attachments

        Activity

          People

            liubao68 liubao
            liubao68 liubao
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: