I am facing one issue with our Order Creation flow as below.
It is performing following step.
- Get Order from Salesforce with status = “Ready To Be Sent”.
- Deliver Order to AWS SQS Queue
- Update SalesForce with Order Status = “Sent To Warehouse” for all orders which were delivered successfully to AWS.
It is delivering Orders 2 times if Salesforce update fail as expected. Boomi process is supposed to run every 15 min.
Step 1 executed successfully.
Step 2 executed successfully
Step 3 failed even after retry. So Order status was not changed. It was still “Ready To Be Sent”.
Execution 2- Started after 15 min
Step 1 executed successfully. As Order status was not changed so it picked same order again.
Step 2 executed successfully.
Step 3 executed successfully. Order status changed.
Please note that step 2 and 3 are executed on 2 different systems ( AWS and SalesForce ). We can’t execute in one transaction.
I see following improvements.
- We can improve the Boomi process to retry multiple times while updating salesforce but again it does not guaranteed that the problem will be solved as it is possible that Boomi will fail for each retry.
2. Update SalesForce status first and then deliver message to AWS. In this case, we might have orders in Sales force showing as “Sent To Warehouse” but actually not delivered to AWS (False Status)
Any other suggestion, looking for full proof solution as above 2 solutions still have limitations ?