[ https://issues.apache.org/jira/browse/HBASE-15930?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16023197#comment-16023197 ]
Jonathan Hsieh edited comment on HBASE-15930 at 5/24/17 4:41 PM: ----------------------------------------------------------------- Did you test the pre-setup case? line 190 seems backwards. -- shouldn't it be 'if (!tableCFs.getcolumnFamilyMap().isEmpty()) ' ? {code} 187 Admin admin = source.getConnection().getAdmin(); 188 for (TableCFs tableCFs : admin.listReplicatedTableCFs()) { 189 if (tableCFs.getTable().equals(expected)) { 190 if (tableCFs.getColumnFamilyMap().isEmpty()) { 191 // Replicating at least one CF is good enough 192 return; 193 } 194 } 195 } 196 throw new RuntimeException("Aborting test: replication not configured and we were instructed to not set it up."); 197 } finally { {code} was (Author: jmhsieh): Did you test the pre-setup case? line 190 seems backwards. -- shouldn't it be 'if (!tableCFs.getcolumnFamilyMap(0.isEmpty()) ' ? {code} 187 Admin admin = source.getConnection().getAdmin(); 188 for (TableCFs tableCFs : admin.listReplicatedTableCFs()) { 189 if (tableCFs.getTable().equals(expected)) { 190 if (tableCFs.getColumnFamilyMap().isEmpty()) { 191 // Replicating at least one CF is good enough 192 return; 193 } 194 } 195 } 196 throw new RuntimeException("Aborting test: replication not configured and we were instructed to not set it up."); 197 } finally { {code} > Make IntegrationTestReplication's waitForReplication() smarter > -------------------------------------------------------------- > > Key: HBASE-15930 > URL: https://issues.apache.org/jira/browse/HBASE-15930 > Project: HBase > Issue Type: Improvement > Components: integration tests > Reporter: Dima Spivak > Assignee: Mike Drob > Fix For: 2.0.0 > > Attachments: HBASE-15930.patch > > > {{IntegrationTestReplication}} is a great test, but can improved by changing > how we handle waiting between generation of the linked list on the source > cluster and verifying the linked list on the destination cluster. [Even the > code suggests this should be > done|https://github.com/apache/hbase/blob/master/hbase-it/src/test/java/org/apache/hadoop/hbase/test/IntegrationTestReplication.java#L251-252], > so I'd like to take it on. [~mbertozzi] and [~busbey] have both suggested a > simple solution wherein we write a row into each region on the source cluster > after the linked list generation and then assume replication has gone through > once these rows are detected on the destination cluster. > Since you lads at Facebook are some of the heaviest users, [~eclark], would > you prefer I maintain the API and add a new command line option (say {{\-c | > \-\-check-replication}}) that would run before any {{--generateVerifyGap}} > sleep is carried out as it is now? -- This message was sent by Atlassian JIRA (v6.3.15#6346)