You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sh...@apache.org on 2016/11/03 18:38:43 UTC
[1/4] airavata git commit: Merge pull request #4 from apache/develop
Repository: airavata
Updated Branches:
refs/heads/develop d7d058b11 -> 0717ae34a
Merge pull request #4 from apache/develop
Merge airavata-develop into gouravshenoy-aurora-mesos-integration
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/593331b9
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/593331b9
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/593331b9
Branch: refs/heads/develop
Commit: 593331b985531e515bd2736b4e986d2786d08a32
Parents: 01f8044 7937d1c
Author: Gourav Shenoy <sh...@gmail.com>
Authored: Thu Nov 3 12:28:48 2016 -0400
Committer: GitHub <no...@github.com>
Committed: Thu Nov 3 12:28:48 2016 -0400
----------------------------------------------------------------------
.../aurora/util/AuroraThriftClientUtil.java | 10 +-
.../airavata/cloud/test/CloudIntfTest.java | 21 +-
.../gfac/core/DataStagingException.java | 43 ----
.../gfac/core/cluster/RemoteCluster.java | 33 ++--
.../gfac/core/cluster/SessionConsumer.java | 28 ---
.../airavata/gfac/impl/BESRemoteCluster.java | 9 +-
.../airavata/gfac/impl/HPCRemoteCluster.java | 37 ++--
.../airavata/gfac/impl/LocalRemoteCluster.java | 26 +--
.../org/apache/airavata/gfac/impl/SSHUtils.java | 198 +++++++++----------
.../airavata/gfac/impl/task/ArchiveTask.java | 8 +-
.../gfac/impl/task/AuroraJobSubmission.java | 7 +-
.../gfac/impl/task/BESJobSubmissionTask.java | 5 +-
.../airavata/gfac/impl/task/DataStageTask.java | 13 +-
.../gfac/impl/task/EnvironmentSetupTask.java | 4 +-
.../gfac/impl/task/SCPDataStageTask.java | 31 +--
.../airavata/gfac/impl/task/TaskUtils.java | 3 +-
.../gfac/impl/task/utils/StreamData.java | 37 ++--
17 files changed, 213 insertions(+), 300 deletions(-)
----------------------------------------------------------------------
[3/4] airavata git commit: Refactored code a bit
Posted by sh...@apache.org.
Refactored code a bit
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/1ab0102d
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/1ab0102d
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/1ab0102d
Branch: refs/heads/develop
Commit: 1ab0102dff06b55ff2c3b633050667c076bc3364
Parents: 946143a
Author: Shameera Rathnayaka <sh...@gmail.com>
Authored: Thu Nov 3 14:37:51 2016 -0400
Committer: Shameera Rathnayaka <sh...@gmail.com>
Committed: Thu Nov 3 14:37:51 2016 -0400
----------------------------------------------------------------------
.../cloud/aurora/client/AuroraThriftClient.java | 12 ++++++------
.../apache/airavata/cloud/aurora/util/Constants.java | 2 +-
2 files changed, 7 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/1ab0102d/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/client/AuroraThriftClient.java
----------------------------------------------------------------------
diff --git a/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/client/AuroraThriftClient.java b/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/client/AuroraThriftClient.java
index e955dc5..fc03fdf 100644
--- a/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/client/AuroraThriftClient.java
+++ b/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/client/AuroraThriftClient.java
@@ -19,7 +19,6 @@
*/
package org.apache.airavata.cloud.aurora.client;
-import java.text.MessageFormat;
import java.util.HashSet;
import java.util.Set;
@@ -83,7 +82,8 @@ public class AuroraThriftClient {
Integer connectTimeout = ServerSettings.getAuroraSchedulerTimeout();
// check reachable scheduler host
- if(auroraHosts != null) {
+ if(auroraHosts != null && !auroraHosts.trim().isEmpty()) {
+ auroraHosts = auroraHosts.trim();
for(String auroraHost : auroraHosts.split(",")) {
// malformed host string, should be of form <host:port>
if(auroraHost.split(":").length != 2) {
@@ -93,7 +93,7 @@ public class AuroraThriftClient {
// read hostname, port & construct connection-url
String hostname = auroraHost.split(":")[0];
String port = auroraHost.split(":")[1];
- String connectionUrl = MessageFormat.format(Constants.AURORA_SCHEDULER_CONNECTION_URL, hostname, port);
+ String connectionUrl = String.format(Constants.AURORA_SCHEDULER_CONNECTION_URL, hostname, port);
// verify if connection succeeds
if(AuroraThriftClientUtil.isSchedulerHostReachable(connectionUrl, connectTimeout)) {
@@ -106,7 +106,7 @@ public class AuroraThriftClient {
// check if scheduler connection successful
if(thriftClient.auroraSchedulerManagerClient == null ||
thriftClient.readOnlySchedulerClient == null) {
- throw new Exception("None of the Aurora scheduler hosts were reachable, hence connection not established!");
+ throw new Exception("None of the Aurora scheduler hosts : <" + auroraHosts + "> were reachable, hence connection not established!");
}
} else {
// aurora hosts not defined in the properties file
@@ -116,7 +116,7 @@ public class AuroraThriftClient {
}
}
} catch(Exception ex) {
- logger.error(ex.getMessage(), ex);
+ logger.error("Couldn't initialize Aurora thrift client", ex);
throw ex;
}
return thriftClient;
@@ -147,7 +147,7 @@ public class AuroraThriftClient {
// read hostname, port & construct connection-url
String hostname = auroraHost.split(":")[0];
String port = auroraHost.split(":")[1];
- String connectionUrl = MessageFormat.format(Constants.AURORA_SCHEDULER_CONNECTION_URL, hostname, port);
+ String connectionUrl = String.format(Constants.AURORA_SCHEDULER_CONNECTION_URL, hostname, port);
// verify if connection succeeds
if(AuroraThriftClientUtil.isSchedulerHostReachable(connectionUrl, connectTimeout)) {
http://git-wip-us.apache.org/repos/asf/airavata/blob/1ab0102d/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/util/Constants.java
----------------------------------------------------------------------
diff --git a/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/util/Constants.java b/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/util/Constants.java
index 2796541..fea8d92 100644
--- a/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/util/Constants.java
+++ b/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/util/Constants.java
@@ -40,7 +40,7 @@ public class Constants {
public static final String MESOS_CLUSTER_NAME = "mesos.cluster.name";
/** The Constant AURORA_SCHEDULER_CONNECTION_URL. */
- public static final String AURORA_SCHEDULER_CONNECTION_URL = "http://{0}:{1}/api";
+ public static final String AURORA_SCHEDULER_CONNECTION_URL = "http://%s:%s/api";
/** The Constant AURORA_SCHEDULER_CONNECT_TIMEOUT_MS. */
public static final String AURORA_SCHEDULER_CONNECT_TIMEOUT_MS = "aurora.scheduler.timeoutms";
[4/4] airavata git commit: Merge pull request 71
Posted by sh...@apache.org.
Merge pull request 71
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/0717ae34
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/0717ae34
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/0717ae34
Branch: refs/heads/develop
Commit: 0717ae34a3b6760b7ce36bfa8191b27d708e2f52
Parents: d7d058b 1ab0102
Author: Shameera Rathnayaka <sh...@gmail.com>
Authored: Thu Nov 3 14:38:38 2016 -0400
Committer: Shameera Rathnayaka <sh...@gmail.com>
Committed: Thu Nov 3 14:38:38 2016 -0400
----------------------------------------------------------------------
.../cloud/aurora/client/AuroraThriftClient.java | 237 ++++++++++++++-----
.../aurora/util/AuroraThriftClientUtil.java | 2 +-
.../airavata/cloud/aurora/util/Constants.java | 2 +-
3 files changed, 179 insertions(+), 62 deletions(-)
----------------------------------------------------------------------
[2/4] airavata git commit: Make AuroraThriftClient a synchronized
singleton & Reconnect with Aurora scheduler on leader rotation
Posted by sh...@apache.org.
Make AuroraThriftClient a synchronized singleton & Reconnect with Aurora scheduler on leader rotation
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/946143a7
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/946143a7
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/946143a7
Branch: refs/heads/develop
Commit: 946143a74c6737ed4adcdbb545148aff7dcab241
Parents: 593331b
Author: Gourav Shenoy <sh...@gmail.com>
Authored: Thu Nov 3 14:12:08 2016 -0400
Committer: Gourav Shenoy <sh...@gmail.com>
Committed: Thu Nov 3 14:12:08 2016 -0400
----------------------------------------------------------------------
.../cloud/aurora/client/AuroraThriftClient.java | 233 ++++++++++++++-----
.../aurora/util/AuroraThriftClientUtil.java | 2 +-
2 files changed, 176 insertions(+), 59 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/946143a7/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/client/AuroraThriftClient.java
----------------------------------------------------------------------
diff --git a/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/client/AuroraThriftClient.java b/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/client/AuroraThriftClient.java
index 977479b..e955dc5 100644
--- a/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/client/AuroraThriftClient.java
+++ b/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/client/AuroraThriftClient.java
@@ -39,6 +39,7 @@ import org.apache.airavata.cloud.aurora.util.AuroraThriftClientUtil;
import org.apache.airavata.cloud.aurora.util.Constants;
import org.apache.airavata.cloud.aurora.util.ResponseResultType;
import org.apache.airavata.common.utils.ServerSettings;
+import org.apache.thrift.transport.TTransportException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -73,31 +74,101 @@ public class AuroraThriftClient {
public static AuroraThriftClient getAuroraThriftClient() throws Exception {
try {
if(thriftClient == null) {
- thriftClient = new AuroraThriftClient();
-
- // construct connection url for scheduler
- String auroraHosts = ServerSettings.getAuroraSchedulerHosts();
- Integer connectTimeout = ServerSettings.getAuroraSchedulerTimeout();
-
- // check reachable scheduler host
+ synchronized(AuroraThriftClient.class) {
+ if(thriftClient == null) {
+ thriftClient = new AuroraThriftClient();
+
+ // construct connection url for scheduler
+ String auroraHosts = ServerSettings.getAuroraSchedulerHosts();
+ Integer connectTimeout = ServerSettings.getAuroraSchedulerTimeout();
+
+ // check reachable scheduler host
+ if(auroraHosts != null) {
+ for(String auroraHost : auroraHosts.split(",")) {
+ // malformed host string, should be of form <host:port>
+ if(auroraHost.split(":").length != 2) {
+ throw new Exception("Scheduler Host String: " + auroraHost + ", is malformed. Should be of form <hostname:port>!");
+ }
+
+ // read hostname, port & construct connection-url
+ String hostname = auroraHost.split(":")[0];
+ String port = auroraHost.split(":")[1];
+ String connectionUrl = MessageFormat.format(Constants.AURORA_SCHEDULER_CONNECTION_URL, hostname, port);
+
+ // verify if connection succeeds
+ if(AuroraThriftClientUtil.isSchedulerHostReachable(connectionUrl, connectTimeout)) {
+ thriftClient.readOnlySchedulerClient = AuroraSchedulerClientFactory.createReadOnlySchedulerClient(connectionUrl, connectTimeout);
+ thriftClient.auroraSchedulerManagerClient = AuroraSchedulerClientFactory.createSchedulerManagerClient(connectionUrl, connectTimeout);
+ break;
+ }
+ }
+
+ // check if scheduler connection successful
+ if(thriftClient.auroraSchedulerManagerClient == null ||
+ thriftClient.readOnlySchedulerClient == null) {
+ throw new Exception("None of the Aurora scheduler hosts were reachable, hence connection not established!");
+ }
+ } else {
+ // aurora hosts not defined in the properties file
+ throw new Exception("Aurora hosts not specified in airavata-server.properties file.");
+ }
+ }
+ }
+ }
+ } catch(Exception ex) {
+ logger.error(ex.getMessage(), ex);
+ throw ex;
+ }
+ return thriftClient;
+ }
+
+
+ /**
+ * Reconnect with aurora scheduler.
+ *
+ * @return true, if successful
+ */
+ private boolean reconnectWithAuroraScheduler() {
+ boolean connectionSuccess = false;
+
+ try {
+ // construct connection url for scheduler
+ String auroraHosts = ServerSettings.getAuroraSchedulerHosts();
+ Integer connectTimeout = ServerSettings.getAuroraSchedulerTimeout();
+
+ // check reachable scheduler host
+ if(auroraHosts != null) {
for(String auroraHost : auroraHosts.split(",")) {
+ // malformed host string, should be of form <host:port>
+ if(auroraHost.split(":").length != 2) {
+ throw new Exception("Scheduler Host String: " + auroraHost + ", is malformed. Should be of form <hostname:port>!");
+ }
+
+ // read hostname, port & construct connection-url
String hostname = auroraHost.split(":")[0];
String port = auroraHost.split(":")[1];
String connectionUrl = MessageFormat.format(Constants.AURORA_SCHEDULER_CONNECTION_URL, hostname, port);
+ // verify if connection succeeds
if(AuroraThriftClientUtil.isSchedulerHostReachable(connectionUrl, connectTimeout)) {
thriftClient.readOnlySchedulerClient = AuroraSchedulerClientFactory.createReadOnlySchedulerClient(connectionUrl, connectTimeout);
thriftClient.auroraSchedulerManagerClient = AuroraSchedulerClientFactory.createSchedulerManagerClient(connectionUrl, connectTimeout);
+
+ // set connection-success flag
+ connectionSuccess = true;
}
}
+ } else {
+ // aurora hosts not defined in the properties file
+ throw new Exception("Aurora hosts not specified in airavata-server.properties file.");
}
} catch(Exception ex) {
logger.error(ex.getMessage(), ex);
- throw ex;
}
- return thriftClient;
+ return connectionSuccess;
}
+
/**
* Creates the job.
*
@@ -107,16 +178,26 @@ public class AuroraThriftClient {
*/
public ResponseBean createJob(JobConfigBean jobConfigBean) throws Exception {
ResponseBean response = null;
- try {
- if(jobConfigBean != null) {
- JobConfiguration jobConfig = AuroraThriftClientUtil.getAuroraJobConfig(jobConfigBean);
- Response createJobResponse = this.auroraSchedulerManagerClient.createJob(jobConfig);
- response = AuroraThriftClientUtil.getResponseBean(createJobResponse, ResponseResultType.CREATE_JOB);
+ // try till we get response or scheduler connection not found
+ while(response == null) {
+ try {
+ if(jobConfigBean != null) {
+ JobConfiguration jobConfig = AuroraThriftClientUtil.getAuroraJobConfig(jobConfigBean);
+ Response createJobResponse = this.auroraSchedulerManagerClient.createJob(jobConfig);
+ response = AuroraThriftClientUtil.getResponseBean(createJobResponse, ResponseResultType.CREATE_JOB);
+ }
+ } catch(Exception ex) {
+ if (ex instanceof TTransportException) {
+ // if re-connection success, retry command
+ if (this.reconnectWithAuroraScheduler()) {
+ continue;
+ }
+ }
+ logger.error(ex.getMessage(), ex);
+ throw ex;
}
- } catch(Exception ex) {
- logger.error(ex.getMessage(), ex);
- throw ex;
}
+
return response;
}
@@ -130,15 +211,24 @@ public class AuroraThriftClient {
*/
public ResponseBean killTasks(JobKeyBean jobKeyBean, Set<Integer> instances) throws Exception {
ResponseBean response = null;
- try {
- if(jobKeyBean != null) {
- JobKey jobKey = AuroraThriftClientUtil.getAuroraJobKey(jobKeyBean);
- Response killTaskResponse = this.auroraSchedulerManagerClient.killTasks(jobKey, instances);
- response = AuroraThriftClientUtil.getResponseBean(killTaskResponse, ResponseResultType.KILL_TASKS);
+ // try till we get response or scheduler connection not found
+ while(response == null) {
+ try {
+ if(jobKeyBean != null) {
+ JobKey jobKey = AuroraThriftClientUtil.getAuroraJobKey(jobKeyBean);
+ Response killTaskResponse = this.auroraSchedulerManagerClient.killTasks(jobKey, instances);
+ response = AuroraThriftClientUtil.getResponseBean(killTaskResponse, ResponseResultType.KILL_TASKS);
+ }
+ } catch(Exception ex) {
+ if (ex instanceof TTransportException) {
+ // if re-connection success, retry command
+ if (this.reconnectWithAuroraScheduler()) {
+ continue;
+ }
+ }
+ logger.error(ex.getMessage(), ex);
+ throw ex;
}
- } catch(Exception ex) {
- logger.error(ex.getMessage(), ex);
- throw ex;
}
return response;
}
@@ -152,12 +242,21 @@ public class AuroraThriftClient {
*/
public GetJobsResponseBean getJobList(String ownerRole) throws Exception {
GetJobsResponseBean response = null;
- try {
- Response jobListResponse = this.readOnlySchedulerClient.getJobs(ownerRole);
- response = (GetJobsResponseBean) AuroraThriftClientUtil.getResponseBean(jobListResponse, ResponseResultType.GET_JOBS);
- } catch(Exception ex) {
- logger.error(ex.getMessage(), ex);
- throw ex;
+ // try till we get response or scheduler connection not found
+ while(response == null) {
+ try {
+ Response jobListResponse = this.readOnlySchedulerClient.getJobs(ownerRole);
+ response = (GetJobsResponseBean) AuroraThriftClientUtil.getResponseBean(jobListResponse, ResponseResultType.GET_JOBS);
+ } catch(Exception ex) {
+ if (ex instanceof TTransportException) {
+ // if re-connection success, retry command
+ if (this.reconnectWithAuroraScheduler()) {
+ continue;
+ }
+ }
+ logger.error(ex.getMessage(), ex);
+ throw ex;
+ }
}
return response;
}
@@ -171,19 +270,28 @@ public class AuroraThriftClient {
*/
public PendingJobReasonBean getPendingReasonForJob(JobKeyBean jobKeyBean) throws Exception {
PendingJobReasonBean response = null;
- try {
- JobKey jobKey = AuroraThriftClientUtil.getAuroraJobKey(jobKeyBean);
- Set<JobKey> jobKeySet = new HashSet<>();
- jobKeySet.add(jobKey);
-
- TaskQuery query = new TaskQuery();
- query.setJobKeys(jobKeySet);
-
- Response pendingReasonResponse = this.readOnlySchedulerClient.getPendingReason(query);
- response = (PendingJobReasonBean) AuroraThriftClientUtil.getResponseBean(pendingReasonResponse, ResponseResultType.GET_PENDING_JOB_REASON);
- } catch(Exception ex) {
- logger.error(ex.getMessage(), ex);
- throw ex;
+ // try till we get response or scheduler connection not found
+ while(response == null) {
+ try {
+ JobKey jobKey = AuroraThriftClientUtil.getAuroraJobKey(jobKeyBean);
+ Set<JobKey> jobKeySet = new HashSet<>();
+ jobKeySet.add(jobKey);
+
+ TaskQuery query = new TaskQuery();
+ query.setJobKeys(jobKeySet);
+
+ Response pendingReasonResponse = this.readOnlySchedulerClient.getPendingReason(query);
+ response = (PendingJobReasonBean) AuroraThriftClientUtil.getResponseBean(pendingReasonResponse, ResponseResultType.GET_PENDING_JOB_REASON);
+ } catch(Exception ex) {
+ if (ex instanceof TTransportException) {
+ // if re-connection success, retry command
+ if (this.reconnectWithAuroraScheduler()) {
+ continue;
+ }
+ }
+ logger.error(ex.getMessage(), ex);
+ throw ex;
+ }
}
return response;
}
@@ -197,21 +305,30 @@ public class AuroraThriftClient {
*/
public JobDetailsResponseBean getJobDetails(JobKeyBean jobKeyBean) throws Exception {
JobDetailsResponseBean response = null;
- try {
- if(jobKeyBean != null) {
- JobKey jobKey = AuroraThriftClientUtil.getAuroraJobKey(jobKeyBean);
- Set<JobKey> jobKeySet = new HashSet<>();
- jobKeySet.add(jobKey);
-
- TaskQuery query = new TaskQuery();
- query.setJobKeys(jobKeySet);
-
- Response jobDetailsResponse = this.readOnlySchedulerClient.getTasksStatus(query);
- response = (JobDetailsResponseBean) AuroraThriftClientUtil.getResponseBean(jobDetailsResponse, ResponseResultType.GET_JOB_DETAILS);
+ // try till we get response or scheduler connection not found
+ while(response == null) {
+ try {
+ if(jobKeyBean != null) {
+ JobKey jobKey = AuroraThriftClientUtil.getAuroraJobKey(jobKeyBean);
+ Set<JobKey> jobKeySet = new HashSet<>();
+ jobKeySet.add(jobKey);
+
+ TaskQuery query = new TaskQuery();
+ query.setJobKeys(jobKeySet);
+
+ Response jobDetailsResponse = this.readOnlySchedulerClient.getTasksStatus(query);
+ response = (JobDetailsResponseBean) AuroraThriftClientUtil.getResponseBean(jobDetailsResponse, ResponseResultType.GET_JOB_DETAILS);
+ }
+ } catch(Exception ex) {
+ if (ex instanceof TTransportException) {
+ // if re-connection success, retry command
+ if (this.reconnectWithAuroraScheduler()) {
+ continue;
+ }
+ }
+ logger.error(ex.getMessage(), ex);
+ throw ex;
}
- } catch(Exception ex) {
- logger.error(ex.getMessage(), ex);
- throw ex;
}
return response;
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/946143a7/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/util/AuroraThriftClientUtil.java
----------------------------------------------------------------------
diff --git a/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/util/AuroraThriftClientUtil.java b/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/util/AuroraThriftClientUtil.java
index 7cb03b4..c13ef8f 100644
--- a/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/util/AuroraThriftClientUtil.java
+++ b/modules/cloud/aurora-client/src/main/java/org/apache/airavata/cloud/aurora/util/AuroraThriftClientUtil.java
@@ -390,7 +390,7 @@ public class AuroraThriftClientUtil {
// host is reachable
isReachable = true;
} catch(Exception ex) {
- logger.error("Timed-out connecting to URL: " + connectionUrl, ex);
+ logger.error("Timed-out connecting to URL: " + connectionUrl);
}
return isReachable;
}