Author: [log in to unmask]
Date: Fri Dec 19 14:22:11 2014
New Revision: 1792
Log:
Use InetAddress.isReachable to see if JLAB MySQL database can be used.
Modified:
java/trunk/conditions/src/main/java/org/hps/conditions/database/DatabaseConditionsManager.java
Modified: java/trunk/conditions/src/main/java/org/hps/conditions/database/DatabaseConditionsManager.java
=============================================================================
--- java/trunk/conditions/src/main/java/org/hps/conditions/database/DatabaseConditionsManager.java (original)
+++ java/trunk/conditions/src/main/java/org/hps/conditions/database/DatabaseConditionsManager.java Fri Dec 19 14:22:11 2014
@@ -703,14 +703,17 @@
private String chooseConnectionPropertiesResource() {
String connectionName = "slac";
try {
- // Are we running inside the JLAB network?
- if (InetAddress.getLocalHost().getCanonicalHostName().contains("jlab.org")) {
+ // Is the JLAB database reachable?
+ if (InetAddress.getByName("jmysql.jlab.org").isReachable(5000)) {
+ logger.config("jmysql.jlab.org is reachable");
connectionName = "jlab";
- logger.config("found JLAB hostname " + InetAddress.getLocalHost().getCanonicalHostName());
}
} catch (UnknownHostException e) {
// Something wrong with the user's host name, but we will try to continue anyways.
logger.log(Level.WARNING, e.getMessage(), e);
+ } catch (IOException e) {
+ logger.severe(e.getMessage());
+ throw new RuntimeException(e);
}
logger.config("connection " + connectionName + " will be used");
return "/org/hps/conditions/config/" + connectionName + "_connection.prop";
|