Send email child activity is responsible to send the email treatment to customers directly from NBA designer.
All the configuration has been done and designer shows the action is eligible , but customer didn’t receive the email. Treatment testing is successfully done and email received.
But when NBA designer executes the strategy we are not getting emails, I can see the items are queued but went to broken process as per below agent activity issue.
One more thing to add is, after the campaign successful run the data instances of Data-Corr-Email are not created. This is one of the reasons that send email child activity is failing to process further. Is there any place where we can check about the creation of data-corr-instances ?
This error is being logged by the SendEmailChild activity because the 3rd step’s jump condition of the activity is returning false due to which the control is jumping to the error logging steps of the activity. Basically in this step activity is checking that whether the batch data set for the run exists or not.
The jump condition contains the pxDoesObjectExist() function. We have checked the dataset with the same class and it exists. So I am not sure why it is returning false. the pxDoesObjectExist() function contains:
Thanks for the response. Meanwhile I had a discussion with pega support team with all my analysis.
I have to correct few words on my initial post.
One more thing to add is, after the campaign successful run the data instances of Data-Corr-Email are not created.
After the campaign run, the data-corr-email instance is created, there are two agents which are responsible to create the instances and send email. It is like a parent email agent and child email agent.
Parent has a master instance which of class Data-Corr-Email, and it will create instances to child email agent which is of class system-queue-Emailchild. So the instances are created.
The problem is the function and how pega is processing the email instances.
If the child email agent failed due to some process or failed in finding the data object, it will delete the instance from the parent class. So , requeue wont work and to my surprise there is no retry mechanisim.
Below is the updates from pega engineer.
1)Issue with the pxDoesObjectExist when rule logic
2)Delay with rule sync(SystemPulse) across different nodes, this could be also because there is very limited time window between the rule creation and the rule access (less than 2 minutes).
@DileepBalaga you did not provide the INC id. Please can you confirm that the open ticket is
INC-B32115 which was logged 4th August? Please do include these details when submitting questions as it helps us provide complete responses.
We will monitor INC-B32115 and GCS will continue the investigation with you. If at a later date you could update this forum question with a Solution Reply and mark it with Accept Solution that would be wonderful
@DileepBalaga INC-B32115 has been closed with the following resolution:
Suspected cause:
1)Issue with the pxDoesObjectExist when rule logic, hence asked to remove the when rule and test .
2)Delay with rule sync(SystemPulse) across different nodes, this could be also because there is very limited time window between the rule creation and the rule access (less than 2 minutes) as you have just one offer and a small segment.
Use any of the below options,
Specialize the SendEmailChild activity in your application ruleset and disable the Jump condition from Step 3 of SendEmailChild. Run NBA and confirm the outcome.
Update the SendEmailChild activity and add a 5 minute wait before executing the Step 3(like below). Run NBA and confirm the outcome.