An execution of a reply message in a replica database can fail because of a concurrency conflict. Records applicable to a transaction might be locked so that an operation can not be performed in the replica. In this case, the message remains in the replica database. For example, when other transactions are updating a table, a concurrent refresh operation might fail. In this case, the REFRESH statement remains in the replica database and must be re-executed.
You can allow the message to be re-executed from the replica database by using the MESSAGE EXECUTE statement, see MESSAGE EXECUTE.
For example:
MESSAGE MyMsg0002 EXECUTE;
Sometimes, it might be necessary to use pessimistic locking when executing the message. This way, you avoid concurrency conflict handling, especially during refresh operations. For more information, see Handling concurrency conflict in synchronized tables in replica.