You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by da...@apache.org on 2014/11/17 15:09:19 UTC

git commit: updated refs/heads/master to 7aa64b9

Repository: cloudstack
Updated Branches:
  refs/heads/master 7b9e4a820 -> 7aa64b9ef


CID-1254838 catch individual exceptions types

Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/7aa64b9e
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/7aa64b9e
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/7aa64b9e

Branch: refs/heads/master
Commit: 7aa64b9efa5b427211a5c7dc5023beb77d073af7
Parents: 7b9e4a8
Author: Daan Hoogland <da...@onecht.net>
Authored: Mon Nov 17 15:09:03 2014 +0100
Committer: Daan Hoogland <da...@onecht.net>
Committed: Mon Nov 17 15:09:03 2014 +0100

----------------------------------------------------------------------
 .../resource/Xenserver625StorageProcessor.java  | 23 ++++++++++++++++----
 1 file changed, 19 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/7aa64b9e/plugins/hypervisors/xenserver/src/com/cloud/hypervisor/xenserver/resource/Xenserver625StorageProcessor.java
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/xenserver/src/com/cloud/hypervisor/xenserver/resource/Xenserver625StorageProcessor.java b/plugins/hypervisors/xenserver/src/com/cloud/hypervisor/xenserver/resource/Xenserver625StorageProcessor.java
index 925d41f..0bb02c3 100644
--- a/plugins/hypervisors/xenserver/src/com/cloud/hypervisor/xenserver/resource/Xenserver625StorageProcessor.java
+++ b/plugins/hypervisors/xenserver/src/com/cloud/hypervisor/xenserver/resource/Xenserver625StorageProcessor.java
@@ -35,6 +35,7 @@ import org.apache.cloudstack.storage.to.TemplateObjectTO;
 import org.apache.cloudstack.storage.to.VolumeObjectTO;
 import org.apache.commons.lang.StringUtils;
 import org.apache.log4j.Logger;
+import org.apache.xmlrpc.XmlRpcException;
 
 import com.cloud.agent.api.Answer;
 import com.cloud.agent.api.to.DataObjectType;
@@ -54,6 +55,8 @@ import com.xensource.xenapi.PBD;
 import com.xensource.xenapi.SR;
 import com.xensource.xenapi.Task;
 import com.xensource.xenapi.Types;
+import com.xensource.xenapi.Types.BadServerResponse;
+import com.xensource.xenapi.Types.XenAPIException;
 import com.xensource.xenapi.VDI;
 
 public class Xenserver625StorageProcessor extends XenServerStorageProcessor {
@@ -1099,10 +1102,22 @@ public class Xenserver625StorageProcessor extends XenServerStorageProcessor {
             result = true;
 
             return new CopyCmdAnswer(newTemplate);
-        } catch (Exception ex) {
-            s_logger.error("Failed to create a template from a snapshot", ex);
-
-            return new CopyCmdAnswer("Failed to create a template from a snapshot: " + ex.toString());
+//        } catch (Exception ex) {
+//            s_logger.error("Failed to create a template from a snapshot", ex);
+//
+//            return new CopyCmdAnswer("Failed to create a template from a snapshot: " + ex.toString());
+        } catch (BadServerResponse e) {
+          s_logger.error("Failed to create a template from a snapshot due to incomprehensible server response", e);
+
+          return new CopyCmdAnswer("Failed to create a template from a snapshot: " + e.toString());
+        } catch (XenAPIException e) {
+          s_logger.error("Failed to create a template from a snapshot due to xenapi error", e);
+
+          return new CopyCmdAnswer("Failed to create a template from a snapshot: " + e.toString());
+        } catch (XmlRpcException e) {
+            s_logger.error("Failed to create a template from a snapshot due to rpc error", e);
+
+            return new CopyCmdAnswer("Failed to create a template from a snapshot: " + e.toString());
         } finally {
             if (!result) {
                 if (destVdi != null) {