Can someone help with this problem? (No process instance was found as child of the activity with id)

Im getting this exception every time, i have a process wich calls another process, and that process also calls one like this:

process1 (KonfigSzamlaGen )-> process2 (this should be konfigszamla, but it does not appear in the log) -> process3(Szamlazzhu-ra Kuldes)

Im using call activity to call the processes.

Although i have this error, everything seems fine, my main process does finish and even the sub processes do they job. 

Why am i getting this error?

before the error i have these lines: 

2021-01-21 09:38:03.549 +0000 FINE: org.bonitasoft.engine.core.process.instance.impl.ProcessInstanceServiceImpl THREAD_ID=44 | HOSTNAME=157493330b2e | TENANT_ID=1 | Can't find the process instance called by the activity. This process may be already finished.
2021-01-21 09:38:03.549 +0000 FINE: org.bonitasoft.engine.core.process.instance.impl.ProcessInstanceServiceImpl THREAD_ID=44 | HOSTNAME=157493330b2e | TENANT_ID=1 | PROCESS_DEFINITION_ID=8111891314715395826 | PROCESS_NAME=KonfigSzamlaGen | PROCESS_VERSION=3.5 | PROCESS_INSTANCE_ID=85015 | ROOT_PROCESS_INSTANCE_ID=85013 | FLOW_NODE_DEFINITION_ID=7279716188460513190 | FLOW_NODE_INSTANCE_ID=9720141 | FLOW_NODE_NAME=Szamlazzhu-ra Kuldes | No process instance was found as child of the activity with id = <9720141>
org.bonitasoft.engine.core.process.instance.api.exceptions.SProcessInstanceNotFoundException: PROCESS_DEFINITION_ID=8111891314715395826 | PROCESS_NAME=KonfigSzamlaGen | PROCESS_VERSION=3.5 | PROCESS_INSTANCE_ID=85015 | ROOT_PROCESS_INSTANCE_ID=85013 | FLOW_NODE_DEFINITION_ID=7279716188460513190 | FLOW_NODE_INSTANCE_ID=9720141 | FLOW_NODE_NAME=Szamlazzhu-ra Kuldes | No process instance was found as child of the activity with id = <9720141>

im getting this excpetion: 

org.bonitasoft.engine.core.process.instance.api.exceptions.SProcessInstanceNotFoundException: PROCESS_DEFINITION_ID=8111891314715395826 | PROCESS_NAME=KonfigSzamlaGen | PROCESS_VERSION=3.5 | PROCESS_INSTANCE_ID=85015 | ROOT_PROCESS_INSTANCE_ID=85013 | FLOW_NODE_DEFINITION_ID=7279716188460513190 | FLOW_NODE_INSTANCE_ID=9720141 | FLOW_NODE_NAME=Szamlazzhu-ra Kuldes | No process instance was found as child of the activity with id = <9720141>
    at org.bonitasoft.engine.core.process.instance.impl.ProcessInstanceServiceImpl.getChildOfActivity(ProcessInstanceServiceImpl.java:584)
    at org.bonitasoft.engine.core.process.instance.impl.ProcessInstanceServiceImpl.deleteSubProcess(ProcessInstanceServiceImpl.java:454)
    at org.bonitasoft.engine.core.process.instance.impl.ProcessInstanceServiceImpl.deleteActivityInstanceElements(ProcessInstanceServiceImpl.java:448)
    at org.bonitasoft.engine.core.process.instance.impl.ProcessInstanceServiceImpl.deleteFlowNodeInstanceElements(ProcessInstanceServiceImpl.java:425)
    at org.bonitasoft.engine.core.process.instance.impl.ProcessInstanceServiceImpl.deleteFlowNodeInstance(ProcessInstanceServiceImpl.java:412)
    at org.bonitasoft.engine.execution.archive.ProcessArchiver.archiveFlowNodeInstance(ProcessArchiver.java:375)
    at org.bonitasoft.engine.execution.FlowNodeExecutorImpl.archiveFlowNodeInstance(FlowNodeExecutorImpl.java:310)
    at org.bonitasoft.engine.execution.ProcessExecutorImpl.archiveFlowNodeInstance(ProcessExecutorImpl.java:773)
    at org.bonitasoft.engine.execution.ProcessExecutorImpl.executeValidOutgoingTransitionsAndUpdateTokens(ProcessExecutorImpl.java:712)
    at org.bonitasoft.engine.execution.ProcessExecutorImpl.childFinished(ProcessExecutorImpl.java:586)
    at org.bonitasoft.engine.execution.ContainerRegistry.nodeReachedState(ContainerRegistry.java:58)
    at org.bonitasoft.engine.execution.work.NotifyChildFinishedWork.work(NotifyChildFinishedWork.java:69)
    at org.bonitasoft.engine.execution.work.TxBonitaWork.lambda$work$0(TxBonitaWork.java:42)
    at org.bonitasoft.engine.transaction.JTATransactionServiceImpl.executeInTransaction(JTATransactionServiceImpl.java:274)
    at org.bonitasoft.engine.execution.work.TxBonitaWork.work(TxBonitaWork.java:42)
    at org.bonitasoft.engine.execution.work.LockProcessInstanceWork.work(LockProcessInstanceWork.java:63)
    at org.bonitasoft.engine.execution.work.failurewrapping.TxInHandleFailureWrappingWork.work(TxInHandleFailureWrappingWork.java:41)
    at org.bonitasoft.engine.execution.work.failurewrapping.TxInHandleFailureWrappingWork.work(TxInHandleFailureWrappingWork.java:41)
    at org.bonitasoft.engine.execution.work.failurewrapping.TxInHandleFailureWrappingWork.work(TxInHandleFailureWrappingWork.java:41)
    at org.bonitasoft.engine.execution.work.InSessionBonitaWork.work(InSessionBonitaWork.java:59)
    at org.bonitasoft.engine.work.BonitaThreadPoolExecutor.lambda$submit$1(BonitaThreadPoolExecutor.java:103)
    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:834)
 

 

Hi,

Thanks for noticing this. You are perfectly right: this error is misleading, as in fact, there is no issue at all.

Bonita makes its best to execute as much work in parallel as possible. As a result, there are cases where Bonita Runtime tries to see if some flownode has already been executed or not, leading to those too-verbous errors.

Versions 7.12+ of Bonita tend to reduce this kind of misleading stacktraces, as there is not problem at all.

The good news is: there is nothing to do for you. Everything is fine on Bonita :-)

Hope this helps

Emmanuel

Thank you for the answer!