From c59cdbb652a1f6c54294fe4024f143e4a1d86b5d Mon Sep 17 00:00:00 2001
From: Violette Roche-Montane <violette.roche-montane@forgerock.com>
Date: Tue, 23 Jul 2013 06:51:49 +0000
Subject: [PATCH] CR-2024 OPENDJ-1078 OpenDJ doesn't release server.lock after upgrade
---
opendj-sdk/opends/src/server/org/opends/server/tools/upgrade/Upgrade.java | 21 +++++++++++----------
1 files changed, 11 insertions(+), 10 deletions(-)
diff --git a/opendj-sdk/opends/src/server/org/opends/server/tools/upgrade/Upgrade.java b/opendj-sdk/opends/src/server/org/opends/server/tools/upgrade/Upgrade.java
index 830f4a5..c3faba3 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/tools/upgrade/Upgrade.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/tools/upgrade/Upgrade.java
@@ -532,20 +532,21 @@
{
final String lockFile = LockFileManager.getServerLockFileName();
- final Message message = ERR_UPGRADE_REQUIRES_SERVER_OFFLINE.get();
+ final StringBuilder failureReason = new StringBuilder();
try
{
- final StringBuilder failureReason = new StringBuilder();
- if (!LockFileManager.acquireExclusiveLock(lockFile, failureReason))
- {
- throw new ClientException(EXIT_CODE_ERROR, message);
- }
- }
- catch (Exception e)
- {
// Assume that if we cannot acquire the lock file the server is
// running.
- throw new ClientException(EXIT_CODE_ERROR, message);
+ if (!LockFileManager.acquireExclusiveLock(lockFile, failureReason))
+ {
+ LOG.log(Level.SEVERE, failureReason.toString());
+ throw new ClientException(EXIT_CODE_ERROR,
+ ERR_UPGRADE_REQUIRES_SERVER_OFFLINE.get());
+ }
+ }
+ finally
+ {
+ LockFileManager.releaseLock(lockFile, failureReason);
}
}
--
Gitblit v1.10.0