OML 9.10 - Unable to clear over 1 million messages in active message table.

  • KM00573939
  • 18-Sep-2013
  • 18-Sep-2013

This document has not been formally reviewed for accuracy and is provided "as is" for your convenience.


Due to the volume of OM active messages, the OML server is crashing due to lack of system resources and active messages cannot be cleared via opcdbinst. The customer wishes to clear all active and history messages to stablize the OML server.


OML 9.10 - The active message count is showing active messages over 3 million. I need to remove them (opcdbinst –act ?), but the system will not let me as the command times out. This is causing the server to consume all memory and swap and crash. I was able to clear history messages, but I'm unable to clear the active message table. Need steps to do this.


Provided manual steps to truncate the OM history and active message tables. Note that in this case, the customer did not wish to preserve active or history messages as this procedure will totally remove without preserving history or active messages as described below:

# ovc -stop          <--stop OM server processes
# opcdbinst -rc    <--- Remove Oracle constraints
# su - oracle      <--- Switch to the Oracle user-ID
$ sqlplus /nolog     <--start SQLPLUS
connect / as sysdba 
truncate table opc_op.opc_hist_msg_text;   <---truncate tables
truncate table opc_op.opc_hist_orig_text;
truncate table opc_op.opc_hist_annotation;
truncate table opc_op.opc_hist_anno_text;
truncate table opc_op.opc_hist_cust_attrib;
truncate table opc_op.opc_hist_messages;

truncate table opc_op.opc_act_messages;
truncate table opc_op.opc_msg_text;
truncate table opc_op.opc_orig_msg_text;
truncate table opc_op.opc_annotation;
truncate table opc_op.opc_act_cust_attrib;
truncate table opc_op.opc_anno_text; 
exit;               <--- exit SQLPLUS
$ exit             <--- exit Oracle user-ID
# opcdbinst -ac       <-- add constraints
# ovc -start           <-- restart OM server processes