Using a connector (REST/GET) I get ConcurentModificationException, Why?

1
0
-1

As i wrote in the question i get this error, and dont know why, i assumed the bonita engine causes this error, since i dont use HashMap object in my connector.

This is the full error:

2020-12-17 08:09:23.337 +0000 FINE: org.bonitasoft.engine.execution.work.LockProcessInstanceWork THREAD_ID=112 | HOSTNAME=48d8df1a2d7e | TENANT_ID=1 | Bonita-Worker-1-07 obtained lock for instance 63007: ExecuteFlowNodeWork: flowNodeInstanceId: 9000155 (65, false, false, false)
2020-12-17 08:09:23.340 +0000 SEVERE: org.bonitasoft.engine.execution.work.InSessionBonitaWork THREAD_ID=111 | HOSTNAME=48d8df1a2d7e | TENANT_ID=1 | java.util.ConcurrentModificationException : "No message"
java.util.ConcurrentModificationException
at java.base/java.util.HashMap$HashIterator.nextNode(HashMap.java:1493)
at java.base/java.util.HashMap$KeyIterator.next(HashMap.java:1516)
at org.bonitasoft.engine.core.connector.impl.ConnectorServiceImpl.buildConnectorInputMessage(ConnectorServiceImpl.java:147)
at org.bonitasoft.engine.core.connector.impl.ConnectorServiceImpl.executeConnector(ConnectorServiceImpl.java:163)
at org.bonitasoft.engine.connector.ConnectorServiceDecorator.executeConnector(ConnectorServiceDecorator.java:115)
at org.bonitasoft.engine.execution.work.ExecuteConnectorWork.work(ExecuteConnectorWork.java:153)
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.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)

The connector catched the error, and my process went to the error handling, however, the get worked and my other program (that the get call launched), has started. It made things quite complicated, because the user tought he could launch the program, but actually he did.

What could cause such error?

Edit: I have tried to run the process on another envirement, with the same businessdata DB, and now i dont get the error. I could not replicate the error, in the production envirement i dont want to start the process again. But only the database configuration could be different.

No answers yet.
Notifications