mirror of
https://github.com/apache/activemq.git
synced 2025-02-13 13:36:07 +00:00
Applied patch for https://issues.apache.org/jira/browse/AMQ-3301
git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@1326252 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
2f0ef2e670
commit
50d3e8e09a
@ -56,9 +56,13 @@ public class LockFile {
|
|||||||
}
|
}
|
||||||
|
|
||||||
IOHelper.mkdirs(file.getParentFile());
|
IOHelper.mkdirs(file.getParentFile());
|
||||||
|
synchronized (LockFile.class) {
|
||||||
if (System.getProperty(getVmLockKey()) != null) {
|
if (System.getProperty(getVmLockKey()) != null) {
|
||||||
throw new IOException("File '" + file + "' could not be locked as lock is already held for this jvm.");
|
throw new IOException("File '" + file + "' could not be locked as lock is already held for this jvm.");
|
||||||
}
|
}
|
||||||
|
System.setProperty(getVmLockKey(), new Date().toString());
|
||||||
|
}
|
||||||
|
try {
|
||||||
if (lock == null) {
|
if (lock == null) {
|
||||||
readFile = new RandomAccessFile(file, "rw");
|
readFile = new RandomAccessFile(file, "rw");
|
||||||
IOException reason = null;
|
IOException reason = null;
|
||||||
@ -82,6 +86,13 @@ public class LockFile {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
} finally {
|
||||||
|
synchronized (LockFile.class) {
|
||||||
|
if (lock == null) {
|
||||||
|
System.getProperties().remove(getVmLockKey());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user