diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java index 4af98e5..cab0fc8 100644 --- ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java +++ ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java @@ -183,7 +183,7 @@ protected void initializeOp(Configuration hconf) throws HiveException { @SuppressWarnings("unchecked") @Override - protected final void completeInitializationOp(Object[] os) throws HiveException { + protected void completeInitializationOp(Object[] os) throws HiveException { if (os.length != 0) { Pair pair = (Pair) os[0]; diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/mapjoin/VectorMapJoinCommonOperator.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/mapjoin/VectorMapJoinCommonOperator.java index 1667bf7..1d5a9de 100644 --- ql/src/java/org/apache/hadoop/hive/ql/exec/vector/mapjoin/VectorMapJoinCommonOperator.java +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/mapjoin/VectorMapJoinCommonOperator.java @@ -614,46 +614,34 @@ protected void initializeOp(Configuration hconf) throws HiveException { } @Override - protected Pair loadHashTable( - ExecMapperContext mapContext, MapredContext mrContext) throws HiveException { - - Pair pair; + protected void completeInitializationOp(Object[] os) throws HiveException { + // setup mapJoinTables and serdes + super.completeInitializationOp(os); VectorMapJoinDesc vectorDesc = conf.getVectorDesc(); HashTableImplementationType hashTableImplementationType = vectorDesc.hashTableImplementationType(); switch (vectorDesc.hashTableImplementationType()) { case OPTIMIZED: { - // Using Tez's HashTableLoader, create either a MapJoinBytesTableContainer or - // HybridHashTableContainer. - pair = super.loadHashTable(mapContext, mrContext); - // Create our vector map join optimized hash table variation *above* the // map join table container. - MapJoinTableContainer[] mapJoinTableContainers = pair.getLeft(); vectorMapJoinHashTable = VectorMapJoinOptimizedCreateHashTable.createHashTable(conf, - mapJoinTableContainers[posSingleVectorMapJoinSmallTable]); + mapJoinTables[posSingleVectorMapJoinSmallTable]); } break; case FAST: { - // Use our VectorMapJoinFastHashTableLoader to create a VectorMapJoinTableContainer. - pair = super.loadHashTable(mapContext, mrContext); - // Get our vector map join fast hash table variation from the // vector map join table container. - MapJoinTableContainer[] mapJoinTableContainers = pair.getLeft(); VectorMapJoinTableContainer vectorMapJoinTableContainer = - (VectorMapJoinTableContainer) mapJoinTableContainers[posSingleVectorMapJoinSmallTable]; + (VectorMapJoinTableContainer) mapJoinTables[posSingleVectorMapJoinSmallTable]; vectorMapJoinHashTable = vectorMapJoinTableContainer.vectorMapJoinHashTable(); } break; default: throw new RuntimeException("Unknown vector map join hash table implementation type " + hashTableImplementationType.name()); } - - return pair; } /*