diff --git a/portal/src/main/java/org/zstack/portal/managementnode/ManagementNodeManagerImpl.java b/portal/src/main/java/org/zstack/portal/managementnode/ManagementNodeManagerImpl.java index 747a154919b..9a3cae17117 100755 --- a/portal/src/main/java/org/zstack/portal/managementnode/ManagementNodeManagerImpl.java +++ b/portal/src/main/java/org/zstack/portal/managementnode/ManagementNodeManagerImpl.java @@ -610,10 +610,18 @@ public void handle(Map data) { public void handle(ErrorCode errCode, Map data) { new BootErrorLog().write(errCode.toString()); ret.success = false; + } }).start(); } finally { - lock.unlock(); + try { + lock.unlock(); + + } catch (Exception e) { + ErrorCode errCode = Platform.inerr(e.getMessage()); + new BootErrorLog().write(errCode.toString()); + ret.success = false; + } } if (!ret.success || !Platform.IS_RUNNING) {