You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tajo.apache.org by jh...@apache.org on 2014/10/15 11:17:20 UTC

[50/50] [abbrv] git commit: Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/tajo into block_iteration

Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/tajo into block_iteration

Conflicts:
	tajo-common/src/main/java/org/apache/tajo/conf/TajoConf.java
	tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java
	tajo-core/src/main/java/org/apache/tajo/engine/planner/PlannerUtil.java
	tajo-core/src/main/java/org/apache/tajo/master/GlobalEngine.java
	tajo-core/src/test/java/org/apache/tajo/engine/planner/TestPreLogicalPlanVerifier.java
	tajo-core/src/test/resources/results/TestTajoCli/testHelpSessionVars.result
	tajo-storage/src/main/java/org/apache/tajo/storage/TupleComparator.java


Project: http://git-wip-us.apache.org/repos/asf/tajo/repo
Commit: http://git-wip-us.apache.org/repos/asf/tajo/commit/5eb7ee1f
Tree: http://git-wip-us.apache.org/repos/asf/tajo/tree/5eb7ee1f
Diff: http://git-wip-us.apache.org/repos/asf/tajo/diff/5eb7ee1f

Branch: refs/heads/block_iteration
Commit: 5eb7ee1fdb2957f0cbd154c6f7f62abde1342633
Parents: 1aca240 8bc4582
Author: jhkim <jh...@apache.org>
Authored: Wed Oct 15 18:09:47 2014 +0900
Committer: jhkim <jh...@apache.org>
Committed: Wed Oct 15 18:09:47 2014 +0900

----------------------------------------------------------------------
 CHANGES                                         |  69 ++-
 pom.xml                                         |  24 +-
 tajo-algebra/pom.xml                            |   7 +-
 tajo-catalog/pom.xml                            |   8 +-
 tajo-catalog/tajo-catalog-client/pom.xml        |   6 +-
 tajo-catalog/tajo-catalog-common/pom.xml        |   6 +-
 .../org/apache/tajo/catalog/AlterTableDesc.java |  14 +-
 .../apache/tajo/catalog/CatalogConstants.java   |   2 +
 .../java/org/apache/tajo/catalog/IndexDesc.java |   7 +-
 .../java/org/apache/tajo/catalog/TableDesc.java |   7 +-
 .../catalog/partition/PartitionMethodDesc.java  |   8 -
 .../tajo/catalog/statistics/ColumnStats.java    |   8 +-
 tajo-catalog/tajo-catalog-drivers/pom.xml       |   6 +-
 .../tajo-catalog-drivers/tajo-hcatalog/pom.xml  |   2 +-
 tajo-catalog/tajo-catalog-server/pom.xml        |   8 +-
 tajo-client/pom.xml                             |   7 +-
 .../tajo/cli/DefaultTajoCliOutputFormatter.java |  34 +-
 .../org/apache/tajo/cli/DescTableCommand.java   |   6 +-
 .../main/java/org/apache/tajo/cli/TajoCli.java  | 107 +++--
 .../java/org/apache/tajo/client/TajoAdmin.java  |  40 +-
 .../java/org/apache/tajo/client/TajoClient.java |   5 +-
 .../apache/tajo/jdbc/TajoResultSetMetaData.java |   8 +-
 tajo-common/pom.xml                             |   8 +-
 .../main/java/org/apache/tajo/SessionVars.java  |   2 +
 .../apache/tajo/common/type/TajoTypeUtil.java   | 183 +++++++
 .../java/org/apache/tajo/conf/TajoConf.java     |   4 +-
 .../tajo/util/datetime/DateTimeFormat.java      | 182 ++++---
 tajo-core/pom.xml                               |   5 +-
 .../eval/AggregationFunctionCallEval.java       |  38 +-
 .../tajo/engine/eval/SimpleEvalNodeVisitor.java |   3 +
 .../optimizer/eval/EvalTreeOptimizer.java       |   2 +
 .../engine/planner/LogicalPlanPreprocessor.java |  69 +--
 .../engine/planner/LogicalPlanVerifier.java     |  14 +
 .../engine/planner/PhysicalPlannerImpl.java     |  57 ++-
 .../apache/tajo/engine/planner/PlannerUtil.java |   9 +-
 .../tajo/engine/planner/TypeDeterminant.java    |  17 +
 .../tajo/engine/planner/enforce/Enforcer.java   |  13 +
 .../engine/planner/global/GlobalPlanner.java    |  58 +--
 .../global/builder/DistinctGroupbyBuilder.java  | 329 ++++++++++++-
 .../planner/logical/DistinctGroupbyNode.java    |  52 +-
 .../engine/planner/logical/EvalExprNode.java    |   2 +
 .../logical/PartitionedTableScanNode.java       |   4 +
 .../tajo/engine/planner/logical/ScanNode.java   |  30 +-
 .../DistinctGroupbyFirstAggregationExec.java    | 476 +++++++++++++++++++
 .../DistinctGroupbySecondAggregationExec.java   | 295 ++++++++++++
 .../DistinctGroupbyThirdAggregationExec.java    | 304 ++++++++++++
 .../org/apache/tajo/master/GlobalEngine.java    |  15 +-
 .../java/org/apache/tajo/master/TajoMaster.java |  16 +-
 .../apache/tajo/master/querymaster/Query.java   | 137 +++++-
 .../tajo/master/querymaster/QueryUnit.java      |  12 +-
 .../tajo/master/querymaster/Repartitioner.java  |  79 ++-
 .../tajo/master/querymaster/SubQuery.java       |  48 +-
 .../org/apache/tajo/util/JvmPauseMonitor.java   | 221 +++++++++
 .../java/org/apache/tajo/worker/FetchImpl.java  |  16 +-
 .../java/org/apache/tajo/worker/TajoWorker.java |  16 +-
 .../src/main/proto/TajoWorkerProtocol.proto     |   8 +
 .../java/org/apache/tajo/QueryTestCaseBase.java |  91 +++-
 .../planner/TestPreLogicalPlanVerifier.java     |  74 ---
 .../engine/planner/TestQueryValidation.java     |  52 ++
 .../tajo/engine/query/TestGroupByQuery.java     |  60 ++-
 .../tajo/engine/query/TestJoinBroadcast.java    | 195 ++++++++
 .../tajo/engine/query/TestTablePartitions.java  |  53 ++-
 .../tajo/jdbc/TestTajoDatabaseMetaData.java     | 111 ++++-
 .../apache/tajo/master/TestRepartitioner.java   |  85 ++++
 .../org/apache/tajo/worker/TestHistory.java     |   9 +-
 .../testDistinctAggregation8.sql                |   9 +
 .../testDistinctAggregation_case10.sql          |   5 +
 .../testDistinctAggregation_case9.sql           |  11 +
 ...tMultipleBroadcastDataFileWithZeroLength.sql |   3 +
 ...MultipleBroadcastDataFileWithZeroLength2.sql |   5 +
 ...rtitionedBroadcastDataFileWithZeroLength.sql |   3 +
 ...titionedBroadcastDataFileWithZeroLength2.sql |   5 +
 .../TestQueryValidation/error_groupby_1.sql     |   1 +
 .../TestQueryValidation/error_groupby_2.sql     |   1 +
 .../TestQueryValidation/invalid_casewhen_1.sql  |  15 +
 .../TestQueryValidation/invalid_limit_1.sql     |   1 +
 .../TestQueryValidation/valid_groupby_1.sql     |   1 +
 .../TestQueryValidation/valid_limit_1.sql       |   1 +
 .../testDistinctAggregation8.result             |   7 +
 .../testDistinctAggregation_case10.result       |   3 +
 .../testDistinctAggregation_case9.result        |   6 +
 ...castMultiColumnPartitionTableInFilter.result |   0
 ...ltipleBroadcastDataFileWithZeroLength.result |   2 +
 ...tipleBroadcastDataFileWithZeroLength2.result | 399 ++++++++++++++++
 ...tionedBroadcastDataFileWithZeroLength.result | 102 ++++
 ...ionedBroadcastDataFileWithZeroLength2.result | 399 ++++++++++++++++
 .../TestTajoCli/testHelpSessionVars.result      |   1 +
 tajo-dist/pom.xml                               |  12 +-
 tajo-dist/src/main/bin/tajo                     |   2 +-
 tajo-docs/src/main/sphinx/cli.rst               | 159 -------
 .../configuration/catalog_configuration.rst     |  33 ++
 .../sphinx/configuration/ha_configuration.rst   |  19 +-
 .../functions/datetime_func_and_operators.rst   | 409 +++++++++++++++-
 .../getting_started/downloading_source.rst      |  17 +-
 .../main/sphinx/getting_started/local_setup.rst |   6 +
 tajo-docs/src/main/sphinx/index.rst             |   2 +-
 .../src/main/sphinx/sql_language/data_model.rst |   8 +-
 .../src/main/sphinx/sql_language/queries.rst    | 232 ++++++++-
 tajo-docs/src/main/sphinx/tsql.rst              |  19 +
 .../src/main/sphinx/tsql/admin_command.rst      |  60 +++
 .../src/main/sphinx/tsql/background_command.rst |  29 ++
 tajo-docs/src/main/sphinx/tsql/dfs_command.rst  |  26 +
 tajo-docs/src/main/sphinx/tsql/execute_file.rst |  63 +++
 tajo-docs/src/main/sphinx/tsql/intro.rst        |  41 ++
 tajo-docs/src/main/sphinx/tsql/meta_command.rst | 150 ++++++
 .../src/main/sphinx/tsql/single_command.rst     |  24 +
 tajo-docs/src/main/sphinx/tsql/variables.rst    |  66 +++
 tajo-jdbc/pom.xml                               |   5 +-
 .../apache/tajo/jdbc/TajoDatabaseMetaData.java  | 101 +++-
 tajo-maven-plugins/pom.xml                      |   6 +-
 tajo-project/pom.xml                            |  34 +-
 tajo-rpc/pom.xml                                |   7 +-
 tajo-storage/pom.xml                            |   8 +-
 .../tajo/storage/AbstractStorageManager.java    |   2 +-
 .../org/apache/tajo/storage/MergeScanner.java   |  18 +-
 .../java/org/apache/tajo/storage/RawFile.java   |  12 +-
 .../org/apache/tajo/storage/TestStorages.java   |  96 +++-
 tajo-thirdparty/asm/pom.xml                     |   8 +-
 tajo-yarn-pullserver/pom.xml                    |   6 +-
 119 files changed, 5725 insertions(+), 778 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/CHANGES
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-common/src/main/java/org/apache/tajo/SessionVars.java
----------------------------------------------------------------------
diff --cc tajo-common/src/main/java/org/apache/tajo/SessionVars.java
index b34bad3,1229849..4562fdc
--- a/tajo-common/src/main/java/org/apache/tajo/SessionVars.java
+++ b/tajo-common/src/main/java/org/apache/tajo/SessionVars.java
@@@ -98,9 -98,9 +98,11 @@@ public enum SessionVars implements Conf
    TABLE_PARTITION_PER_SHUFFLE_SIZE(ConfVars.$DIST_QUERY_TABLE_PARTITION_VOLUME,
        "shuffle output size for partition table write (mb)", DEFAULT),
  
+   GROUPBY_MULTI_LEVEL_ENABLED(ConfVars.$GROUPBY_MULTI_LEVEL_ENABLED, "Multiple level groupby enabled", DEFAULT),
+ 
    // for physical Executors
 +  EXECUTION_ENGINE(ConfVars.$EXECUTION_ENGINE,
 +      "executor engine types that queries will use. Types: volcano and block (default is volcano)", DEFAULT),
    EXTSORT_BUFFER_SIZE(ConfVars.$EXECUTOR_EXTERNAL_SORT_BUFFER_SIZE, "sort buffer size for external sort (mb)", DEFAULT),
    HASH_JOIN_SIZE_LIMIT(ConfVars.$EXECUTOR_HASH_JOIN_SIZE_THRESHOLD, "limited size for hash join (mb)", DEFAULT),
    INNER_HASH_JOIN_SIZE_LIMIT(ConfVars.$EXECUTOR_INNER_HASH_JOIN_SIZE_THRESHOLD,

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-common/src/main/java/org/apache/tajo/conf/TajoConf.java
----------------------------------------------------------------------
diff --cc tajo-common/src/main/java/org/apache/tajo/conf/TajoConf.java
index f821a33,66d3030..521406e
--- a/tajo-common/src/main/java/org/apache/tajo/conf/TajoConf.java
+++ b/tajo-common/src/main/java/org/apache/tajo/conf/TajoConf.java
@@@ -316,9 -316,8 +316,11 @@@ public class TajoConf extends Configura
      $DIST_QUERY_GROUPBY_PARTITION_VOLUME("tajo.dist-query.groupby.partition-volume-mb", 256),
      $DIST_QUERY_TABLE_PARTITION_VOLUME("tajo.dist-query.table-partition.task-volume-mb", 256),
  
+     $GROUPBY_MULTI_LEVEL_ENABLED("tajo.dist-query.groupby.multi-level-aggr", true),
+ 
 +    // execution engine
 +    $EXECUTION_ENGINE("tajo.executor.engine", "volcano"), // volcano, and block
 +
      // for physical Executors
      $EXECUTOR_EXTERNAL_SORT_BUFFER_SIZE("tajo.executor.external-sort.buffer-mb", 200L),
      $EXECUTOR_HASH_JOIN_SIZE_THRESHOLD("tajo.executor.join.common.in-memory-hash-threshold-bytes",

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-core/pom.xml
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-core/src/main/java/org/apache/tajo/engine/planner/LogicalPlanPreprocessor.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java
----------------------------------------------------------------------
diff --cc tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java
index 9be29de,6b1c65c..07400f4
--- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java
+++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/PhysicalPlannerImpl.java
@@@ -43,10 -43,11 +43,11 @@@ import org.apache.tajo.exception.Intern
  import org.apache.tajo.ipc.TajoWorkerProtocol;
  import org.apache.tajo.ipc.TajoWorkerProtocol.DistinctGroupbyEnforcer;
  import org.apache.tajo.ipc.TajoWorkerProtocol.DistinctGroupbyEnforcer.DistinctAggregationAlgorithm;
+ import org.apache.tajo.ipc.TajoWorkerProtocol.DistinctGroupbyEnforcer.MultipleAggregationStage;
  import org.apache.tajo.ipc.TajoWorkerProtocol.DistinctGroupbyEnforcer.SortSpecArray;
  import org.apache.tajo.storage.AbstractStorageManager;
 +import org.apache.tajo.storage.BaseTupleComparator;
  import org.apache.tajo.storage.StorageConstants;
 -import org.apache.tajo.storage.TupleComparator;
  import org.apache.tajo.storage.fragment.FileFragment;
  import org.apache.tajo.storage.fragment.FragmentConvertor;
  import org.apache.tajo.util.FileUtil;

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-core/src/main/java/org/apache/tajo/engine/planner/PlannerUtil.java
----------------------------------------------------------------------
diff --cc tajo-core/src/main/java/org/apache/tajo/engine/planner/PlannerUtil.java
index 29d6602,827be83..02fd9d1
--- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/PlannerUtil.java
+++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/PlannerUtil.java
@@@ -26,10 -26,10 +26,7 @@@ import org.apache.hadoop.fs.FileSystem
  import org.apache.hadoop.fs.Path;
  import org.apache.tajo.algebra.*;
  import org.apache.tajo.annotation.Nullable;
--import org.apache.tajo.catalog.Column;
--import org.apache.tajo.catalog.Schema;
--import org.apache.tajo.catalog.SortSpec;
--import org.apache.tajo.catalog.TableDesc;
++import org.apache.tajo.catalog.*;
  import org.apache.tajo.catalog.proto.CatalogProtos;
  import org.apache.tajo.catalog.proto.CatalogProtos.FragmentProto;
  import org.apache.tajo.common.TajoDataTypes.DataType;
@@@ -37,8 -37,9 +34,8 @@@ import org.apache.tajo.conf.TajoConf
  import org.apache.tajo.engine.eval.*;
  import org.apache.tajo.engine.exception.InvalidQueryException;
  import org.apache.tajo.engine.planner.logical.*;
- import org.apache.tajo.catalog.SchemaUtil;
 -import org.apache.tajo.engine.utils.SchemaUtil;
 +import org.apache.tajo.storage.BaseTupleComparator;
+ import org.apache.tajo.storage.StorageManager;
 -import org.apache.tajo.storage.TupleComparator;
  import org.apache.tajo.storage.fragment.FileFragment;
  import org.apache.tajo.storage.fragment.FragmentConvertor;
  import org.apache.tajo.util.TUtil;

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/GlobalPlanner.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-core/src/main/java/org/apache/tajo/engine/planner/logical/ScanNode.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-core/src/main/java/org/apache/tajo/master/GlobalEngine.java
----------------------------------------------------------------------
diff --cc tajo-core/src/main/java/org/apache/tajo/master/GlobalEngine.java
index 6dcbfd2,342f8d7..993e5dd
--- a/tajo-core/src/main/java/org/apache/tajo/master/GlobalEngine.java
+++ b/tajo-core/src/main/java/org/apache/tajo/master/GlobalEngine.java
@@@ -28,7 -28,7 +28,10 @@@ import org.apache.hadoop.fs.FileSystem
  import org.apache.hadoop.fs.Path;
  import org.apache.hadoop.service.AbstractService;
  import org.apache.hadoop.util.StringUtils;
--import org.apache.tajo.*;
++import org.apache.tajo.QueryId;
++import org.apache.tajo.QueryIdFactory;
++import org.apache.tajo.SessionVars;
++import org.apache.tajo.TajoConstants;
  import org.apache.tajo.algebra.AlterTablespaceSetType;
  import org.apache.tajo.algebra.Expr;
  import org.apache.tajo.algebra.JsonHelper;
@@@ -37,8 -37,9 +40,8 @@@ import org.apache.tajo.catalog.*
  import org.apache.tajo.catalog.exception.*;
  import org.apache.tajo.catalog.partition.PartitionMethodDesc;
  import org.apache.tajo.catalog.proto.CatalogProtos;
--import org.apache.tajo.catalog.proto.CatalogProtos.FragmentProto;
  import org.apache.tajo.catalog.statistics.TableStats;
+ import org.apache.tajo.client.TajoClient;
  import org.apache.tajo.common.TajoDataTypes;
  import org.apache.tajo.conf.TajoConf;
  import org.apache.tajo.datum.DatumFactory;
@@@ -49,7 -50,7 +52,6 @@@ import org.apache.tajo.engine.parser.SQ
  import org.apache.tajo.engine.planner.*;
  import org.apache.tajo.engine.planner.logical.*;
  import org.apache.tajo.engine.planner.physical.EvalExprExec;
--import org.apache.tajo.engine.planner.physical.SeqScanExec;
  import org.apache.tajo.engine.planner.physical.StoreTableExec;
  import org.apache.tajo.engine.query.QueryContext;
  import org.apache.tajo.ipc.ClientProtos;
@@@ -70,8 -71,8 +72,8 @@@ import java.util.List
  
  import static org.apache.tajo.TajoConstants.DEFAULT_TABLESPACE_NAME;
  import static org.apache.tajo.catalog.proto.CatalogProtos.AlterTablespaceProto;
--import static org.apache.tajo.ipc.ClientProtos.SubmitQueryResponse;
  import static org.apache.tajo.ipc.ClientProtos.SerializedResultSet;
++import static org.apache.tajo.ipc.ClientProtos.SubmitQueryResponse;
  
  public class GlobalEngine extends AbstractService {
    /** Class Logger */

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-core/src/test/java/org/apache/tajo/QueryTestCaseBase.java
----------------------------------------------------------------------
diff --cc tajo-core/src/test/java/org/apache/tajo/QueryTestCaseBase.java
index 8cd1bff,7b89587..79c2a9b
--- a/tajo-core/src/test/java/org/apache/tajo/QueryTestCaseBase.java
+++ b/tajo-core/src/test/java/org/apache/tajo/QueryTestCaseBase.java
@@@ -145,6 -152,13 +152,13 @@@ public class QueryTestCaseBase 
      queryBasePath = new Path(queryBaseURL.toString());
      URL resultBaseURL = ClassLoader.getSystemResource("results");
      resultBasePath = new Path(resultBaseURL.toString());
+ 
+     GlobalEngine engine = testingCluster.getMaster().getContext().getGlobalEngine();
 -    sqlParser = engine.getAnalyzer();
++    sqlParser = engine.getSQLAnalyzer();
+     verifier = engine.getPreLogicalPlanVerifier();
+     planner = engine.getLogicalPlanner();
+     optimizer = engine.getLogicalOptimizer();
+     postVerifier = engine.getLogicalPlanVerifier();
    }
  
    /** It transiently contains created tables for the running test class. */

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-core/src/test/resources/results/TestTajoCli/testHelpSessionVars.result
----------------------------------------------------------------------
diff --cc tajo-core/src/test/resources/results/TestTajoCli/testHelpSessionVars.result
index 84c215c,25f1ae7..c70c8b7
--- a/tajo-core/src/test/resources/results/TestTajoCli/testHelpSessionVars.result
+++ b/tajo-core/src/test/resources/results/TestTajoCli/testHelpSessionVars.result
@@@ -25,7 -25,7 +25,8 @@@ Available Session Variables
  \set JOIN_PER_SHUFFLE_SIZE [int value] - shuffle output size for join (mb)
  \set GROUPBY_PER_SHUFFLE_SIZE [int value] - shuffle output size for sort (mb)
  \set TABLE_PARTITION_PER_SHUFFLE_SIZE [int value] - shuffle output size for partition table write (mb)
+ \set GROUPBY_MULTI_LEVEL_ENABLED [true or false] - Multiple level groupby enabled
 +\set EXECUTION_ENGINE [text value] - executor engine types that queries will use. Types: volcano and block (default is volcano)
  \set EXTSORT_BUFFER_SIZE [long value] - sort buffer size for external sort (mb)
  \set HASH_JOIN_SIZE_LIMIT [long value] - limited size for hash join (mb)
  \set INNER_HASH_JOIN_SIZE_LIMIT [long value] - limited size for hash inner join (mb)

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-dist/pom.xml
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-project/pom.xml
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-storage/src/main/java/org/apache/tajo/storage/MergeScanner.java
----------------------------------------------------------------------
diff --cc tajo-storage/src/main/java/org/apache/tajo/storage/MergeScanner.java
index 9fdc483,637df2c..c0a0aa4
--- a/tajo-storage/src/main/java/org/apache/tajo/storage/MergeScanner.java
+++ b/tajo-storage/src/main/java/org/apache/tajo/storage/MergeScanner.java
@@@ -26,11 -26,10 +26,12 @@@ import org.apache.tajo.catalog.TableMet
  import org.apache.tajo.catalog.statistics.ColumnStats;
  import org.apache.tajo.catalog.statistics.TableStats;
  import org.apache.tajo.conf.TajoConf;
 +import org.apache.tajo.exception.UnimplementedException;
  import org.apache.tajo.storage.fragment.FileFragment;
 +import org.apache.tajo.tuple.offheap.OffHeapRowBlock;
  
  import java.io.IOException;
+ import java.util.ArrayList;
  import java.util.Iterator;
  import java.util.List;
  

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-storage/src/main/java/org/apache/tajo/storage/RawFile.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/tajo/blob/5eb7ee1f/tajo-thirdparty/asm/pom.xml
----------------------------------------------------------------------