On reviewing our production database performance, in particular any high CPU usage transactions, we notice that the BPM_ERRORS table is doing a FULL TABLE SCAN every time it runs The table is currently 300m in size. Every time that table is queried, Oracle will have to flush all its buffer data to disk in order to load bpm_errors data for read. Can the records from this table be deleted or truncated?
Run the Delete Process Instance Job. If there are many records to delete, the job will take long time.
So make sure that you enter date parameters (eg. run month by month).
Also take DB backup before running it.
Delete process instance job removes the respective entries from the following tables:
. CAL_ACTION_ITEM_ASSIGNEES . BPM_RUN_PROCESSES . CAL_ACTION_ITEMS . BPM_RUN_ASSIGNEE_NOTES . BPM_RUN_REPLACE_ASSIGNEES . BPM_RUN_ASSIGNEES . BPM_RUN_STEP_TRANSITIONS . BPM_RUN_STEP_COND_RESULTS . BPM_RUN_STEP_COND_OBJECTS . BPM_RUN_STEP_ACTION_RESULTS
. BPM_RUN_OBJECTS . BPM_RUN_STEPS . ESC_RUN_USERS . ESC_RUN_LEVELS . ESC_RUN_UNREG_OBJECTS . BPM_RUN_OBJECTS . BPM_RUN_THREADS . BPM_ERRORS . BPM_ERROR_ARGUMENTS