From effa4c75b4970c1d87b2d1b0d83ae1f5e8312b0b Mon Sep 17 00:00:00 2001 From: Marcus Sorensen Date: Fri, 10 Jan 2014 18:12:46 -0700 Subject: [PATCH] CLOUDSTACK-5843 For some reason the mgmt server is required to have access to the template being registered in order to check its size against resource limits during registration. This is bad, but worse, it's a sync call, so this call can hang for up to the default HTTP connection timeout. Reducing http timeout as a quick workaround, but this check needs to 1) be removed or 2) done later or 3)registerTemplate needs to be async and 4) moved off the mgmt server (ssvm is the only thing that needs access to template url). --- utils/src/com/cloud/utils/UriUtils.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/utils/src/com/cloud/utils/UriUtils.java b/utils/src/com/cloud/utils/UriUtils.java index 4f9db854089..1d5a5138644 100644 --- a/utils/src/com/cloud/utils/UriUtils.java +++ b/utils/src/com/cloud/utils/UriUtils.java @@ -147,6 +147,8 @@ public class UriUtils { URI uri = new URI(url); if (uri.getScheme().equalsIgnoreCase("http")) { httpConn = (HttpURLConnection)uri.toURL().openConnection(); + httpConn.setConnectTimeout(2000); + httpConn.setReadTimeout(5000); if (httpConn != null) { String contentLength = httpConn.getHeaderField("content-length"); if (contentLength != null) {