You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "cuijianwei (JIRA)" <ji...@apache.org> on 2015/01/02 15:36:13 UTC

[jira] [Created] (HBASE-12797) ReplicationSyncUp will return before recovered queue transfered with default configuration

cuijianwei created HBASE-12797:
----------------------------------

             Summary: ReplicationSyncUp will return before recovered queue transfered with default configuration
                 Key: HBASE-12797
                 URL: https://issues.apache.org/jira/browse/HBASE-12797
             Project: HBase
          Issue Type: Improvement
          Components: Replication
    Affects Versions: 0.99.2
            Reporter: cuijianwei
            Priority: Minor


ReplicationSyncUp will check all old sources has been removed every 10 seconds (ReplicationSyncUp.SLEEP_TIME):
{code}
      int numberOfOldSource = 1; // default wait once
      while (numberOfOldSource > 0) {
        Thread.sleep(SLEEP_TIME);
        numberOfOldSource = manager.getOldSources().size();
      }
{code}
However, the default "replication.sleep.before.failover" is 30 seconds, which will make NodeFailoverWorker sleep at least 30 seconds before transferring recover queue. Therefore, ReplicationSyncUp will do nothing and return directly with default configuration.
When using ReplicationSyncUp, the goal tends to be syncing-up the not-replicated data to peer cluster as soon as possible, is it reasonable to set "replication.sleep.before.failover" to 0 in this situation, and also make sure ReplicationQueues.getListOfReplicators().size() = 0 before returned?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)