You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by ma...@apache.org on 2015/06/25 10:04:17 UTC
[3/5] incubator-kylin git commit: KYLIN-844 default observer behavior
if no attribute hint found
KYLIN-844 default observer behavior if no attribute hint found
Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/dfe3a50a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/dfe3a50a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/dfe3a50a
Branch: refs/heads/0.8
Commit: dfe3a50abfd9dbae185a6a23f54c04cdd71d4c78
Parents: 2d4aea8
Author: honma <ho...@ebay.com>
Authored: Thu Jun 25 15:50:56 2015 +0800
Committer: honma <ho...@ebay.com>
Committed: Thu Jun 25 15:50:56 2015 +0800
----------------------------------------------------------------------
.../hbase/coprocessor/observer/AggregateRegionObserver.java | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/dfe3a50a/storage/src/main/java/org/apache/kylin/storage/hbase/coprocessor/observer/AggregateRegionObserver.java
----------------------------------------------------------------------
diff --git a/storage/src/main/java/org/apache/kylin/storage/hbase/coprocessor/observer/AggregateRegionObserver.java b/storage/src/main/java/org/apache/kylin/storage/hbase/coprocessor/observer/AggregateRegionObserver.java
index aea2cea..8771bf4 100644
--- a/storage/src/main/java/org/apache/kylin/storage/hbase/coprocessor/observer/AggregateRegionObserver.java
+++ b/storage/src/main/java/org/apache/kylin/storage/hbase/coprocessor/observer/AggregateRegionObserver.java
@@ -48,7 +48,6 @@ public class AggregateRegionObserver extends BaseRegionObserver {
static final String FILTER = "_Filter";
static final String BEHAVIOR = "_Behavior";
-
@Override
public final RegionScanner postScannerOpen(final ObserverContext<RegionCoprocessorEnvironment> ctxt, final Scan scan, final RegionScanner innerScanner) throws IOException {
@@ -85,8 +84,11 @@ public class AggregateRegionObserver extends BaseRegionObserver {
byte[] filterBytes = scan.getAttribute(FILTER);
CoprocessorFilter filter = CoprocessorFilter.deserialize(filterBytes);
+ ObserverBehavior observerBehavior = ObserverBehavior.SCAN_FILTER_AGGR;
byte[] behavior = scan.getAttribute(BEHAVIOR);
- ObserverBehavior observerBehavior = ObserverBehavior.valueOf(new String(behavior));
+ if (behavior != null && behavior.length != 0) {
+ observerBehavior = ObserverBehavior.valueOf(new String(behavior));
+ }
// start/end region operation & sync on scanner is suggested by the
// javadoc of RegionScanner.nextRaw()
@@ -95,7 +97,7 @@ public class AggregateRegionObserver extends BaseRegionObserver {
region.startRegionOperation();
try {
synchronized (innerScanner) {
- return new AggregationScanner(type, filter, projector, aggregators, innerScanner,observerBehavior);
+ return new AggregationScanner(type, filter, projector, aggregators, innerScanner, observerBehavior);
}
} finally {
region.closeRegionOperation();