Pages

Monday, September 30, 2013

Deleting or purging the undelivered messages from DLV_Message table in SOA_INFRA schema



Some particular scenarios you may arrive a situation where you do see lots of error messages while processing undelivered messages in your soa_server.out or .log file e.g.

Sep 27, 2013 5:23:17 AM EST> <Error> <oracle.soa.bpel.system> <BEA-000000> <Error while invoking bean "cube delivery": Failed to evaluate correlation query.
failure to evaluate the correlationAlias query "/ns1:QFEQIF_EBS_SOA_OUT/ITEMKEY" on the element "<QFEQIF_EBS_SOA_OUT xmlns="http://xmlns.oracle.com/xdb/BOLINF">
   <ITEMTYPE NULL="TRUE" xmlns=""/>
   <ITEMKEY NULL="TRUE" xmlns=""/>
   <FILE_NAME xmlns="">'PEE.QFEQHR.LICN.TXT'</FILE_NAME>

etc

There could be many numbers of messages which will be stored in dlv_message table as ‘undelivered’ status, BPEL engine will keep retrying on some regular interval to process these messages but since these messages are irrelevant, it’s never going to be processed and associated error will be keep writing into your logs.

To get rid from those messages EM console has provided option to ‘abort’ all these messages by specifying type of message (invoke/callback), time, composite name and ECID etc. 





Specify your search criteria based up on your requirement and perform the action ‘Abort’.

This screen does use for other action as well e.g. Recover etc. 

Note:
Please do precaution while operating on this screen as action are non recoverable, once you fired the command, a background process will cleans up the table.