SAS Digital Marketing broadcasts might fail to complete. This might occur when the broadcast e-mail SMTP server, or SMS message ASP Gateway, becomes unresponsive during the course of the broadcast execution. The wrapper.log or nohup.log file might show that the system is "Waiting for grid node" (although Grid nodes are not in use), "In a wait state," or "Waiting for group completion."
When the system enters this unresponsive state, it is not possible to cancel the broadcast and continue. You must restart the SAS Digital Marketing server. When you restart the SAS Digital Marketing server, any pending broadcasts are lost. If the lost broadcasts are SAS® Marketing Automation broadcasts, the Common Data Model contact history will have already been updated with a SENT status. Contact SAS Technical Support before you restart the SAS Digital Marketing server for further advice.
Click the Hot Fix tab in this note to access the hot fix for this issue.
After you apply the hot fix, or if you are using a release that is already fixed, a new Java argument is available: -DmessageTimeoutWhileSending.
Add this argument to your startsrv.ini, setenv.sh, or sem.conf files (as used) with a number in milliseconds (for example, -DmessageTimeoutWhileSending=10000).
To calculate the correct number of milliseconds, consider the following example:
The -DmessageTimeoutWhileSending= argument is specified in milliseconds per message. Each e-mail or SMS message takes one second in between sending and being sent; that is, 1,000 milliseconds. In order to give sufficient time to allow for a temporary lack of response from the SMTP server or ASP gateway, a value of 10,000 milliseconds might be used. If the SAS Digital Marketing server configuration has a maximum number of threads for e-mail (and SMS) broadcasts set to 250, this would allow for a wait time of 250 x 10,000 milliseconds. This equates to slightly more than 40 minutes wait time for this thread to complete. After this time, the execution of the broadcast thread is halted. You should adjust this parameter to reflect your expected e-mail and SMS sending time and maximum threads used.
If an unresponsive broadcast is detected and execution terminated via this process, the remainder of the threads for that broadcast will continue to be executed, if possible, and the broadcast execution completed. Subsequent broadcasts in the queue continue to be scheduled and executed, if possible. For the terminated broadcast the wrapper.log or nohup.log file shows the moniker of the broadcast that was being executed and the recipient table being used. The log file also shows the last e-mail or SMS that was being sent, within the terminated thread, when the error occurred. These details allow for corrective action to be taken.
Operating System and Release Information
SAS System | SAS Digital Marketing | Microsoft® Windows® for x64 | 5.4_M1 | 6.3 | | 9.4 TS1M1 |
64-bit Enabled AIX | 5.4_M1 | 6.3 | | 9.4 TS1M1 |
64-bit Enabled HP-UX | 5.4_M1 | 6.3 | | 9.4 TS1M1 |
64-bit Enabled Solaris | 5.4_M1 | 6.3 | | 9.4 TS1M1 |
HP-UX IPF | 5.4_M1 | 6.3 | | 9.4 TS1M1 |
Linux for x64 | 5.4_M1 | 6.3 | | 9.4 TS1M1 |
Solaris for x64 | 5.4_M1 | 6.3 | | 9.4 TS1M1 |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.