Skip to main content

This content has been archived and is no longer being updated. Links may not function; however, this content may be relevant to outdated versions of the product.

Support Article

Agent PegaMKT-Engine SendEmailsInBulk hanging



During testing user is generating 202636 emails from a Pega Marketing Campaign, after sending 11030 emails the SendEmailsInBulk agent is failing to complete and no further emails are sent.

Error Messages

Not Applicable

Steps to Reproduce

  1. In the batch topology set thread count >1 for all the nodes that runs SendEmailsInBulk agent.
  2. Create a campaign which generates a large number of emails.

Root Cause

A defect or configuration issue in the operating environment.

It was identified that the execution is stuck on the waitOnBatchActivity function. It was also observed that if 10 calls to queueBatchActivity made, only 9 got started and finished, the 10th invocation didn't occurred.
Pega Marketing email transmission functionality uses queueBatchActivity and waitOnBatchActivity functions in an activity to send emails in parallel execution.

The activity is invoked from SendEmailsInBulk agent.

The number of parallel execution is dependent of thread count value set in the Decisioning Batch topology landing page.

On an Enterprise application server (JBOSS) this is done using PRAsync mdb. JBoss uses HornetQ as messaging infrastructure and we suspected the messages are getting lost if the agent takes long time to complete.


Perform the following local-change: Update JBOSS configuration ‘standalone-full.xml’ to disable buffering at client's portal

1. Set “consumer-window-size” to 0. refer
To allow slow consumers, set the consumer-window-size to 0 (for no buffer at all). This will prevent the slow consumer from buffering any messages on the client side. Messages will remain on the server side ready to be consumed by other consumers.

<pooled-connection-factory name="hornetq-ra">
<transaction mode="xa"/>
<connector-ref connector-name="in-vm"/>
<entry name="java:/JmsXA"/>

2. Set “max-delivery-attempts” to 1

<address-setting match="#">

Published August 23, 2017 - Updated December 2, 2021

Was this useful?

0% found this useful

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega Community has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice
Contact us