WORKAROUND:
Follow the below steps to work around the issue.
On target
1. First you need to find the table that post is stopping on. Check the event_log, if the table name is not printed in the log then disable post's sql caching, as having it disabled may generate a more detailed error message.
sp_ctrl> set param SP_OPO_SQL_CACHE_DISABLE 1
sp_ctrl> start post
Once post exits, look in the event_log to see if th etable name is printed.
Re-enable sql caching: sp_ctrl> set param SP_OPO_SQL_CACHE_DISABLE 0
2. If the above step does not reveal the problematic table name, then turn on post debug to see which table is having issue.
sp_ctrl> set param SP_OPO_DEBUG_FLAG queue queuename 0x1f0001ff
sp_ctrl> start post
Once post is stopped due to error, then turn off debug
sp_ctrl> reset param SP_OPO_DEBUG_FLAG queue queuename
Go to var dir/log and review the latest opo log for this particular post queue and go to the end of the file, it should show the table it is failing on.
3. Once you know the table name, describer source and target table and compare the column listing. If a column on target is missing, then add it to the target table and start post.
4. If the columns match then the issue is with the object cache file. On source, stop and restart capture so we have the latest object cache information written out to the object cache file, then dump the source and post object cache to check if table structure in object cache matches what's in the object cache.
sp_ctrl> stop capture
sp_ctrl> status
sp_ctrl> start capture
see this KB article 17525 on how to dump object cache.
If the target table structure does not match what's on the source, then manually correct the target table structure.
5. If capture object cache has the correct information and post object cache does not, then copy the source object cache to replace target object cache.
Note: If capture object cache also does not have the correct structure information, then you need to activate config again and dump the new capture object cache to verify and copy the new actid capture object cache over to the old actid post object cache on target.
On target, stop post if post is not already stopped due to error
go to var dir/state
ls -lt *objcache*opst*
back up the post object cache with highest actid for root cause analysis
On source
Now run copy cache for the actid that post is having issue with on SOURCE
sp_ctrl> copy cache actid xxx
it will copy the capture object cache for this actid to target
Go to var dir/state on target and check the size or timestamp on the target post object cache, it should have changed
ls -lt *objcache*opst*
Note: If 'copy cache' command is not available in the version that you are running, then you need manually copy the capture object cache to target and rename the file to the post object cache name format.
6. On Target, start post