0 votes
43 views
in Process Server by (13.5k points)

1 Answer

0 votes
by (11.5k points)
 
Best answer

The EXECUTION_CONTEXT Blob Column in LSW_TASK_EXECUTION_CONTEXT holds the runtime data of an Task, it seems to be a compressed java serialized object, it may be possible to un-compress it with oracle functions and then read it using tools like jdserialize, but don't think the data will be usable, Direct Process Server DB queries are not recommended since IBM may change the structure and working of these tables and the data within in future versions. Also they may cause locks hindering the performance of Process Server.

You can use REST API's, or JS API based retrievals to get that data

The following oracle query will return a list of context sizes for tasks

select distinct LT.ACTIVITY_NAME as ActivityName, LS."NAME" as SnapshotName, LP.SHORT_NAME as ProjectAcronym, LBI.BPD_REF as BPDReferenceID, LBI.TIP as isTip, 

LBI.BPD_NAME as BPDName, LP.NAME as applicationName, count(DISTINCT LBI.BPD_INSTANCE_ID) as instanceCount, max(dbms_lob.getlength(LTEC.EXECUTION_CONTEXT)) as contextSize

from lsw_bpd_instance lbi, LSW_PROJECT lp, LSW_SNAPSHOT ls, LSW_BPD_INSTANCE_DATA LBID, LSW_TASK LT, LSW_TASK_EXECUTION_CONTEXT LTEC

where LBI.SNAPSHOT_ID = LS.SNAPSHOT_ID 

and LS.PROJECT_ID = LP.PROJECT_ID 

and LBI.BPD_INSTANCE_ID = LBID.BPD_INSTANCE_ID

and dbms_lob.getlength(LTEC.EXECUTION_CONTEXT) > ?

and LT.BPD_INSTANCE_ID = LBI.BPD_INSTANCE_ID

and LT.TASK_ID = LTEC.TASK_ID

group by LT.ACTIVITY_NAME, LS."NAME", LP.SHORT_NAME, LBI.BPD_REF, LBI.TIP,

LBI.BPD_NAME, LP.NAME

order by count(DISTINCT LBI.BPD_INSTANCE_ID) DESC

Related questions

0 votes
1 answer 53 views
0 votes
1 answer 122 views
0 votes
1 answer 62 views
0 votes
1 answer 30 views
0 votes
1 answer 152 views
0 votes
1 answer 111 views
0 votes
1 answer 131 views
0 votes
1 answer 79 views
...