Repository: oozie Updated Branches: refs/heads/master edfa86927 -> d4ea14f85
OOZIE-2447 Illegal character 0x0 oozie client Project: http://git-wip-us.apache.org/repos/asf/oozie/repo Commit: http://git-wip-us.apache.org/repos/asf/oozie/commit/d4ea14f8 Tree: http://git-wip-us.apache.org/repos/asf/oozie/tree/d4ea14f8 Diff: http://git-wip-us.apache.org/repos/asf/oozie/diff/d4ea14f8 Branch: refs/heads/master Commit: d4ea14f85322152f66a2d57311ad9ec3a8402eba Parents: edfa869 Author: Purshotam Shah <[email protected]> Authored: Thu Jun 2 14:12:56 2016 -0700 Committer: Purshotam Shah <[email protected]> Committed: Thu Jun 2 14:12:56 2016 -0700 ---------------------------------------------------------------------- .../java/org/apache/oozie/client/AuthOozieClient.java | 12 +++++++++++- release-log.txt | 1 + 2 files changed, 12 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/oozie/blob/d4ea14f8/client/src/main/java/org/apache/oozie/client/AuthOozieClient.java ---------------------------------------------------------------------- diff --git a/client/src/main/java/org/apache/oozie/client/AuthOozieClient.java b/client/src/main/java/org/apache/oozie/client/AuthOozieClient.java index a840dac..45f856e 100644 --- a/client/src/main/java/org/apache/oozie/client/AuthOozieClient.java +++ b/client/src/main/java/org/apache/oozie/client/AuthOozieClient.java @@ -24,8 +24,11 @@ import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.io.Writer; +import java.lang.management.ManagementFactory; import java.net.HttpURLConnection; import java.net.URL; +import java.nio.file.Files; +import java.nio.file.StandardCopyOption; import java.util.HashMap; import java.util.Map; @@ -237,9 +240,15 @@ public class AuthOozieClient extends XOozieClient { */ protected void writeAuthToken(AuthenticatedURL.Token authToken) { try { - Writer writer = new FileWriter(AUTH_TOKEN_CACHE_FILE); + String jvmName = ManagementFactory.getRuntimeMXBean().getName(); + File tmpTokenFile = File.createTempFile(".oozie-auth-token", jvmName + "tmp", + new File(System.getProperty("user.home"))); + // just to be safe, if something goes wrong delete tmp file eventually + tmpTokenFile.deleteOnExit(); + Writer writer = new FileWriter(tmpTokenFile); writer.write(authToken.toString()); writer.close(); + Files.move(tmpTokenFile.toPath(), AUTH_TOKEN_CACHE_FILE.toPath(), StandardCopyOption.ATOMIC_MOVE); // sets read-write permissions to owner only AUTH_TOKEN_CACHE_FILE.setReadable(false, false); AUTH_TOKEN_CACHE_FILE.setReadable(true, true); @@ -250,6 +259,7 @@ public class AuthOozieClient extends XOozieClient { // write permissions are not properly set a security exception // is thrown and the file will be deleted. AUTH_TOKEN_CACHE_FILE.delete(); + } } http://git-wip-us.apache.org/repos/asf/oozie/blob/d4ea14f8/release-log.txt ---------------------------------------------------------------------- diff --git a/release-log.txt b/release-log.txt index 6ff73d3..74ffe57 100644 --- a/release-log.txt +++ b/release-log.txt @@ -1,5 +1,6 @@ -- Oozie 4.3.0 release (trunk - unreleased) +OOZIE-2447 Illegal character 0x0 oozie client (satishsaley via puru) OOZIE-2548 Flaky test TestZKLocksService.testLockReaper (pbacsko via puru) OOZIE-2546 Improperly closed resources in OozieDBCLI (pbacsko via rkanter) OOZIE-2476 When one of the action from fork fails with transient error, WF never joins (puru)
