You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@asterixdb.apache.org by il...@apache.org on 2015/12/05 01:50:21 UTC

[8/8] incubator-asterixdb-hyracks git commit: Added more type providers for statistics

Added more type providers for statistics


Project: http://git-wip-us.apache.org/repos/asf/incubator-asterixdb-hyracks/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-asterixdb-hyracks/commit/285dd97d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-asterixdb-hyracks/tree/285dd97d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-asterixdb-hyracks/diff/285dd97d

Branch: refs/heads/statistics
Commit: 285dd97d465528086676b58199b5c709f24dc915
Parents: e05a192
Author: Ildar Absalyamov <il...@gmail.com>
Authored: Fri Dec 4 16:49:49 2015 -0800
Committer: Ildar Absalyamov <il...@gmail.com>
Committed: Fri Dec 4 16:49:49 2015 -0800

----------------------------------------------------------------------
 .../storage/am/statistics/wavelet/WaveletSynopsis.java | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-asterixdb-hyracks/blob/285dd97d/hyracks/hyracks-storage-am-statistics/src/main/java/org/apache/hyracks/storage/am/statistics/wavelet/WaveletSynopsis.java
----------------------------------------------------------------------
diff --git a/hyracks/hyracks-storage-am-statistics/src/main/java/org/apache/hyracks/storage/am/statistics/wavelet/WaveletSynopsis.java b/hyracks/hyracks-storage-am-statistics/src/main/java/org/apache/hyracks/storage/am/statistics/wavelet/WaveletSynopsis.java
index 922c82c..410af86 100644
--- a/hyracks/hyracks-storage-am-statistics/src/main/java/org/apache/hyracks/storage/am/statistics/wavelet/WaveletSynopsis.java
+++ b/hyracks/hyracks-storage-am-statistics/src/main/java/org/apache/hyracks/storage/am/statistics/wavelet/WaveletSynopsis.java
@@ -129,13 +129,7 @@ public class WaveletSynopsis extends Synopsis {
 
     @Override
     public IIndexBulkLoader createBuilder() throws HyracksDataException {
-        try {
-            return new SparseTransformBuilder();
-        } catch (HyracksDataException e) {
-            //            deactivate();
-            //            destroy();
-            throw e;
-        }
+        return new SparseTransformBuilder();
     }
 
     public class SparseTransformBuilder implements IIndexBulkLoader {
@@ -148,7 +142,10 @@ public class WaveletSynopsis extends Synopsis {
 
         public SparseTransformBuilder() throws HyracksDataException {
             if (fields.length > 1)
-                throw new HyracksDataException("Only statistics on non-composite fields are allowed");
+                throw new HyracksDataException("Unable to collect statistics on composite keys");
+            if (!fieldTypeTraits[fields[0]].isFixedLength() || fieldTypeTraits[fields[0]].getFixedLength() > 9)
+                throw new HyracksDataException(
+                        "Unable to collect statistics for key field with typeTrait" + fieldTypeTraits[fields[0]]);
             avgStack = new Stack<>();
             //add first dummy average
             // TODO: use object pool