{"id":8537,"date":"2016-07-11T18:31:34","date_gmt":"2016-07-11T16:31:34","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/"},"modified":"2023-06-08T15:13:04","modified_gmt":"2023-06-08T13:13:04","slug":"shareplex-compare-and-repair-commands","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/","title":{"rendered":"SharePlex Compare and Repair commands"},"content":{"rendered":"<p><strong>By Mouhamadou Diaw<\/strong><\/p>\n<p>Reading Franck Pachot blog about comparing source and target in a Dbvisit replication (<a href=\"http:\/\/dbi-services.com\/blog\/compare-source-and-target-in-a-dbvisit-replication\/\" target=\"_blank\" rel=\"noopener\">http:\/\/dbi-services.com\/blog\/compare-source-and-target-in-a-dbvisit-replication\/<\/a>), I decide to write a small article about how we can do same thing with SharePlex. Indeed SharePlex provides built-in commands to <span style=\"color: #ea6d14\">compare<\/span> and <span style=\"color: #ea6d14\">repair<\/span> synchronization.<br \/>\nBelow is our configuration file. We are just replicating table article to article_rep. Both tables contain 2000000 rows<br \/>\n<i><\/i><\/p>\n<div>\n<div id=\"highlighter_805426\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">datasource:o.SPLEXDB<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"html plain\">#source tables target tables routing map<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"html plain\">titi.article titi.article_rep atlasrep2@o.SPLEXSTR2<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>From the source let\u2019s insert 2 rows to verify that replication is working fine.<\/p>\n<div>\n<div id=\"highlighter_521375\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<div class=\"line number13 index12 alt2\">13<\/div>\n<div class=\"line number14 index13 alt1\">14<\/div>\n<div class=\"line number15 index14 alt2\">15<\/div>\n<div class=\"line number16 index15 alt1\">16<\/div>\n<div class=\"line number17 index16 alt2\">17<\/div>\n<div class=\"line number18 index17 alt1\">18<\/div>\n<div class=\"line number19 index18 alt2\">19<\/div>\n<div class=\"line number20 index19 alt1\">20<\/div>\n<div class=\"line number21 index20 alt2\">21<\/div>\n<div class=\"line number22 index21 alt1\">22<\/div>\n<div class=\"line number23 index22 alt2\">23<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">SQL&gt; insert into article values (2000001,'2000001_designation',2000000001);<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"html plain\">1 row created.<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"html plain\">SQL&gt; commit;<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"html plain\">Commit complete.<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"html plain\">SQL&gt; insert into article values (2000002,'2000002_designation',2000000002);<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"html plain\">1 row created.<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><\/div>\n<div class=\"line number13 index12 alt2\"><code class=\"html plain\">SQL&gt; commit;<\/code><\/div>\n<div class=\"line number14 index13 alt1\"><\/div>\n<div class=\"line number15 index14 alt2\"><code class=\"html plain\">Commit complete.<\/code><\/div>\n<div class=\"line number16 index15 alt1\"><\/div>\n<div class=\"line number17 index16 alt2\"><\/div>\n<div class=\"line number18 index17 alt1\"><code class=\"html plain\">SQL&gt; select * from article where idart in (2000001,2000002);<\/code><\/div>\n<div class=\"line number19 index18 alt2\"><\/div>\n<div class=\"line number20 index19 alt1\"><code class=\"html spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">IDART DESIGNATION\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 PRIX<\/code><\/div>\n<div class=\"line number21 index20 alt2\"><code class=\"html plain\">---------- ------------------------------ ----------<\/code><\/div>\n<div class=\"line number22 index21 alt1\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">2000001 2000001_designation\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2000000001<\/code><\/div>\n<div class=\"line number23 index22 alt2\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">2000002 2000002_designation\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2000000002<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>From the target let\u2019s verify that the 2 rows are replicated<\/p>\n<div>\n<div id=\"highlighter_107370\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">SQL&gt; select * from article_rep where idart in (2000001,2000002);<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"html spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">IDART DESIGNATION\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 PRIX<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"html plain\">---------- ------------------------------ ----------<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">2000001 2000001_designation\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2000000001<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">2000002 2000002_designation\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2000000002<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>To compare source and target in SharePlex, the command <span style=\"color: #ea6d14\">compare<\/span> is used. Let\u2019s see a demonstration.<br \/>\nFrom the source<i>\u00a0<\/i><\/p>\n<div>\n<div id=\"highlighter_296489\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">sp_ctrl (atlas:2104)&gt;\u00a0 compare titi.article to titi.article_rep at atlasrep2@o.SPLEXSTR2 for o.SPLEXDB<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"html spaces\">\u00a0\u00a0<\/code><code class=\"html plain\">comparing 1 of 1 objects<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"html spaces\">\u00a0\u00a0<\/code><code class=\"html plain\">compare started; job id 7<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"html plain\">sp_ctrl (atlas:2104)&gt;<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>And now let\u2019s see the status of our replication<\/p>\n<div>\n<div id=\"highlighter_99792\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<div class=\"line number13 index12 alt2\">13<\/div>\n<div class=\"line number14 index13 alt1\">14<\/div>\n<div class=\"line number15 index14 alt2\">15<\/div>\n<div class=\"line number16 index15 alt1\">16<\/div>\n<div class=\"line number17 index16 alt2\">17<\/div>\n<div class=\"line number18 index17 alt1\">18<\/div>\n<div class=\"line number19 index18 alt2\">19<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">sp_ctrl (atlas:2104)&gt; show compare<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">The syntax to get status for the compare command has changed<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">Instead of 'show compare' use the 'compare status' or 'repair status' command<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><\/div>\n<div class=\"line number6 index5 alt1\"><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"html plain\">Job ID\u00a0\u00a0\u00a0 : 7<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"html plain\">PID\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 : 8644<\/code><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"html plain\">Host\u00a0\u00a0\u00a0\u00a0\u00a0 : atlas.localdomain<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"html plain\">Started\u00a0\u00a0 : 06-JUL-16 11:34:48<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"html plain\">Job Type\u00a0 : Compare<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><code class=\"html plain\">Status\u00a0\u00a0\u00a0 : Done - 1 object completed<\/code><\/div>\n<div class=\"line number13 index12 alt2\"><\/div>\n<div class=\"line number14 index13 alt1\"><code class=\"html plain\">ID\u00a0\u00a0\u00a0\u00a0 Tablename\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Status\u00a0\u00a0\u00a0\u00a0 Time\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Total Rows %Comp Total Time<\/code><\/div>\n<div class=\"line number15 index14 alt2\"><code class=\"html plain\">------ ------------------------------------ ---------- ---------- ---------- ----- ----------<\/code><\/div>\n<div class=\"line number16 index15 alt1\"><code class=\"html plain\">1\u00a0\u00a0\u00a0\u00a0\u00a0 \"TITI\".\"ARTICLE\"\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 In Sync\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 N\/A\u00a0\u00a0\u00a0 2000002\u00a0\u00a0 100\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0:31<\/code><\/div>\n<div class=\"line number17 index16 alt2\"><\/div>\n<div class=\"line number18 index17 alt1\"><\/div>\n<div class=\"line number19 index18 alt2\"><code class=\"html plain\">sp_ctrl (atlas:2104)&gt;<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>We see that tables are in sync. When running the compare command, SharePlex obtains a brief exclusive lock on the source table to get read consistency for its row selection.<br \/>\nOn the target system, SharePlex obtains an exclusive lock on the target table and retains the lock for the duration of the comparison of that table.<br \/>\nNow let\u2019s Sync out our replication<br \/>\nFrom the target let\u2019s delete a row (note that we have one directional replication only from source to target)<\/p>\n<div>\n<div id=\"highlighter_683447\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">SQL&gt; delete from article_rep where idart=2000002;<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"html plain\">1 row deleted.<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"html plain\">SQL&gt; commit;<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"html plain\">Commit complete.<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"html plain\">SQL&gt;<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>And from the source let\u2019s insert a row<\/p>\n<div>\n<div id=\"highlighter_649228\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<div class=\"line number13 index12 alt2\">13<\/div>\n<div class=\"line number14 index13 alt1\">14<\/div>\n<div class=\"line number15 index14 alt2\">15<\/div>\n<div class=\"line number16 index15 alt1\">16<\/div>\n<div class=\"line number17 index16 alt2\">17<\/div>\n<div class=\"line number18 index17 alt1\">18<\/div>\n<div class=\"line number19 index18 alt2\">19<\/div>\n<div class=\"line number20 index19 alt1\">20<\/div>\n<div class=\"line number21 index20 alt2\">21<\/div>\n<div class=\"line number22 index21 alt1\">22<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">SQL&gt; insert into article values (2000003,'2000003_designation',2000000003);<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"html plain\">1 row created.<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"html plain\">SQL&gt; commit;<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"html plain\">Commit complete.<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"html plain\">SQL&gt; select * from article where idart=2000003;<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"html spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">IDART DESIGNATION\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 PRIX<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><code class=\"html plain\">---------- ------------------------------ ----------<\/code><\/div>\n<div class=\"line number13 index12 alt2\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">2000003 2000003_designation\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2000000003<\/code><\/div>\n<div class=\"line number14 index13 alt1\"><\/div>\n<div class=\"line number15 index14 alt2\"><\/div>\n<div class=\"line number16 index15 alt1\"><code class=\"html plain\">SQL&gt; select count(*) from article;<\/code><\/div>\n<div class=\"line number17 index16 alt2\"><\/div>\n<div class=\"line number18 index17 alt1\"><code class=\"html spaces\">\u00a0\u00a0<\/code><code class=\"html plain\">COUNT(*)<\/code><\/div>\n<div class=\"line number19 index18 alt2\"><code class=\"html plain\">----------<\/code><\/div>\n<div class=\"line number20 index19 alt1\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">2000003<\/code><\/div>\n<div class=\"line number21 index20 alt2\"><\/div>\n<div class=\"line number22 index21 alt1\"><code class=\"html plain\">SQL&gt;<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>From the target we can verify that the last row with idart=2000003 is present but the number of rows is now different between the 2 tables. Indeed we deleted the row with idart=2000002 in the target and this deletion is not replicated in the source. Now replication is sync out<\/p>\n<div>\n<div id=\"highlighter_786534\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">SQL&gt; select * from article_rep where idart=2000003;<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"html spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">IDART DESIGNATION\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 PRIX<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"html plain\">---------- ------------------------------ ----------<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">2000003 2000003_designation\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2000000003<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"html plain\">SQL&gt; select count(*) from article_rep;<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"html spaces\">\u00a0\u00a0<\/code><code class=\"html plain\">COUNT(*)<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"html plain\">----------<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">2000002<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>Let\u2019s run again compare command on the source and let\u2019s see the output now<\/p>\n<div>\n<div id=\"highlighter_400568\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">sp_ctrl (atlas:2104)&gt; compare titi.article to titi.article_rep at atlasrep2@o.SPLEXSTR2 for o.SPLEXDB<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>We can see that the status is Sync Out (note that comparison of 2000000 rows was very quick)<\/p>\n<div>\n<div id=\"highlighter_495031\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<div class=\"line number13 index12 alt2\">13<\/div>\n<div class=\"line number14 index13 alt1\">14<\/div>\n<div class=\"line number15 index14 alt2\">15<\/div>\n<div class=\"line number16 index15 alt1\">16<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">sp_ctrl (atlas:2104)&gt; show compare<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">The syntax to get status for the compare command has changed<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">Instead of 'show compare' use the 'compare status' or 'repair status' command<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><\/div>\n<div class=\"line number6 index5 alt1\"><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"html plain\">Job ID\u00a0\u00a0\u00a0 : 9<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"html plain\">PID\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 : 12583<\/code><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"html plain\">Host\u00a0\u00a0\u00a0\u00a0\u00a0 : atlas.localdomain<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"html plain\">Started\u00a0\u00a0 : 06-JUL-16 13:24:48<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"html plain\">Job Type\u00a0 : Compare<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><code class=\"html plain\">Status\u00a0\u00a0\u00a0 : Done - 1 object completed<\/code><\/div>\n<div class=\"line number13 index12 alt2\"><\/div>\n<div class=\"line number14 index13 alt1\"><code class=\"html plain\">ID\u00a0\u00a0\u00a0\u00a0 Tablename\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Status\u00a0\u00a0\u00a0\u00a0 Time\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Total Rows %Comp Total Time<\/code><\/div>\n<div class=\"line number15 index14 alt2\"><code class=\"html plain\">------ ------------------------------------ ---------- ---------- ---------- ----- ----------<\/code><\/div>\n<div class=\"line number16 index15 alt1\"><code class=\"html plain\">1\u00a0\u00a0\u00a0\u00a0\u00a0 \"TITI\".\"ARTICLE\"\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Out Sync\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 N\/A\u00a0\u00a0\u00a0 2000003\u00a0\u00a0 100\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0:25<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>To sync In \u00a0the replication we just have to use the<span style=\"color: #ea6d14\"> repair<\/span> command. This command is magic.<\/p>\n<div>\n<div id=\"highlighter_162466\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">sp_ctrl (atlas:2104)&gt; repair\u00a0 titi.article to titi.article_rep at atlasrep2@o.SPLEXSTR2 for o.SPLEXDB<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"html spaces\">\u00a0\u00a0<\/code><code class=\"html plain\">repairing 1 of 1 objects<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"html spaces\">\u00a0\u00a0<\/code><code class=\"html plain\">repair started; job id 10<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>In the Log file on the target we can see that SharePlex is using ORA_HASH to compare<\/p>\n<div>\n<div id=\"highlighter_226270\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<div class=\"line number13 index12 alt2\">13<\/div>\n<div class=\"line number14 index13 alt1\">14<\/div>\n<div class=\"line number15 index14 alt2\">15<\/div>\n<div class=\"line number16 index15 alt1\">16<\/div>\n<div class=\"line number17 index16 alt2\">17<\/div>\n<div class=\"line number18 index17 alt1\">18<\/div>\n<div class=\"line number19 index18 alt2\">19<\/div>\n<div class=\"line number20 index19 alt1\">20<\/div>\n<div class=\"line number21 index20 alt2\">21<\/div>\n<div class=\"line number22 index21 alt1\">22<\/div>\n<div class=\"line number23 index22 alt2\">23<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">[oracle@atlasrep2 log]$ less declt_10-1_SPLEXDB_192.168.1.40_p9883.log<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:45.228937 9883 1352263552 NOTE: setting up HASH column info (de_table_setup_ora_hash_compare,L2915)<\/code><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:45.228971 9883 1352263552 Key Compare : Off<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:45.229009 9883 1352263552 Job ID\u00a0\u00a0\u00a0\u00a0\u00a0 : 10<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:45.229017 9883 1352263552 Source Table: \"TITI\".\"ARTICLE\"<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:45.229122 9883 1352263552 Source Node : atlas.localdomain<\/code><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:45.229130 9883 1352263552 Target Table: \"TITI\".\"ARTICLE_REP\"<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:45.229135 9883 1352263552 Target Route: atlasrep2@SPLEXSTR2<\/code><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:45.229140 9883 1352263552 Batch Size\u00a0 : 100000 rows<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:45.229145 9883 1352263552 Repair\u00a0\u00a0\u00a0\u00a0\u00a0 : On (2 Pass)<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:45.229150 9883 1352263552 sp_declt PID: 9883<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:45.229155 9883 1352263552 Read Buffer Size : 1 mbytes<\/code><\/div>\n<div class=\"line number13 index12 alt2\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:45.237727 9883 1352263552 Current status: ready to fetch batch,of rows; including the order by sorting.<\/code><\/div>\n<div class=\"line number14 index13 alt1\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:45.237782 9883 1352263552 running sql statement : (de_select_prepare_to_fetch,L1384)<\/code><\/div>\n<div class=\"line number15 index14 alt2\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:45.237795 9883 1352263552\u00a0\u00a0 SELECT \/*+ PARALLEL (A,2) *\/ ROWID,ORA_HASH(\"IDART\"||'~'||\"PRIX\"), ORA_HASH(\"DESIGNATION\") FROM \"TITI\".\"ARTICLE_REP\" A ORDER BY 2, 3<\/code><\/div>\n<div class=\"line number16 index15 alt1\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:36:54.064711 9883 1352263552 Current status: got batch of rows<\/code><\/div>\n<div class=\"line number17 index16 alt2\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:37:04.527252 9883 1352263552 NOTE: total number of rows fetched = 2000002 (..\/src\/deqtr\/de_select.cpp,L1630)<\/code><\/div>\n<div class=\"line number18 index17 alt1\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:37:04.533329 9883 1352263552 Notice: starting the second phase in the repair process<\/code><\/div>\n<div class=\"line number19 index18 alt2\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:37:04.616704 9883 1352263552 Leaving de_msg_clt_preCompareMessaging1_5,L1297<\/code><\/div>\n<div class=\"line number20 index19 alt1\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:37:06.659513 9883 1352263552 Leaving de_msg_clt_preCompareMessaging2,L614<\/code><\/div>\n<div class=\"line number21 index20 alt2\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:37:06.659716 9883 1352263552 No new key column order, using default column order for TITI.ARTICLE_REP<\/code><\/div>\n<div class=\"line number22 index21 alt1\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:37:06.721957 9883 1352263552 Current status: ready to fetch batch,of rows; including the order by sorting.<\/code><\/div>\n<div class=\"line number23 index22 alt2\"><code class=\"html plain\">declt\u00a0\u00a0\u00a0 2016-07-06 13:37:06.721996 9883 1352263552 running sql statement : (de_select_prepare_to_fetch,L1384)<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>When issuing again the show compare command, we can see that the status is now Repaired.<\/p>\n<div>\n<div id=\"highlighter_873826\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<div class=\"line number13 index12 alt2\">13<\/div>\n<div class=\"line number14 index13 alt1\">14<\/div>\n<div class=\"line number15 index14 alt2\">15<\/div>\n<div class=\"line number16 index15 alt1\">16<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">sp_ctrl (atlas:2104)&gt; show compare<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">The syntax to get status for the compare command has changed<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">Instead of 'show compare' use the 'compare status' or 'repair status' command<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><\/div>\n<div class=\"line number6 index5 alt1\"><\/div>\n<div class=\"line number7 index6 alt2\"><code class=\"html plain\">Job ID\u00a0\u00a0\u00a0 : 10<\/code><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"html plain\">PID\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 : 13008<\/code><\/div>\n<div class=\"line number9 index8 alt2\"><code class=\"html plain\">Host\u00a0\u00a0\u00a0\u00a0\u00a0 : atlas.localdomain<\/code><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"html plain\">Started\u00a0\u00a0 : 06-JUL-16 13:36:37<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"html plain\">Job Type\u00a0 : Repair<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><code class=\"html plain\">Status\u00a0\u00a0\u00a0 : Done - 1 object completed<\/code><\/div>\n<div class=\"line number13 index12 alt2\"><\/div>\n<div class=\"line number14 index13 alt1\"><code class=\"html plain\">ID\u00a0\u00a0\u00a0\u00a0 Tablename\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Status\u00a0\u00a0\u00a0\u00a0 Time\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Total Rows %Comp Total Time<\/code><\/div>\n<div class=\"line number15 index14 alt2\"><code class=\"html plain\">------ ------------------------------------ ---------- ---------- ---------- ----- ----------<\/code><\/div>\n<div class=\"line number16 index15 alt1\"><code class=\"html plain\">1\u00a0\u00a0\u00a0\u00a0\u00a0 \"TITI\".\"ARTICLE\"\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Repaired\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 N\/A\u00a0\u00a0\u00a0 2000003\u00a0\u00a0 100\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0:29<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>From the source we can verify the number of rows<\/p>\n<div>\n<div id=\"highlighter_123358\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">SQL&gt; select count(*) from article;<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"html spaces\">\u00a0\u00a0<\/code><code class=\"html plain\">COUNT(*)<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"html plain\">----------<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">2000003<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>From the target we also can verify that we have the same number of rows and that the row deleted (idart=2000002) is now present.<\/p>\n<div>\n<div id=\"highlighter_701988\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<div class=\"line number2 index1 alt1\">2<\/div>\n<div class=\"line number3 index2 alt2\">3<\/div>\n<div class=\"line number4 index3 alt1\">4<\/div>\n<div class=\"line number5 index4 alt2\">5<\/div>\n<div class=\"line number6 index5 alt1\">6<\/div>\n<div class=\"line number7 index6 alt2\">7<\/div>\n<div class=\"line number8 index7 alt1\">8<\/div>\n<div class=\"line number9 index8 alt2\">9<\/div>\n<div class=\"line number10 index9 alt1\">10<\/div>\n<div class=\"line number11 index10 alt2\">11<\/div>\n<div class=\"line number12 index11 alt1\">12<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">SQL&gt; select count(*) from article_rep;<\/code><\/div>\n<div class=\"line number2 index1 alt1\"><\/div>\n<div class=\"line number3 index2 alt2\"><code class=\"html spaces\">\u00a0\u00a0<\/code><code class=\"html plain\">COUNT(*)<\/code><\/div>\n<div class=\"line number4 index3 alt1\"><code class=\"html plain\">----------<\/code><\/div>\n<div class=\"line number5 index4 alt2\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">2000003<\/code><\/div>\n<div class=\"line number6 index5 alt1\"><\/div>\n<div class=\"line number7 index6 alt2\"><\/div>\n<div class=\"line number8 index7 alt1\"><code class=\"html plain\">SQL&gt; select * from article_rep\u00a0 where idart=2000002;<\/code><\/div>\n<div class=\"line number9 index8 alt2\"><\/div>\n<div class=\"line number10 index9 alt1\"><code class=\"html spaces\">\u00a0\u00a0\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">IDART DESIGNATION\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 PRIX<\/code><\/div>\n<div class=\"line number11 index10 alt2\"><code class=\"html plain\">---------- ------------------------------ ----------<\/code><\/div>\n<div class=\"line number12 index11 alt1\"><code class=\"html spaces\">\u00a0\u00a0\u00a0<\/code><code class=\"html plain\">2000002 2000002_designation\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2000000002<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<h4>Conclusion<\/h4>\n<p>We will retain that SharePlex provides powerful commands <span style=\"color: #ea6d14\"> compare\/repair<\/span> to fix out of synchronization. Just note that during execution of these commands tables are locked (briefly on the source and more on the target) meaning that no transaction will not be possible during this period.<br \/>\nNote that the compare and repair commands can also be used for initial load (not recommended because of locks).<\/p>\n<div>\n<div id=\"highlighter_616219\" class=\"syntaxhighlighter  html\">\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td class=\"gutter\">\n<div class=\"line number1 index0 alt2\">1<\/div>\n<\/td>\n<td class=\"code\">\n<div class=\"container\">\n<div class=\"line number1 index0 alt2\"><code class=\"html plain\">&lt;<\/code><code class=\"html keyword\">br<\/code><code class=\"html plain\">&gt;<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>By Mouhamadou Diaw Reading Franck Pachot blog about comparing source and target in a Dbvisit replication (http:\/\/dbi-services.com\/blog\/compare-source-and-target-in-a-dbvisit-replication\/), I decide to write a small article about how we can do same thing with SharePlex. Indeed SharePlex provides built-in commands to compare and repair synchronization. Below is our configuration file. We are just replicating table article to [&hellip;]<\/p>\n","protected":false},"author":27,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[229],"tags":[],"type_dbi":[],"class_list":["post-8537","post","type-post","status-publish","format-standard","hentry","category-database-administration-monitoring"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>SharePlex Compare and Repair commands - dbi Blog<\/title>\n<meta name=\"description\" content=\"oracle, shareplex, Replication\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SharePlex Compare and Repair commands\" \/>\n<meta property=\"og:description\" content=\"oracle, shareplex, Replication\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2016-07-11T16:31:34+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-06-08T13:13:04+00:00\" \/>\n<meta name=\"author\" content=\"Oracle Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Oracle Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/\"},\"author\":{\"name\":\"Oracle Team\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee\"},\"headline\":\"SharePlex Compare and Repair commands\",\"datePublished\":\"2016-07-11T16:31:34+00:00\",\"dateModified\":\"2023-06-08T13:13:04+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/\"},\"wordCount\":450,\"commentCount\":0,\"articleSection\":[\"Database Administration &amp; Monitoring\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/\",\"name\":\"SharePlex Compare and Repair commands - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"datePublished\":\"2016-07-11T16:31:34+00:00\",\"dateModified\":\"2023-06-08T13:13:04+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee\"},\"description\":\"oracle, shareplex, Replication\",\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SharePlex Compare and Repair commands\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee\",\"name\":\"Oracle Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g\",\"caption\":\"Oracle Team\"},\"url\":\"https:\/\/www.dbi-services.com\/blog\/author\/oracle-team\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"SharePlex Compare and Repair commands - dbi Blog","description":"oracle, shareplex, Replication","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/","og_locale":"en_US","og_type":"article","og_title":"SharePlex Compare and Repair commands","og_description":"oracle, shareplex, Replication","og_url":"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/","og_site_name":"dbi Blog","article_published_time":"2016-07-11T16:31:34+00:00","article_modified_time":"2023-06-08T13:13:04+00:00","author":"Oracle Team","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Oracle Team","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/"},"author":{"name":"Oracle Team","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee"},"headline":"SharePlex Compare and Repair commands","datePublished":"2016-07-11T16:31:34+00:00","dateModified":"2023-06-08T13:13:04+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/"},"wordCount":450,"commentCount":0,"articleSection":["Database Administration &amp; Monitoring"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/","url":"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/","name":"SharePlex Compare and Repair commands - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"datePublished":"2016-07-11T16:31:34+00:00","dateModified":"2023-06-08T13:13:04+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee"},"description":"oracle, shareplex, Replication","breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/shareplex-compare-and-repair-commands\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"SharePlex Compare and Repair commands"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/66ab87129f2d357f09971bc7936a77ee","name":"Oracle Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f711f7cd2c9b09bf2627133755b569fb5be0694810cfd33033bdd095fedba86d?s=96&d=mm&r=g","caption":"Oracle Team"},"url":"https:\/\/www.dbi-services.com\/blog\/author\/oracle-team\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/8537","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/27"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=8537"}],"version-history":[{"count":1,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/8537\/revisions"}],"predecessor-version":[{"id":25677,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/8537\/revisions\/25677"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=8537"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=8537"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=8537"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=8537"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}