hadoop git commit: YARN-5101. YARN_APPLICATION_UPDATED event is parsed in ApplicationHistoryManagerOnTimelineStore#convertToApplicationReport with reversed order. Contributed by Sunil G.

2016-10-06 Thread rohithsharmaks
Repository: hadoop
Updated Branches:
  refs/heads/branch-2.8 a4ee4f9e5 -> 319b101b7


YARN-5101. YARN_APPLICATION_UPDATED event is parsed in 
ApplicationHistoryManagerOnTimelineStore#convertToApplicationReport with 
reversed order. Contributed by Sunil G.

(cherry picked from commit 4d2f380d787a6145f45c87ba663079fedbf645b8)


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/319b101b
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/319b101b
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/319b101b

Branch: refs/heads/branch-2.8
Commit: 319b101b7ed8d9e06072f6d0da28906f26e185a2
Parents: a4ee4f9
Author: Rohith Sharma K S 
Authored: Thu Oct 6 18:16:48 2016 +0530
Committer: Rohith Sharma K S 
Committed: Thu Oct 6 20:44:39 2016 +0530

--
 .../ApplicationHistoryManagerOnTimelineStore.java | 14 +++---
 .../TestApplicationHistoryManagerOnTimelineStore.java | 14 +-
 .../yarn/server/resourcemanager/rmapp/RMAppImpl.java  |  2 +-
 3 files changed, 21 insertions(+), 9 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hadoop/blob/319b101b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryManagerOnTimelineStore.java
--
diff --git 
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryManagerOnTimelineStore.java
 
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryManagerOnTimelineStore.java
index 84d4543..feeafdd 100644
--- 
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryManagerOnTimelineStore.java
+++ 
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryManagerOnTimelineStore.java
@@ -351,6 +351,7 @@ public class ApplicationHistoryManagerOnTimelineStore 
extends AbstractService
   }
 }
 List events = entity.getEvents();
+long updatedTimeStamp = 0L;
 if (events != null) {
   for (TimelineEvent event : events) {
 if (event.getEventType().equals(
@@ -358,9 +359,16 @@ public class ApplicationHistoryManagerOnTimelineStore 
extends AbstractService
   createdTime = event.getTimestamp();
 } else if (event.getEventType().equals(
 ApplicationMetricsConstants.UPDATED_EVENT_TYPE)) {
-  // TODO: YARN-5101. This type of events are parsed in
-  // time-stamp descending order which means the previous event
-  // could override the information from the later same type of event.
+  // This type of events are parsed in time-stamp descending order
+  // which means the previous event could override the information
+  // from the later same type of event. Hence compare timestamp
+  // before over writing.
+  if (event.getTimestamp() > updatedTimeStamp) {
+updatedTimeStamp = event.getTimestamp();
+  } else {
+continue;
+  }
+
   Map eventInfo = event.getEventInfo();
   if (eventInfo == null) {
 continue;

http://git-wip-us.apache.org/repos/asf/hadoop/blob/319b101b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/test/java/org/apache/hadoop/yarn/server/applicationhistoryservice/TestApplicationHistoryManagerOnTimelineStore.java
--
diff --git 
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/test/java/org/apache/hadoop/yarn/server/applicationhistoryservice/TestApplicationHistoryManagerOnTimelineStore.java
 
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/test/java/org/apache/hadoop/yarn/server/applicationhistoryservice/TestApplicationHistoryManagerOnTimelineStore.java
index 06f6ae3..a72f73f 100644
--- 
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/test/java/org/apache/hadoop/yarn/server/applicationhistoryservice/TestApplicationHistoryManagerOnTimelineStore.java
+++ 

hadoop git commit: YARN-5101. YARN_APPLICATION_UPDATED event is parsed in ApplicationHistoryManagerOnTimelineStore#convertToApplicationReport with reversed order. Contributed by Sunil G.

2016-10-06 Thread rohithsharmaks
Repository: hadoop
Updated Branches:
  refs/heads/branch-2 caafa980a -> 94a6f6598


YARN-5101. YARN_APPLICATION_UPDATED event is parsed in 
ApplicationHistoryManagerOnTimelineStore#convertToApplicationReport with 
reversed order. Contributed by Sunil G.

(cherry picked from commit 4d2f380d787a6145f45c87ba663079fedbf645b8)


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/94a6f659
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/94a6f659
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/94a6f659

Branch: refs/heads/branch-2
Commit: 94a6f65989b48dc6c409e8bc71492293520f707b
Parents: caafa98
Author: Rohith Sharma K S 
Authored: Thu Oct 6 18:16:48 2016 +0530
Committer: Rohith Sharma K S 
Committed: Thu Oct 6 20:43:47 2016 +0530

--
 .../ApplicationHistoryManagerOnTimelineStore.java | 14 +++---
 .../TestApplicationHistoryManagerOnTimelineStore.java | 14 +-
 .../yarn/server/resourcemanager/rmapp/RMAppImpl.java  |  2 +-
 3 files changed, 21 insertions(+), 9 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hadoop/blob/94a6f659/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryManagerOnTimelineStore.java
--
diff --git 
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryManagerOnTimelineStore.java
 
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryManagerOnTimelineStore.java
index 84d4543..feeafdd 100644
--- 
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryManagerOnTimelineStore.java
+++ 
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/main/java/org/apache/hadoop/yarn/server/applicationhistoryservice/ApplicationHistoryManagerOnTimelineStore.java
@@ -351,6 +351,7 @@ public class ApplicationHistoryManagerOnTimelineStore 
extends AbstractService
   }
 }
 List events = entity.getEvents();
+long updatedTimeStamp = 0L;
 if (events != null) {
   for (TimelineEvent event : events) {
 if (event.getEventType().equals(
@@ -358,9 +359,16 @@ public class ApplicationHistoryManagerOnTimelineStore 
extends AbstractService
   createdTime = event.getTimestamp();
 } else if (event.getEventType().equals(
 ApplicationMetricsConstants.UPDATED_EVENT_TYPE)) {
-  // TODO: YARN-5101. This type of events are parsed in
-  // time-stamp descending order which means the previous event
-  // could override the information from the later same type of event.
+  // This type of events are parsed in time-stamp descending order
+  // which means the previous event could override the information
+  // from the later same type of event. Hence compare timestamp
+  // before over writing.
+  if (event.getTimestamp() > updatedTimeStamp) {
+updatedTimeStamp = event.getTimestamp();
+  } else {
+continue;
+  }
+
   Map eventInfo = event.getEventInfo();
   if (eventInfo == null) {
 continue;

http://git-wip-us.apache.org/repos/asf/hadoop/blob/94a6f659/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/test/java/org/apache/hadoop/yarn/server/applicationhistoryservice/TestApplicationHistoryManagerOnTimelineStore.java
--
diff --git 
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/test/java/org/apache/hadoop/yarn/server/applicationhistoryservice/TestApplicationHistoryManagerOnTimelineStore.java
 
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/test/java/org/apache/hadoop/yarn/server/applicationhistoryservice/TestApplicationHistoryManagerOnTimelineStore.java
index b65b22b..dd1a453 100644
--- 
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice/src/test/java/org/apache/hadoop/yarn/server/applicationhistoryservice/TestApplicationHistoryManagerOnTimelineStore.java
+++