Description
When running the main method of Canary.java, we see the following error:
Exception in thread "main" java.lang.ClassCastException: org.apache.hadoop.hbase.tool.Canary$RegionServerStdOutSink cannot be cast to org.apache.hadoop.hbase.tool.Canary$RegionStdOutSink
at org.apache.hadoop.hbase.tool.Canary.newMonitor(Canary.java:911)
at org.apache.hadoop.hbase.tool.Canary.run(Canary.java:796)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.hadoop.hbase.tool.Canary.main(Canary.java:1571)
This happens because we typecast the sink depending on the mode (zookeeper mode/region server mode) that Canary is configured in. In case no mode is specified, we typecast the sink into RegionStdOutSink. In general, it is possible to provide inconsistent mode and sink types while running Canary.