You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by da...@apache.org on 2018/04/20 21:29:49 UTC
hive git commit: HIVE-19251: ObjectStore.getNextNotification with
LIMIT should use less memory (Daniel Dai, reviewed by Thejas Nair,
Vihang Karajgaonkar)
Repository: hive
Updated Branches:
refs/heads/master 35d181100 -> a94f382a0
HIVE-19251: ObjectStore.getNextNotification with LIMIT should use less memory (Daniel Dai, reviewed by Thejas Nair, Vihang Karajgaonkar)
Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/a94f382a
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/a94f382a
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/a94f382a
Branch: refs/heads/master
Commit: a94f382a0f55e72a4ab0bbeabe7bf7bbac5b384d
Parents: 35d1811
Author: Daniel Dai <da...@gmail.com>
Authored: Fri Apr 20 14:29:35 2018 -0700
Committer: Daniel Dai <da...@gmail.com>
Committed: Fri Apr 20 14:29:35 2018 -0700
----------------------------------------------------------------------
.../java/org/apache/hadoop/hive/metastore/ObjectStore.java | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hive/blob/a94f382a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/ObjectStore.java
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/ObjectStore.java b/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/ObjectStore.java
index a7acdcb..d020d8e 100644
--- a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/ObjectStore.java
+++ b/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/ObjectStore.java
@@ -9094,18 +9094,18 @@ public class ObjectStore implements RawStore, Configurable {
try {
openTransaction();
long lastEvent = rqst.getLastEvent();
+ int maxEvents = rqst.getMaxEvents() > 0 ? rqst.getMaxEvents() : Integer.MAX_VALUE;
query = pm.newQuery(MNotificationLog.class, "eventId > lastEvent");
query.declareParameters("java.lang.Long lastEvent");
query.setOrdering("eventId ascending");
+ query.setRange(0, maxEvents);
Collection<MNotificationLog> events = (Collection) query.execute(lastEvent);
commited = commitTransaction();
if (events == null) {
return result;
}
Iterator<MNotificationLog> i = events.iterator();
- int maxEvents = rqst.getMaxEvents() > 0 ? rqst.getMaxEvents() : Integer.MAX_VALUE;
- int numEvents = 0;
- while (i.hasNext() && numEvents++ < maxEvents) {
+ while (i.hasNext()) {
result.addToEvents(translateDbToThrift(i.next()));
}
return result;