[
https://issues.apache.org/jira/browse/HBASE-24781?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Duo Zhang resolved HBASE-24781.
-------------------------------
Fix Version/s: 2.6.0
3.0.0-alpha-4
2.4.17
2.5.4
Hadoop Flags: Reviewed
Resolution: Fixed
Pushed to branch-2.4+.
Thanks [~mosmeh] for contributing!
> Clean up peer metrics when disabling peer
> -----------------------------------------
>
> Key: HBASE-24781
> URL: https://issues.apache.org/jira/browse/HBASE-24781
> Project: HBase
> Issue Type: Bug
> Components: Replication
> Affects Versions: 2.2.5
> Reporter: leizhang
> Assignee: Yuta Imazu
> Priority: Major
> Fix For: 2.6.0, 3.0.0-alpha-4, 2.4.17, 2.5.4
>
>
> Supposed that we have an peer with id 1, when execute shell cmd
> disable_peer '1' and enable_peer '1', then i can see the SizeOfLogQueue
> metric of all regionservers +1 , after 10 times disable_peer ops , it
> will increase to 11, and it will never decrease to 1 in fulture .
> I can see the function ReplicationSourceManager.refreshSources(peerId) is
> called , it will terminate the previous replication source and create a new
> one. and found the note //Do not clear metrics in the bellow code block:
> {code:java}
> ReplicationSourceInterface toRemove = this.sources.put(peerId, src);
> if (toRemove != null) {
> LOG.info("Terminate replication source for " + toRemove.getPeerId());
> // Do not clear metrics
> toRemove.terminate(terminateMessage, null, false);
> }
> {code}
> this cause the wrong number of sizeOfLogQueue, i think it's a sub issue of
> (HBASE-23231)
--
This message was sent by Atlassian Jira
(v8.20.10#820010)