HDFS-5186. TestFileJournalManager fails on Windows due to file handle leaks. Contributed by Chuan Liu.
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1526615 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
269eb42b2f
commit
ae501ceeb7
@ -351,6 +351,9 @@ Release 2.1.2 - UNRELEASED
|
|||||||
HDFS-5258. Skip tests in TestHDFSCLI that are not applicable on Windows.
|
HDFS-5258. Skip tests in TestHDFSCLI that are not applicable on Windows.
|
||||||
(Chuan Liu via cnauroth)
|
(Chuan Liu via cnauroth)
|
||||||
|
|
||||||
|
HDFS-5186. TestFileJournalManager fails on Windows due to file handle leaks.
|
||||||
|
(Chuan Liu via cnauroth)
|
||||||
|
|
||||||
Release 2.1.1-beta - 2013-09-23
|
Release 2.1.1-beta - 2013-09-23
|
||||||
|
|
||||||
INCOMPATIBLE CHANGES
|
INCOMPATIBLE CHANGES
|
||||||
|
@ -86,24 +86,27 @@ static long getNumberOfTransactions(FileJournalManager jm, long fromTxId,
|
|||||||
EditLogInputStream elis = null;
|
EditLogInputStream elis = null;
|
||||||
try {
|
try {
|
||||||
while ((elis = allStreams.poll()) != null) {
|
while ((elis = allStreams.poll()) != null) {
|
||||||
elis.skipUntil(txId);
|
try {
|
||||||
while (true) {
|
elis.skipUntil(txId);
|
||||||
FSEditLogOp op = elis.readOp();
|
while (true) {
|
||||||
if (op == null) {
|
FSEditLogOp op = elis.readOp();
|
||||||
break;
|
if (op == null) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (abortOnGap && (op.getTransactionId() != txId)) {
|
||||||
|
LOG.info("getNumberOfTransactions: detected gap at txId "
|
||||||
|
+ fromTxId);
|
||||||
|
return numTransactions;
|
||||||
|
}
|
||||||
|
txId = op.getTransactionId() + 1;
|
||||||
|
numTransactions++;
|
||||||
}
|
}
|
||||||
if (abortOnGap && (op.getTransactionId() != txId)) {
|
} finally {
|
||||||
LOG.info("getNumberOfTransactions: detected gap at txId " +
|
IOUtils.cleanup(LOG, elis);
|
||||||
fromTxId);
|
|
||||||
return numTransactions;
|
|
||||||
}
|
|
||||||
txId = op.getTransactionId() + 1;
|
|
||||||
numTransactions++;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} finally {
|
} finally {
|
||||||
IOUtils.cleanup(LOG, allStreams.toArray(new EditLogInputStream[0]));
|
IOUtils.cleanup(LOG, allStreams.toArray(new EditLogInputStream[0]));
|
||||||
IOUtils.cleanup(LOG, elis);
|
|
||||||
}
|
}
|
||||||
return numTransactions;
|
return numTransactions;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user