Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-2989

[replication] RSM won't cleanup after locking if 0 peers

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • None
    • 0.89.20100924, 0.90.0
    • None
    • None

    Description

      Small bug in ReplicationSourceManager, it won't cleanup after locking another's RS znode if it didn't contain any queue at all. It happens in transferQueues():

      LOG.info("Moving " + rsZnode + "'s hlogs to my queue");
          SortedMap<String, SortedSet<String>> newQueues =
              this.zkHelper.copyQueuesFromRS(rsZnode);
          if (newQueues == null || newQueues.size() == 0) {
            return;
          }
          this.zkHelper.deleteRsQueues(rsZnode);
      

      That last line should be before the if, so that it deletes the lock znode and the RS znode. Currently a lot of cruft piles up in ZK after a few restarts with replication enabled and no queues, or in slave RSs.

      Attachments

        Activity

          People

            jdcryans Jean-Daniel Cryans
            jdcryans Jean-Daniel Cryans
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: