[REEF-768] Fix high-priority warnings reported by Findbugs JIRA: [REEF-768](https://issues.apache.org/jira/browse/REEF-768)
Pull Request: Closes #506 Project: http://git-wip-us.apache.org/repos/asf/incubator-reef/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-reef/commit/af2be6b9 Tree: http://git-wip-us.apache.org/repos/asf/incubator-reef/tree/af2be6b9 Diff: http://git-wip-us.apache.org/repos/asf/incubator-reef/diff/af2be6b9 Branch: refs/heads/master Commit: af2be6b99720ba04269461c5dabeb874d5b46b77 Parents: 57b2ab2 Author: Mariia Mykhailova <[email protected]> Authored: Fri Sep 18 11:35:01 2015 -0700 Committer: Byung-Gon Chun <[email protected]> Committed: Tue Sep 22 09:17:42 2015 +0900 ---------------------------------------------------------------------- .../bridge/client/LocalSubmissionFromCS.java | 8 +-- .../bridge/client/YarnJobSubmissionClient.java | 14 ++--- .../bridge/client/YarnSubmissionFromCS.java | 12 ++-- .../reef/javabridge/FailedTaskBridge.java | 3 +- .../reef/javabridge/generic/JobClient.java | 3 +- .../reef/javabridge/generic/JobDriver.java | 26 ++++----- .../DefaultClientCloseWithMessageHandler.java | 3 +- .../defaults/DefaultClientMessageHandler.java | 3 +- .../common/evaluator/PIDStoreStartHandler.java | 9 +-- .../evaluator/context/ContextManager.java | 7 ++- .../common/launch/ProfilingStopHandler.java | 5 +- .../java/org/apache/reef/util/CommandUtils.java | 3 +- .../main/java/org/apache/reef/util/OSUtils.java | 3 +- .../org/apache/reef/util/logging/LogParser.java | 48 ++++++++------- .../src/main/resources/findbugs-exclude.xml | 14 +++++ .../reef/examples/data/loading/LineCounter.java | 3 +- .../examples/data/loading/LineCountingTask.java | 3 +- .../group/bgd/data/parser/SVMLightParser.java | 12 ++-- .../reef/examples/hello/HelloReefYarnTcp.java | 6 +- .../hellohttp/HttpServerShellCmdtHandler.java | 10 ++-- .../scheduler/driver/SchedulerDriver.java | 2 +- .../driver/http/SchedulerHttpHandler.java | 6 +- .../loading/api/DataLoadingRequestBuilder.java | 6 +- .../reef/io/network/util/StringCodec.java | 6 +- .../reef/io/storage/util/IntegerCodec.java | 6 +- .../io/storage/util/StringDeserializer.java | 3 +- .../reef/io/storage/util/StringSerializer.java | 3 +- .../reef/runtime/hdinsight/cli/HDICLI.java | 3 +- .../runtime/hdinsight/cli/LogFileEntry.java | 8 ++- .../runtime/local/process/RunnableProcess.java | 11 ++-- .../restart/DFSEvaluatorLogAppendWriter.java | 7 ++- .../restart/DFSEvaluatorLogOverwriteWriter.java | 10 ++-- .../driver/restart/DFSEvaluatorPreserver.java | 34 +++++------ .../reef/tang/examples/PrintTypeHierarchy.java | 13 +++-- .../formats/AvroConfigurationSerializer.java | 5 +- .../java/org/apache/reef/tang/util/Tint.java | 10 ++-- .../EvaluatorReuseTestDriver.java | 11 ++-- .../tests/messaging/driver/DriverMessaging.java | 5 +- .../org/apache/reef/wake/IdentifierParser.java | 5 ++ .../reef/wake/impl/OpaqueLocalIdentifier.java | 28 --------- .../apache/reef/wake/profiler/WakeProfiler.java | 6 +- .../reef/wake/remote/impl/StringCodec.java | 6 +- .../reef/wake/storage/FileHandlePool.java | 5 ++ .../apache/reef/wake/storage/ReadRequest.java | 5 ++ .../apache/reef/wake/storage/ReadResponse.java | 5 ++ .../reef/wake/storage/SequentialFileReader.java | 61 -------------------- .../reef/wake/storage/StorageIdentifier.java | 5 ++ .../webserver/HttpServerReefEventHandler.java | 8 +-- .../reef/webserver/TestAvroHttpSerializer.java | 14 ++--- pom.xml | 2 +- 50 files changed, 228 insertions(+), 266 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/LocalSubmissionFromCS.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/LocalSubmissionFromCS.java b/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/LocalSubmissionFromCS.java index ee37590..691a39c 100644 --- a/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/LocalSubmissionFromCS.java +++ b/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/LocalSubmissionFromCS.java @@ -142,10 +142,10 @@ final class LocalSubmissionFromCS { static LocalSubmissionFromCS fromCommandLine(final String[] args) { final File driverFolder = new File(args[0]); final String jobId = args[1]; - final int numberOfEvaluators = Integer.valueOf(args[2]); - final int tcpBeginPort = Integer.valueOf(args[3]); - final int tcpRangeCount = Integer.valueOf(args[4]); - final int tcpTryCount = Integer.valueOf(args[5]); + final int numberOfEvaluators = Integer.parseInt(args[2]); + final int tcpBeginPort = Integer.parseInt(args[3]); + final int tcpRangeCount = Integer.parseInt(args[4]); + final int tcpTryCount = Integer.parseInt(args[5]); return new LocalSubmissionFromCS(driverFolder, jobId, numberOfEvaluators, tcpBeginPort, tcpRangeCount, tcpTryCount); } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/YarnJobSubmissionClient.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/YarnJobSubmissionClient.java b/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/YarnJobSubmissionClient.java index fa90602..b565c99 100644 --- a/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/YarnJobSubmissionClient.java +++ b/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/YarnJobSubmissionClient.java @@ -45,13 +45,8 @@ import org.apache.reef.tang.exceptions.InjectionException; import org.apache.reef.tang.formats.ConfigurationSerializer; import org.apache.reef.util.JARFileMaker; import javax.inject.Inject; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStreamReader; -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.FileWriter; +import java.io.*; +import java.nio.charset.StandardCharsets; import java.util.List; import java.util.Set; import java.util.logging.Level; @@ -233,7 +228,7 @@ public final class YarnJobSubmissionClient { LOG.log(Level.INFO, "Attempt " + i + " reading " + httpEndpointPath.toString()); if (fs.exists(httpEndpointPath)) { FSDataInputStream input = fs.open(httpEndpointPath); - BufferedReader reader = new BufferedReader(new InputStreamReader(input, "UTF-8")); + BufferedReader reader = new BufferedReader(new InputStreamReader(input, StandardCharsets.UTF_8)); trackingUri = reader.readLine(); reader.close(); break; @@ -253,7 +248,8 @@ public final class YarnJobSubmissionClient { } final File driverHttpEndpointFile = new File(driverFolder, fileNames.getDriverHttpEndpoint()); - BufferedWriter out = new BufferedWriter(new FileWriter(driverHttpEndpointFile)); + BufferedWriter out = new BufferedWriter(new OutputStreamWriter( + new FileOutputStream(driverHttpEndpointFile), StandardCharsets.UTF_8)); out.write(applicationId + "\n"); out.write(trackingUri + "\n"); String addr = yarnConfiguration.get("yarn.resourcemanager.webapp.address"); http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/YarnSubmissionFromCS.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/YarnSubmissionFromCS.java b/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/YarnSubmissionFromCS.java index c399d94..eb21a37 100644 --- a/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/YarnSubmissionFromCS.java +++ b/lang/java/reef-bridge-client/src/main/java/org/apache/reef/bridge/client/YarnSubmissionFromCS.java @@ -177,12 +177,12 @@ final class YarnSubmissionFromCS { static YarnSubmissionFromCS fromCommandLine(final String[] args) { final File driverFolder = new File(args[0]); final String jobId = args[1]; - final int driverMemory = Integer.valueOf(args[2]); - final int tcpBeginPort = Integer.valueOf(args[3]); - final int tcpRangeCount = Integer.valueOf(args[4]); - final int tcpTryCount = Integer.valueOf(args[5]); - final int maxApplicationSubmissions = Integer.valueOf(args[6]); - final int driverRecoveryTimeout = Integer.valueOf(args[7]); + final int driverMemory = Integer.parseInt(args[2]); + final int tcpBeginPort = Integer.parseInt(args[3]); + final int tcpRangeCount = Integer.parseInt(args[4]); + final int tcpTryCount = Integer.parseInt(args[5]); + final int maxApplicationSubmissions = Integer.parseInt(args[6]); + final int driverRecoveryTimeout = Integer.parseInt(args[7]); // Static for now final int priority = 1; final String queue = "default"; http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/FailedTaskBridge.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/FailedTaskBridge.java b/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/FailedTaskBridge.java index 8ee081b..b4bdfc5 100644 --- a/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/FailedTaskBridge.java +++ b/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/FailedTaskBridge.java @@ -20,6 +20,7 @@ package org.apache.reef.javabridge; import org.apache.reef.driver.task.FailedTask; +import java.nio.charset.StandardCharsets; import java.util.logging.Level; import java.util.logging.Logger; @@ -44,7 +45,7 @@ public final class FailedTaskBridge extends NativeBridge { final String cause = jfailedTask.getReason().isPresent() ? jfailedTask.getReason().get().toString().replace("=", "").replace(",", "") : ""; final String data = jfailedTask.getData().isPresent() ? - new String(jfailedTask.getData().get()).replace("=", "").replace(",", "") : ""; + new String(jfailedTask.getData().get(), StandardCharsets.UTF_8).replace("=", "").replace(",", "") : ""; // TODO: deserialize/serialize with proper Avro schema final String poorSerializedString = "Identifier=" + jfailedTask.getId().replace("=", "").replace(",", "") http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/generic/JobClient.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/generic/JobClient.java b/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/generic/JobClient.java index b1cbf25..db9d4b0 100644 --- a/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/generic/JobClient.java +++ b/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/generic/JobClient.java @@ -40,6 +40,7 @@ import org.apache.reef.webserver.ReefEventStateManager; import javax.inject.Inject; import java.io.File; import java.io.IOException; +import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; @@ -185,7 +186,7 @@ public class JobClient { } else { String globalLibString = ""; try { - globalLibString = new String(Files.readAllBytes(globalLibFile)); + globalLibString = new String(Files.readAllBytes(globalLibFile), StandardCharsets.UTF_8); } catch (final Exception e) { LOG.log(Level.WARNING, "Cannot read from {0}, global libraries not added " + globalLibFile.toAbsolutePath()); } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/generic/JobDriver.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/generic/JobDriver.java b/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/generic/JobDriver.java index f619f5f..be38084 100644 --- a/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/generic/JobDriver.java +++ b/lang/java/reef-bridge-java/src/main/java/org/apache/reef/javabridge/generic/JobDriver.java @@ -49,10 +49,9 @@ import org.apache.reef.webserver.*; import javax.inject.Inject; import javax.servlet.ServletException; import javax.servlet.http.HttpServletResponse; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; +import java.io.*; +import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -201,7 +200,8 @@ public final class JobDriver { if (portNumber != null){ try { final File outputFileName = new File(reefFileNames.getDriverHttpEndpoint()); - BufferedWriter out = new BufferedWriter(new FileWriter(outputFileName)); + BufferedWriter out = new BufferedWriter( + new OutputStreamWriter(new FileOutputStream(outputFileName), StandardCharsets.UTF_8)); out.write(localAddressProvider.getLocalAddress() + ":" + portNumber + "\n"); out.close(); } catch (IOException ex) { @@ -299,7 +299,7 @@ public final class JobDriver { } String message = "Evaluator " + eval.getId() + " failed with message: " + eval.getEvaluatorException().getMessage(); - JobDriver.this.jobMessageObserver.sendMessageToClient(message.getBytes()); + JobDriver.this.jobMessageObserver.sendMessageToClient(message.getBytes(StandardCharsets.UTF_8)); if (isRestartFailed) { evaluatorFailedHandlerWaitForCLRBridgeSetup(driverRestartFailedEvaluatorHandler, eval, isRestartFailed); @@ -317,8 +317,7 @@ public final class JobDriver { if (JobDriver.this.clrBridgeSetup) { final String message = "No CLR FailedEvaluator handler was set, exiting now"; LOG.log(Level.WARNING, message); - JobDriver.this.jobMessageObserver.sendMessageToClient(message.getBytes()); - return; + JobDriver.this.jobMessageObserver.sendMessageToClient(message.getBytes(StandardCharsets.UTF_8)); } else { clock.scheduleAlarm(0, new EventHandler<Alarm>() { @Override @@ -357,7 +356,7 @@ public final class JobDriver { additionalRequestedEvaluatorNumber); } - JobDriver.this.jobMessageObserver.sendMessageToClient(message.getBytes()); + JobDriver.this.jobMessageObserver.sendMessageToClient(message.getBytes(StandardCharsets.UTF_8)); } /** @@ -422,7 +421,7 @@ public final class JobDriver { // Take the message returned by the task and add it to the running result. String result = "default result"; try { - result = new String(task.get()); + result = new String(task.get(), StandardCharsets.UTF_8); } catch (final Exception e) { LOG.log(Level.WARNING, "failed to decode task outcome"); } @@ -488,7 +487,7 @@ public final class JobDriver { final AvroHttpRequest avroHttpRequest = httpSerializer.toAvro(parsedHttpRequest); final String requestString = httpSerializer.toString(avroHttpRequest); - final byte[] requestBytes = requestString.getBytes(); + final byte[] requestBytes = requestString.getBytes(Charset.forName(AvroHttpSerializer.JSON_CHARSET)); //final byte[] requestBytes = httpSerializer.toBytes(avroHttpRequest); try { @@ -691,7 +690,7 @@ public final class JobDriver { public final class TaskMessageHandler implements EventHandler<TaskMessage> { @Override public void onNext(final TaskMessage taskMessage) { - final String msg = new String(taskMessage.get()); + final String msg = new String(taskMessage.get(), StandardCharsets.UTF_8); LOG.log(Level.INFO, "Received TaskMessage: {0} from CLR", msg); //try (LoggingScope ls = loggingScopeFactory.taskMessageReceived(new String(msg))) { if (JobDriver.this.taskMessageHandler != 0) { @@ -800,7 +799,8 @@ public final class JobDriver { @Override public void onNext(final ContextMessage message) { LOG.log(Level.SEVERE, "Received ContextMessage:", message.get()); - try (final LoggingScope ls = loggingScopeFactory.contextMessageReceived(message.get().toString())) { + try (final LoggingScope ls = + loggingScopeFactory.contextMessageReceived(new String(message.get(), StandardCharsets.UTF_8))) { if (JobDriver.this.contextMessageHandler != 0) { final ContextMessageBridge contextMessageBridge = new ContextMessageBridge(message); // if CLR implements the context message handler, handle it in CLR http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/driver/defaults/DefaultClientCloseWithMessageHandler.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/driver/defaults/DefaultClientCloseWithMessageHandler.java b/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/driver/defaults/DefaultClientCloseWithMessageHandler.java index 9010250..430df40 100644 --- a/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/driver/defaults/DefaultClientCloseWithMessageHandler.java +++ b/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/driver/defaults/DefaultClientCloseWithMessageHandler.java @@ -21,6 +21,7 @@ package org.apache.reef.runtime.common.driver.defaults; import org.apache.reef.wake.EventHandler; import javax.inject.Inject; +import java.nio.charset.StandardCharsets; /** * Default handler for close messages from the client: Throw an Exception. @@ -34,6 +35,6 @@ public final class DefaultClientCloseWithMessageHandler implements EventHandler< @Override public void onNext(final byte[] bytes) { throw new RuntimeException( - "No handler bound for client Close With Message event: " + new String(bytes)); + "No handler bound for client Close With Message event: " + new String(bytes, StandardCharsets.UTF_8)); } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/driver/defaults/DefaultClientMessageHandler.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/driver/defaults/DefaultClientMessageHandler.java b/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/driver/defaults/DefaultClientMessageHandler.java index 0a07b27..b9a7e7c 100644 --- a/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/driver/defaults/DefaultClientMessageHandler.java +++ b/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/driver/defaults/DefaultClientMessageHandler.java @@ -21,6 +21,7 @@ package org.apache.reef.runtime.common.driver.defaults; import org.apache.reef.wake.EventHandler; import javax.inject.Inject; +import java.nio.charset.StandardCharsets; import java.util.logging.Level; import java.util.logging.Logger; @@ -37,6 +38,6 @@ public final class DefaultClientMessageHandler implements EventHandler<byte[]> { @Override public void onNext(final byte[] bytes) { - LOG.log(Level.INFO, "Received ClientMessage: {0}", new String(bytes)); + LOG.log(Level.INFO, "Received ClientMessage: {0}", new String(bytes, StandardCharsets.UTF_8)); } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/evaluator/PIDStoreStartHandler.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/evaluator/PIDStoreStartHandler.java b/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/evaluator/PIDStoreStartHandler.java index 0d8ae7c..3f5536f 100644 --- a/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/evaluator/PIDStoreStartHandler.java +++ b/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/evaluator/PIDStoreStartHandler.java @@ -23,10 +23,7 @@ import org.apache.reef.wake.EventHandler; import org.apache.reef.wake.time.event.StartTime; import javax.inject.Inject; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.PrintWriter; +import java.io.*; import java.util.logging.Level; import java.util.logging.Logger; @@ -46,10 +43,10 @@ public class PIDStoreStartHandler implements EventHandler<StartTime> { final long pid = OSUtils.getPID(); final File outfile = new File(PID_FILE_NAME); LOG.log(Level.FINEST, "Storing pid `" + pid + "` in file " + outfile.getAbsolutePath()); - try (final PrintWriter p = new PrintWriter((new FileOutputStream(PID_FILE_NAME)))) { + try (final PrintWriter p = new PrintWriter(PID_FILE_NAME, "UTF-8")) { p.write(String.valueOf(pid)); p.write("\n"); - } catch (final FileNotFoundException e) { + } catch (final FileNotFoundException | UnsupportedEncodingException e) { LOG.log(Level.WARNING, "Unable to create PID file.", e); } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/evaluator/context/ContextManager.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/evaluator/context/ContextManager.java b/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/evaluator/context/ContextManager.java index 6bc5487..805460c 100644 --- a/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/evaluator/context/ContextManager.java +++ b/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/evaluator/context/ContextManager.java @@ -294,7 +294,12 @@ public final class ContextManager implements AutoCloseable { this.heartBeatManager.sendHeartbeat(); // Ensure Driver gets notified of context DONE state } this.contextStack.pop(); - System.gc(); // TODO sure?? + /* + * At this moment, the Evaluator is actually idle and has some time till the Driver sends it additional work. + * Also, a potentially large object graph just became orphaned: all the objects instantiated by the context + * and service injectors can now be garbage collected. So GC call is justified. + * */ + System.gc(); } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/launch/ProfilingStopHandler.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/launch/ProfilingStopHandler.java b/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/launch/ProfilingStopHandler.java index 025224a..d64f891 100644 --- a/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/launch/ProfilingStopHandler.java +++ b/lang/java/reef-common/src/main/java/org/apache/reef/runtime/common/launch/ProfilingStopHandler.java @@ -27,6 +27,7 @@ import org.apache.reef.wake.time.event.StopTime; import javax.inject.Inject; import java.io.FileNotFoundException; import java.io.PrintWriter; +import java.io.UnsupportedEncodingException; import java.util.logging.Level; import java.util.logging.Logger; @@ -49,9 +50,9 @@ public final class ProfilingStopHandler implements EventHandler<StopTime> { @Override public void onNext(final StopTime stopTime) { - try (final PrintWriter out = new PrintWriter("profile-" + launchID + ".json")) { + try (final PrintWriter out = new PrintWriter("profile-" + launchID + ".json", "UTF-8")) { out.print(profiler.objectGraphToString()); - } catch (final FileNotFoundException e) { + } catch (final FileNotFoundException | UnsupportedEncodingException e) { LOG.log(Level.WARNING, "Unable to write the profile", e); } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-common/src/main/java/org/apache/reef/util/CommandUtils.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-common/src/main/java/org/apache/reef/util/CommandUtils.java b/lang/java/reef-common/src/main/java/org/apache/reef/util/CommandUtils.java index ca9bff4..1b8cf2b 100644 --- a/lang/java/reef-common/src/main/java/org/apache/reef/util/CommandUtils.java +++ b/lang/java/reef-common/src/main/java/org/apache/reef/util/CommandUtils.java @@ -21,6 +21,7 @@ package org.apache.reef.util; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; +import java.nio.charset.StandardCharsets; import java.util.logging.Level; import java.util.logging.Logger; @@ -40,7 +41,7 @@ public final class CommandUtils { final Process proc = Runtime.getRuntime().exec(cmd); try (final BufferedReader input = - new BufferedReader(new InputStreamReader(proc.getInputStream()))) { + new BufferedReader(new InputStreamReader(proc.getInputStream(), StandardCharsets.UTF_8))) { String line; while ((line = input.readLine()) != null) { sb.append(line).append('\n'); http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-common/src/main/java/org/apache/reef/util/OSUtils.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-common/src/main/java/org/apache/reef/util/OSUtils.java b/lang/java/reef-common/src/main/java/org/apache/reef/util/OSUtils.java index ea6bc45..9bb9749 100644 --- a/lang/java/reef-common/src/main/java/org/apache/reef/util/OSUtils.java +++ b/lang/java/reef-common/src/main/java/org/apache/reef/util/OSUtils.java @@ -19,6 +19,7 @@ package org.apache.reef.util; import java.io.IOException; +import java.nio.charset.StandardCharsets; import java.util.logging.Level; import java.util.logging.Logger; @@ -57,7 +58,7 @@ public final class OSUtils { .start(); final byte[] returnBytes = new byte[128]; process.getInputStream().read(returnBytes); - final Long result = Long.valueOf(new String(returnBytes).trim()); + final Long result = Long.valueOf(new String(returnBytes, StandardCharsets.UTF_8).trim()); process.destroy(); return result; } catch (final IOException e) { http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-common/src/main/java/org/apache/reef/util/logging/LogParser.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-common/src/main/java/org/apache/reef/util/logging/LogParser.java b/lang/java/reef-common/src/main/java/org/apache/reef/util/logging/LogParser.java index 9c50aa9..ee6a05f 100644 --- a/lang/java/reef-common/src/main/java/org/apache/reef/util/logging/LogParser.java +++ b/lang/java/reef-common/src/main/java/org/apache/reef/util/logging/LogParser.java @@ -19,9 +19,8 @@ package org.apache.reef.util.logging; -import java.io.BufferedReader; -import java.io.FileReader; -import java.io.IOException; +import java.io.*; +import java.nio.charset.StandardCharsets; import java.util.ArrayList; /** @@ -69,33 +68,32 @@ public final class LogParser { final String removeBeforeToken, final String removeAfterToken) throws IOException{ final ArrayList<String> filteredLines = new ArrayList<String>(); - try (final FileReader fr = new FileReader(fileName)) { - try (final BufferedReader in = new BufferedReader(fr)) { - String line = ""; - while ((line = in.readLine()) != null) { - if (line.trim().length() == 0) { - continue; - } - if (line.contains(filter)) { - String trimedLine; - if (removeBeforeToken != null) { - final String[] p = line.split(removeBeforeToken); - if (p.length > 1) { - trimedLine = p[p.length-1]; - } else { - trimedLine = line.trim(); - } + try (final BufferedReader in = new BufferedReader( + new InputStreamReader(new FileInputStream(fileName), StandardCharsets.UTF_8))) { + String line = ""; + while ((line = in.readLine()) != null) { + if (line.trim().length() == 0) { + continue; + } + if (line.contains(filter)) { + String trimedLine; + if (removeBeforeToken != null) { + final String[] p = line.split(removeBeforeToken); + if (p.length > 1) { + trimedLine = p[p.length-1]; } else { trimedLine = line.trim(); } - if (removeAfterToken != null) { - final String[] p = trimedLine.split(removeAfterToken); - if (p.length > 1) { - trimedLine = p[0]; - } + } else { + trimedLine = line.trim(); + } + if (removeAfterToken != null) { + final String[] p = trimedLine.split(removeAfterToken); + if (p.length > 1) { + trimedLine = p[0]; } - filteredLines.add(trimedLine); } + filteredLines.add(trimedLine); } } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-common/src/main/resources/findbugs-exclude.xml ---------------------------------------------------------------------- diff --git a/lang/java/reef-common/src/main/resources/findbugs-exclude.xml b/lang/java/reef-common/src/main/resources/findbugs-exclude.xml index 9673556..96395f3 100644 --- a/lang/java/reef-common/src/main/resources/findbugs-exclude.xml +++ b/lang/java/reef-common/src/main/resources/findbugs-exclude.xml @@ -24,4 +24,18 @@ <Match> <Class name="~.*\.avro\..*" /> </Match> + <Match> + <!-- Justified call of GC; explained in code --> + <Class name="org.apache.reef.runtime.common.evaluator.context.ContextManager" /> + <Bug code="Dm" /> + </Match> + <Match> + <!-- Test code --> + <Class name="org.apache.reef.util.MemoryUtils" /> + <Bug code="DLS" /> + </Match> + <Match> + <Class name="org.apache.reef.javabridge.NativeInterop" /> + <Bug code="MS" /> + </Match> </FindBugsFilter> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-examples/src/main/java/org/apache/reef/examples/data/loading/LineCounter.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-examples/src/main/java/org/apache/reef/examples/data/loading/LineCounter.java b/lang/java/reef-examples/src/main/java/org/apache/reef/examples/data/loading/LineCounter.java index cb520a8..6690fe0 100644 --- a/lang/java/reef-examples/src/main/java/org/apache/reef/examples/data/loading/LineCounter.java +++ b/lang/java/reef-examples/src/main/java/org/apache/reef/examples/data/loading/LineCounter.java @@ -32,6 +32,7 @@ import org.apache.reef.tang.exceptions.BindException; import org.apache.reef.wake.EventHandler; import javax.inject.Inject; +import java.nio.charset.StandardCharsets; import java.util.concurrent.atomic.AtomicInteger; import java.util.logging.Level; import java.util.logging.Logger; @@ -110,7 +111,7 @@ public class LineCounter { LOG.log(Level.FINEST, "Completed Task: {0}", taskId); final byte[] retBytes = completedTask.get(); - final String retStr = retBytes == null ? "No RetVal" : new String(retBytes); + final String retStr = retBytes == null ? "No RetVal" : new String(retBytes, StandardCharsets.UTF_8); LOG.log(Level.FINE, "Line count from {0} : {1}", new String[]{taskId, retStr}); lineCnt.addAndGet(Integer.parseInt(retStr)); http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-examples/src/main/java/org/apache/reef/examples/data/loading/LineCountingTask.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-examples/src/main/java/org/apache/reef/examples/data/loading/LineCountingTask.java b/lang/java/reef-examples/src/main/java/org/apache/reef/examples/data/loading/LineCountingTask.java index e64a687..626d974 100644 --- a/lang/java/reef-examples/src/main/java/org/apache/reef/examples/data/loading/LineCountingTask.java +++ b/lang/java/reef-examples/src/main/java/org/apache/reef/examples/data/loading/LineCountingTask.java @@ -26,6 +26,7 @@ import org.apache.reef.io.network.util.Pair; import org.apache.reef.task.Task; import javax.inject.Inject; +import java.nio.charset.StandardCharsets; import java.util.logging.Level; import java.util.logging.Logger; @@ -54,6 +55,6 @@ public class LineCountingTask implements Task { ++numEx; } LOG.log(Level.FINER, "LineCounting task finished: read {0} lines", numEx); - return Integer.toString(numEx).getBytes(); + return Integer.toString(numEx).getBytes(StandardCharsets.UTF_8); } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-examples/src/main/java/org/apache/reef/examples/group/bgd/data/parser/SVMLightParser.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-examples/src/main/java/org/apache/reef/examples/group/bgd/data/parser/SVMLightParser.java b/lang/java/reef-examples/src/main/java/org/apache/reef/examples/group/bgd/data/parser/SVMLightParser.java index 38c7a28..1ff0e04 100644 --- a/lang/java/reef-examples/src/main/java/org/apache/reef/examples/group/bgd/data/parser/SVMLightParser.java +++ b/lang/java/reef-examples/src/main/java/org/apache/reef/examples/group/bgd/data/parser/SVMLightParser.java @@ -23,9 +23,8 @@ import org.apache.reef.examples.group.bgd.data.Example; import org.apache.reef.examples.group.bgd.data.SparseExample; import javax.inject.Inject; -import java.io.BufferedReader; -import java.io.FileReader; -import java.io.IOException; +import java.io.*; +import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.List; import java.util.logging.Level; @@ -77,9 +76,10 @@ public class SVMLightParser implements Parser<String> { for (int i = 0; i < 10; i++) { final List<SparseExample> examples = new ArrayList<>(); float avgFtLen = 0; - try (final BufferedReader br = new BufferedReader(new FileReader( - "C:\\Users\\shravan\\data\\splice\\hdi\\hdi_uncomp\\part-r-0000" + i))) { - String line = null; + try (final BufferedReader br = new BufferedReader(new InputStreamReader( + new FileInputStream("C:\\Users\\shravan\\data\\splice\\hdi\\hdi_uncomp\\part-r-0000" + i), + StandardCharsets.UTF_8))) { + String line; while ((line = br.readLine()) != null) { final SparseExample spEx = (SparseExample) parser.parse(line); avgFtLen += spEx.getFeatureLength(); http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-examples/src/main/java/org/apache/reef/examples/hello/HelloReefYarnTcp.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-examples/src/main/java/org/apache/reef/examples/hello/HelloReefYarnTcp.java b/lang/java/reef-examples/src/main/java/org/apache/reef/examples/hello/HelloReefYarnTcp.java index ab960a2..def6b02 100644 --- a/lang/java/reef-examples/src/main/java/org/apache/reef/examples/hello/HelloReefYarnTcp.java +++ b/lang/java/reef-examples/src/main/java/org/apache/reef/examples/hello/HelloReefYarnTcp.java @@ -91,9 +91,9 @@ public final class HelloReefYarnTcp { * @throws InjectionException configuration error. */ public static void main(final String[] args) throws BindException, InjectionException { - final int tcpBeginPort = args.length > 0 ? Integer.valueOf(args[0]) : DEFAULT_TCP_BEGIN_PORT; - final int tcpRangeCount = args.length > 1 ? Integer.valueOf(args[1]) : DEFAULT_TCP_RANGE_COUNT; - final int tcpTryCount = args.length > 2 ? Integer.valueOf(args[2]) : DEFAULT_TCP_RANGE_TRY_COUNT; + final int tcpBeginPort = args.length > 0 ? Integer.parseInt(args[0]) : DEFAULT_TCP_BEGIN_PORT; + final int tcpRangeCount = args.length > 1 ? Integer.parseInt(args[1]) : DEFAULT_TCP_RANGE_COUNT; + final int tcpTryCount = args.length > 2 ? Integer.parseInt(args[2]) : DEFAULT_TCP_RANGE_TRY_COUNT; final Configuration runtimeConf = getRuntimeConfiguration(tcpBeginPort, tcpRangeCount, tcpTryCount); final Configuration driverConf = getDriverConfiguration(); http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-examples/src/main/java/org/apache/reef/examples/hellohttp/HttpServerShellCmdtHandler.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-examples/src/main/java/org/apache/reef/examples/hellohttp/HttpServerShellCmdtHandler.java b/lang/java/reef-examples/src/main/java/org/apache/reef/examples/hellohttp/HttpServerShellCmdtHandler.java index 891aa66..88ff154 100644 --- a/lang/java/reef-examples/src/main/java/org/apache/reef/examples/hellohttp/HttpServerShellCmdtHandler.java +++ b/lang/java/reef-examples/src/main/java/org/apache/reef/examples/hellohttp/HttpServerShellCmdtHandler.java @@ -29,7 +29,7 @@ import javax.inject.Inject; import javax.servlet.ServletException; import javax.servlet.http.HttpServletResponse; import java.io.IOException; -import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; import java.util.List; import java.util.Map; import java.util.logging.Level; @@ -126,11 +126,13 @@ class HttpServerShellCmdtHandler implements HttpHandler { LOG.log(Level.WARNING, "HttpServeShellCmdtHandler onHttpRequest InterruptedException: {0}", e); } } - response.getOutputStream().write(cmdOutput.getBytes(Charset.forName("UTF-8"))); - cmdOutput = null; + if (cmdOutput != null) { + response.getOutputStream().write(cmdOutput.getBytes(StandardCharsets.UTF_8)); + cmdOutput = null; + } } else if (parsedHttpRequest.getTargetEntity().equalsIgnoreCase("Driver")) { final String commandOutput = CommandUtils.runCommand(queryStr); - response.getOutputStream().write(commandOutput.getBytes(Charset.forName("UTF-8"))); + response.getOutputStream().write(commandOutput.getBytes(StandardCharsets.UTF_8)); } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-examples/src/main/java/org/apache/reef/examples/scheduler/driver/SchedulerDriver.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-examples/src/main/java/org/apache/reef/examples/scheduler/driver/SchedulerDriver.java b/lang/java/reef-examples/src/main/java/org/apache/reef/examples/scheduler/driver/SchedulerDriver.java index 7e44631..3af1efa 100644 --- a/lang/java/reef-examples/src/main/java/org/apache/reef/examples/scheduler/driver/SchedulerDriver.java +++ b/lang/java/reef-examples/src/main/java/org/apache/reef/examples/scheduler/driver/SchedulerDriver.java @@ -157,7 +157,7 @@ public final class SchedulerDriver { public final class CompletedTaskHandler implements EventHandler<CompletedTask> { @Override public void onNext(final CompletedTask task) { - final int taskId = Integer.valueOf(task.getId()); + final int taskId = Integer.parseInt(task.getId()); synchronized (SchedulerDriver.this) { scheduler.setFinished(taskId); http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-examples/src/main/java/org/apache/reef/examples/scheduler/driver/http/SchedulerHttpHandler.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-examples/src/main/java/org/apache/reef/examples/scheduler/driver/http/SchedulerHttpHandler.java b/lang/java/reef-examples/src/main/java/org/apache/reef/examples/scheduler/driver/http/SchedulerHttpHandler.java index c32e828..1db9362 100644 --- a/lang/java/reef-examples/src/main/java/org/apache/reef/examples/scheduler/driver/http/SchedulerHttpHandler.java +++ b/lang/java/reef-examples/src/main/java/org/apache/reef/examples/scheduler/driver/http/SchedulerHttpHandler.java @@ -134,7 +134,7 @@ public final class SchedulerHttpHandler implements HttpHandler { try { - final int taskId = Integer.valueOf(args.get(0)); + final int taskId = Integer.parseInt(args.get(0)); return SchedulerResponse.ok(schedulerDriver.get().getTaskStatus(taskId)); } catch (final NotFoundException e) { @@ -161,7 +161,7 @@ public final class SchedulerHttpHandler implements HttpHandler { try { - final int taskId = Integer.valueOf(args.get(0)); + final int taskId = Integer.parseInt(args.get(0)); final int canceledId = schedulerDriver.get().cancelTask(taskId); return SchedulerResponse.ok("Canceled " + canceledId); @@ -182,7 +182,7 @@ public final class SchedulerHttpHandler implements HttpHandler { try { - final int targetNum = Integer.valueOf(args.get(0)); + final int targetNum = Integer.parseInt(args.get(0)); final int maxEval = schedulerDriver.get().setMaxEvaluators(targetNum); return SchedulerResponse.ok("You can use up to " + maxEval + " evaluators."); http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-io/src/main/java/org/apache/reef/io/data/loading/api/DataLoadingRequestBuilder.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-io/src/main/java/org/apache/reef/io/data/loading/api/DataLoadingRequestBuilder.java b/lang/java/reef-io/src/main/java/org/apache/reef/io/data/loading/api/DataLoadingRequestBuilder.java index 82a4b85..bb587f3 100644 --- a/lang/java/reef-io/src/main/java/org/apache/reef/io/data/loading/api/DataLoadingRequestBuilder.java +++ b/lang/java/reef-io/src/main/java/org/apache/reef/io/data/loading/api/DataLoadingRequestBuilder.java @@ -209,9 +209,9 @@ public final class DataLoadingRequestBuilder .newBuilder() .setPath(inputPath) .setLocation(Constants.ANY_RACK) - .setDesiredSplits( - numberOfDesiredSplits > 0 ? numberOfDesiredSplits : Integer - .valueOf(NumberOfDesiredSplits.DEFAULT_DESIRED_SPLITS)).build()); + .setDesiredSplits(numberOfDesiredSplits > 0 ? + numberOfDesiredSplits : + Integer.parseInt(NumberOfDesiredSplits.DEFAULT_DESIRED_SPLITS)).build()); this.distributedDataSet = dds; } else { if (this.inputPath != null) { http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-io/src/main/java/org/apache/reef/io/network/util/StringCodec.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-io/src/main/java/org/apache/reef/io/network/util/StringCodec.java b/lang/java/reef-io/src/main/java/org/apache/reef/io/network/util/StringCodec.java index 5bf4685..3f3a1e8 100644 --- a/lang/java/reef-io/src/main/java/org/apache/reef/io/network/util/StringCodec.java +++ b/lang/java/reef-io/src/main/java/org/apache/reef/io/network/util/StringCodec.java @@ -21,7 +21,7 @@ package org.apache.reef.io.network.util; import org.apache.reef.wake.remote.Codec; import javax.inject.Inject; - +import java.nio.charset.StandardCharsets; public class StringCodec implements Codec<String> { @@ -32,11 +32,11 @@ public class StringCodec implements Codec<String> { @Override public byte[] encode(final String obj) { - return obj.getBytes(); + return obj.getBytes(StandardCharsets.UTF_8); } @Override public String decode(final byte[] buf) { - return new String(buf); + return new String(buf, StandardCharsets.UTF_8); } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/IntegerCodec.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/IntegerCodec.java b/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/IntegerCodec.java index 94b496a..5ee8bb7 100644 --- a/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/IntegerCodec.java +++ b/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/IntegerCodec.java @@ -20,16 +20,18 @@ package org.apache.reef.io.storage.util; import org.apache.reef.io.serialization.Codec; +import java.nio.charset.StandardCharsets; + public class IntegerCodec implements Codec<Integer> { @Override public byte[] encode(final Integer obj) { - return Integer.toString(obj).getBytes(); + return Integer.toString(obj).getBytes(StandardCharsets.UTF_8); } @Override public Integer decode(final byte[] buf) { - return Integer.decode(new String(buf)); + return Integer.decode(new String(buf, StandardCharsets.UTF_8)); } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/StringDeserializer.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/StringDeserializer.java b/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/StringDeserializer.java index 1016016..cccc5cf 100644 --- a/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/StringDeserializer.java +++ b/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/StringDeserializer.java @@ -24,6 +24,7 @@ import org.apache.reef.io.serialization.Deserializer; import java.io.DataInputStream; import java.io.IOException; import java.io.InputStream; +import java.nio.charset.StandardCharsets; import java.util.Iterator; public class StringDeserializer implements @@ -49,7 +50,7 @@ public class StringDeserializer implements len = dis.readInt(); final byte[] b = new byte[len]; dis.readFully(b); - return new String(b); + return new String(b, StandardCharsets.UTF_8); } catch (final IOException e) { throw new ServiceRuntimeException(e); } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/StringSerializer.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/StringSerializer.java b/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/StringSerializer.java index cc61ea6..9a8fd6c 100644 --- a/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/StringSerializer.java +++ b/lang/java/reef-io/src/main/java/org/apache/reef/io/storage/util/StringSerializer.java @@ -26,6 +26,7 @@ import org.apache.reef.io.serialization.Serializer; import java.io.DataOutputStream; import java.io.IOException; import java.io.OutputStream; +import java.nio.charset.StandardCharsets; public class StringSerializer implements Serializer<String, OutputStream> { @@ -40,7 +41,7 @@ public class StringSerializer implements @Override public void add(final String datum) throws ServiceException { - final byte[] b = datum.getBytes(); + final byte[] b = datum.getBytes(StandardCharsets.UTF_8); try { dos.writeInt(b.length); dos.write(b); http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-runtime-hdinsight/src/main/java/org/apache/reef/runtime/hdinsight/cli/HDICLI.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-runtime-hdinsight/src/main/java/org/apache/reef/runtime/hdinsight/cli/HDICLI.java b/lang/java/reef-runtime-hdinsight/src/main/java/org/apache/reef/runtime/hdinsight/cli/HDICLI.java index 651c4ca..b4fdfe9 100644 --- a/lang/java/reef-runtime-hdinsight/src/main/java/org/apache/reef/runtime/hdinsight/cli/HDICLI.java +++ b/lang/java/reef-runtime-hdinsight/src/main/java/org/apache/reef/runtime/hdinsight/cli/HDICLI.java @@ -29,6 +29,7 @@ import javax.inject.Inject; import java.io.File; import java.io.IOException; import java.io.OutputStreamWriter; +import java.nio.charset.StandardCharsets; import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; @@ -122,7 +123,7 @@ public final class HDICLI { */ private void logs(final String applicationId) throws IOException { LOG.log(Level.INFO, "Fetching logs for application [{0}]", applicationId); - this.logFetcher.fetch(applicationId, new OutputStreamWriter(System.out)); + this.logFetcher.fetch(applicationId, new OutputStreamWriter(System.out, StandardCharsets.UTF_8)); } /** http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-runtime-hdinsight/src/main/java/org/apache/reef/runtime/hdinsight/cli/LogFileEntry.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-runtime-hdinsight/src/main/java/org/apache/reef/runtime/hdinsight/cli/LogFileEntry.java b/lang/java/reef-runtime-hdinsight/src/main/java/org/apache/reef/runtime/hdinsight/cli/LogFileEntry.java index 14839a2..d826732 100644 --- a/lang/java/reef-runtime-hdinsight/src/main/java/org/apache/reef/runtime/hdinsight/cli/LogFileEntry.java +++ b/lang/java/reef-runtime-hdinsight/src/main/java/org/apache/reef/runtime/hdinsight/cli/LogFileEntry.java @@ -21,6 +21,7 @@ package org.apache.reef.runtime.hdinsight.cli; import org.apache.hadoop.io.file.tfile.TFile; import java.io.*; +import java.nio.charset.StandardCharsets; import java.util.logging.Logger; /** @@ -61,7 +62,8 @@ final class LogFileEntry { try (final DataInputStream keyStream = entry.getKeyStream(); final DataInputStream valueStream = entry.getValueStream();) { final String containerId = keyStream.readUTF(); - try (final Writer outputWriter = new FileWriter(new File(folder, containerId + ".txt"))) { + try (final Writer outputWriter = new OutputStreamWriter( + new FileOutputStream(new File(folder, containerId + ".txt")), StandardCharsets.UTF_8)) { this.writeFiles(valueStream, outputWriter); } } @@ -89,8 +91,8 @@ final class LogFileEntry { } /** - * Writes the next numberOfBytes bytes from the sream to the outputWriter, assuming that the bytes are UTF-8 encoded - * caharcters. + * Writes the next numberOfBytes bytes from the stream to the outputWriter, assuming that the bytes are UTF-8 encoded + * characters. * * @param stream * @param outputWriter http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/RunnableProcess.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/RunnableProcess.java b/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/RunnableProcess.java index 6eba822..9d2597e 100644 --- a/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/RunnableProcess.java +++ b/lang/java/reef-runtime-local/src/main/java/org/apache/reef/runtime/local/process/RunnableProcess.java @@ -21,10 +21,8 @@ package org.apache.reef.runtime.local.process; import org.apache.reef.runtime.common.evaluator.PIDStoreStartHandler; import org.apache.reef.util.OSUtils; -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; -import java.io.IOException; +import java.io.*; +import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.List; import java.util.concurrent.TimeUnit; @@ -235,8 +233,9 @@ public final class RunnableProcess implements Runnable { */ private long readPID() throws IOException { final String pidFileName = this.folder.getAbsolutePath() + "/" + PIDStoreStartHandler.PID_FILE_NAME; - try (final BufferedReader r = new BufferedReader(new FileReader(pidFileName))) { - return Long.valueOf(r.readLine()); + try (final BufferedReader r = + new BufferedReader(new InputStreamReader(new FileInputStream(pidFileName), StandardCharsets.UTF_8))) { + return Long.parseLong(r.readLine()); } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorLogAppendWriter.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorLogAppendWriter.java b/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorLogAppendWriter.java index b88f4a0..7d07939 100644 --- a/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorLogAppendWriter.java +++ b/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorLogAppendWriter.java @@ -25,6 +25,7 @@ import org.apache.reef.annotations.audience.Private; import java.io.BufferedWriter; import java.io.IOException; import java.io.OutputStreamWriter; +import java.nio.charset.StandardCharsets; /** * The DFS evaluator logger that performs regular append. dfs.support.append should be true. @@ -55,8 +56,10 @@ public final class DFSEvaluatorLogAppendWriter implements DFSEvaluatorLogWriter try ( final BufferedWriter bw = fileCreated ? - new BufferedWriter(new OutputStreamWriter(this.fileSystem.append(this.changelogPath))) : - new BufferedWriter(new OutputStreamWriter(this.fileSystem.create(this.changelogPath))) + new BufferedWriter(new OutputStreamWriter( + this.fileSystem.append(this.changelogPath), StandardCharsets.UTF_8)) : + new BufferedWriter(new OutputStreamWriter( + this.fileSystem.create(this.changelogPath), StandardCharsets.UTF_8)) ) { bw.write(formattedEntry); } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorLogOverwriteWriter.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorLogOverwriteWriter.java b/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorLogOverwriteWriter.java index e461b45..5a23231 100644 --- a/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorLogOverwriteWriter.java +++ b/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorLogOverwriteWriter.java @@ -25,6 +25,7 @@ import org.apache.hadoop.io.IOUtils; import org.apache.reef.annotations.audience.Private; import java.io.*; +import java.nio.charset.StandardCharsets; /** * The DFS evaluator logger that does not support append and does append by overwrite. @@ -56,9 +57,8 @@ public final class DFSEvaluatorLogOverwriteWriter implements DFSEvaluatorLogWrit final boolean fileCreated = this.fileSystem.exists(this.changelogPath); if (!fileCreated) { - try ( - final BufferedWriter bw = - new BufferedWriter(new OutputStreamWriter(this.fileSystem.create(this.changelogPath)))) { + try (final BufferedWriter bw = new BufferedWriter( + new OutputStreamWriter(this.fileSystem.create(this.changelogPath), StandardCharsets.UTF_8))) { bw.write(formattedEntry); } } else { @@ -81,11 +81,11 @@ public final class DFSEvaluatorLogOverwriteWriter implements DFSEvaluatorLogWrit IOUtils.copyBytes(inputStream, outputStream, 4096, true); } - final String newContent = outputStream.toString() + appendEntry; + final String newContent = outputStream.toString("UTF-8") + appendEntry; this.fileSystem.delete(this.changelogPath, true); try (final FSDataOutputStream newOutput = this.fileSystem.create(this.changelogPath); - final InputStream newInput = new ByteArrayInputStream(newContent.getBytes())) { + final InputStream newInput = new ByteArrayInputStream(newContent.getBytes(StandardCharsets.UTF_8))) { IOUtils.copyBytes(newInput, newOutput, 4096, true); } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorPreserver.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorPreserver.java b/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorPreserver.java index 409e392..346d852 100644 --- a/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorPreserver.java +++ b/lang/java/reef-runtime-yarn/src/main/java/org/apache/reef/runtime/yarn/driver/restart/DFSEvaluatorPreserver.java @@ -33,6 +33,7 @@ import org.apache.reef.tang.annotations.Parameter; import javax.inject.Inject; import java.io.*; +import java.nio.charset.StandardCharsets; import java.util.HashSet; import java.util.Set; import java.util.logging.Level; @@ -117,8 +118,8 @@ public final class DFSEvaluatorPreserver implements EvaluatorPreserver, AutoClos // empty set return expectedContainers; } else { - final BufferedReader br = - new BufferedReader(new InputStreamReader(this.fileSystem.open(this.changeLogLocation))); + final BufferedReader br = new BufferedReader( + new InputStreamReader(this.fileSystem.open(this.changeLogLocation), StandardCharsets.UTF_8)); String line = br.readLine(); while (line != null) { if (line.startsWith(ADD_FLAG)) { @@ -191,27 +192,18 @@ public final class DFSEvaluatorPreserver implements EvaluatorPreserver, AutoClos private void handleException(final Exception e, final String errorMsg, final String fatalMsg){ if (this.failDriverOnEvaluatorLogErrors) { - final Level logLevel; - if (this.failDriverOnEvaluatorLogErrors) { - logLevel = Level.SEVERE; - } else { - logLevel = Level.WARNING; - } + LOG.log(Level.SEVERE, errorMsg, e); - LOG.log(logLevel, errorMsg, e); - - if (this.failDriverOnEvaluatorLogErrors) { - try { - this.close(); - } catch (Exception e1) { - LOG.log(Level.SEVERE, "Failed on closing resource with " + e1.getStackTrace()); - } + try { + this.close(); + } catch (Exception e1) { + LOG.log(Level.SEVERE, "Failed on closing resource with " + e1.getStackTrace()); + } - if (fatalMsg != null) { - throw new DriverFatalRuntimeException(fatalMsg, e); - } else { - throw new DriverFatalRuntimeException("Driver failed on Evaluator log error.", e); - } + if (fatalMsg != null) { + throw new DriverFatalRuntimeException(fatalMsg, e); + } else { + throw new DriverFatalRuntimeException("Driver failed on Evaluator log error.", e); } } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/examples/PrintTypeHierarchy.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/examples/PrintTypeHierarchy.java b/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/examples/PrintTypeHierarchy.java index 03aa710..db4366c 100644 --- a/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/examples/PrintTypeHierarchy.java +++ b/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/examples/PrintTypeHierarchy.java @@ -33,8 +33,11 @@ import org.apache.reef.tang.util.walk.graphviz.GraphvizConfigVisitor; import org.apache.reef.tang.util.walk.graphviz.GraphvizInjectionPlanVisitor; import javax.inject.Inject; -import java.io.FileWriter; +import java.io.FileOutputStream; +import java.io.OutputStreamWriter; +import java.io.Writer; import java.io.IOException; +import java.nio.charset.StandardCharsets; /** * Build a Graphviz representation of TANG configuration and injection plan. @@ -49,7 +52,7 @@ public final class PrintTypeHierarchy { /** * Constructor to test the parameter injection. * - * @param aId test parameter + * @param id test parameter */ @Inject public PrintTypeHierarchy(@Parameter(PrintTypeHierarchy.Id.class) final int id) { @@ -74,14 +77,16 @@ public final class PrintTypeHierarchy { final Injector injector = tang.newInjector(config); final PrintTypeHierarchy myself = injector.getInstance(PrintTypeHierarchy.class); - try (final FileWriter out = new FileWriter("type-hierarchy.dot")) { + try (final Writer out = new OutputStreamWriter( + new FileOutputStream("type-hierarchy.dot"), StandardCharsets.UTF_8)) { out.write(GraphvizConfigVisitor.getGraphvizString(config, true, true)); } final InjectionPlan<PrintTypeHierarchy> plan = injector.getInjectionPlan(PrintTypeHierarchy.class); - try (final FileWriter out = new FileWriter("injection-plan.dot")) { + try (final Writer out = new OutputStreamWriter( + new FileOutputStream("injection-plan.dot"), StandardCharsets.UTF_8)) { out.write(GraphvizInjectionPlanVisitor.getGraphvizString(plan, true)); } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/formats/AvroConfigurationSerializer.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/formats/AvroConfigurationSerializer.java b/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/formats/AvroConfigurationSerializer.java index 229f76c..466dcea 100644 --- a/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/formats/AvroConfigurationSerializer.java +++ b/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/formats/AvroConfigurationSerializer.java @@ -203,7 +203,7 @@ public final class AvroConfigurationSerializer implements ConfigurationSerialize @Override public void toTextFile(final Configuration conf, final File file) throws IOException { - try (final Writer w = new FileWriter(file)) { + try (final Writer w = new OutputStreamWriter(new FileOutputStream(file), JSON_CHARSET)) { w.write(this.toString(conf)); } } @@ -290,7 +290,8 @@ public final class AvroConfigurationSerializer implements ConfigurationSerialize private StringBuilder readFromTextFile(final File file) throws IOException { final StringBuilder result = new StringBuilder(); - try (final BufferedReader reader = new BufferedReader(new FileReader(file))) { + try (final BufferedReader reader = + new BufferedReader(new InputStreamReader(new FileInputStream(file), JSON_CHARSET))) { String line = reader.readLine(); while (line != null) { result.append(line); http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/util/Tint.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/util/Tint.java b/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/util/Tint.java index 0192be5..3f72a8f 100644 --- a/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/util/Tint.java +++ b/lang/java/reef-tang/tang/src/main/java/org/apache/reef/tang/util/Tint.java @@ -37,10 +37,7 @@ import org.reflections.scanners.SubTypesScanner; import org.reflections.scanners.TypeAnnotationsScanner; import javax.inject.Inject; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.PrintStream; +import java.io.*; import java.lang.reflect.Field; import java.lang.reflect.Modifier; import java.net.MalformedURLException; @@ -283,7 +280,8 @@ public class Tint { * @throws FileNotFoundException * @throws MalformedURLException */ - public static void main(final String[] args) throws FileNotFoundException, MalformedURLException { + public static void main(final String[] args) + throws FileNotFoundException, MalformedURLException, UnsupportedEncodingException { int i = 0; String doc = null; String jar = null; @@ -314,7 +312,7 @@ public class Tint { } if (doc != null) { - try (final PrintStream out = new PrintStream(new FileOutputStream(new File(doc)))) { + try (final PrintStream out = new PrintStream(doc, "UTF-8")) { out.println("<html><head><title>TangDoc</title>"); out.println("<style>"); http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-tests/src/main/java/org/apache/reef/tests/evaluatorreuse/EvaluatorReuseTestDriver.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-tests/src/main/java/org/apache/reef/tests/evaluatorreuse/EvaluatorReuseTestDriver.java b/lang/java/reef-tests/src/main/java/org/apache/reef/tests/evaluatorreuse/EvaluatorReuseTestDriver.java index 5c70bfe..854be08 100644 --- a/lang/java/reef-tests/src/main/java/org/apache/reef/tests/evaluatorreuse/EvaluatorReuseTestDriver.java +++ b/lang/java/reef-tests/src/main/java/org/apache/reef/tests/evaluatorreuse/EvaluatorReuseTestDriver.java @@ -35,6 +35,7 @@ import org.apache.reef.wake.EventHandler; import javax.inject.Inject; import javax.xml.bind.DatatypeConverter; +import java.nio.charset.StandardCharsets; import java.util.logging.Level; import java.util.logging.Logger; @@ -60,8 +61,8 @@ final class EvaluatorReuseTestDriver { if (counter < numberOfIterations) { try { this.lastMessage = "ECHO-" + counter; - client.sendMessageToClient(("Submitting iteration " + counter).getBytes()); - final String memento = DatatypeConverter.printBase64Binary(this.lastMessage.getBytes()); + client.sendMessageToClient(("Submitting iteration " + counter).getBytes(StandardCharsets.UTF_8)); + final String memento = DatatypeConverter.printBase64Binary(this.lastMessage.getBytes(StandardCharsets.UTF_8)); context.submitTask(TaskConfiguration.CONF .set(TaskConfiguration.IDENTIFIER, this.lastMessage) .set(TaskConfiguration.TASK, EchoTask.class) @@ -73,7 +74,7 @@ final class EvaluatorReuseTestDriver { throw new RuntimeException(e); } } else { - client.sendMessageToClient("Done. Closing the Context".getBytes()); + client.sendMessageToClient("Done. Closing the Context".getBytes(StandardCharsets.UTF_8)); context.close(); } } @@ -85,9 +86,9 @@ final class EvaluatorReuseTestDriver { final class TaskCompletedHandler implements EventHandler<CompletedTask> { @Override public void onNext(final CompletedTask completed) { - final String returned = new String(completed.get()); + final String returned = new String(completed.get(), StandardCharsets.UTF_8); final String msg = "CompletedTask returned: \"" + returned + "\""; - client.sendMessageToClient(msg.getBytes()); + client.sendMessageToClient(msg.getBytes(StandardCharsets.UTF_8)); if (!returned.equals(lastMessage)) { throw new UnexpectedTaskReturnValue(lastMessage, returned); } else { http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-tests/src/main/java/org/apache/reef/tests/messaging/driver/DriverMessaging.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-tests/src/main/java/org/apache/reef/tests/messaging/driver/DriverMessaging.java b/lang/java/reef-tests/src/main/java/org/apache/reef/tests/messaging/driver/DriverMessaging.java index 2f9183b..76875e2 100644 --- a/lang/java/reef-tests/src/main/java/org/apache/reef/tests/messaging/driver/DriverMessaging.java +++ b/lang/java/reef-tests/src/main/java/org/apache/reef/tests/messaging/driver/DriverMessaging.java @@ -29,6 +29,7 @@ import org.apache.reef.util.Optional; import org.apache.reef.wake.EventHandler; import javax.inject.Inject; +import java.nio.charset.StandardCharsets; import java.util.logging.Level; import java.util.logging.Logger; @@ -113,7 +114,7 @@ public final class DriverMessaging { final class JobMessageHandler implements EventHandler<JobMessage> { @Override public void onNext(final JobMessage message) { - final String msg = new String(message.get()); + final String msg = new String(message.get(), StandardCharsets.UTF_8); synchronized (DriverMessaging.this) { if (!msg.equals(DriverMessaging.this.lastMessage)) { LOG.log(Level.SEVERE, "Expected {0} but got {1}", @@ -133,7 +134,7 @@ public final class DriverMessaging { DriverMessaging.this.status = LauncherStatus.RUNNING; DriverMessaging.this.theJob = Optional.of(job); DriverMessaging.this.lastMessage = "Hello, REEF!"; - DriverMessaging.this.theJob.get().send(DriverMessaging.this.lastMessage.getBytes()); + DriverMessaging.this.theJob.get().send(DriverMessaging.this.lastMessage.getBytes(StandardCharsets.UTF_8)); } } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/IdentifierParser.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/IdentifierParser.java b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/IdentifierParser.java index b4550e3..9f23e37 100644 --- a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/IdentifierParser.java +++ b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/IdentifierParser.java @@ -27,6 +27,11 @@ import javax.inject.Inject; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; +/** + * @deprecated in 0.13 + */ + +@Deprecated public class IdentifierParser implements ExternalConstructor<Identifier> { private static final IdentifierFactory FACTORY; http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/impl/OpaqueLocalIdentifier.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/impl/OpaqueLocalIdentifier.java b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/impl/OpaqueLocalIdentifier.java deleted file mode 100644 index ced6000..0000000 --- a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/impl/OpaqueLocalIdentifier.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.reef.wake.impl; - -import org.apache.reef.wake.Identifier; - -public class OpaqueLocalIdentifier implements Identifier { - @Override - public String toString() { - return "local-opaque-id://" + this.toString(); - } -} http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/profiler/WakeProfiler.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/profiler/WakeProfiler.java b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/profiler/WakeProfiler.java index 10baa2e..2e6a786 100644 --- a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/profiler/WakeProfiler.java +++ b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/profiler/WakeProfiler.java @@ -71,7 +71,7 @@ public class WakeProfiler implements Aspect { if (vertexObject.containsKey(s)) { return (Vertex<Set<T>>) vertexObject.get(s); } - if (s.size() > -1) { + if (s.size() > 1) { LOG.fine("new set of size " + s.size()); final Vertex<?>[] sArgs = new Vertex[s.size()]; int k = 0; @@ -82,7 +82,6 @@ public class WakeProfiler implements Aspect { final Vertex<Set<T>> sv = new Vertex<>(s, null, sArgs); vertexObject.put(s, sv); return sv; -// } else if(s.size() == 1) { } else { final Object p = s.iterator().next(); final Vertex<?> w = getVertex(p); @@ -90,9 +89,6 @@ public class WakeProfiler implements Aspect { vertexObject.put(s, w); return w; } -// } else { -// // ignore the empty set. -// } */ } @SuppressWarnings("unchecked") http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/impl/StringCodec.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/impl/StringCodec.java b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/impl/StringCodec.java index d972a33..db5f322 100644 --- a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/impl/StringCodec.java +++ b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/remote/impl/StringCodec.java @@ -20,6 +20,8 @@ package org.apache.reef.wake.remote.impl; import org.apache.reef.wake.remote.Codec; +import java.nio.charset.StandardCharsets; + /** * Codec that encodes/decodes a string. */ @@ -33,7 +35,7 @@ public class StringCodec implements Codec<String> { */ @Override public byte[] encode(final String obj) { - return obj.getBytes(); + return obj.getBytes(StandardCharsets.UTF_8); } /** @@ -44,7 +46,7 @@ public class StringCodec implements Codec<String> { */ @Override public String decode(final byte[] buf) { - return new String(buf); + return new String(buf, StandardCharsets.UTF_8); } } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/FileHandlePool.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/FileHandlePool.java b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/FileHandlePool.java index a0779ae..c9d6a5b 100644 --- a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/FileHandlePool.java +++ b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/FileHandlePool.java @@ -20,6 +20,11 @@ package org.apache.reef.wake.storage; import java.io.FileInputStream; +/** + * @deprecated in 0.13 + */ + +@Deprecated public class FileHandlePool { public FileInputStream get(final StorageIdentifier f) { return null; http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/ReadRequest.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/ReadRequest.java b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/ReadRequest.java index 0e3140c..888d7a4 100644 --- a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/ReadRequest.java +++ b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/ReadRequest.java @@ -21,6 +21,11 @@ package org.apache.reef.wake.storage; import org.apache.reef.wake.Identifiable; import org.apache.reef.wake.Identifier; +/** + * @deprecated in 0.13 + */ + +@Deprecated public class ReadRequest implements Identifiable { private final StorageIdentifier f; private final long offset; http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/ReadResponse.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/ReadResponse.java b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/ReadResponse.java index b8322db..cde7419 100644 --- a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/ReadResponse.java +++ b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/ReadResponse.java @@ -20,6 +20,11 @@ package org.apache.reef.wake.storage; import org.apache.reef.wake.Identifier; +/** + * @deprecated in 0.13 + */ + +@Deprecated public class ReadResponse { private final byte[] buf; private final int bytesRead; http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/SequentialFileReader.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/SequentialFileReader.java b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/SequentialFileReader.java deleted file mode 100644 index 3a5ae29..0000000 --- a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/SequentialFileReader.java +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.reef.wake.storage; - -import org.apache.reef.wake.EStage; -import org.apache.reef.wake.EventHandler; - -import java.io.FileInputStream; -import java.io.IOException; - -public class SequentialFileReader implements EStage<ReadRequest> { - private final EventHandler<ReadResponse> dest = null; - private final FileHandlePool fdPool = new FileHandlePool(); - - @Override - public void onNext(final ReadRequest value) { - final FileInputStream fin = fdPool.get(value.getF()); - int readSoFar = 0; - try { - synchronized (fin) { - fin.reset(); - fin.skip(value.getOffset()); - while (readSoFar != value.getBuf().length) { - final int ret = fin.read(value.getBuf(), readSoFar, value.getBuf().length); - if (ret == -1) { - break; - } - readSoFar += ret; - } - } - } catch (final IOException e) { - fdPool.release(value.getF(), fin); -// err.onNext(null); //new ReadError(e)); - } - fdPool.release(value.getF(), fin); - dest.onNext(new ReadResponse(value.getBuf(), readSoFar, value.getId())); - } - - @Override - public void close() throws Exception { - // TODO Auto-generated method stub - - } - -} http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/StorageIdentifier.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/StorageIdentifier.java b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/StorageIdentifier.java index 013ee59..336adc8 100644 --- a/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/StorageIdentifier.java +++ b/lang/java/reef-wake/wake/src/main/java/org/apache/reef/wake/storage/StorageIdentifier.java @@ -20,6 +20,11 @@ package org.apache.reef.wake.storage; import org.apache.reef.wake.Identifier; +/** + * @deprecated in 0.13 + */ + +@Deprecated public interface StorageIdentifier extends Identifier { } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-webserver/src/main/java/org/apache/reef/webserver/HttpServerReefEventHandler.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-webserver/src/main/java/org/apache/reef/webserver/HttpServerReefEventHandler.java b/lang/java/reef-webserver/src/main/java/org/apache/reef/webserver/HttpServerReefEventHandler.java index 1007215..01bfb8c 100644 --- a/lang/java/reef-webserver/src/main/java/org/apache/reef/webserver/HttpServerReefEventHandler.java +++ b/lang/java/reef-webserver/src/main/java/org/apache/reef/webserver/HttpServerReefEventHandler.java @@ -35,7 +35,7 @@ import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; import java.net.InetSocketAddress; -import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Paths; import java.util.ArrayList; @@ -86,7 +86,7 @@ public final class HttpServerReefEventHandler implements HttpHandler { * read a file and output it as a String. */ private static String readFile(final String fileName) throws IOException { - return new String(Files.readAllBytes(Paths.get(fileName))); + return new String(Files.readAllBytes(Paths.get(fileName)), StandardCharsets.UTF_8); } /** @@ -176,7 +176,7 @@ public final class HttpServerReefEventHandler implements HttpHandler { response.getWriter().println(String.format("Unsupported file names: [%s] ", fileName)); } try { - final byte[] outputBody = readFile((String) names.get(0)).getBytes(Charset.forName("UTF-8")); + final byte[] outputBody = readFile((String) names.get(0)).getBytes(StandardCharsets.UTF_8); response.getOutputStream().write(outputBody); } catch(final IOException e) { response.getWriter().println(String.format("Cannot find the log file: [%s].", fileName)); @@ -341,7 +341,7 @@ public final class HttpServerReefEventHandler implements HttpHandler { * Write a String to HTTP Response. */ private void writeResponse(final HttpServletResponse response, final String data) throws IOException { - final byte[] outputBody = data.getBytes(Charset.forName("UTF-8")); + final byte[] outputBody = data.getBytes(StandardCharsets.UTF_8); response.getOutputStream().write(outputBody); } http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/af2be6b9/lang/java/reef-webserver/src/test/java/org/apache/reef/webserver/TestAvroHttpSerializer.java ---------------------------------------------------------------------- diff --git a/lang/java/reef-webserver/src/test/java/org/apache/reef/webserver/TestAvroHttpSerializer.java b/lang/java/reef-webserver/src/test/java/org/apache/reef/webserver/TestAvroHttpSerializer.java index 4c57133..d31edb1 100644 --- a/lang/java/reef-webserver/src/test/java/org/apache/reef/webserver/TestAvroHttpSerializer.java +++ b/lang/java/reef-webserver/src/test/java/org/apache/reef/webserver/TestAvroHttpSerializer.java @@ -28,7 +28,7 @@ import org.junit.rules.ExpectedException; import javax.servlet.ServletException; import java.io.*; import java.nio.ByteBuffer; -import java.nio.charset.Charset; +import java.nio.charset.StandardCharsets; import java.util.ArrayList; /** @@ -43,7 +43,7 @@ public final class TestAvroHttpSerializer { public static String readStream(final InputStream is) { final StringBuilder sb = new StringBuilder(512); try { - final Reader r = new InputStreamReader(is, "UTF-8"); + final Reader r = new InputStreamReader(is, StandardCharsets.UTF_8); int c = 0; while ((c = r.read()) != -1) { sb.append((char) c); @@ -57,7 +57,7 @@ public final class TestAvroHttpSerializer { @Before public void setUp() throws Exception { final String s = "test binary stream data"; - final byte[] b = s.getBytes(Charset.forName("UTF-8")); + final byte[] b = s.getBytes(StandardCharsets.UTF_8); avroRequest = AvroHttpRequest.newBuilder() .setRequestUrl("http://localhost:8080/reef/evaluators?id=12&id=34&a=b") .setHttpMethod("POST") @@ -172,7 +172,7 @@ public final class TestAvroHttpSerializer { thrown.expect(AvroRuntimeException.class); thrown.expectMessage("Field queryString type:STRING pos:3 not set and has no default value"); final String s = "test binary stream data"; - final byte[] b = s.getBytes(Charset.forName("UTF-8")); + final byte[] b = s.getBytes(StandardCharsets.UTF_8); avroRequest = AvroHttpRequest.newBuilder() .setRequestUrl("http://localhost:8080/reef/evaluators?id=12&id=34&a=b") .setHttpMethod("POST") @@ -190,7 +190,7 @@ public final class TestAvroHttpSerializer { thrown.expect(AvroRuntimeException.class); thrown.expectMessage("Field queryString type:STRING pos:3 does not accept null values"); final String s = "test binary stream data"; - final byte[] b = s.getBytes(Charset.forName("UTF-8")); + final byte[] b = s.getBytes(StandardCharsets.UTF_8); avroRequest = AvroHttpRequest.newBuilder() .setRequestUrl("http://localhost:8080/reef/evaluators?id=12&id=34&a=b") .setHttpMethod("POST") @@ -209,7 +209,7 @@ public final class TestAvroHttpSerializer { thrown.expect(AvroRuntimeException.class); thrown.expectMessage("Field inputStream type:BYTES pos:5 does not accept null values"); final String s = "test binary stream data"; - final byte[] b = s.getBytes(Charset.forName("UTF-8")); + final byte[] b = s.getBytes(StandardCharsets.UTF_8); avroRequest = AvroHttpRequest.newBuilder() .setRequestUrl("http://localhost:8080/reef/evaluators?id=12&id=34&a=b") @@ -227,7 +227,7 @@ public final class TestAvroHttpSerializer { @Test public void testEmptyString() { final String s = "test binary stream data"; - final byte[] b = s.getBytes(Charset.forName("UTF-8")); + final byte[] b = s.getBytes(StandardCharsets.UTF_8); avroRequest = AvroHttpRequest.newBuilder() .setRequestUrl("http://localhost:8080/reef/evaluators?id=12&id=34&a=b")
