Michael Blow has submitted this change and it was merged.

Change subject: ASTERIXDB-1551: Shutdown Servlet Delays Shutdown
......................................................................


ASTERIXDB-1551: Shutdown Servlet Delays Shutdown

Change-Id: I80d74b13dc3aa8df9aedf49cb766751e4c091198
Reviewed-on: https://asterix-gerrit.ics.uci.edu/1026
Tested-by: Jenkins <[email protected]>
Sonar-Qube: Jenkins <[email protected]>
Integration-Tests: Jenkins <[email protected]>
Reviewed-by: Till Westmann <[email protected]>
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/ShutdownAPIServlet.java
1 file changed, 8 insertions(+), 19 deletions(-)

Approvals:
  Till Westmann: Looks good to me, approved
  Jenkins: Verified; No violations found; Verified



diff --git 
a/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/ShutdownAPIServlet.java
 
b/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/ShutdownAPIServlet.java
index e2e7c90..6d8c444 100644
--- 
a/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/ShutdownAPIServlet.java
+++ 
b/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/servlet/ShutdownAPIServlet.java
@@ -19,9 +19,6 @@
 package org.apache.asterix.api.http.servlet;
 
 import java.io.IOException;
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.nio.charset.StandardCharsets;
 import java.util.logging.Level;
 
 import javax.servlet.ServletContext;
@@ -31,8 +28,6 @@
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.asterix.common.config.GlobalConfig;
-import org.apache.asterix.result.ResultUtils;
-import org.apache.commons.io.IOUtils;
 import org.apache.hyracks.api.client.IHyracksClientConnection;
 
 import static 
org.apache.asterix.api.http.servlet.ServletConstants.HYRACKS_CONNECTION_ATTR;
@@ -47,23 +42,17 @@
         response.setContentType("application/json");
         response.setCharacterEncoding("utf-8");
 
-        PrintWriter out = response.getWriter();
-        StringWriter sw = new StringWriter();
-        IOUtils.copy(request.getInputStream(), sw, 
StandardCharsets.UTF_8.name());
-
         ServletContext context = getServletContext();
-        IHyracksClientConnection hcc;
-        try {
-            synchronized (context) {
-                hcc = (IHyracksClientConnection) 
context.getAttribute(HYRACKS_CONNECTION_ATTR);
-                response.setStatus(HttpServletResponse.SC_ACCEPTED);
+        IHyracksClientConnection hcc = (IHyracksClientConnection) 
context.getAttribute(HYRACKS_CONNECTION_ATTR);
+        Thread t = new Thread(() -> {
+            try {
                 hcc.stopCluster();
+            } catch (Exception e) {
+                GlobalConfig.ASTERIX_LOGGER.log(Level.SEVERE, e.getMessage(), 
e);
             }
-        } catch (Exception e) {
-            GlobalConfig.ASTERIX_LOGGER.log(Level.SEVERE, e.getMessage(), e);
-            ResultUtils.apiErrorHandler(out, e);
-            response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
-        }
+        });
+        t.start();
+        response.setStatus(HttpServletResponse.SC_ACCEPTED);
     }
 
     @Override

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1026
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I80d74b13dc3aa8df9aedf49cb766751e4c091198
Gerrit-PatchSet: 3
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Michael Blow <[email protected]>
Gerrit-Reviewer: Jenkins <[email protected]>
Gerrit-Reviewer: Michael Blow <[email protected]>
Gerrit-Reviewer: Till Westmann <[email protected]>

Reply via email to