[ 
https://issues.apache.org/jira/browse/MAPREDUCE-6542?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15345832#comment-15345832
 ] 

Akira AJISAKA commented on MAPREDUCE-6542:
------------------------------------------

Thank you for updating the patch.
{noformat}
$ dev-support/bin/smart-apply-patch MAPREDUCE-6542
$ git diff origin/trunk 
hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/util/TestStringUtils.java
 | cat
diff --git 
a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/util/TestStringUtils.java
 
b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/util/TestStringUtils.java
index 1f474f8..32c10d0 100644
--- 
a/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/util/TestStringUtils.java
+++ 
b/hadoop-common-project/hadoop-common/src/test/java/org/apache/hadoop/util/TestStringUtils.java
@@ -58,7 +58,7 @@
     "\\,A\\\\\\,\\,B\\\\\\\\\\,";
 
   final private static FastDateFormat FAST_DATE_FORMAT =
-      FastDateFormat.getInstance("d-MMM-yyyy HH:mm:ss");
+    FastDateFormat.getInstance("d-MMM-yyyy HH:mm:ss");
   
   @Test (timeout = 30000)
   public void testEscapeString() throws Exception {
@@ -462,11 +462,11 @@ public void run() {
           final long end = System.currentTimeMillis();
           final long start = end - 30000;
           String formattedTime1 = StringUtils.getFormattedTimeWithDiff(
-              FAST_DATE_FORMAT, start, end);
+            FAST_DATE_FORMAT, start, end);
           String formattedTime2 = StringUtils.getFormattedTimeWithDiff(
-              FAST_DATE_FORMAT, start, end);
+            FAST_DATE_FORMAT, start, end);
           assertTrue("Method returned inconsistent results indicative of"
-              + " a race condition", formattedTime1.equals(formattedTime2));
+            + " a race condition", formattedTime1.equals(formattedTime2));
 
         }
       });
@@ -476,6 +476,7 @@ public void run() {
     executorService.awaitTermination(50, TimeUnit.SECONDS);
   }
 
+
   // Benchmark for StringUtils split
   public static void main(String []args) {
     final String TO_SPLIT = "foo,bar,baz,blah,blah";
{noformat}
Would you clean up the diff between branch-2.8 and trunk/branch-2? I want to 
make the diff as small as possible for easier backport after this issue.

> HistoryViewer uses SimpleDateFormat, but SimpleDateFormat is not threadsafe
> ---------------------------------------------------------------------------
>
>                 Key: MAPREDUCE-6542
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-6542
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>          Components: jobhistoryserver
>    Affects Versions: 2.2.0, 2.7.1
>         Environment: CentOS6.5 Hadoop  
>            Reporter: zhangyubiao
>            Assignee: zhangyubiao
>             Fix For: 2.9.0
>
>         Attachments: MAPREDUCE-6542-branch-2.8-v1.patch, 
> MAPREDUCE-6542-branch-2.8.patch, MAPREDUCE-6542-v10.patch, 
> MAPREDUCE-6542-v11.patch, MAPREDUCE-6542-v12.patch, MAPREDUCE-6542-v13.patch, 
> MAPREDUCE-6542-v14.patch, MAPREDUCE-6542-v15.patch, MAPREDUCE-6542-v16.patch, 
> MAPREDUCE-6542-v2.patch, MAPREDUCE-6542-v3.patch, MAPREDUCE-6542-v4.patch, 
> MAPREDUCE-6542-v5.patch, MAPREDUCE-6542-v6.patch, MAPREDUCE-6542-v7.patch, 
> MAPREDUCE-6542-v8.patch, MAPREDUCE-6542-v9.patch, MAPREDUCE-6542.patch
>
>
> I use SimpleDateFormat to Parse the JobHistory File before 
> {code}
> private static final SimpleDateFormat dateFormat =
>     new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
>  public static String getJobDetail(JobInfo job) {
>         StringBuffer jobDetails = new StringBuffer("");
>         SummarizedJob ts = new SummarizedJob(job);
>         jobDetails.append(job.getJobId().toString().trim()).append("\t");
>         jobDetails.append(job.getUsername()).append("\t");
>         jobDetails.append(job.getJobname().replaceAll("\\n", 
> "")).append("\t");
>         jobDetails.append(job.getJobQueueName()).append("\t");
>         jobDetails.append(job.getPriority()).append("\t");
>         jobDetails.append(job.getJobConfPath()).append("\t");
>         jobDetails.append(job.getUberized()).append("\t");
>         
> jobDetails.append(dateFormat.format(job.getSubmitTime())).append("\t");
>         
> jobDetails.append(dateFormat.format(job.getLaunchTime())).append("\t");
>         
> jobDetails.append(dateFormat.format(job.getFinishTime())).append("\t");
>        return jobDetails.toString();
> }
> {code}
> But I find I query the SubmitTime and LaunchTime in hive and compare 
> JobHistory File time , I find that the submitTime  and launchTime was wrong.
> Finally,I change to use the FastDateFormat to parse the time format and the 
> time become right



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to