You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by li...@apache.org on 2017/12/21 02:59:01 UTC

[16/16] kylin git commit: KYLIN-3082 move close() call to finally block

KYLIN-3082 move close() call to finally block


Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/2309618b
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/2309618b
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/2309618b

Branch: refs/heads/master
Commit: 2309618b98561531ed31f9faf175efc5269aa172
Parents: b55f496
Author: lidongsjtu <li...@apache.org>
Authored: Thu Dec 21 00:02:08 2017 +0800
Committer: lidongsjtu <li...@apache.org>
Committed: Thu Dec 21 00:02:08 2017 +0800

----------------------------------------------------------------------
 .../kylin/cube/inmemcubing/InMemCubeBuilder.java   | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/2309618b/core-cube/src/main/java/org/apache/kylin/cube/inmemcubing/InMemCubeBuilder.java
----------------------------------------------------------------------
diff --git a/core-cube/src/main/java/org/apache/kylin/cube/inmemcubing/InMemCubeBuilder.java b/core-cube/src/main/java/org/apache/kylin/cube/inmemcubing/InMemCubeBuilder.java
index 3a4cf4c..db3eb5d 100644
--- a/core-cube/src/main/java/org/apache/kylin/cube/inmemcubing/InMemCubeBuilder.java
+++ b/core-cube/src/main/java/org/apache/kylin/cube/inmemcubing/InMemCubeBuilder.java
@@ -344,15 +344,18 @@ public class InMemCubeBuilder extends AbstractInMemCubeBuilder {
         aggregationScanner.trackMemoryLevel(baseCuboidMemTracker);
 
         int count = 0;
-        for (GTRecord r : aggregationScanner) {
-            if (count == 0) {
-                baseCuboidMemTracker.markHigh();
+        try {
+            for (GTRecord r : aggregationScanner) {
+                if (count == 0) {
+                    baseCuboidMemTracker.markHigh();
+                }
+                baseBuilder.write(r);
+                count++;
             }
-            baseBuilder.write(r);
-            count++;
+        } finally {
+            aggregationScanner.close();
+            baseBuilder.close();
         }
-        aggregationScanner.close();
-        baseBuilder.close();
 
         long timeSpent = System.currentTimeMillis() - startTime;
         logger.info("Cuboid " + baseCuboidId + " has " + count + " rows, build takes " + timeSpent + "ms");