[ https://issues.apache.org/jira/browse/HBASE-19898?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ted Yu updated HBASE-19898: --------------------------- Description: Currently RegionServerStdOutSink is instantiated by default, even if user specifies -writeSniffing on the command line. Write sniffing would be ignored since Sink instance is of RegionServerStdOutSink class: {code} if (this.sink instanceof RegionServerStdOutSink || this.regionServerMode) { monitor = new RegionServerMonitor(connection, monitorTargets, this.useRegExp, (StdOutSink) this.sink, this.executor, this.regionServerAllRegions, this.treatFailureAsError); {code} I discovered this during testing Canary tool on cluster. The downside of current behavior is that when user runs daemon mode with write sniffing, he / she would easily miss that Canary tool doesn't actually perform write sniffing, leading to false negative. RegionStdOutSink should be used for write sniffing. was: Currently RegionServerStdOutSink is instantiated by default, even if user specifies -writeSniffing on the command line. Write sniffing would be ignored since Sink instance is of RegionServerStdOutSink class: {code} if (this.sink instanceof RegionServerStdOutSink || this.regionServerMode) { monitor = new RegionServerMonitor(connection, monitorTargets, this.useRegExp, (StdOutSink) this.sink, this.executor, this.regionServerAllRegions, this.treatFailureAsError); {code} RegionStdOutSink should be used for write sniffing. > Canary should choose RegionStdOutSink automatically when write sniffing is > specified > ------------------------------------------------------------------------------------ > > Key: HBASE-19898 > URL: https://issues.apache.org/jira/browse/HBASE-19898 > Project: HBase > Issue Type: Bug > Reporter: Ted Yu > Assignee: Ted Yu > Priority: Trivial > Attachments: 19898.v1.txt, 19898.v1.txt > > > Currently RegionServerStdOutSink is instantiated by default, even if user > specifies -writeSniffing on the command line. > Write sniffing would be ignored since Sink instance is of > RegionServerStdOutSink class: > {code} > if (this.sink instanceof RegionServerStdOutSink || this.regionServerMode) > { > monitor = > new RegionServerMonitor(connection, monitorTargets, this.useRegExp, > (StdOutSink) this.sink, this.executor, > this.regionServerAllRegions, > this.treatFailureAsError); > {code} > I discovered this during testing Canary tool on cluster. > The downside of current behavior is that when user runs daemon mode with > write sniffing, he / she would easily miss that Canary tool doesn't actually > perform write sniffing, leading to false negative. > RegionStdOutSink should be used for write sniffing. -- This message was sent by Atlassian JIRA (v7.6.3#76005)