Process can not be cancelled

Hi,

I can not cancel a process. I looked into some tables believing that this info could help you to localize the problem:
mysql> select PROC_INST_ID_, PARENT_ID_, ROOT_PROC_INST_ID_, IS_ACTIVE_, IS_CONCURRENT_, LOCK_TIME_, TASK_COUNT_ from ACT_RU_EXECUTION where PROC_INST_ID_ = ‘01364196-7794-11eb-a137-42010aeec524’;
±-------------------------------------±-------------------------------------±-------------------------------------±-----------±---------------±-----------±------------+
| PROC_INST_ID_ | PARENT_ID_ | ROOT_PROC_INST_ID_ | IS_ACTIVE_ | IS_CONCURRENT_ | LOCK_TIME_ | TASK_COUNT_ |
±-------------------------------------±-------------------------------------±-------------------------------------±-----------±---------------±-----------±------------+
| 01364196-7794-11eb-a137-42010aeec524 | NULL | fc494529-7793-11eb-a137-42010aeec524 | 1 | 0 | NULL | 0 |
| 01364196-7794-11eb-a137-42010aeec524 | 01364196-7794-11eb-a137-42010aeec524 | fc494529-7793-11eb-a137-42010aeec524 | 0 | 0 | NULL | 0 |
±-------------------------------------±-------------------------------------±-------------------------------------±-----------±---------------±-----------±------------+
2 rows in set (0.00 sec)

mysql> select ID_, PROC_INST_ID_, ACT_TYPE_, START_TIME_, END_TIME_ from ACT_RU_ACTINST where PROC_INST_ID_ = ‘01364196-7794-11eb-a137-42010aeec524’;
±-------------------------------------±-------------------------------------±-----------------±------------------------±------------------------+
| ID_ | PROC_INST_ID_ | ACT_TYPE_ | START_TIME_ | END_TIME_ |
±-------------------------------------±-------------------------------------±-----------------±------------------------±------------------------+
| 013668c0-7794-11eb-a137-42010aeec524 | 01364196-7794-11eb-a137-42010aeec524 | startEvent | 2021-02-25 19:05:12.414 | 2021-02-25 19:05:15.228 |
| 02e3f1cb-7794-11eb-a137-42010aeec524 | 01364196-7794-11eb-a137-42010aeec524 | sequenceFlow | 2021-02-25 19:05:15.229 | 2021-02-25 19:05:15.229 |
| 02eacf9d-7794-11eb-a137-42010aeec524 | 01364196-7794-11eb-a137-42010aeec524 | exclusiveGateway | 2021-02-25 19:05:15.274 | 2021-02-25 19:05:15.276 |
| 02eb1dbe-7794-11eb-a137-42010aeec524 | 01364196-7794-11eb-a137-42010aeec524 | sequenceFlow | 2021-02-25 19:05:15.276 | 2021-02-25 19:05:15.276 |
±-------------------------------------±-------------------------------------±-----------------±------------------------±------------------------+
4 rows in set (0.00 sec)

mysql> select count() from ACT_RU_VARIABLE where PROC_INST_ID_ = ‘01364196-7794-11eb-a137-42010aeec524’;
±---------+
| count(
) |
±---------+
| 49 |
±---------+
1 row in set (0.00 sec)

mysql> select PROCESS_INSTANCE_ID_ from ACT_RU_JOB where PROCESS_INSTANCE_ID_ = ‘01364196-7794-11eb-a137-42010aeec524’;
Empty set (0.00 sec)

mysql> select PROCESS_INSTANCE_ID_ from ACT_RU_EXTERNAL_JOB where PROCESS_INSTANCE_ID_ = ‘01364196-7794-11eb-a137-42010aeec524’;
Empty set (0.00 sec)

mysql> select PROCESS_INSTANCE_ID_ from ACT_RU_SUSPENDED_JOB where PROCESS_INSTANCE_ID_ = ‘01364196-7794-11eb-a137-42010aeec524’;
Empty set (0.00 sec)

mysql> select PROCESS_INSTANCE_ID_ from ACT_RU_DEADLETTER_JOB where PROCESS_INSTANCE_ID_ = ‘01364196-7794-11eb-a137-42010aeec524’;
Empty set (0.00 sec)

mysql> select PROCESS_INSTANCE_ID_ from ACT_RU_TIMER_JOB where PROCESS_INSTANCE_ID_ = ‘01364196-7794-11eb-a137-42010aeec524’;
Empty set (0.00 sec)

Flowable Version: 6.6.0
Tomcat version: Apache Tomcat/9.0.39
Java Version:
openjdk version “15.0.1” 2020-10-20
OpenJDK Runtime Environment (build 15.0.1+9-18)
OpenJDK 64-Bit Server VM (build 15.0.1+9-18, mixed mode, sharing)
Mysql version:
/usr/sbin/mysqld Ver 8.0.16 for Linux on x86_64 (MySQL Community Server - GPL)
application.properties:
flowable.process.async.executor.async-job-lock-time-in-millis=86400000
spring.task.execution.pool.core-size=64
spring.task.execution.pool.max-size=100
Top Output:
Tasks: 2 total, 0 running, 2 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem: 65976772 total, 65202760 used, 774012 free, 245604 buffers
KiB Swap: 5242876 total, 3965828 used, 1277048 free. 34228972 cached Mem

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3129 mysql 20 0 5049192 1.057g 12436 S 0.000 1.679 2499:25 mysqld
17046 root 20 0 72.208g 0.026t 29092 S 0.000 41.83 35:31.17 java

Garbage Collector Stats:
jstat -gccause 17046
S0 S1 E O M CCS YGC YGCT FGC FGCT CGC CGCT GCT LGCC GCC
0.00 97.46 32.64 25.51 95.36 89.54 61 6.880 0 0.000 14 0.086 6.967 G1 Evacuation Pause No GC

Can you please help?
Thanks!





Dear experts,

this is most likely linked to issue

Regards,
Joachim

These values should both be set to 100. Contrary to their names, they work differently than a e.g. a connection pool.

When you say ‘cannot cancel’, what API call or action are you executing?

Hi Joram,

yes, I can not cancel the process with help of flowable-admin. I uploaded corresponding screenshot. There is no exception in catalina.out and flowable-admin, when I click the Button “Terminate Process Instance”.

You brought me to the idea to cancel the process via flowable-rest:

curl --user : -X DELETE --header ‘Accept: application/json’ ‘https://dlmoattst.wdf.sap.corp/flowable-rest/service/runtime/process-instances/01364196-7794-11eb-a137-42010aeec524’ 2>/dev/null

{“message”:“Bad request”,“exception”:“Class com.sap.dlm.flowable.DLMScriptExecutionListener does not implement org.flowable.common.engine.api.delegate.event.FlowableEventListener”}

It seems that the class DLMScriptExecutionListener is used as EventListener notified whenever the process instance is cancelled. But DLMScriptExecutionListener does not implement corresponding interface. How can I remove this instance?

Hi koekeni,

My guess is:

Is set somewhere in your process model/definition and is listening to process cancel event.
(remove the listener)

Regards
Martin

Hi Martin, hi Joram,

I extended the class com.sap.dlm.flowable.DLMScriptExecutionListener, so that it implements org.flowable.common.engine.api.delegate.event.FlowableEventListener. This helped:

public class DLMScriptExecutionListener extends ProcessCancelledListener implements ExecutionListener {

public class ProcessCancelledListener implements FlowableEventListener {

Thanks a lot for your support!