Email via BPEL Worklist and/or BPELNotification Service Slows Down on 10.1.3.4 (Doc ID 1196573.1)

Last updated on NOVEMBER 03, 2016

Applies to:

Oracle SOA Platform - Version 10.1.3.4.0 and later
Information in this document applies to any platform.
Technically reviewed 2010-09-14


Symptoms

Using a 10.1.3.4 installation of SOA Suite.

BPEL Worklist and/or the BPEL Notification Service can send emails fine when they are at a low volume.  If volume is increased it is noticed that email sending stops completely or becomes very slow and sporadic.

You may notice that there are a growing number of rows in the orabpel.bpelnotification table, these rows are normally deleted once an email is sent, this gives another indication that email sending has stopped or become very slow.

On a WebLogic installation you may also notice that JMS messages in the NotificationSenderQueue on the WebLogic server are also sometimes stuck there.  Check the WebLogic Console -> Messaging -> JMS Modules -> SOAJMSModule -> NotificationSenderQueue -> Monitoring -> Show Messages  

The following errors may be seen in the $ORACLE_HOME/opmn/logs/*_group~<BPEL Container>~*_group~1.log or for WebLogic installs $WEBLOGIC_HOME/user_projects/domains/<domain name>/servers/<SOA server name>/logs/<SOA server name>.out:

<2009-05-21 16:26:24,856> <INFO> <default.collaxa.cube.services>
<EmailDriver::printAddrArray> InvalidAddresses
<2009-05-21 16:26:24,856> <INFO> <default.collaxa.cube.services>
<EmailDriver::printAddrArray> ValidUnsentAddresses
<2009-05-21 16:26:24,856> <ERROR> <default.collaxa.cube.services>
<EmailDriver::printAddrArray> norm@netapp.com
<2009-05-21 16:26:24,863> <INFO> <default.collaxa.cube.services>
<EmailDriver::printAddrArray> InvalidAddresses
<2009-05-21 16:26:24,863> <INFO> <default.collaxa.cube.services>
<EmailDriver::printAddrArray> ValidUnsentAddresses
<2009-05-21 16:26:24,864> <ERROR> <default.collaxa.cube.services>
<EmailDriver::printAddrArray> ashen@netapp.com
<2009-05-21 16:26:26,563> <ERROR> <default.collaxa.cube.services>
<PCRuntimeException::<init>> Internal Error.
<2009-05-21 16:26:26,563> <ERROR> <default.collaxa.cube.services>
<PCRuntimeException::<init>> Cannot create email Addresses: To:;Cc:;Bcc:
object.
BPEL-10323

Internal Error.
Cannot create email Addresses: To:;Cc:;Bcc: object.

at
oracle.tip.pc.services.notification.email.EmailDriver.setAllAddress(EmailDriver.java:399)
at
oracle.tip.pc.services.notification.email.EmailDriver.send(EmailDriver.java:151)
at
oracle.tip.pc.services.notification.DefaultNotificationServiceImpl.sendEmailNotification(DefaultNotificationServiceImpl.java:252)
at
oracle.tip.pc.services.notification.NotificationServiceImpl.sendEmailNotification(NotificationServiceImpl.java:271)
at
oracle.bpel.services.notification.queue.sender.MDBConsumer.deliverNotification(MDBConsumer.java:277)
at
oracle.bpel.services.notification.queue.sender.MDBConsumer.onMessage(MDBConsumer.java:158)
at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:429)
at
weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:335)
at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:291)
at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4072)
at weblogic.jms.client.JMSSession.execute(JMSSession.java:3962)
at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:4490)
at
weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
<2009-05-21 16:26:26,566> <ERROR> <default.collaxa.cube.services>
<oracle.bpel.services.notification.queue.sender.MDBConsumer::onMessage>
Error for message ID 864c2c5d52e5b2bc:-2f273b97:121620f8c36:-7270 ERROR
MESSAGE : ORABPEL-00000
<2009-05-21 16:26:26,566> <ERROR> <default.collaxa.cube.services>
<oracle.bpel.services.notification.queue.sender.MDBConsumer::onMessage>
<2009-05-21 16:26:26,566> <ERROR> <default.collaxa.cube.services>
<oracle.bpel.services.notification.queue.sender.MDBConsumer::onMessage>
Exception not handled by the Collaxa Cube system.
<2009-05-21 16:26:26,567> <ERROR> <default.collaxa.cube.services>
<oracle.bpel.services.notification.queue.sender.MDBConsumer::onMessage> An
unhandled exception has been thrown in the Collaxa Cube system. The exception
reported is: "ORABPEL-00000
<2009-05-21 16:26:26,567> <ERROR> <default.collaxa.cube.services>
<oracle.bpel.services.notification.queue.sender.MDBConsumer::onMessage>
<2009-05-21 16:26:26,567> <ERROR> <default.collaxa.cube.services>
<oracle.bpel.services.notification.queue.sender.MDBConsumer::onMessage>
Exception not handled by the Collaxa Cube system.
<2009-05-21 16:26:26,567> <ERROR> <default.collaxa.cube.services>
<oracle.bpel.services.notification.queue.sender.MDBConsumer::onMessage> An
unhandled exception has been thrown in the Collaxa Cube system. The exception
reported is: "BPEL-10323
<2009-05-21 16:26:26,567> <ERROR> <default.collaxa.cube.services>
<oracle.bpel.services.notification.queue.sender.MDBConsumer::onMessage>
<2009-05-21 16:26:26,567> <ERROR> <default.collaxa.cube.services>
<oracle.bpel.services.notification.queue.sender.MDBConsumer::onMessage>
Internal Error.



And/Or (WebLogic specific):

<Aug 31, 2010 5:39:18 PM MDT> <Error> <WebLogicServer> <BEA-000337> <[STUCK] ExecuteThread: '52' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "614" seconds working on the request "weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl@2372fd2", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace:
Thread-699 "[STUCK] ExecuteThread: '52' for queue: 'weblogic.kernel.Default (self-tuning)'" <alive, in native, suspended, sleeping, priority=1, DAEMON> {
java.lang.Thread.sleep(Thread.java:???)
oracle.bpel.services.notification.NotificationUtil.getNotification(NotificationUtil.java:116)
oracle.bpel.services.notification.queue.sender.MDBConsumer.onMessage(MDBConsumer.java:101)
weblogic.ejb.container.internal.MDListener.execute(MDListener.java:367)
weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:316)
weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:243)
weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4051)
weblogic.jms.client.JMSSession.execute(JMSSession.java:3759)
weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:4490)
weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
weblogic.work.ExecuteThread.execute(ExecuteThread.java:206)
weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms