Uploaded image for project: 'Camunda Optimize'
  1. Camunda Optimize
  2. OPT-5410

Optimize import blocks with unsupported Zeebe Element Types

XMLWordPrintable

    • Icon: Bug Report Bug Report
    • Resolution: Done
    • Icon: L3 - Default L3 - Default
    • 3.6.0-alpha1, 3.6.0
    • None
    • backend
    • None
    • Not defined

      When a BPMN element is used in a Zeebe process that we don't explicitly have a string conversion for, the import blocks. Ideally, Optimize wouldn't need to know about all the possible element types, but either way we need to handle this in such a way that the import doesn't block. The following is the logged message:

       

      org.camunda.optimize.service.exceptions.OptimizeRuntimeException: Unsupported BPMN element of type SEND_TASK
      	at org.camunda.optimize.service.util.BpmnModelUtil.getFlowNodeTypeForBpmnElementType(BpmnModelUtil.java:77)
      	at org.camunda.optimize.service.importing.engine.service.zeebe.ZeebeProcessInstanceImportService.createSkeletonFlowNodeInstance(ZeebeProcessInstanceImportService.java:168)
      	at org.camunda.optimize.service.importing.engine.service.zeebe.ZeebeProcessInstanceImportService.lambda$updateFlowNodeEventsForProcess$4(ZeebeProcessInstanceImportService.java:145)
      	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
      	at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177)
      	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1655)
      	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
      	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
      	at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150)
      	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
      	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
      	at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497)
      	at org.camunda.optimize.service.importing.engine.service.zeebe.ZeebeProcessInstanceImportService.updateFlowNodeEventsForProcess(ZeebeProcessInstanceImportService.java:142)
      	at org.camunda.optimize.service.importing.engine.service.zeebe.ZeebeProcessInstanceImportService.createProcessInstanceForData(ZeebeProcessInstanceImportService.java:91)
      	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
      	at java.base/java.util.HashMap$ValueSpliterator.forEachRemaining(HashMap.java:1675)
      	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
      	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
      	at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:913)
      	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
      	at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)
      	at org.camunda.optimize.service.importing.engine.service.zeebe.ZeebeProcessInstanceImportService.mapZeebeRecordsToOptimizeEntities(ZeebeProcessInstanceImportService.java:85)
      	at org.camunda.optimize.service.importing.engine.service.zeebe.ZeebeProcessInstanceImportService.executeImport(ZeebeProcessInstanceImportService.java:63)
      	at org.camunda.optimize.service.importing.PositionBasedImportMediator.importNextPagePositionBased(PositionBasedImportMediator.java:101)
      	at org.camunda.optimize.service.importing.zeebe.mediator.ZeebeProcessInstanceImportMediator.importNextPage(ZeebeProcessInstanceImportMediator.java:48)
      	at org.camunda.optimize.service.importing.PositionBasedImportMediator.importNextPageWithRetries(PositionBasedImportMediator.java:77)
      	at org.camunda.optimize.service.importing.PositionBasedImportMediator.runImport(PositionBasedImportMediator.java:32)
      	at org.camunda.optimize.service.importing.AbstractImportScheduler.lambda$executeImportRound$1(AbstractImportScheduler.java:84)
      	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
      	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1655)
      	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)
      	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
      	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:550)
      	at java.base/java.util.stream.AbstractPipeline.evaluateToArrayNode(AbstractPipeline.java:260)
      	at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:517)
      	at org.camunda.optimize.service.importing.AbstractImportScheduler.executeImportRound(AbstractImportScheduler.java:90)
      	at org.camunda.optimize.service.importing.zeebe.ZeebeImportScheduler.runImportRound(ZeebeImportScheduler.java:40)
      	at org.camunda.optimize.service.importing.AbstractImportScheduler.runImportRound(AbstractImportScheduler.java:65)
      	at org.camunda.optimize.service.importing.AbstractImportScheduler.run(AbstractImportScheduler.java:35)
      	at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)
      	at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:95)
      	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
      	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
      	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
      	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
      	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
      	at java.base/java.lang.Thread.run(Thread.java:829)
      

      Further context: 

       

      https://camunda.slack.com/archives/CSQ2E3BT4/p1623765070018400

        This is the controller panel for Smart Panels app

              Unassigned Unassigned
              joshua.windels Joshua Windels
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: