Mail source fails due to concurrent connection

Problem: Sometimes mail source activity aborts with following error

"Unable to connect host [mailserver]: Server is down or Server/UserId/Password/Port is wrong"

Reason – This error comes when you execute multiple instances of the process flow (having Mail Source/Target activity) concurrently. All process flows try to establish connection with mail server at the same time. Since the allowed concurrent connection by mail servers is limited, the mail source aborts due to unavailability of connection on the mail server.

To resolve this issue follow the steps below:

1. De-activate the Mail Events.

2. Limit the number of mails to be processed concurrently. Change the value of following properties:

abpm.mailEvent.mailProcessConcurrency to 15 (You need to optimize this value according to your mail server. This will also speed up the execution of mail source because number of parallel execution will be less.)

abpm.mailEvent.retry to 1000 (This is the number of retries in case mail server is busy.)

abpm.mailEvent.sleepTime to 1000 miliseconds (This is sleep time between two retries. You need to optimize this value according to your mail server)

You need to restart the server after changing these properties.

3. In the process designer, you can also enable activity retry feature so that mail source will not abort in case it could not make connection on mail server. Following are steps enable retry:

a. In the process designer double click the mail source activity.
b. Update the following properties:

Activity maximum retries on failure to 50
Activity wait time between retries to 60 sec

c. Save the process flow.

Once you enable the retry feature of mail source, process flow will not abort even if mail source activity is aborted. The mail source activity will be re-executed.

4. Activate the mail events

Have more questions? Submit a request


Article is closed for comments.