HDFS-5882. TestAuditLogs is flaky (jxiang via cmccabe)

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1565840 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Colin McCabe 2014-02-07 22:55:27 +00:00
parent 704521441b
commit d01158a498
2 changed files with 12 additions and 2 deletions

View File

@ -348,6 +348,8 @@ Release 2.4.0 - UNRELEASED
HDFS-5807. TestBalancerWithNodeGroup.testBalancerWithNodeGroup fails HDFS-5807. TestBalancerWithNodeGroup.testBalancerWithNodeGroup fails
intermittently. (Chen He via kihwal) intermittently. (Chen He via kihwal)
HDFS-5882. TestAuditLogs is flaky (jxiang via cmccabe)
Release 2.3.0 - UNRELEASED Release 2.3.0 - UNRELEASED
INCOMPATIBLE CHANGES INCOMPATIBLE CHANGES

View File

@ -28,6 +28,7 @@
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.Collections; import java.util.Collections;
import java.util.Enumeration;
import java.util.List; import java.util.List;
import java.util.regex.Pattern; import java.util.regex.Pattern;
@ -301,11 +302,18 @@ private void verifyAuditLogsRepeat(boolean expectSuccess, int ndupe)
// Turn off the logs // Turn off the logs
Logger logger = ((Log4JLogger) FSNamesystem.auditLog).getLogger(); Logger logger = ((Log4JLogger) FSNamesystem.auditLog).getLogger();
logger.setLevel(Level.OFF); logger.setLevel(Level.OFF);
// Close the appenders and force all logs to be flushed
Enumeration<?> appenders = logger.getAllAppenders();
while (appenders.hasMoreElements()) {
Appender appender = (Appender)appenders.nextElement();
appender.close();
}
BufferedReader reader = new BufferedReader(new FileReader(auditLogFile)); BufferedReader reader = new BufferedReader(new FileReader(auditLogFile));
String line = null; String line = null;
boolean ret = true; boolean ret = true;
try { try {
for (int i = 0; i < ndupe; i++) { for (int i = 0; i < ndupe; i++) {
line = reader.readLine(); line = reader.readLine();