SharePlex dynamically caches the rowid for rows on which the SQL statement fails on the Target. Prior to posting subsequent SQL statements, SharePlex checks the rowid cache, and will not run subsequent SQL statements on the row if prior statements failed. The rowid cache can become huge if there are too many out of sync and this can cause unnecessary overhead that can degrade Post performance.
There is a parameter SP_OPO_ERR_ROWID, re-introduced in SharePlex 5.1 and later versions, that can be set to 0 to force SharePlex not to cache the rowids for such cases. To do this:
sp_ctrl>set param SP_OPO_ERR_ROWID 0
To undo the change at a later time when you do not anticipate any major out of sync (after having corrected current out of sync problems), stop Post and set it back to 1:
sp_ctrl>set param SP_OPO_ERR_ROWID 1
OR if on a version Shareplex 5.1 or up, the following will also work:
sp_ctrl>reset param SP_OPO_ERR_ROWID (the "reset param" command sets the value of a parameter to its default value)
As a side note, you may want to reduce the logging activity in event log and *errlog.sql file to improve the Post performance further.
Please see Solution 16097 - "Slow Post due to out of Sync and Consequent Increase in Logging Activity in event_log and *errlog.sql* files":https://support.quest.com/SUPPORT/index?page=solution&id=SOL16097
for implementing this and the pros and cons of doing so.