AnsweredAssumed Answered

External process definition version

Question asked by mmaker1234 on Jun 15, 2012
Latest reply on Jun 22, 2012 by mmaker1234

We need to track the execution of process instances and often we need to relate the track to the process definition. As we have no access to the Activiti (production) DB we need to relate these tracks (execution history) to the source file of the process definition. Unfortunately one and the same process definition file can have different deployment (Activiti) version on the different (development, test, production) servers. That is why we need to store our own (external for Activiti) version/reference of the process definition.

We tried to:
- manually add attribute "exporterVersion" to <definitions> tag but Activiti Diagram Editor removes it on save (BTW references to… are not correct - currently there is no such path on the OMG server. An available path is… but there is no MODEL, only BPMN20, BPMNDI, DC, DI, and Semantic)
- use the <process>…<documentation> tag but due to we can not read the reference.

We also cannot use the business key to store the process definition file version due to But even if the problem in ACT-1230 does not exist, we think that the business key is not the appropriate place to keep file versions. Additionally, the business key have to be set run-time and our business logic is isolated from the Activiti internals.

Are there any other ideas how to cope with this problem?

Here is an example of our problem:
I created five versions of a process definition called MyProcDef:
MyProcDef v.1
MyProcDef v.2
MyProcDef v.3
MyProcDef v.4
MyProcDef v.5

On the development server all versions were deployed:
MyProcDef:1:1234 [v.1]
MyProcDef:2:1234 [v.2]
MyProcDef:3:1234 [v.3]
MyProcDef:4:1234 [v.4]
MyProcDef:5:1234 [v.5]

On the test server only few of them were deployed:
MyProcDef:1:2345 [v.2]
MyProcDef:2:2345 [v.5]

On the production server only one was deployed:
MyProcDef:1:3456 [v.5]

When I investigate a reported problem and receive a process history I can not tell instance of which version of my process definition (file) was executed because there is no relation between the Activiti deployment version (MyProcDef:?:…) and the version of the process definition source file.