Uploaded image for project: 'Common Controller SDK'
  1. Common Controller SDK
  2. CCSDK-1486

BP processor doesn't give a good error message when input section $workflowName-request is missing

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Medium Medium
    • El Alto Release
    • El Alto Release
    • None
    • None

      BP Processor fails with a non-descriptive error "error must not be null", which is not helpful,

      When the CP request is missing a

       

      "$workflowName-request" block. (ie let's say you've renamed the BPA and forgot to change the request).

          "status":

      {         "code": 500,         "eventType": "EVENT_COMPONENT_FAILURE",         "timestamp": "2019-07-15T17:38:22.290Z",         *"errorMessage": "input must not be null",*         "message": "failure"     }

      ,

       

       

       

       

      Full log from BP processor===========

      13:38:22.264 [reactor-http-nio-3] INFO  c.o.c.c.b.selfservice.api.ExecutionServiceHandler - processing request id 123456

      13:38:22.267 [reactor-http-nio-3] INFO  c.o.c.c.b.db.BlueprintProcessorCatalogServiceImpl - getting cba file name(use_netconf), version(1.0.1) from db

      13:38:22.282 [reactor-http-nio-3] INFO  c.o.c.c.b.db.BlueprintProcessorCatalogServiceImpl - cba file name(use_netconf), version(1.0.1) saved in (/Users/olegmit/git/cds-jul12/blueprints/deploy/use_netconf/1.0.1)

      13:38:22.283 [reactor-http-nio-3] INFO  c.o.c.c.b.selfservice.api.ExecutionServiceHandler - blueprint base path blueprints/deploy/use_netconf/1.0.1

      13:38:22.284 [reactor-http-nio-3] INFO  c.o.c.c.c.c.utils.BluePrintMetadataUtils$Companion - Reading blueprint path(blueprints/deploy/use_netconf/1.0.1) and entry definition file (Definitions/use_netconf.json)

      13:38:22.290 [reactor-http-nio-3] ERROR c.o.c.c.b.selfservice.api.ExecutionServiceHandler - fail processing request id 123456

      java.lang.IllegalStateException: input must not be null

      at org.onap.ccsdk.cds.blueprintsprocessor.services.workflow.BluePrintWorkflowExecutionServiceImpl.executeBluePrintWorkflow$suspendImpl(BluePrintWorkflowExecutionServiceImpl.kt:48)

      at org.onap.ccsdk.cds.blueprintsprocessor.services.workflow.BluePrintWorkflowExecutionServiceImpl.executeBluePrintWorkflow(BluePrintWorkflowExecutionServiceImpl.kt)

      at org.onap.ccsdk.cds.blueprintsprocessor.services.workflow.BluePrintWorkflowExecutionServiceImpl.executeBluePrintWorkflow(BluePrintWorkflowExecutionServiceImpl.kt:31)

      at org.onap.ccsdk.cds.blueprintsprocessor.selfservice.api.ExecutionServiceHandler.doProcess(ExecutionServiceHandler.kt:110)

      at org.onap.ccsdk.cds.blueprintsprocessor.selfservice.api.ExecutionServiceHandler$doProcess$1.invokeSuspend(ExecutionServiceHandler.kt)

      at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:32)

      at kotlinx.coroutines.DispatchedTask.run(Dispatched.kt:233)

      at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.kt:116)

      at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:76)

      at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:53)

      at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)

      at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:35)

      at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source)

      at org.onap.ccsdk.cds.blueprintsprocessor.selfservice.api.ExecutionServiceController.process(ExecutionServiceController.kt:87)

      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.reactive.result.method.InvocableHandlerMethod.lambda$invoke$0(InvocableHandlerMethod.java:139)

      at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:118)

      at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1505)

      at reactor.core.publisher.MonoZip$ZipCoordinator.signal(MonoZip.java:247)

      at reactor.core.publisher.MonoZip$ZipInner.onNext(MonoZip.java:329)

      at reactor.core.publisher.FluxPeek$PeekSubscriber.onNext(FluxPeek.java:192)

      at reactor.core.publisher.FluxDefaultIfEmpty$DefaultIfEmptySubscriber.onNext(FluxDefaultIfEmpty.java:92)

      at reactor.core.publisher.FluxSwitchIfEmpty$SwitchIfEmptySubscriber.onNext(FluxSwitchIfEmpty.java:67)

      at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:73)

      at reactor.core.publisher.Operators$MonoSubscriber.complete(Operators.java:1505)

      at reactor.core.publisher.MonoSingle$SingleSubscriber.onComplete(MonoSingle.java:171)

      at reactor.core.publisher.FluxFlatMap$FlatMapMain.checkTerminated(FluxFlatMap.java:794)

      at reactor.core.publisher.FluxFlatMap$FlatMapMain.drainLoop(FluxFlatMap.java:560)

      at reactor.core.publisher.FluxFlatMap$FlatMapMain.drain(FluxFlatMap.java:540)

      at reactor.core.publisher.FluxFlatMap$FlatMapMain.onComplete(FluxFlatMap.java:426)

      at reactor.core.publisher.FluxFlatMap$FlatMapMain.checkTerminated(FluxFlatMap.java:794)

      at reactor.core.publisher.FluxFlatMap$FlatMapMain.drainLoop(FluxFlatMap.java:560)

      at reactor.core.publisher.FluxFlatMap$FlatMapMain.drain(FluxFlatMap.java:540)

      at reactor.core.publisher.FluxFlatMap$FlatMapMain.onComplete(FluxFlatMap.java:426)

      at reactor.core.publisher.DrainUtils.postCompleteDrain(DrainUtils.java:131)

      at reactor.core.publisher.DrainUtils.postComplete(DrainUtils.java:186)

      at reactor.core.publisher.FluxMapSignal$FluxMapSignalSubscriber.onComplete(FluxMapSignal.java:213)

      at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:136)

      at reactor.core.publisher.FluxPeek$PeekSubscriber.onComplete(FluxPeek.java:252)

      at reactor.core.publisher.FluxMap$MapSubscriber.onComplete(FluxMap.java:136)

      at reactor.netty.channel.FluxReceive.terminateReceiver(FluxReceive.java:372)

      at reactor.netty.channel.FluxReceive.drainReceiver(FluxReceive.java:196)

      at reactor.netty.channel.FluxReceive.onInboundComplete(FluxReceive.java:337)

      at reactor.netty.channel.ChannelOperations.onInboundComplete(ChannelOperations.java:334)

      at reactor.netty.http.server.HttpServerOperations.onInboundNext(HttpServerOperations.java:453)

      at reactor.netty.channel.ChannelOperationsHandler.channelRead(ChannelOperationsHandler.java:141)

      at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)

      at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)

      at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)

      at reactor.netty.http.server.HttpTrafficHandler.channelRead(HttpTrafficHandler.java:191)

      at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)

      at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)

      at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)

      at io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireChannelRead(CombinedChannelDuplexHandler.java:438)

      at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:323)

      at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:297)

      at io.netty.channel.CombinedChannelDuplexHandler.channelRead(CombinedChannelDuplexHandler.java:253)

      at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)

      at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)

      at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:340)

      at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1408)

      at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:362)

      at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:348)

      at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:930)

      at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163)

      at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:677)

      at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:612)

      at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:529)

      at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:491)

      at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:905)

      at java.lang.Thread.run(Thread.java:748)

       

      ====== end of BP processor ========

            omimtl omimtl
            omimtl omimtl
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: