HBASE-10315 Canary shouldn't exit with 3 if there is no master running.
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1557864 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
33df9fac20
commit
a6675d5f5d
|
@ -243,14 +243,22 @@ public final class Canary implements Tool {
|
||||||
// exit if any error occurs
|
// exit if any error occurs
|
||||||
if (this.failOnError && monitor.hasError()) {
|
if (this.failOnError && monitor.hasError()) {
|
||||||
monitorThread.interrupt();
|
monitorThread.interrupt();
|
||||||
System.exit(monitor.errorCode);
|
if (monitor.initialized) {
|
||||||
|
System.exit(monitor.errorCode);
|
||||||
|
} else {
|
||||||
|
System.exit(INIT_ERROR_EXIT_CODE);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
currentTimeLength = System.currentTimeMillis() - startTime;
|
currentTimeLength = System.currentTimeMillis() - startTime;
|
||||||
if (currentTimeLength > this.timeout) {
|
if (currentTimeLength > this.timeout) {
|
||||||
LOG.error("The monitor is running too long (" + currentTimeLength
|
LOG.error("The monitor is running too long (" + currentTimeLength
|
||||||
+ ") after timeout limit:" + this.timeout
|
+ ") after timeout limit:" + this.timeout
|
||||||
+ " will be killed itself !!");
|
+ " will be killed itself !!");
|
||||||
monitor.errorCode = TIMEOUT_ERROR_EXIT_CODE;
|
if (monitor.initialized) {
|
||||||
|
System.exit(TIMEOUT_ERROR_EXIT_CODE);
|
||||||
|
} else {
|
||||||
|
System.exit(INIT_ERROR_EXIT_CODE);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -320,6 +328,7 @@ public final class Canary implements Tool {
|
||||||
protected HBaseAdmin admin;
|
protected HBaseAdmin admin;
|
||||||
protected String[] targets;
|
protected String[] targets;
|
||||||
protected boolean useRegExp;
|
protected boolean useRegExp;
|
||||||
|
protected boolean initialized = false;
|
||||||
|
|
||||||
protected boolean done = false;
|
protected boolean done = false;
|
||||||
protected int errorCode = 0;
|
protected int errorCode = 0;
|
||||||
|
@ -376,6 +385,7 @@ public final class Canary implements Tool {
|
||||||
try {
|
try {
|
||||||
if (this.targets != null && this.targets.length > 0) {
|
if (this.targets != null && this.targets.length > 0) {
|
||||||
String[] tables = generateMonitorTables(this.targets);
|
String[] tables = generateMonitorTables(this.targets);
|
||||||
|
this.initialized = true;
|
||||||
for (String table : tables) {
|
for (String table : tables) {
|
||||||
Canary.sniff(admin, sink, table);
|
Canary.sniff(admin, sink, table);
|
||||||
}
|
}
|
||||||
|
@ -556,6 +566,7 @@ public final class Canary implements Tool {
|
||||||
public void run() {
|
public void run() {
|
||||||
if (this.initAdmin() && this.checkNoTableNames()) {
|
if (this.initAdmin() && this.checkNoTableNames()) {
|
||||||
Map<String, List<HRegionInfo>> rsAndRMap = this.filterRegionServerByName();
|
Map<String, List<HRegionInfo>> rsAndRMap = this.filterRegionServerByName();
|
||||||
|
this.initialized = true;
|
||||||
this.monitorRegionServers(rsAndRMap);
|
this.monitorRegionServers(rsAndRMap);
|
||||||
}
|
}
|
||||||
this.done = true;
|
this.done = true;
|
||||||
|
|
Loading…
Reference in New Issue