diff --git a/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java b/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java index e138800..bdfb165 100644 --- a/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java +++ b/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java @@ -711,8 +711,8 @@ public void setSparkConfigUpdated(boolean isSparkConfigUpdated) { HIVEMAPJOINUSEOPTIMIZEDTABLE("hive.mapjoin.optimized.hashtable", true, "Whether Hive should use memory-optimized hash table for MapJoin. Only works on Tez,\n" + "because memory-optimized hashtable cannot be serialized."), - HIVEUSEHYBRIDGRACEHASHJOIN("hive.mapjoin.hybridgrace.hashtable", false, "Whether to use hybrid" + - "grace hash join as the join method for mapjoin."), + HIVEUSEHYBRIDGRACEHASHJOIN("hive.mapjoin.hybridgrace.hashtable", true, "Whether to use hybrid" + + "grace hash join as the join method for mapjoin. Tez only."), HIVEHYBRIDGRACEHASHJOINMEMCHECKFREQ("hive.mapjoin.hybridgrace.memcheckfrequency", 1024, "For " + "hybrid grace hash join, how often (how many rows apart) we check if memory is full. " + "This number should be power of 2."), diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java index 9c3ec8e..2289a35 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java @@ -37,18 +37,20 @@ import org.apache.hadoop.hive.ql.HashTableLoaderFactory; import org.apache.hadoop.hive.ql.exec.mapjoin.MapJoinMemoryExhaustionHandler; import org.apache.hadoop.hive.ql.exec.mr.ExecMapperContext; +import org.apache.hadoop.hive.ql.exec.persistence.BytesBytesMultiHashMap; +import org.apache.hadoop.hive.ql.exec.persistence.HybridHashTableContainer; +import org.apache.hadoop.hive.ql.exec.persistence.HybridHashTableContainer.HashPartition; +import org.apache.hadoop.hive.ql.exec.persistence.KeyValueContainer; +import org.apache.hadoop.hive.ql.exec.persistence.MapJoinBytesTableContainer; +import org.apache.hadoop.hive.ql.exec.persistence.MapJoinBytesTableContainer.KeyValueHelper; import org.apache.hadoop.hive.ql.exec.persistence.MapJoinKey; import org.apache.hadoop.hive.ql.exec.persistence.MapJoinObjectSerDeContext; import org.apache.hadoop.hive.ql.exec.persistence.MapJoinRowContainer; import org.apache.hadoop.hive.ql.exec.persistence.MapJoinTableContainer; -import org.apache.hadoop.hive.ql.exec.persistence.MapJoinTableContainerSerDe; import org.apache.hadoop.hive.ql.exec.persistence.MapJoinTableContainer.ReusableGetAdaptor; -import org.apache.hadoop.hive.ql.exec.persistence.UnwrapRowContainer; -import org.apache.hadoop.hive.ql.exec.persistence.BytesBytesMultiHashMap; -import org.apache.hadoop.hive.ql.exec.persistence.MapJoinBytesTableContainer; -import org.apache.hadoop.hive.ql.exec.persistence.HybridHashTableContainer; -import org.apache.hadoop.hive.ql.exec.persistence.KeyValueContainer; +import org.apache.hadoop.hive.ql.exec.persistence.MapJoinTableContainerSerDe; import org.apache.hadoop.hive.ql.exec.persistence.ObjectContainer; +import org.apache.hadoop.hive.ql.exec.persistence.UnwrapRowContainer; import org.apache.hadoop.hive.ql.io.HiveKey; import org.apache.hadoop.hive.ql.log.PerfLogger; import org.apache.hadoop.hive.ql.metadata.HiveException; @@ -63,9 +65,6 @@ import org.apache.hadoop.io.Writable; import org.apache.hadoop.util.ReflectionUtils; -import static org.apache.hadoop.hive.ql.exec.persistence.HybridHashTableContainer.HashPartition; -import static org.apache.hadoop.hive.ql.exec.persistence.MapJoinBytesTableContainer.KeyValueHelper; - /** * Map side Join operator implementation. */ @@ -80,6 +79,7 @@ private transient ObjectCache cache; protected HashTableLoader loader; + private boolean loadCalled; protected transient MapJoinTableContainer[] mapJoinTables; private transient MapJoinTableContainerSerDe[] mapJoinTableSerdes; @@ -88,7 +88,6 @@ private UnwrapRowContainer[] unwrapContainer; private transient Configuration hconf; - private transient boolean useHybridGraceHashJoin; // whether Hybrid Grace Hash Join is enabled private transient boolean hybridMapJoinLeftover; // whether there's spilled data to be processed private transient MapJoinBytesTableContainer currentSmallTable; // reloaded hashmap from disk private transient int tag; // big table alias @@ -141,15 +140,13 @@ public void startGroup() throws HiveException { mapJoinTables = new MapJoinTableContainer[tagLen]; mapJoinTableSerdes = new MapJoinTableContainerSerDe[tagLen]; hashTblInitedOnce = false; - useHybridGraceHashJoin = - HiveConf.getBoolVar(hconf, HiveConf.ConfVars.HIVEUSEHYBRIDGRACEHASHJOIN); generateMapMetaData(); final ExecMapperContext mapContext = getExecContext(); final MapredContext mrContext = MapredContext.get(); - if (!conf.isBucketMapJoin() && !useHybridGraceHashJoin) { + if (!conf.isBucketMapJoin()) { /* * The issue with caching in case of bucket map join is that different tasks * process different buckets and if the container is reused to join a different bucket, @@ -187,8 +184,22 @@ protected final void completeInitializationOp(Object[] os) throws HiveException if (os.length != 0) { Pair pair = (Pair) os[0]; - mapJoinTables = pair.getLeft(); - mapJoinTableSerdes = pair.getRight(); + + boolean spilled = false; + for (MapJoinTableContainer container : pair.getLeft()) { + if (container != null) { + spilled = spilled || container.hasSpill(); + } + } + + if (!loadCalled && spilled) { + // we can't use the cached table because it has spilled. + loadHashTable(getExecContext(), MapredContext.get()); + } else { + // let's use the table from the cache. + mapJoinTables = pair.getLeft(); + mapJoinTableSerdes = pair.getRight(); + } hashTblInitedOnce = true; } @@ -258,6 +269,8 @@ public void generateMapMetaData() throws HiveException { private Pair loadHashTable( ExecMapperContext mapContext, MapredContext mrContext) throws HiveException { + loadCalled = true; + if (this.hashTblInitedOnce && ((mapContext == null) || (mapContext.getLocalWork() == null) || (mapContext .getLocalWork().getInputFileChangeSensitive() == false))) { @@ -359,8 +372,8 @@ public void process(Object row, int tag) throws HiveException { if (!noOuterJoin) { // For Hybrid Grace Hash Join, during the 1st round processing, // we only keep the LEFT side if the row is not spilled - if (!useHybridGraceHashJoin || hybridMapJoinLeftover || - (!hybridMapJoinLeftover && joinResult != JoinUtil.JoinResult.SPILL)) { + if (!conf.isHybridHashJoin() || hybridMapJoinLeftover + || (!hybridMapJoinLeftover && joinResult != JoinUtil.JoinResult.SPILL)) { joinNeeded = true; storage[pos] = dummyObjVectors[pos]; } @@ -414,47 +427,57 @@ protected void spillBigTableRow(MapJoinTableContainer hybridHtContainer, Object @Override public void closeOp(boolean abort) throws HiveException { - for (MapJoinTableContainer tableContainer : mapJoinTables) { - if (tableContainer != null) { - tableContainer.dumpMetrics(); - - if (tableContainer instanceof HybridHashTableContainer) { - HybridHashTableContainer hybridHtContainer = (HybridHashTableContainer) tableContainer; - hybridHtContainer.dumpStats(); - - HashPartition[] hashPartitions = hybridHtContainer.getHashPartitions(); - // Clear all in memory partitions first - for (int i = 0; i < hashPartitions.length; i++) { - if (!hashPartitions[i].isHashMapOnDisk()) { - hybridHtContainer.setTotalInMemRowCount( - hybridHtContainer.getTotalInMemRowCount() - - hashPartitions[i].getHashMapFromMemory().getNumValues()); - hashPartitions[i].getHashMapFromMemory().clear(); + + boolean spilled = false; + for (MapJoinTableContainer container: mapJoinTables) { + if (container != null) { + spilled = spilled || container.hasSpill(); + container.dumpMetrics(); + } + } + + if (spilled) { + for (MapJoinTableContainer tableContainer : mapJoinTables) { + if (tableContainer != null) { + if (tableContainer instanceof HybridHashTableContainer) { + HybridHashTableContainer hybridHtContainer = (HybridHashTableContainer) tableContainer; + hybridHtContainer.dumpStats(); + + HashPartition[] hashPartitions = hybridHtContainer.getHashPartitions(); + // Clear all in memory partitions first + for (int i = 0; i < hashPartitions.length; i++) { + if (!hashPartitions[i].isHashMapOnDisk()) { + hybridHtContainer.setTotalInMemRowCount( + hybridHtContainer.getTotalInMemRowCount() - + hashPartitions[i].getHashMapFromMemory().getNumValues()); + hashPartitions[i].getHashMapFromMemory().clear(); + } } - } - assert hybridHtContainer.getTotalInMemRowCount() == 0; - - for (int i = 0; i < hashPartitions.length; i++) { - if (hashPartitions[i].isHashMapOnDisk()) { - // Recursively process on-disk triplets (hash partition, sidefile, matchfile) - try { - hybridMapJoinLeftover = true; - hashMapRowGetters[smallTable] = null; - continueProcess(hashPartitions[i], hybridHtContainer); - } catch (IOException e) { - e.printStackTrace(); - } catch (ClassNotFoundException e) { - e.printStackTrace(); - } catch (SerDeException e) { - e.printStackTrace(); + assert hybridHtContainer.getTotalInMemRowCount() == 0; + + for (int i = 0; i < hashPartitions.length; i++) { + if (hashPartitions[i].isHashMapOnDisk()) { + // Recursively process on-disk triplets (hash partition, sidefile, matchfile) + try { + hybridMapJoinLeftover = true; + hashMapRowGetters[smallTable] = null; + continueProcess(hashPartitions[i], hybridHtContainer); + } catch (IOException e) { + e.printStackTrace(); + } catch (ClassNotFoundException e) { + e.printStackTrace(); + } catch (SerDeException e) { + e.printStackTrace(); + } } + hybridMapJoinLeftover = false; + currentSmallTable = null; } - hybridMapJoinLeftover = false; - currentSmallTable = null; } } } } + if ((this.getExecContext() != null) && (this.getExecContext().getLocalWork() != null) && (this.getExecContext().getLocalWork().getInputFileChangeSensitive()) && mapJoinTables != null) { diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/HybridHashTableContainer.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/HybridHashTableContainer.java index c2abba2..3bab557 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/HybridHashTableContainer.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/persistence/HybridHashTableContainer.java @@ -19,7 +19,14 @@ package org.apache.hadoop.hive.ql.exec.persistence; -import com.esotericsoftware.kryo.Kryo; +import java.io.IOException; +import java.io.InputStream; +import java.io.ObjectOutputStream; +import java.io.OutputStream; +import java.nio.file.Files; +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.List; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -33,26 +40,20 @@ import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpressionWriter; import org.apache.hadoop.hive.ql.io.HiveKey; import org.apache.hadoop.hive.ql.metadata.HiveException; +import org.apache.hadoop.hive.serde2.ByteStream.Output; import org.apache.hadoop.hive.serde2.SerDe; import org.apache.hadoop.hive.serde2.SerDeException; import org.apache.hadoop.hive.serde2.WriteBuffers; -import org.apache.hadoop.hive.serde2.ByteStream.Output; import org.apache.hadoop.hive.serde2.binarysortable.BinarySortableSerDe; import org.apache.hadoop.hive.serde2.lazy.ByteArrayRef; -import org.apache.hadoop.hive.serde2.lazybinary.objectinspector.LazyBinaryStructObjectInspector; import org.apache.hadoop.hive.serde2.lazybinary.LazyBinaryFactory; import org.apache.hadoop.hive.serde2.lazybinary.LazyBinaryStruct; +import org.apache.hadoop.hive.serde2.lazybinary.objectinspector.LazyBinaryStructObjectInspector; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; import org.apache.hadoop.io.BytesWritable; import org.apache.hadoop.io.Writable; -import java.io.IOException; -import java.io.InputStream; -import java.io.ObjectOutputStream; -import java.io.OutputStream; -import java.nio.file.Files; -import java.nio.file.Path; -import java.util.*; +import com.esotericsoftware.kryo.Kryo; /** * Hash table container that can have many partitions -- each partition has its own hashmap, @@ -67,16 +68,16 @@ public class HybridHashTableContainer implements MapJoinTableContainer { private static final Log LOG = LogFactory.getLog(HybridHashTableContainer.class); - private HashPartition[] hashPartitions; // an array of partitions holding the triplets + private final HashPartition[] hashPartitions; // an array of partitions holding the triplets private int totalInMemRowCount = 0; // total number of small table rows in memory - private long memoryThreshold; // the max memory limit allocated - private long tableRowSize; // row size of the small table + private final long memoryThreshold; // the max memory limit allocated + private final long tableRowSize; // row size of the small table private boolean isSpilled; // whether there's any spilled partition private int toSpillPartitionId; // the partition into which to spill the big table row; // This may change after every setMapJoinKey call private int numPartitionsSpilled; // number of spilled partitions private boolean lastPartitionInMem; // only one (last one) partition is left in memory - private int memoryCheckFrequency; // how often (# of rows apart) to check if memory is full + private final int memoryCheckFrequency; // how often (# of rows apart) to check if memory is full /** The OI used to deserialize values. We never deserialize keys. */ private LazyBinaryStructObjectInspector internalValueOi; @@ -182,6 +183,11 @@ private HybridHashTableContainer(float keyCountAdj, int threshold, float loadFac long noConditionalTaskThreshold, int memCheckFreq, long tableSize, long keyCount, long memUsage) throws SerDeException { + if (wbSize > noConditionalTaskThreshold) { + LOG.warn("adjusting hash table write buffer size to be smaller than noconditionaltasksize"); + wbSize = (int) noConditionalTaskThreshold; + } + int newKeyCount = HashMapWrapper.calculateTableSize( keyCountAdj, threshold, loadFactor, keyCount); @@ -398,8 +404,8 @@ private void spillPartition(int partitionId) throws IOException { */ private int calcNumPartitions(long dataSize, int wbSize) { if (memoryThreshold < wbSize) { - throw new RuntimeException("Available memory is less than hashtable writebuffer size!" + - " Try increasing hive.auto.convert.join.noconditionaltask.size."); + throw new IllegalStateException("Available memory is less than hashtable writebuffer size!" + + " Try increasing hive.auto.convert.join.noconditionaltask.size."); } int lowerLimit = 2; diff --git a/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/HashTableLoader.java b/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/HashTableLoader.java index 2e15922..9034253 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/HashTableLoader.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/exec/tez/HashTableLoader.java @@ -29,11 +29,11 @@ import org.apache.hadoop.hive.ql.exec.MapredContext; import org.apache.hadoop.hive.ql.exec.mr.ExecMapperContext; import org.apache.hadoop.hive.ql.exec.persistence.HashMapWrapper; +import org.apache.hadoop.hive.ql.exec.persistence.HybridHashTableContainer; import org.apache.hadoop.hive.ql.exec.persistence.MapJoinBytesTableContainer; import org.apache.hadoop.hive.ql.exec.persistence.MapJoinObjectSerDeContext; import org.apache.hadoop.hive.ql.exec.persistence.MapJoinTableContainer; import org.apache.hadoop.hive.ql.exec.persistence.MapJoinTableContainerSerDe; -import org.apache.hadoop.hive.ql.exec.persistence.HybridHashTableContainer; import org.apache.hadoop.hive.ql.metadata.HiveException; import org.apache.hadoop.hive.ql.plan.MapJoinDesc; import org.apache.hadoop.hive.serde2.SerDeException; @@ -77,8 +77,7 @@ public void load(MapJoinTableContainer[] mapJoinTables, boolean useOptimizedTables = HiveConf.getBoolVar( hconf, HiveConf.ConfVars.HIVEMAPJOINUSEOPTIMIZEDTABLE); - boolean useHybridGraceHashJoin = HiveConf.getBoolVar( - hconf, HiveConf.ConfVars.HIVEUSEHYBRIDGRACEHASHJOIN); + boolean useHybridGraceHashJoin = desc.isHybridHashJoin(); boolean isFirstKey = true; // Disable hybrid grace hash join for n-way join diff --git a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConvertJoinMapJoin.java b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConvertJoinMapJoin.java index 8423698..d42b643 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConvertJoinMapJoin.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConvertJoinMapJoin.java @@ -626,6 +626,8 @@ public MapJoinOperator convertJoinMapJoin(JoinOperator joinOp, OptimizeTezProcCo MapJoinProcessor.convertJoinOpMapJoinOp(context.conf, joinOp, joinOp.getConf().isLeftInputJoin(), joinOp.getConf().getBaseSrc(), joinOp.getConf().getMapAliases(), bigTablePosition, true); + mapJoinOp.getConf().setHybridHashJoin(HiveConf.getBoolVar(context.conf, + HiveConf.ConfVars.HIVEUSEHYBRIDGRACEHASHJOIN)); Operator parentBigTableOp = mapJoinOp.getParentOperators().get(bigTablePosition); diff --git a/ql/src/java/org/apache/hadoop/hive/ql/plan/MapJoinDesc.java b/ql/src/java/org/apache/hadoop/hive/ql/plan/MapJoinDesc.java index 664d6e5..c2c1b95 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/plan/MapJoinDesc.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/plan/MapJoinDesc.java @@ -70,6 +70,8 @@ private float hashtableMemoryUsage; protected boolean genJoinKeys = true; + private boolean isHybridHashJoin; + public MapJoinDesc() { bigTableBucketNumMapping = new LinkedHashMap(); } @@ -90,6 +92,8 @@ public MapJoinDesc(MapJoinDesc clone) { this.parentToInput = clone.parentToInput; this.parentKeyCounts = clone.parentKeyCounts; this.parentDataSizes = clone.parentDataSizes; + this.isBucketMapJoin = clone.isBucketMapJoin; + this.isHybridHashJoin = clone.isHybridHashJoin; } public MapJoinDesc(final Map> keys, @@ -322,6 +326,15 @@ public void setBucketMapJoin(boolean isBucketMapJoin) { this.isBucketMapJoin = isBucketMapJoin; } + @Explain(displayName = "HybridGraceHashJoin", displayOnlyOnTrue = true) + public boolean isHybridHashJoin() { + return isHybridHashJoin; + } + + public void setHybridHashJoin(boolean isHybridHashJoin) { + this.isHybridHashJoin = isHybridHashJoin; + } + public void setHashTableMemoryUsage(float hashtableMemoryUsage) { this.hashtableMemoryUsage = hashtableMemoryUsage; } diff --git a/ql/src/test/results/clientpositive/auto_sortmerge_join_1.q.out b/ql/src/test/results/clientpositive/auto_sortmerge_join_1.q.out index 34a1820..383defd 100644 --- a/ql/src/test/results/clientpositive/auto_sortmerge_join_1.q.out +++ b/ql/src/test/results/clientpositive/auto_sortmerge_join_1.q.out @@ -164,6 +164,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 1 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -384,6 +385,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -1199,6 +1201,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/auto_sortmerge_join_2.q.out b/ql/src/test/results/clientpositive/auto_sortmerge_join_2.q.out index 34c8a26..c089419 100644 --- a/ql/src/test/results/clientpositive/auto_sortmerge_join_2.q.out +++ b/ql/src/test/results/clientpositive/auto_sortmerge_join_2.q.out @@ -144,6 +144,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -961,6 +962,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/auto_sortmerge_join_3.q.out b/ql/src/test/results/clientpositive/auto_sortmerge_join_3.q.out index 9af82b9..6e443fa 100644 --- a/ql/src/test/results/clientpositive/auto_sortmerge_join_3.q.out +++ b/ql/src/test/results/clientpositive/auto_sortmerge_join_3.q.out @@ -144,6 +144,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 1 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -315,6 +316,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -1078,6 +1080,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/auto_sortmerge_join_4.q.out b/ql/src/test/results/clientpositive/auto_sortmerge_join_4.q.out index 0bf80f4..feaea04 100644 --- a/ql/src/test/results/clientpositive/auto_sortmerge_join_4.q.out +++ b/ql/src/test/results/clientpositive/auto_sortmerge_join_4.q.out @@ -160,6 +160,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 1 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -331,6 +332,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -1094,6 +1096,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/auto_sortmerge_join_5.q.out b/ql/src/test/results/clientpositive/auto_sortmerge_join_5.q.out index 70665c2..f64ecf0 100644 --- a/ql/src/test/results/clientpositive/auto_sortmerge_join_5.q.out +++ b/ql/src/test/results/clientpositive/auto_sortmerge_join_5.q.out @@ -125,6 +125,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 1 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -286,6 +287,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -777,6 +779,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/auto_sortmerge_join_7.q.out b/ql/src/test/results/clientpositive/auto_sortmerge_join_7.q.out index 446bb02..e89f548 100644 --- a/ql/src/test/results/clientpositive/auto_sortmerge_join_7.q.out +++ b/ql/src/test/results/clientpositive/auto_sortmerge_join_7.q.out @@ -177,6 +177,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 1 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -399,6 +400,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -1357,6 +1359,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/auto_sortmerge_join_8.q.out b/ql/src/test/results/clientpositive/auto_sortmerge_join_8.q.out index b5b5913..44c037f 100644 --- a/ql/src/test/results/clientpositive/auto_sortmerge_join_8.q.out +++ b/ql/src/test/results/clientpositive/auto_sortmerge_join_8.q.out @@ -177,6 +177,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 1 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -399,6 +400,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -1359,6 +1361,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/bucketcontext_1.q.out b/ql/src/test/results/clientpositive/bucketcontext_1.q.out index 37e0514..77bfcf9 100644 --- a/ql/src/test/results/clientpositive/bucketcontext_1.q.out +++ b/ql/src/test/results/clientpositive/bucketcontext_1.q.out @@ -473,6 +473,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 1 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/bucketcontext_2.q.out b/ql/src/test/results/clientpositive/bucketcontext_2.q.out index 5cb6845..a9db13d 100644 --- a/ql/src/test/results/clientpositive/bucketcontext_2.q.out +++ b/ql/src/test/results/clientpositive/bucketcontext_2.q.out @@ -457,6 +457,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 1 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/bucketcontext_3.q.out b/ql/src/test/results/clientpositive/bucketcontext_3.q.out index 2433a67..9ba3e0c 100644 --- a/ql/src/test/results/clientpositive/bucketcontext_3.q.out +++ b/ql/src/test/results/clientpositive/bucketcontext_3.q.out @@ -454,6 +454,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 1 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/bucketcontext_4.q.out b/ql/src/test/results/clientpositive/bucketcontext_4.q.out index c039126..a2b37a8 100644 --- a/ql/src/test/results/clientpositive/bucketcontext_4.q.out +++ b/ql/src/test/results/clientpositive/bucketcontext_4.q.out @@ -470,6 +470,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 1 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/bucketcontext_5.q.out b/ql/src/test/results/clientpositive/bucketcontext_5.q.out index 4b9ade6..3ee1f0e 100644 --- a/ql/src/test/results/clientpositive/bucketcontext_5.q.out +++ b/ql/src/test/results/clientpositive/bucketcontext_5.q.out @@ -332,6 +332,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 1 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/bucketcontext_6.q.out b/ql/src/test/results/clientpositive/bucketcontext_6.q.out index 66c159b..d2304fa 100644 --- a/ql/src/test/results/clientpositive/bucketcontext_6.q.out +++ b/ql/src/test/results/clientpositive/bucketcontext_6.q.out @@ -407,6 +407,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 1 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/bucketcontext_7.q.out b/ql/src/test/results/clientpositive/bucketcontext_7.q.out index 4228a4d..1a105ed 100644 --- a/ql/src/test/results/clientpositive/bucketcontext_7.q.out +++ b/ql/src/test/results/clientpositive/bucketcontext_7.q.out @@ -538,6 +538,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 1 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/bucketcontext_8.q.out b/ql/src/test/results/clientpositive/bucketcontext_8.q.out index dfa0cd8..138e415 100644 --- a/ql/src/test/results/clientpositive/bucketcontext_8.q.out +++ b/ql/src/test/results/clientpositive/bucketcontext_8.q.out @@ -538,6 +538,7 @@ STAGE PLANS: 0 key (type: string) 1 key (type: string) Position of Big Table: 1 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/smb_mapjoin_11.q.out b/ql/src/test/results/clientpositive/smb_mapjoin_11.q.out index 691cb46..e1d049d 100644 --- a/ql/src/test/results/clientpositive/smb_mapjoin_11.q.out +++ b/ql/src/test/results/clientpositive/smb_mapjoin_11.q.out @@ -144,6 +144,7 @@ STAGE PLANS: 1 key (type: int) outputColumnNames: _col0, _col7 Position of Big Table: 0 + BucketMapJoin: true Select Operator expressions: _col0 (type: int), _col7 (type: string) outputColumnNames: _col0, _col1 diff --git a/ql/src/test/results/clientpositive/smb_mapjoin_12.q.out b/ql/src/test/results/clientpositive/smb_mapjoin_12.q.out index e5457dd..777ff8a 100644 --- a/ql/src/test/results/clientpositive/smb_mapjoin_12.q.out +++ b/ql/src/test/results/clientpositive/smb_mapjoin_12.q.out @@ -156,6 +156,7 @@ STAGE PLANS: 1 key (type: int) outputColumnNames: _col0, _col7 Position of Big Table: 0 + BucketMapJoin: true Select Operator expressions: _col0 (type: int), _col7 (type: string) outputColumnNames: _col0, _col1 @@ -416,6 +417,7 @@ STAGE PLANS: 1 key (type: int) outputColumnNames: _col0, _col1, _col7 Position of Big Table: 0 + BucketMapJoin: true Select Operator expressions: _col0 (type: int), concat(_col1, _col7) (type: string) outputColumnNames: _col0, _col1 diff --git a/ql/src/test/results/clientpositive/smb_mapjoin_13.q.out b/ql/src/test/results/clientpositive/smb_mapjoin_13.q.out index bd28bbb..8eb9dbd 100644 --- a/ql/src/test/results/clientpositive/smb_mapjoin_13.q.out +++ b/ql/src/test/results/clientpositive/smb_mapjoin_13.q.out @@ -144,6 +144,7 @@ STAGE PLANS: 1 value (type: int) outputColumnNames: _col0, _col1, _col5, _col6 Position of Big Table: 0 + BucketMapJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col5 (type: int), _col6 (type: string) outputColumnNames: _col0, _col1, _col2, _col3 diff --git a/ql/src/test/results/clientpositive/smb_mapjoin_15.q.out b/ql/src/test/results/clientpositive/smb_mapjoin_15.q.out index 2b6a62e..0f747f0 100644 --- a/ql/src/test/results/clientpositive/smb_mapjoin_15.q.out +++ b/ql/src/test/results/clientpositive/smb_mapjoin_15.q.out @@ -116,6 +116,7 @@ STAGE PLANS: 1 key (type: int) outputColumnNames: _col0, _col1, _col5, _col6 Position of Big Table: 0 + BucketMapJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col5 (type: int), _col6 (type: string) outputColumnNames: _col0, _col1, _col2, _col3 @@ -372,6 +373,7 @@ STAGE PLANS: 1 key (type: int), key2 (type: int) outputColumnNames: _col0, _col1, _col2, _col6, _col7, _col8 Position of Big Table: 0 + BucketMapJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: int), _col2 (type: string), _col6 (type: int), _col7 (type: int), _col8 (type: string) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 @@ -576,6 +578,7 @@ STAGE PLANS: 1 key2 (type: int), key (type: int) outputColumnNames: _col0, _col1, _col2, _col6, _col7, _col8 Position of Big Table: 0 + BucketMapJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: int), _col2 (type: string), _col6 (type: int), _col7 (type: int), _col8 (type: string) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 diff --git a/ql/src/test/results/clientpositive/sort_merge_join_desc_5.q.out b/ql/src/test/results/clientpositive/sort_merge_join_desc_5.q.out index 13cfb1a..91cd338 100644 --- a/ql/src/test/results/clientpositive/sort_merge_join_desc_5.q.out +++ b/ql/src/test/results/clientpositive/sort_merge_join_desc_5.q.out @@ -134,6 +134,7 @@ STAGE PLANS: 0 key (type: int) 1 key (type: int) Position of Big Table: 0 + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_1.q.out b/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_1.q.out index 3177b2f..09d2692 100644 --- a/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_1.q.out +++ b/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_1.q.out @@ -170,6 +170,7 @@ STAGE PLANS: 1 key (type: string) Position of Big Table: 1 Statistics: Num rows: 63 Data size: 6393 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -401,6 +402,7 @@ STAGE PLANS: 1 key (type: string) Position of Big Table: 0 Statistics: Num rows: 63 Data size: 6393 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_2.q.out b/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_2.q.out index e528a1a..2ea0a65 100644 --- a/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_2.q.out +++ b/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_2.q.out @@ -150,6 +150,7 @@ STAGE PLANS: 1 key (type: string) Position of Big Table: 0 Statistics: Num rows: 29 Data size: 3025 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_3.q.out b/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_3.q.out index f4d9b06..6281929 100644 --- a/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_3.q.out +++ b/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_3.q.out @@ -150,6 +150,7 @@ STAGE PLANS: 1 key (type: string) Position of Big Table: 1 Statistics: Num rows: 31 Data size: 3196 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -332,6 +333,7 @@ STAGE PLANS: 1 key (type: string) Position of Big Table: 0 Statistics: Num rows: 31 Data size: 3196 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_4.q.out b/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_4.q.out index 2423eec..31e9d86 100644 --- a/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_4.q.out +++ b/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_4.q.out @@ -166,6 +166,7 @@ STAGE PLANS: 1 key (type: string) Position of Big Table: 1 Statistics: Num rows: 15 Data size: 1567 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -348,6 +349,7 @@ STAGE PLANS: 1 key (type: string) Position of Big Table: 0 Statistics: Num rows: 15 Data size: 1567 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_5.q.out b/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_5.q.out index 732beb5..3eceb0b 100644 --- a/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_5.q.out +++ b/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_5.q.out @@ -131,6 +131,7 @@ STAGE PLANS: 1 key (type: string) Position of Big Table: 1 Statistics: Num rows: 15 Data size: 1567 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -303,6 +304,7 @@ STAGE PLANS: 1 key (type: string) Position of Big Table: 0 Statistics: Num rows: 15 Data size: 1567 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_7.q.out b/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_7.q.out index ff9b8e4..ddbca05 100644 --- a/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_7.q.out +++ b/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_7.q.out @@ -183,6 +183,7 @@ STAGE PLANS: 1 key (type: string) Position of Big Table: 1 Statistics: Num rows: 29 Data size: 3025 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -416,6 +417,7 @@ STAGE PLANS: 1 key (type: string) Position of Big Table: 0 Statistics: Num rows: 29 Data size: 3025 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_8.q.out b/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_8.q.out index 05b63c2..88d4dcb 100644 --- a/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_8.q.out +++ b/ql/src/test/results/clientpositive/spark/auto_sortmerge_join_8.q.out @@ -183,6 +183,7 @@ STAGE PLANS: 1 key (type: string) Position of Big Table: 1 Statistics: Num rows: 63 Data size: 6393 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -416,6 +417,7 @@ STAGE PLANS: 1 key (type: string) Position of Big Table: 0 Statistics: Num rows: 63 Data size: 6393 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/spark/smb_mapjoin_11.q.out b/ql/src/test/results/clientpositive/spark/smb_mapjoin_11.q.out index c3f996f..c94cc5b 100644 --- a/ql/src/test/results/clientpositive/spark/smb_mapjoin_11.q.out +++ b/ql/src/test/results/clientpositive/spark/smb_mapjoin_11.q.out @@ -148,6 +148,7 @@ STAGE PLANS: outputColumnNames: _col0, _col7 Position of Big Table: 0 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Select Operator expressions: _col0 (type: int), _col7 (type: string) outputColumnNames: _col0, _col1 diff --git a/ql/src/test/results/clientpositive/spark/smb_mapjoin_12.q.out b/ql/src/test/results/clientpositive/spark/smb_mapjoin_12.q.out index 50bc19e..eeb23a8 100644 --- a/ql/src/test/results/clientpositive/spark/smb_mapjoin_12.q.out +++ b/ql/src/test/results/clientpositive/spark/smb_mapjoin_12.q.out @@ -160,6 +160,7 @@ STAGE PLANS: outputColumnNames: _col0, _col7 Position of Big Table: 0 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Select Operator expressions: _col0 (type: int), _col7 (type: string) outputColumnNames: _col0, _col1 @@ -426,6 +427,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1, _col7 Position of Big Table: 0 Statistics: Num rows: 1696 Data size: 18097 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Select Operator expressions: _col0 (type: int), concat(_col1, _col7) (type: string) outputColumnNames: _col0, _col1 diff --git a/ql/src/test/results/clientpositive/spark/smb_mapjoin_13.q.out b/ql/src/test/results/clientpositive/spark/smb_mapjoin_13.q.out index 7786da1..7c34ceb 100644 --- a/ql/src/test/results/clientpositive/spark/smb_mapjoin_13.q.out +++ b/ql/src/test/results/clientpositive/spark/smb_mapjoin_13.q.out @@ -150,6 +150,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1, _col5, _col6 Position of Big Table: 0 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col5 (type: int), _col6 (type: string) outputColumnNames: _col0, _col1, _col2, _col3 diff --git a/ql/src/test/results/clientpositive/spark/smb_mapjoin_15.q.out b/ql/src/test/results/clientpositive/spark/smb_mapjoin_15.q.out index 70e3077..4032170 100644 --- a/ql/src/test/results/clientpositive/spark/smb_mapjoin_15.q.out +++ b/ql/src/test/results/clientpositive/spark/smb_mapjoin_15.q.out @@ -122,6 +122,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1, _col5, _col6 Position of Big Table: 0 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col5 (type: int), _col6 (type: string) outputColumnNames: _col0, _col1, _col2, _col3 @@ -390,6 +391,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1, _col2, _col6, _col7, _col8 Position of Big Table: 0 Statistics: Num rows: 137 Data size: 1984 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: int), _col2 (type: string), _col6 (type: int), _col7 (type: int), _col8 (type: string) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 @@ -606,6 +608,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1, _col2, _col6, _col7, _col8 Position of Big Table: 0 Statistics: Num rows: 137 Data size: 1984 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: int), _col2 (type: string), _col6 (type: int), _col7 (type: int), _col8 (type: string) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 diff --git a/ql/src/test/results/clientpositive/spark/sort_merge_join_desc_5.q.out b/ql/src/test/results/clientpositive/spark/sort_merge_join_desc_5.q.out index 54ff1af..5c7f0d0 100644 --- a/ql/src/test/results/clientpositive/spark/sort_merge_join_desc_5.q.out +++ b/ql/src/test/results/clientpositive/spark/sort_merge_join_desc_5.q.out @@ -140,6 +140,7 @@ STAGE PLANS: 1 key (type: int) Position of Big Table: 0 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + BucketMapJoin: true Group By Operator aggregations: count() mode: hash @@ -212,31 +213,27 @@ STAGE PLANS: mode: mergepartial outputColumnNames: _col0 Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE - Select Operator - expressions: _col0 (type: bigint) - outputColumnNames: _col0 - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE - File Output Operator - compressed: false - GlobalTableId: 0 + File Output Operator + compressed: false + GlobalTableId: 0 #### A masked pattern was here #### - NumFilesPerFileSink: 1 - Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE + NumFilesPerFileSink: 1 + Statistics: Num rows: 1 Data size: 8 Basic stats: COMPLETE Column stats: NONE #### A masked pattern was here #### - table: - input format: org.apache.hadoop.mapred.TextInputFormat - output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat - properties: - columns _col0 - columns.types bigint - escape.delim \ - hive.serialization.extend.additional.nesting.levels true - serialization.format 1 - serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe - serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe - TotalFiles: 1 - GatherStats: false - MultiFileSpray: false + table: + input format: org.apache.hadoop.mapred.TextInputFormat + output format: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat + properties: + columns _col0 + columns.types bigint + escape.delim \ + hive.serialization.extend.additional.nesting.levels true + serialization.format 1 + serialization.lib org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + serde: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe + TotalFiles: 1 + GatherStats: false + MultiFileSpray: false Stage: Stage-0 Fetch Operator diff --git a/ql/src/test/results/clientpositive/tez/auto_join0.q.out b/ql/src/test/results/clientpositive/tez/auto_join0.q.out index 0b27ab3..cea6f99 100644 --- a/ql/src/test/results/clientpositive/tez/auto_join0.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_join0.q.out @@ -56,6 +56,7 @@ STAGE PLANS: input vertices: 1 Map 4 Statistics: Num rows: 182 Data size: 1939 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Reduce Output Operator key expressions: _col0 (type: string), _col1 (type: string), _col2 (type: string), _col3 (type: string) sort order: ++++ diff --git a/ql/src/test/results/clientpositive/tez/auto_join1.q.out b/ql/src/test/results/clientpositive/tez/auto_join1.q.out index 4dab4e3..078d504 100644 --- a/ql/src/test/results/clientpositive/tez/auto_join1.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_join1.q.out @@ -49,6 +49,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: UDFToInteger(_col2) (type: int), _col1 (type: string) outputColumnNames: _col0, _col1 diff --git a/ql/src/test/results/clientpositive/tez/auto_join29.q.out b/ql/src/test/results/clientpositive/tez/auto_join29.q.out index 10c8fcd..2cab06e 100644 --- a/ql/src/test/results/clientpositive/tez/auto_join29.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_join29.q.out @@ -2713,6 +2713,7 @@ STAGE PLANS: 1 Map 3 2 Map 4 Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: string), _col1 (type: string), _col5 (type: string), _col6 (type: string), _col10 (type: string), _col11 (type: string) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 @@ -2834,6 +2835,7 @@ STAGE PLANS: 0 Map 1 2 Map 4 Statistics: Num rows: 365 Data size: 3878 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: string), _col1 (type: string), _col5 (type: string), _col6 (type: string), _col10 (type: string), _col11 (type: string) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 @@ -2945,6 +2947,7 @@ STAGE PLANS: 1 Map 3 2 Map 4 Statistics: Num rows: 121 Data size: 1284 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: string), _col1 (type: string), _col5 (type: string), _col6 (type: string), _col10 (type: string), _col11 (type: string) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 diff --git a/ql/src/test/results/clientpositive/tez/auto_join30.q.out b/ql/src/test/results/clientpositive/tez/auto_join30.q.out index 27fe242..8c20985 100644 --- a/ql/src/test/results/clientpositive/tez/auto_join30.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_join30.q.out @@ -76,6 +76,7 @@ STAGE PLANS: input vertices: 1 Reducer 5 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: sum(hash(_col2,_col3)) mode: hash @@ -209,6 +210,7 @@ STAGE PLANS: input vertices: 1 Reducer 5 Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: sum(hash(_col2,_col3)) mode: hash @@ -353,6 +355,7 @@ STAGE PLANS: input vertices: 0 Reducer 2 Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: sum(hash(_col2,_col3)) mode: hash @@ -507,6 +510,7 @@ STAGE PLANS: 1 Reducer 5 2 Reducer 7 Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: sum(hash(_col2,_col3)) mode: hash diff --git a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_1.q.out b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_1.q.out index f05295e..a275d27 100644 --- a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_1.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_1.q.out @@ -244,6 +244,7 @@ STAGE PLANS: 0 Map 1 Position of Big Table: 1 Statistics: Num rows: 63 Data size: 6393 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -479,6 +480,7 @@ STAGE PLANS: 1 Map 3 Position of Big Table: 0 Statistics: Num rows: 63 Data size: 6393 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -784,6 +786,7 @@ STAGE PLANS: 1 Map 3 Position of Big Table: 0 Statistics: Num rows: 63 Data size: 6393 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_10.q.out b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_10.q.out index 3c128fa..28268fc 100644 --- a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_10.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_10.q.out @@ -97,6 +97,7 @@ STAGE PLANS: 1 _col0 (type: int) input vertices: 1 Map 5 + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -124,6 +125,7 @@ STAGE PLANS: 1 _col0 (type: int) input vertices: 1 Map 5 + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -276,6 +278,7 @@ STAGE PLANS: input vertices: 0 Reducer 2 Statistics: Num rows: 3 Data size: 23 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_11.q.out b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_11.q.out index a555700..6ac74ca 100644 --- a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_11.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_11.q.out @@ -239,6 +239,7 @@ STAGE PLANS: 0 Map 1 Position of Big Table: 1 Statistics: Num rows: 63 Data size: 6393 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -549,6 +550,7 @@ STAGE PLANS: 0 Map 1 Position of Big Table: 1 Statistics: Num rows: 63 Data size: 6393 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -858,6 +860,7 @@ STAGE PLANS: 0 Map 1 Position of Big Table: 1 Statistics: Num rows: 63 Data size: 6393 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1185,6 +1188,7 @@ STAGE PLANS: 2 Map 4 Position of Big Table: 1 Statistics: Num rows: 127 Data size: 12786 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_12.q.out b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_12.q.out index 7d66a04..8c8a3bf 100644 --- a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_12.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_12.q.out @@ -308,6 +308,7 @@ STAGE PLANS: 0 Map 1 Position of Big Table: 1 Statistics: Num rows: 1 Data size: 125 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Reduce Output Operator key expressions: _col6 (type: string), _col6 (type: string) sort order: ++ @@ -389,6 +390,7 @@ STAGE PLANS: 0 Map 2 Position of Big Table: 1 Statistics: Num rows: 63 Data size: 6393 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -399,6 +401,7 @@ STAGE PLANS: 1 Map 5 Position of Big Table: 0 Statistics: Num rows: 69 Data size: 7032 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_13.q.out b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_13.q.out index 936dae3..c0f99cc 100644 --- a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_13.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_13.q.out @@ -105,6 +105,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col5 (type: int), _col6 (type: string) outputColumnNames: _col0, _col1, _col2, _col3 @@ -314,6 +315,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col5 (type: int), _col6 (type: string) outputColumnNames: _col0, _col1, _col2, _col3 @@ -523,6 +525,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col5 (type: int), _col6 (type: string) outputColumnNames: _col0, _col1, _col2, _col3 diff --git a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_14.q.out b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_14.q.out index c6bf5b8..81b6fe6 100644 --- a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_14.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_14.q.out @@ -68,6 +68,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 22 Data size: 176 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -173,6 +174,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 207 Data size: 2080 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_15.q.out b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_15.q.out index 4a0c303..5e30dff 100644 --- a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_15.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_15.q.out @@ -66,6 +66,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 22 Data size: 176 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -148,6 +149,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 22 Data size: 176 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_2.q.out b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_2.q.out index 7997c4d..2cb8416 100644 --- a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_2.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_2.q.out @@ -154,6 +154,7 @@ STAGE PLANS: 1 Map 3 Position of Big Table: 0 Statistics: Num rows: 29 Data size: 3025 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -461,6 +462,7 @@ STAGE PLANS: 1 Map 3 Position of Big Table: 0 Statistics: Num rows: 29 Data size: 3025 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_3.q.out b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_3.q.out index d6ed0c5..abeceb8 100644 --- a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_3.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_3.q.out @@ -273,6 +273,7 @@ STAGE PLANS: 0 Map 1 Position of Big Table: 1 Statistics: Num rows: 31 Data size: 3196 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -459,6 +460,7 @@ STAGE PLANS: 1 Map 3 Position of Big Table: 0 Statistics: Num rows: 31 Data size: 3196 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -764,6 +766,7 @@ STAGE PLANS: 1 Map 3 Position of Big Table: 0 Statistics: Num rows: 31 Data size: 3196 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_4.q.out b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_4.q.out index 5fb23bb..8eb9ce5 100644 --- a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_4.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_4.q.out @@ -289,6 +289,7 @@ STAGE PLANS: 0 Map 1 Position of Big Table: 1 Statistics: Num rows: 15 Data size: 1567 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -475,6 +476,7 @@ STAGE PLANS: 1 Map 3 Position of Big Table: 0 Statistics: Num rows: 15 Data size: 1567 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -780,6 +782,7 @@ STAGE PLANS: 1 Map 3 Position of Big Table: 0 Statistics: Num rows: 15 Data size: 1567 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_5.q.out b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_5.q.out index e285b28..adcc1fa 100644 --- a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_5.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_5.q.out @@ -591,6 +591,7 @@ STAGE PLANS: 1 Map 3 Position of Big Table: 0 Statistics: Num rows: 15 Data size: 1567 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_7.q.out b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_7.q.out index 5f8eacf..2562cb0 100644 --- a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_7.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_7.q.out @@ -306,6 +306,7 @@ STAGE PLANS: 0 Map 1 Position of Big Table: 1 Statistics: Num rows: 29 Data size: 3025 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -543,6 +544,7 @@ STAGE PLANS: 1 Map 3 Position of Big Table: 0 Statistics: Num rows: 29 Data size: 3025 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -899,6 +901,7 @@ STAGE PLANS: 1 Map 3 Position of Big Table: 0 Statistics: Num rows: 29 Data size: 3025 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_8.q.out b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_8.q.out index 92eef8f..31b0a97 100644 --- a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_8.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_8.q.out @@ -306,6 +306,7 @@ STAGE PLANS: 0 Map 1 Position of Big Table: 1 Statistics: Num rows: 63 Data size: 6393 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -543,6 +544,7 @@ STAGE PLANS: 1 Map 3 Position of Big Table: 0 Statistics: Num rows: 63 Data size: 6393 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -901,6 +903,7 @@ STAGE PLANS: 1 Map 3 Position of Big Table: 0 Statistics: Num rows: 63 Data size: 6393 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_9.q.out b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_9.q.out index 0919998..9f3e698 100644 --- a/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_9.q.out +++ b/ql/src/test/results/clientpositive/tez/auto_sortmerge_join_9.q.out @@ -83,6 +83,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -187,6 +188,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() keys: _col0 (type: int) @@ -311,6 +313,7 @@ STAGE PLANS: input vertices: 1 Map 4 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() keys: _col0 (type: int) @@ -471,6 +474,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() keys: _col0 (type: int) @@ -514,6 +518,7 @@ STAGE PLANS: input vertices: 1 Map 6 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() keys: _col0 (type: int) @@ -557,6 +562,7 @@ STAGE PLANS: input vertices: 1 Reducer 5 Statistics: Num rows: 2 Data size: 16 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: bigint), _col3 (type: bigint) outputColumnNames: _col0, _col1, _col2 @@ -684,6 +690,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 3 Data size: 23 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -824,6 +831,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -958,6 +966,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 1 Data size: 7 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1099,6 +1108,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 3 Data size: 23 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1216,6 +1226,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1342,6 +1353,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1449,6 +1461,7 @@ STAGE PLANS: input vertices: 1 Map 1 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1556,6 +1569,7 @@ STAGE PLANS: 1 Map 3 2 Map 4 Statistics: Num rows: 6 Data size: 46 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1721,6 +1735,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1823,6 +1838,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1927,6 +1943,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() keys: _col0 (type: int) @@ -2051,6 +2068,7 @@ STAGE PLANS: input vertices: 1 Map 4 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() keys: _col0 (type: int) @@ -2211,6 +2229,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() keys: _col0 (type: int) @@ -2254,6 +2273,7 @@ STAGE PLANS: input vertices: 1 Map 6 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() keys: _col0 (type: int) @@ -2297,6 +2317,7 @@ STAGE PLANS: input vertices: 1 Reducer 5 Statistics: Num rows: 2 Data size: 16 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: bigint), _col3 (type: bigint) outputColumnNames: _col0, _col1, _col2 @@ -2424,6 +2445,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 3 Data size: 23 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -2564,6 +2586,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -2698,6 +2721,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 1 Data size: 7 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -2839,6 +2863,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 3 Data size: 23 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -2965,6 +2990,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -3072,6 +3098,7 @@ STAGE PLANS: input vertices: 1 Map 1 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -3179,6 +3206,7 @@ STAGE PLANS: 1 Map 3 2 Map 4 Statistics: Num rows: 6 Data size: 46 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -3344,6 +3372,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 5 Data size: 38 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/tez/bucket_map_join_tez1.q.out b/ql/src/test/results/clientpositive/tez/bucket_map_join_tez1.q.out index 8ff9f7c..61c197f 100644 --- a/ql/src/test/results/clientpositive/tez/bucket_map_join_tez1.q.out +++ b/ql/src/test/results/clientpositive/tez/bucket_map_join_tez1.q.out @@ -159,6 +159,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col7 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -241,6 +242,7 @@ STAGE PLANS: input vertices: 0 Reducer 2 Statistics: Num rows: 133 Data size: 1411 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col1 (type: int), _col0 (type: double), _col3 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -317,6 +319,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: sum(substr(_col7, 5)) keys: _col6 (type: int) @@ -379,6 +382,7 @@ STAGE PLANS: input vertices: 1 Map 4 Statistics: Num rows: 150 Data size: 1600 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col1 (type: int), _col0 (type: double), _col3 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -438,6 +442,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 133 Data size: 1411 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: sum(substr(_col1, 5)) keys: _col0 (type: int) @@ -481,6 +486,7 @@ STAGE PLANS: input vertices: 0 Reducer 2 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col1 (type: int), _col0 (type: double), _col3 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -559,6 +565,7 @@ STAGE PLANS: 1 Map 2 2 Map 3 Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col7 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -641,6 +648,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -651,6 +659,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 302 Data size: 3213 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col3 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -758,6 +767,7 @@ STAGE PLANS: input vertices: 0 Reducer 2 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: double), _col3 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -844,6 +854,7 @@ STAGE PLANS: input vertices: 0 Reducer 2 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: double), _col3 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -929,6 +940,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col7 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -1020,6 +1032,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col6 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -1085,6 +1098,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -1095,6 +1109,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 302 Data size: 3213 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col12 (type: int) outputColumnNames: _col0, _col1 @@ -1193,6 +1208,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col7 (type: string) outputColumnNames: _col0, _col1, _col2 diff --git a/ql/src/test/results/clientpositive/tez/bucket_map_join_tez2.q.out b/ql/src/test/results/clientpositive/tez/bucket_map_join_tez2.q.out index 6773593..3f980b6 100644 --- a/ql/src/test/results/clientpositive/tez/bucket_map_join_tez2.q.out +++ b/ql/src/test/results/clientpositive/tez/bucket_map_join_tez2.q.out @@ -155,6 +155,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -165,6 +166,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 302 Data size: 3213 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col12 (type: int) outputColumnNames: _col0, _col1 @@ -270,6 +272,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col6 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -327,6 +330,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 182 Data size: 1939 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true File Output Operator compressed: false Statistics: Num rows: 182 Data size: 1939 Basic stats: COMPLETE Column stats: NONE @@ -397,6 +401,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 182 Data size: 1939 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true File Output Operator compressed: false Statistics: Num rows: 182 Data size: 1939 Basic stats: COMPLETE Column stats: NONE @@ -484,6 +489,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 182 Data size: 1939 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true File Output Operator compressed: false Statistics: Num rows: 182 Data size: 1939 Basic stats: COMPLETE Column stats: NONE @@ -550,6 +556,7 @@ STAGE PLANS: input vertices: 0 Reducer 2 Statistics: Num rows: 133 Data size: 1411 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true File Output Operator compressed: false Statistics: Num rows: 133 Data size: 1411 Basic stats: COMPLETE Column stats: NONE @@ -628,6 +635,7 @@ STAGE PLANS: input vertices: 0 Reducer 2 Statistics: Num rows: 133 Data size: 1411 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: string), _col2 (type: string) outputColumnNames: _col0, _col1 diff --git a/ql/src/test/results/clientpositive/tez/correlationoptimizer1.q.out b/ql/src/test/results/clientpositive/tez/correlationoptimizer1.q.out index ff8eafb..444f931 100644 --- a/ql/src/test/results/clientpositive/tez/correlationoptimizer1.q.out +++ b/ql/src/test/results/clientpositive/tez/correlationoptimizer1.q.out @@ -351,6 +351,7 @@ STAGE PLANS: input vertices: 1 Map 4 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col1 (type: string) outputColumnNames: _col0 diff --git a/ql/src/test/results/clientpositive/tez/cross_product_check_2.q.out b/ql/src/test/results/clientpositive/tez/cross_product_check_2.q.out index d115044..f732a8d 100644 --- a/ql/src/test/results/clientpositive/tez/cross_product_check_2.q.out +++ b/ql/src/test/results/clientpositive/tez/cross_product_check_2.q.out @@ -59,6 +59,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true File Output Operator compressed: false Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE @@ -121,6 +122,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 5 Data size: 57 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Reduce Output Operator sort order: Statistics: Num rows: 5 Data size: 57 Basic stats: COMPLETE Column stats: NONE @@ -154,6 +156,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: string), _col1 (type: string), _col5 (type: string), _col6 (type: string), _col10 (type: string), _col11 (type: string) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5 @@ -214,6 +217,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 5 Data size: 57 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator keys: _col0 (type: string) mode: hash @@ -252,6 +256,7 @@ STAGE PLANS: input vertices: 1 Reducer 2 Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: string), _col1 (type: string), _col5 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -315,6 +320,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 11 Data size: 114 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator keys: _col0 (type: string) mode: hash @@ -348,6 +354,7 @@ STAGE PLANS: input vertices: 1 Reducer 2 Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: string), _col1 (type: string), _col5 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -436,6 +443,7 @@ STAGE PLANS: input vertices: 1 Map 5 Statistics: Num rows: 5 Data size: 57 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator keys: _col0 (type: string) mode: hash @@ -476,6 +484,7 @@ STAGE PLANS: input vertices: 1 Reducer 4 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true File Output Operator compressed: false Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE diff --git a/ql/src/test/results/clientpositive/tez/dynamic_partition_pruning.q.out b/ql/src/test/results/clientpositive/tez/dynamic_partition_pruning.q.out index 30847f9..7cf5e21 100644 --- a/ql/src/test/results/clientpositive/tez/dynamic_partition_pruning.q.out +++ b/ql/src/test/results/clientpositive/tez/dynamic_partition_pruning.q.out @@ -3331,6 +3331,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -3457,6 +3458,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -3466,6 +3468,7 @@ STAGE PLANS: input vertices: 1 Map 4 Statistics: Num rows: 2420 Data size: 25709 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -3620,6 +3623,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -3757,6 +3761,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -3858,6 +3863,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -3970,6 +3976,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -4098,6 +4105,7 @@ STAGE PLANS: input vertices: 1 Reducer 4 Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -4220,6 +4228,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Filter Operator predicate: (_col8 = '2008-04-08') (type: boolean) Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE @@ -4300,6 +4309,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -4459,6 +4469,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -4468,6 +4479,7 @@ STAGE PLANS: input vertices: 1 Map 4 Statistics: Num rows: 1210 Data size: 12854 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -4627,6 +4639,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 1 Data size: 5 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -4705,6 +4718,7 @@ STAGE PLANS: input vertices: 1 Union 5 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator keys: _col0 (type: string) mode: hash @@ -4919,6 +4933,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 1100 Data size: 103400 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash diff --git a/ql/src/test/results/clientpositive/tez/dynamic_partition_pruning_2.q.out b/ql/src/test/results/clientpositive/tez/dynamic_partition_pruning_2.q.out index 51b0804..8c8531c 100644 --- a/ql/src/test/results/clientpositive/tez/dynamic_partition_pruning_2.q.out +++ b/ql/src/test/results/clientpositive/tez/dynamic_partition_pruning_2.q.out @@ -176,6 +176,7 @@ STAGE PLANS: input vertices: 1 Map 4 Statistics: Num rows: 9 Data size: 29 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Filter Operator predicate: ((_col1 = _col5) and (_col6) IN ('foo', 'bar')) (type: boolean) Statistics: Num rows: 2 Data size: 6 Basic stats: COMPLETE Column stats: NONE @@ -337,6 +338,7 @@ STAGE PLANS: input vertices: 1 Map 4 Statistics: Num rows: 9 Data size: 29 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Filter Operator predicate: ((_col1 = _col5) and (_col6) IN ('foo', 'bar')) (type: boolean) Statistics: Num rows: 2 Data size: 6 Basic stats: COMPLETE Column stats: NONE @@ -473,6 +475,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 9 Data size: 29 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Filter Operator predicate: (_col1 = _col5) (type: boolean) Statistics: Num rows: 4 Data size: 12 Basic stats: COMPLETE Column stats: NONE @@ -579,6 +582,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 3 Data size: 9 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true File Output Operator compressed: false Statistics: Num rows: 3 Data size: 9 Basic stats: COMPLETE Column stats: NONE @@ -677,6 +681,7 @@ STAGE PLANS: input vertices: 1 Map 4 Statistics: Num rows: 9 Data size: 29 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Filter Operator predicate: ((_col1 = _col5) and (_col6) IN ('foo', 'bar')) (type: boolean) Statistics: Num rows: 2 Data size: 6 Basic stats: COMPLETE Column stats: NONE @@ -827,6 +832,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1, _col5 input vertices: 1 Map 3 + HybridGraceHashJoin: true Filter Operator predicate: (_col1 = _col5) (type: boolean) Select Operator @@ -881,6 +887,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1, _col5 input vertices: 1 Map 5 + HybridGraceHashJoin: true Filter Operator predicate: (_col1 = _col5) (type: boolean) Select Operator diff --git a/ql/src/test/results/clientpositive/tez/hybridhashjoin.q.out b/ql/src/test/results/clientpositive/tez/hybridhashjoin.q.out index 842ba03..5d5b850 100644 --- a/ql/src/test/results/clientpositive/tez/hybridhashjoin.q.out +++ b/ql/src/test/results/clientpositive/tez/hybridhashjoin.q.out @@ -168,6 +168,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 4505 Data size: 968719 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -398,6 +399,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 6758 Data size: 1453080 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -615,6 +617,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 13516 Data size: 2906160 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -864,6 +867,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 289 Data size: 6872 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1082,6 +1086,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 289 Data size: 6872 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1402,6 +1407,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 6758 Data size: 1190783 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: 6981 (type: int), 6981 (type: int), _col1 (type: decimal(20,10)), _col9 (type: decimal(23,14)) outputColumnNames: _col0, _col1, _col2, _col3 diff --git a/ql/src/test/results/clientpositive/tez/lvj_mapjoin.q.out b/ql/src/test/results/clientpositive/tez/lvj_mapjoin.q.out index 7268bae..0a6be5f 100644 --- a/ql/src/test/results/clientpositive/tez/lvj_mapjoin.q.out +++ b/ql/src/test/results/clientpositive/tez/lvj_mapjoin.q.out @@ -144,6 +144,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 4 Data size: 57 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Filter Operator predicate: (_col0 = _col2) (type: boolean) Statistics: Num rows: 2 Data size: 28 Basic stats: COMPLETE Column stats: NONE @@ -182,6 +183,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 4 Data size: 57 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Filter Operator predicate: (_col0 = _col2) (type: boolean) Statistics: Num rows: 2 Data size: 28 Basic stats: COMPLETE Column stats: NONE diff --git a/ql/src/test/results/clientpositive/tez/mapjoin_decimal.q.out b/ql/src/test/results/clientpositive/tez/mapjoin_decimal.q.out index d6bcf99..110658b 100644 --- a/ql/src/test/results/clientpositive/tez/mapjoin_decimal.q.out +++ b/ql/src/test/results/clientpositive/tez/mapjoin_decimal.q.out @@ -111,6 +111,7 @@ STAGE PLANS: input vertices: 1 Map 2 Statistics: Num rows: 577 Data size: 64680 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: decimal(4,2)), _col4 (type: decimal(4,0)) outputColumnNames: _col0, _col1 diff --git a/ql/src/test/results/clientpositive/tez/mapjoin_mapjoin.q.out b/ql/src/test/results/clientpositive/tez/mapjoin_mapjoin.q.out index fb34588..f2610de 100644 --- a/ql/src/test/results/clientpositive/tez/mapjoin_mapjoin.q.out +++ b/ql/src/test/results/clientpositive/tez/mapjoin_mapjoin.q.out @@ -162,6 +162,7 @@ STAGE PLANS: 1 Map 3 Position of Big Table: 0 Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -174,6 +175,7 @@ STAGE PLANS: 0 Map 1 Position of Big Table: 1 Statistics: Num rows: 605 Data size: 6427 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col1 (type: string) outputColumnNames: _col0 @@ -524,6 +526,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 183 Data size: 1951 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -534,6 +537,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 201 Data size: 2146 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col1 (type: string) outputColumnNames: _col0 @@ -609,6 +613,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -619,6 +624,7 @@ STAGE PLANS: input vertices: 1 Map 4 Statistics: Num rows: 605 Data size: 6427 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col2 (type: string) outputColumnNames: _col0 diff --git a/ql/src/test/results/clientpositive/tez/mrr.q.out b/ql/src/test/results/clientpositive/tez/mrr.q.out index e7a3b3c..ac5ac5c 100644 --- a/ql/src/test/results/clientpositive/tez/mrr.q.out +++ b/ql/src/test/results/clientpositive/tez/mrr.q.out @@ -853,6 +853,7 @@ STAGE PLANS: input vertices: 1 Map 4 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count(DISTINCT _col1) keys: _col0 (type: string), _col1 (type: string) @@ -1693,6 +1694,7 @@ STAGE PLANS: input vertices: 1 Reducer 4 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Select Operator expressions: _col0 (type: string), _col3 (type: bigint), _col1 (type: string) outputColumnNames: _col0, _col1, _col3 diff --git a/ql/src/test/results/clientpositive/tez/tez_bmj_schema_evolution.q.out b/ql/src/test/results/clientpositive/tez/tez_bmj_schema_evolution.q.out index d138885..b31a403 100644 --- a/ql/src/test/results/clientpositive/tez/tez_bmj_schema_evolution.q.out +++ b/ql/src/test/results/clientpositive/tez/tez_bmj_schema_evolution.q.out @@ -100,6 +100,7 @@ STAGE PLANS: input vertices: 1 Map 3 Statistics: Num rows: 550 Data size: 28771 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Reduce Output Operator key expressions: _col0 (type: int) sort order: + diff --git a/ql/src/test/results/clientpositive/tez/tez_join_hash.q.out b/ql/src/test/results/clientpositive/tez/tez_join_hash.q.out index bf60681..c4bec62 100644 --- a/ql/src/test/results/clientpositive/tez/tez_join_hash.q.out +++ b/ql/src/test/results/clientpositive/tez/tez_join_hash.q.out @@ -196,6 +196,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1 input vertices: 1 Map 7 + HybridGraceHashJoin: true Group By Operator aggregations: count() keys: _col0 (type: string), _col1 (type: string) @@ -249,6 +250,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1 input vertices: 1 Map 7 + HybridGraceHashJoin: true Group By Operator aggregations: count() keys: _col0 (type: string), _col1 (type: string) diff --git a/ql/src/test/results/clientpositive/tez/tez_smb_main.q.out b/ql/src/test/results/clientpositive/tez/tez_smb_main.q.out index f0bcea6..6183390 100644 --- a/ql/src/test/results/clientpositive/tez/tez_smb_main.q.out +++ b/ql/src/test/results/clientpositive/tez/tez_smb_main.q.out @@ -282,6 +282,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -379,6 +380,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -476,6 +478,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -571,6 +574,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -580,6 +584,7 @@ STAGE PLANS: input vertices: 1 Map 4 Statistics: Num rows: 302 Data size: 3213 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -899,6 +904,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -992,6 +998,7 @@ STAGE PLANS: input vertices: 0 Map 1 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -1001,6 +1008,7 @@ STAGE PLANS: input vertices: 1 Map 4 Statistics: Num rows: 302 Data size: 3213 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1101,6 +1109,7 @@ STAGE PLANS: outputColumnNames: _col0 input vertices: 1 Map 4 + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -1109,6 +1118,7 @@ STAGE PLANS: 1 key (type: int) input vertices: 1 Map 6 + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1146,6 +1156,7 @@ STAGE PLANS: 1 key (type: int) input vertices: 1 Map 6 + HybridGraceHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1284,6 +1295,7 @@ STAGE PLANS: input vertices: 0 Reducer 2 Statistics: Num rows: 275 Data size: 2921 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true Filter Operator predicate: (_col0 = _col1) (type: boolean) Statistics: Num rows: 137 Data size: 1455 Basic stats: COMPLETE Column stats: NONE diff --git a/ql/src/test/results/clientpositive/tez/tez_union.q.out b/ql/src/test/results/clientpositive/tez/tez_union.q.out index 2472c5e..e327452 100644 --- a/ql/src/test/results/clientpositive/tez/tez_union.q.out +++ b/ql/src/test/results/clientpositive/tez/tez_union.q.out @@ -38,6 +38,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1 input vertices: 1 Map 3 + HybridGraceHashJoin: true File Output Operator compressed: false table: @@ -327,6 +328,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1 input vertices: 1 Map 4 + HybridGraceHashJoin: true Select Operator expressions: _col1 (type: string), _col0 (type: string) outputColumnNames: _col0, _col1 @@ -354,6 +356,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1 input vertices: 1 Map 4 + HybridGraceHashJoin: true Select Operator expressions: _col1 (type: string), _col0 (type: string) outputColumnNames: _col0, _col1 @@ -494,6 +497,7 @@ STAGE PLANS: outputColumnNames: _col0 input vertices: 1 Map 4 + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -506,6 +510,7 @@ STAGE PLANS: input vertices: 1 Map 9 2 Map 10 + HybridGraceHashJoin: true Select Operator expressions: _col1 (type: string), _col0 (type: string), _col2 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -575,6 +580,7 @@ STAGE PLANS: outputColumnNames: _col0 input vertices: 1 Map 6 + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -587,6 +593,7 @@ STAGE PLANS: input vertices: 1 Map 9 2 Map 10 + HybridGraceHashJoin: true Select Operator expressions: _col1 (type: string), _col0 (type: string), _col2 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -629,6 +636,7 @@ STAGE PLANS: outputColumnNames: _col0 input vertices: 1 Map 8 + HybridGraceHashJoin: true Map Join Operator condition map: Inner Join 0 to 1 @@ -641,6 +649,7 @@ STAGE PLANS: input vertices: 1 Map 9 2 Map 10 + HybridGraceHashJoin: true Select Operator expressions: _col1 (type: string), _col0 (type: string), _col2 (type: string) outputColumnNames: _col0, _col1, _col2 @@ -892,6 +901,7 @@ STAGE PLANS: outputColumnNames: _col0 input vertices: 1 Map 3 + HybridGraceHashJoin: true File Output Operator compressed: false table: @@ -933,6 +943,7 @@ STAGE PLANS: outputColumnNames: _col0 input vertices: 1 Map 5 + HybridGraceHashJoin: true File Output Operator compressed: false table: @@ -1063,6 +1074,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1, _col2, _col3 input vertices: 1 Map 4 + HybridGraceHashJoin: true File Output Operator compressed: false table: @@ -1085,6 +1097,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1, _col2, _col3 input vertices: 1 Map 4 + HybridGraceHashJoin: true File Output Operator compressed: false table: @@ -1185,6 +1198,7 @@ STAGE PLANS: input vertices: 0 Union 2 Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE + HybridGraceHashJoin: true File Output Operator compressed: false Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE diff --git a/ql/src/test/results/clientpositive/tez/unionDistinct_1.q.out b/ql/src/test/results/clientpositive/tez/unionDistinct_1.q.out index 49fbc1b..0ef2843 100644 --- a/ql/src/test/results/clientpositive/tez/unionDistinct_1.q.out +++ b/ql/src/test/results/clientpositive/tez/unionDistinct_1.q.out @@ -5188,6 +5188,7 @@ STAGE PLANS: 1 _col0 (type: string) outputColumnNames: _col0, _col1, _col2, _col3 Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE + HybridHashJoin: true File Output Operator compressed: false Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE @@ -14075,6 +14076,7 @@ STAGE PLANS: 0 _col0 (type: string) 1 _col0 (type: string) outputColumnNames: _col0, _col1 + HybridHashJoin: true Group By Operator keys: _col0 (type: string), _col1 (type: string) mode: hash diff --git a/ql/src/test/results/clientpositive/tez/vectorized_bucketmapjoin1.q.out b/ql/src/test/results/clientpositive/tez/vectorized_bucketmapjoin1.q.out index 56ef3e2..bad1c7b 100644 --- a/ql/src/test/results/clientpositive/tez/vectorized_bucketmapjoin1.q.out +++ b/ql/src/test/results/clientpositive/tez/vectorized_bucketmapjoin1.q.out @@ -151,6 +151,7 @@ STAGE PLANS: 1 key (type: int) outputColumnNames: _col0, _col1, _col5, _col6 Statistics: Num rows: 1 Data size: 114 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col5 (type: int), _col6 (type: string) outputColumnNames: _col0, _col1, _col2, _col3 @@ -239,6 +240,7 @@ STAGE PLANS: 1 key (type: int) outputColumnNames: _col0, _col1, _col5, _col6 Statistics: Num rows: 1 Data size: 114 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col5 (type: int), _col6 (type: string) outputColumnNames: _col0, _col1, _col2, _col3 @@ -337,6 +339,7 @@ STAGE PLANS: 1 key (type: int) outputColumnNames: _col0, _col1, _col5, _col6 Statistics: Num rows: 1 Data size: 114 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: string), _col5 (type: int), _col6 (type: string) outputColumnNames: _col0, _col1, _col2, _col3 diff --git a/ql/src/test/results/clientpositive/tez/vectorized_dynamic_partition_pruning.q.out b/ql/src/test/results/clientpositive/tez/vectorized_dynamic_partition_pruning.q.out index 81e2855..54b13e3 100644 --- a/ql/src/test/results/clientpositive/tez/vectorized_dynamic_partition_pruning.q.out +++ b/ql/src/test/results/clientpositive/tez/vectorized_dynamic_partition_pruning.q.out @@ -253,6 +253,7 @@ STAGE PLANS: 0 ds (type: string) 1 ds (type: string) Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -354,6 +355,7 @@ STAGE PLANS: 0 ds (type: string) 1 ds (type: string) Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -518,6 +520,7 @@ STAGE PLANS: 1 ds (type: string) outputColumnNames: _col3 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Reduce Output Operator key expressions: _col3 (type: string) sort order: + @@ -532,6 +535,7 @@ STAGE PLANS: 0 _col3 (type: string) 1 hr (type: string) Statistics: Num rows: 2420 Data size: 25709 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -656,6 +660,7 @@ STAGE PLANS: 1 ds (type: string) outputColumnNames: _col3 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Reduce Output Operator key expressions: _col3 (type: string) sort order: + @@ -670,6 +675,7 @@ STAGE PLANS: 0 _col3 (type: string) 1 hr (type: string) Statistics: Num rows: 2420 Data size: 25709 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -816,6 +822,7 @@ STAGE PLANS: 0 ds (type: string), hr (type: string) 1 ds (type: string), hr (type: string) Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -916,6 +923,7 @@ STAGE PLANS: 0 ds (type: string), hr (type: string) 1 ds (type: string), hr (type: string) Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1045,6 +1053,7 @@ STAGE PLANS: 0 ds (type: string) 1 ds (type: string) Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1146,6 +1155,7 @@ STAGE PLANS: 0 ds (type: string) 1 ds (type: string) Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1275,6 +1285,7 @@ STAGE PLANS: 0 UDFToDouble(hr) (type: double) 1 UDFToDouble(UDFToInteger((hr / 2))) (type: double) Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1393,6 +1404,7 @@ STAGE PLANS: 0 (hr * 2) (type: double) 1 hr (type: double) Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1496,6 +1508,7 @@ STAGE PLANS: 0 UDFToDouble(hr) (type: double) 1 UDFToDouble(UDFToInteger((hr / 2))) (type: double) Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1599,6 +1612,7 @@ STAGE PLANS: 0 (hr * 2) (type: double) 1 hr (type: double) Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1730,6 +1744,7 @@ STAGE PLANS: 0 UDFToString((hr * 2)) (type: string) 1 UDFToString(hr) (type: string) Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1853,6 +1868,7 @@ STAGE PLANS: 0 1 Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -1975,6 +1991,7 @@ STAGE PLANS: 1 outputColumnNames: _col2, _col3, _col7, _col9 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Filter Operator predicate: ((_col2 = _col7) or (_col3 = _col9)) (type: boolean) Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE @@ -2113,6 +2130,7 @@ STAGE PLANS: 1 ds (type: string), hr (type: string) outputColumnNames: _col2, _col3, _col7, _col9 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Filter Operator predicate: ((_col2 = _col7) and (_col3 = _col9)) (type: boolean) Statistics: Num rows: 550 Data size: 5843 Basic stats: COMPLETE Column stats: NONE @@ -2218,6 +2236,7 @@ STAGE PLANS: 1 ds (type: string) outputColumnNames: _col8 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Filter Operator predicate: (_col8 = '2008-04-08') (type: boolean) Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE @@ -2319,6 +2338,7 @@ STAGE PLANS: 0 ds (type: string) 1 ds (type: string) Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -2400,6 +2420,7 @@ STAGE PLANS: 1 ds (type: string) outputColumnNames: _col8 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Filter Operator predicate: (_col8 = '2008-04-08') (type: boolean) Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE @@ -2536,6 +2557,7 @@ STAGE PLANS: 0 ds (type: string) 1 ds (type: string) Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Reduce Output Operator key expressions: '11' (type: string) sort order: + @@ -2550,6 +2572,7 @@ STAGE PLANS: 0 '11' (type: string) 1 '11' (type: string) Statistics: Num rows: 1210 Data size: 12854 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -2658,6 +2681,7 @@ STAGE PLANS: 0 ds (type: string) 1 ds (type: string) Statistics: Num rows: 0 Data size: 0 Basic stats: NONE Column stats: NONE + HybridHashJoin: true Reduce Output Operator key expressions: '13' (type: string) sort order: + @@ -2672,6 +2696,7 @@ STAGE PLANS: 0 '13' (type: string) 1 '13' (type: string) Statistics: Num rows: 1 Data size: 189 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -2798,6 +2823,7 @@ STAGE PLANS: 0 _col0 (type: string) 1 _col0 (type: string) Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator aggregations: count() mode: hash @@ -2983,6 +3009,7 @@ STAGE PLANS: 1 _col0 (type: string) outputColumnNames: _col0 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Group By Operator keys: _col0 (type: string) mode: hash @@ -3247,6 +3274,7 @@ STAGE PLANS: 1 _col0 (type: string) outputColumnNames: _col0 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true File Output Operator compressed: false Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE @@ -4443,6 +4471,7 @@ STAGE PLANS: 1 ds (type: string) outputColumnNames: _col8 Statistics: Num rows: 2200 Data size: 23372 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Filter Operator predicate: (_col8 = '2008-04-08') (type: boolean) Statistics: Num rows: 1100 Data size: 11686 Basic stats: COMPLETE Column stats: NONE diff --git a/ql/src/test/results/clientpositive/tez/vectorized_ptf.q.out b/ql/src/test/results/clientpositive/tez/vectorized_ptf.q.out index 7b23b63..5108b2b 100644 --- a/ql/src/test/results/clientpositive/tez/vectorized_ptf.q.out +++ b/ql/src/test/results/clientpositive/tez/vectorized_ptf.q.out @@ -710,6 +710,7 @@ STAGE PLANS: outputColumnNames: _col1, _col2, _col5 Position of Big Table: 0 Statistics: Num rows: 14 Data size: 8823 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Reduce Output Operator key expressions: _col2 (type: string), _col1 (type: string) sort order: ++ @@ -2350,6 +2351,7 @@ STAGE PLANS: outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8 Position of Big Table: 0 Statistics: Num rows: 14 Data size: 8823 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true File Output Operator compressed: false GlobalTableId: 0 @@ -2638,6 +2640,7 @@ STAGE PLANS: outputColumnNames: _col12, _col13, _col14, _col15, _col16, _col17, _col18, _col19, _col20 Position of Big Table: 0 Statistics: Num rows: 14 Data size: 8823 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Select Operator expressions: _col12 (type: int), _col13 (type: string), _col14 (type: string), _col15 (type: string), _col16 (type: string), _col17 (type: int), _col18 (type: string), _col19 (type: double), _col20 (type: string) outputColumnNames: _col0, _col1, _col2, _col3, _col4, _col5, _col6, _col7, _col8 @@ -4837,6 +4840,7 @@ STAGE PLANS: outputColumnNames: _col1, _col2, _col5, _col7 Position of Big Table: 0 Statistics: Num rows: 14 Data size: 8823 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Reduce Output Operator key expressions: _col2 (type: string), _col1 (type: string) sort order: ++ diff --git a/ql/src/test/results/clientpositive/tez/vectorized_shufflejoin.q.out b/ql/src/test/results/clientpositive/tez/vectorized_shufflejoin.q.out index 408d46e..3f33eb7 100644 --- a/ql/src/test/results/clientpositive/tez/vectorized_shufflejoin.q.out +++ b/ql/src/test/results/clientpositive/tez/vectorized_shufflejoin.q.out @@ -64,6 +64,7 @@ STAGE PLANS: 1 _col0 (type: int) outputColumnNames: _col0, _col1 Statistics: Num rows: 6758 Data size: 1453080 Basic stats: COMPLETE Column stats: NONE + HybridHashJoin: true Select Operator expressions: _col0 (type: int), _col1 (type: int), (_col0 + _col1) (type: int) outputColumnNames: _col0, _col1, _col2