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]>
