[
https://issues.apache.org/jira/browse/HBASE-23231?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16964054#comment-16964054
]
Hudson commented on HBASE-23231:
--------------------------------
Results for branch master
[build #1522 on
builds.a.o|https://builds.apache.org/job/HBase%20Nightly/job/master/1522/]: (x)
*{color:red}-1 overall{color}*
----
details (if available):
(/) {color:green}+1 general checks{color}
-- For more information [see general
report|https://builds.apache.org/job/HBase%20Nightly/job/master/1522//General_Nightly_Build_Report/]
(/) {color:green}+1 jdk8 hadoop2 checks{color}
-- For more information [see jdk8 (hadoop2)
report|https://builds.apache.org/job/HBase%20Nightly/job/master/1522//JDK8_Nightly_Build_Report_(Hadoop2)/]
(x) {color:red}-1 jdk8 hadoop3 checks{color}
-- Something went wrong running this stage, please [check relevant console
output|https://builds.apache.org/job/HBase%20Nightly/job/master/1522//console].
(/) {color:green}+1 source release artifact{color}
-- See build output for details.
(/) {color:green}+1 client integration test{color}
> ReplicationSource do not update metrics after refresh
> -----------------------------------------------------
>
> Key: HBASE-23231
> URL: https://issues.apache.org/jira/browse/HBASE-23231
> Project: HBase
> Issue Type: Bug
> Components: wal
> Affects Versions: 2.2.2
> Reporter: Lijin Bin
> Assignee: Lijin Bin
> Priority: Major
> Fix For: 3.0.0, 2.3.0, 2.2.2, 2.1.8
>
>
> 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)