[ 
https://issues.apache.org/jira/browse/HBASE-23231?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Duo Zhang resolved HBASE-23231.
-------------------------------
    Hadoop Flags: Reviewed
      Resolution: Fixed

Pushed to branch-2.1+.

Thanks [~binlijin] for contributing.

> ReplicationSource do not update metrics after refresh
> -----------------------------------------------------
>
>                 Key: HBASE-23231
>                 URL: https://issues.apache.org/jira/browse/HBASE-23231
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 2.2.2
>            Reporter: Lijin Bin
>            Assignee: Lijin Bin
>            Priority: Major
>
> When replication refresh to new state, it will create a new source and 
> terminate the old source and replace the old source with new source.
> {code}
>   public void refreshSources(String peerId) throws IOException {
>     String terminateMessage = "Peer " + peerId +
>       " state or config changed. Will close the previous replication source 
> and open a new one";
>     ReplicationPeer peer = replicationPeers.getPeer(peerId);
>     ReplicationSourceInterface src = createSource(peerId, peer);
>     // synchronized on latestPaths to avoid missing the new log
>     synchronized (this.latestPaths) {
>       ReplicationSourceInterface toRemove = this.sources.put(peerId, src);
>       if (toRemove != null) {
>         LOG.info("Terminate replication source for " + toRemove.getPeerId());
>         toRemove.terminate(terminateMessage);
>       }
>       for (NavigableSet<String> walsByGroup : walsById.get(peerId).values()) {
>         walsByGroup.forEach(wal -> src.enqueueLog(new Path(this.logDir, 
> wal)));
>       }
>     }
>     LOG.info("Startup replication source for " + src.getPeerId());
>     src.startup();
> {code}
> terminate replication source will remove all metrics, current terminate 
> replication source be called after create new source which do init metrics, 
> so the result is there is no corresponding metrics after refresh replication 
> source.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to