Q
Problem solve Get help with specific problems with your technologies, process and projects.

Performance of DBMS_DEFER_SYS.EXECUTE_ERROR

I have developed a replication system with master snapshot architecture. I want to re-execute the transaction, and I am using DBMS_DEFER_SYS.EXECUTE_ERROR to do this. But it runs very, very slowly.

I have developed a replication system with master snapshot architecture. The snapshot pushes the change in the master. When a conflict happens, the transaction is saved in the error view at the master site. Afterwards, I resolve the conflict. I want to re-execute the transaction, and I am using DBMS_DEFER_SYS.EXECUTE_ERROR to do this. But it runs very, very slowly. I don't know why. Please, help me and tell me how to improve the performance. Thanks.
Usually these types of performance problems are fingered through the same mechanisms that normal performance problems are identified. Monitor the execute_error transaction as you would any other slow processing transaction.

That said, there are a couple of replication-specific areas to look at. I would walk through these, in order.

  1. Be sure you are not running into any locking scenarios related to the normal execution of distributed transactions against your master table. In other words, verify you aren't doing a refresh or a push at the same time you are trying to re-execute the error.
  2. Reorganize the master table.
  3. Apply the transaction manually and delete the error from the queue using the dbms_defer_sys.delete_error package. There is no rule that says your deferred transaction has to be applied through your replication architecture. In fact, unless I have many errors queued (in which I use dynamic SQL to re-execute each one) I usually correct the error, apply the data transaction myself and then do a simple execute behind it for all the queued transactions that haven't fired yet.

I hope this helps.

Dig Deeper on Oracle error messages

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.

-ADS BY GOOGLE

SearchDataManagement

SearchBusinessAnalytics

SearchSAP

SearchSQLServer

TheServerSide.com

SearchDataCenter

SearchContentManagement

SearchHRSoftware

Close