I had an assignment to rectify the Oracle data replication implementation between multiple Oracle databases connected over a wide area network. The replication was throwing a large number of errors and I needed an efficient tool to monitor the replication process. The standard tool provided by Oracle had certain limitations so I decided to quickly write something which could fill in the gaps. That’s how I got into writing RepMonitor which I am sharing here.
RepMonitor is capable of doing the following:
1- list replication errors
2- analyze them by comparing original and current data values at different sites
3- Re-execute replication transaction
4- Remove replication transaction from pipeline
5- Generate reports and serialize replication transaction data
Following are the tasks which can be done more efficiently in RepMonitor than Replication Management Tool that comes with Oracle Enterprise Manager:
1- Search and filter transaction errors by date and other criterias.
2- Load data on-demand only to provide better performance.
2- Generate transaction error reports.
3- Save/Serialize selected transactions and all related info in xml format.
Just to briefly elaborate on point # 2 i.e. loading data on-demand. Oracle Enterprise Manager loads all the transaction error data at start up so if you have a large number of errors, it would take ages to load. Similarly any refresh reloads everything. RepMonitor overcomes these problems by loading data on-demand.
If you want to know more about Oracle Advanced Replication, go to Oracle.com. Here is an introductory whitepaper from Oracle.
RepMonitor is developed using Visual Studio 2005 and programming language is C#.Net. The source code can be downloaded from here.