You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sc...@apache.org on 2017/04/05 19:10:36 UTC
[12/50] [abbrv] airavata git commit: Stop registry-server if db-event
handlers fail to start
Stop registry-server if db-event handlers fail to start
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/c14db595
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/c14db595
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/c14db595
Branch: refs/heads/develop
Commit: c14db5955e3fb9d8e190d02f48c15adf87e0d376
Parents: 030468d
Author: Gourav Shenoy <sh...@gmail.com>
Authored: Mon Apr 3 16:08:59 2017 -0400
Committer: Gourav Shenoy <sh...@gmail.com>
Committed: Mon Apr 3 16:08:59 2017 -0400
----------------------------------------------------------------------
.../registry/api/service/RegistryAPIServer.java | 29 +++++++++++++++-----
1 file changed, 22 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/c14db595/modules/registry/registry-server/registry-api-service/src/main/java/org/apache/airavata/registry/api/service/RegistryAPIServer.java
----------------------------------------------------------------------
diff --git a/modules/registry/registry-server/registry-api-service/src/main/java/org/apache/airavata/registry/api/service/RegistryAPIServer.java b/modules/registry/registry-server/registry-api-service/src/main/java/org/apache/airavata/registry/api/service/RegistryAPIServer.java
index 991ace2..04bcdd4 100644
--- a/modules/registry/registry-server/registry-api-service/src/main/java/org/apache/airavata/registry/api/service/RegistryAPIServer.java
+++ b/modules/registry/registry-server/registry-api-service/src/main/java/org/apache/airavata/registry/api/service/RegistryAPIServer.java
@@ -20,6 +20,7 @@
*/
package org.apache.airavata.registry.api.service;
+import org.apache.airavata.common.exception.AiravataException;
import org.apache.airavata.common.utils.IServer;
import org.apache.airavata.common.utils.ServerSettings;
import org.apache.airavata.registry.api.RegistryService;
@@ -79,13 +80,6 @@ public class RegistryAPIServer implements IServer {
serverTransport = new TServerSocket(inetSocketAddress);
}
- // db-event handlers
- logger.info("Registring registry service with publishers for db-events.");
- RegistryServiceDBEventMessagingFactory.registerRegistryServiceWithPublishers(Constants.DB_EVENT_SUBSCRIBERS);
-
- logger.info("Starting registry service db-event-handler subscriber.");
- RegistryServiceDBEventMessagingFactory.getDBEventSubscriber();
-
// thrift server start
TThreadPoolServer.Args options = new TThreadPoolServer.Args(serverTransport);
options.minWorkerThreads = Integer.parseInt(ServerSettings.getSetting(Constants.REGISTRY_SERVER_MIN_THREADS, "30"));
@@ -109,6 +103,12 @@ public class RegistryAPIServer implements IServer {
if (server.isServing()){
setStatus(ServerStatus.STARTED);
logger.info("Started Registry Server on Port " + serverPort + " ...");
+
+ // start db event handlers
+ if (!startDatabaseEventHandlers()) {
+ logger.error("Stopping Registry Server as DB event handlers failed to start!");
+ server.stop();
+ }
}
}
}.start();
@@ -119,6 +119,21 @@ public class RegistryAPIServer implements IServer {
}
}
+ private boolean startDatabaseEventHandlers() {
+ try {
+ // db-event handlers
+ logger.info("Registring registry service with publishers for db-events.");
+ RegistryServiceDBEventMessagingFactory.registerRegistryServiceWithPublishers(Constants.DB_EVENT_SUBSCRIBERS);
+
+ logger.info("Starting registry service db-event-handler subscriber.");
+ RegistryServiceDBEventMessagingFactory.getDBEventSubscriber();
+ } catch (Exception ex) {
+ logger.error("Failed to start database event handlers, reason: " + ex.getMessage(), ex);
+ return false;
+ }
+ return true;
+ }
+
public static void main(String[] args) {
try {
new RegistryAPIServer().start();