Monday, August 8, 2011

"DBLocker caught exception while retrieving locked messages"

Problem:

Getting the following error in the "soa_server1.out" log every 5 seconds:
<Aug 8, 2011 5:36:34 PM EDT> <Error> <oracle.soa.mediator.common.listener> <BEA-000000> <DBLocker caught exception while retrieving locked messages. Will retry retrieval after 5 seconds
java.lang.NullPointerException
        at java.io.ByteArrayInputStream.<init>(ByteArrayInputStream.java:89)
        at oracle.tip.mediator.common.error.ErrorDBLocker.getMediatorMessage(ErrorDBLocker.java:171)
        at oracle.tip.mediator.common.error.ErrorDBLocker.convert(ErrorDBLocker.java:138)
        at oracle.tip.mediator.common.error.ErrorDBLocker.getLockedMessages(ErrorDBLocker.java:120)
        at oracle.tip.mediator.common.listener.DBLocker.getLockedMessages(DBLocker.java:146)
        at oracle.tip.mediator.common.listener.DBLocker.run(DBLocker.java:81)
        at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
        at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:183)
        at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)

Investigation:

After enabling the loggers to TRACE:32, it was narrowed down to a single BPEL process, but the process responds to requests fine and is functionally operational.

The following SQL query returns locked instances:
SELECT *
FROM   mediator_case_instance
WHERE  recoverable = 1
AND    (STATUS = 'ready' OR STATUS = 'locked')
AND    fault_obj IS NULL;
Although the status in the MEDIATOR_CASE_INSTANCE table may be 'locked', it is showing up in the EM console as 'Faulted'. Trying to abort the instances does not fix the problem.

Solution:

1. Run the following UPDATE statement (as the <prefix>_SOAINFRA database user) to remove the locks on those instances:
UPDATE mediator_case_instance
SET    status = 'completed'
WHERE  recoverable = 1
AND    status = 'locked'
AND    fault_obj IS NULL;
The DBLocker error should now stop.


Applicable Versions:
  • Oracle SOA Suite 11g (11.1.1.4)

Ahmed Aboulnaga

No comments: