HADOOP-15013. Fix ResourceEstimator findbugs issues. (asuresh)

This commit is contained in:
Arun Suresh 2017-11-02 17:14:07 -07:00
parent e6ec02001f
commit 53c0fb7efe
4 changed files with 53 additions and 50 deletions

View File

@ -65,17 +65,16 @@
@Singleton @Path("/resourceestimator") public class ResourceEstimatorService { @Singleton @Path("/resourceestimator") public class ResourceEstimatorService {
private static final Logger LOGGER = private static final Logger LOGGER =
LoggerFactory.getLogger(ResourceEstimatorService.class); LoggerFactory.getLogger(ResourceEstimatorService.class);
private static SkylineStore skylineStore; private final SkylineStore skylineStore;
private static Solver solver; private final Solver solver;
private static LogParser logParser; private final LogParser logParser;
private static LogParserUtil logParserUtil = new LogParserUtil(); private final LogParserUtil logParserUtil = new LogParserUtil();
private static Configuration config; private final Configuration config;
private static Gson gson; private final Gson gson;
private static Type rleType; private final Type rleType;
private static Type skylineStoreType; private final Type skylineStoreType;
public ResourceEstimatorService() throws ResourceEstimatorException { public ResourceEstimatorService() throws ResourceEstimatorException {
if (skylineStore == null) {
try { try {
config = new Configuration(); config = new Configuration();
config.addResource(ResourceEstimatorConfiguration.CONFIG_FILE); config.addResource(ResourceEstimatorConfiguration.CONFIG_FILE);
@ -110,7 +109,6 @@ public ResourceEstimatorService() throws ResourceEstimatorException {
new TypeToken<Map<RecurrenceId, List<ResourceSkyline>>>() { new TypeToken<Map<RecurrenceId, List<ResourceSkyline>>>() {
}.getType(); }.getType();
} }
}
/** /**
* Parse the log file. See also {@link LogParser#parseStream(InputStream)}. * Parse the log file. See also {@link LogParser#parseStream(InputStream)}.
@ -192,9 +190,6 @@ public String getHistoryResourceSkyline(
LOGGER LOGGER
.debug("Query the skyline store for recurrenceId: {}." + recurrenceId); .debug("Query the skyline store for recurrenceId: {}." + recurrenceId);
recurrenceId = new RecurrenceId("*", "*");
jobHistory = skylineStore.getHistory(recurrenceId);
return skyline; return skyline;
} }

View File

@ -24,11 +24,13 @@
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.io.InputStreamReader; import java.io.InputStreamReader;
import java.nio.charset.StandardCharsets;
import java.text.ParseException; import java.text.ParseException;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import org.apache.commons.lang.CharSet;
import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.resourceestimator.common.api.RecurrenceId; import org.apache.hadoop.resourceestimator.common.api.RecurrenceId;
import org.apache.hadoop.resourceestimator.common.api.ResourceSkyline; import org.apache.hadoop.resourceestimator.common.api.ResourceSkyline;
@ -101,7 +103,8 @@ public void parseLine(final String logLine,
new HashMap<>(); new HashMap<>();
final Map<String, JobMetaData> jobMetas = final Map<String, JobMetaData> jobMetas =
new HashMap<String, JobMetaData>(); new HashMap<String, JobMetaData>();
final BufferedReader bf = new BufferedReader(new InputStreamReader(logs)); final BufferedReader bf = new BufferedReader(
new InputStreamReader(logs, StandardCharsets.UTF_8));
String line = null; String line = null;
while ((line = bf.readLine()) != null) { while ((line = bf.readLine()) != null) {
try { try {

View File

@ -91,7 +91,14 @@ public final void parseLog(final String logFile)
throw new ResourceEstimatorException("The log parser is not initialized," throw new ResourceEstimatorException("The log parser is not initialized,"
+ " please try again after initializing."); + " please try again after initializing.");
} }
InputStream inputStream = new FileInputStream(logFile); InputStream inputStream = null;
try {
inputStream = new FileInputStream(logFile);
logParser.parseStream(inputStream); logParser.parseStream(inputStream);
} finally {
if (inputStream != null) {
inputStream.close();
}
}
} }
} }

View File

@ -54,8 +54,6 @@
* Test ResourceEstimatorService. * Test ResourceEstimatorService.
*/ */
public class TestResourceEstimatorService extends JerseyTest { public class TestResourceEstimatorService extends JerseyTest {
private static final Logger LOGGER =
LoggerFactory.getLogger(TestResourceEstimatorService.class);
private final String parseLogCommand = "resourceestimator/translator/" private final String parseLogCommand = "resourceestimator/translator/"
+ "src/test/resources/resourceEstimatorService.txt"; + "src/test/resources/resourceEstimatorService.txt";
private final String getHistorySkylineCommand = private final String getHistorySkylineCommand =