Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/hive
Project: http://git-wip-us.apache.org/repos/asf/hive/repo Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/27a14d5a Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/27a14d5a Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/27a14d5a Branch: refs/heads/master Commit: 27a14d5a4cf00b34bdfd9c556c71b49fa2e58fff Parents: 95d2273 1199754 Author: Daniel Dai <da...@hortonworks.com> Authored: Fri Dec 18 12:04:17 2015 -0800 Committer: Daniel Dai <da...@hortonworks.com> Committed: Fri Dec 18 12:04:17 2015 -0800 ---------------------------------------------------------------------- .../predicate/AccumuloPredicateHandler.java | 4 +- .../predicate/TestAccumuloPredicateHandler.java | 36 +- common/pom.xml | 5 + .../hadoop/hive/common/DiskRangeInfo.java | 59 - .../common/metrics/common/MetricsConstant.java | 8 + .../metrics/metrics2/CodahaleMetrics.java | 7 + .../org/apache/hadoop/hive/conf/HiveConf.java | 125 +- .../apache/hadoop/hive/ql/log/PerfLogger.java | 56 +- .../apache/hive/common/util/BloomFilter.java | 309 - .../org/apache/hive/common/util/Murmur3.java | 335 - .../java/org/apache/hive/http/HttpServer.java | 47 + .../hive/common/metrics/MetricsTestUtils.java | 13 +- .../apache/hadoop/hive/conf/TestHiveConf.java | 14 + .../apache/hive/common/util/TestMurmur3.java | 224 - conf/ivysettings.xml | 12 +- data/conf/hive-site.xml | 5 + data/conf/llap/hive-site.xml | 5 + data/conf/llap/llap-daemon-site.xml | 5 + data/conf/perf-reg/hive-site.xml | 285 + data/conf/perf-reg/tez-site.xml | 6 + .../metastore_export/csv/TABLE_PARAMS.txt | 102 + .../metastore_export/csv/TAB_COL_STATS.txt | 259 + data/scripts/q_perf_test_init.sql | 616 + .../hive/hbase/HiveHBaseTableInputFormat.java | 11 +- .../test/results/positive/hbase_queries.q.out | 38 +- .../src/test/templates/TestHBaseCliDriver.vm | 63 +- .../templates/TestHBaseNegativeCliDriver.vm | 64 +- .../hive/hcatalog/mapreduce/SpecialCases.java | 2 +- .../hive/hcatalog/api/HCatClientHMSImpl.java | 26 +- itests/custom-udfs/pom.xml | 62 + itests/custom-udfs/udf-classloader-udf1/pom.xml | 43 + .../src/main/java/hive/it/custom/udfs/UDF1.java | 58 + itests/custom-udfs/udf-classloader-udf2/pom.xml | 43 + .../src/main/java/hive/it/custom/udfs/UDF2.java | 60 + itests/custom-udfs/udf-classloader-util/pom.xml | 35 + .../src/main/java/hive/it/custom/udfs/Util.java | 25 + .../hive/thrift/TestHadoopAuthBridge23.java | 4 - .../hive/metastore/TestMetaStoreMetrics.java | 152 +- .../hbase/TestHBaseMetastoreMetrics.java | 128 + .../hadoop/hive/ql/TestLocationQueries.java | 2 +- .../plugin/TestHiveAuthorizerShowFilters.java | 36 +- .../org/apache/hive/jdbc/TestJdbcDriver2.java | 8 + .../hive/jdbc/miniHS2/TestHs2Metrics.java | 42 +- itests/pom.xml | 1 + itests/qtest/pom.xml | 21 +- .../test/resources/testconfiguration.properties | 1 + .../hadoop/hive/accumulo/AccumuloQTestUtil.java | 2 +- .../hadoop/hive/hbase/HBaseQTestUtil.java | 2 +- .../hadoop/hive/hbase/HBaseTestSetup.java | 9 +- .../org/apache/hadoop/hive/ql/QTestUtil.java | 337 +- .../org/apache/hive/jdbc/HiveConnection.java | 9 +- .../org/apache/hive/jdbc/HiveStatement.java | 43 +- jdbc/src/java/org/apache/hive/jdbc/Utils.java | 2 + .../hadoop/hive/llap/io/api/LlapIoProxy.java | 78 - .../hadoop/hive/llap/io/api/LlapProxy.java | 111 + .../hive/llap/registry/ServiceInstance.java | 7 + .../registry/impl/LlapFixedRegistryImpl.java | 7 + .../registry/impl/LlapYarnRegistryImpl.java | 30 +- .../hive/llap/security/LlapTokenIdentifier.java | 82 + .../hive/llap/security/LlapTokenProvider.java | 27 + .../daemon/rpc/LlapDaemonProtocolProtos.java | 1059 +- .../hadoop/hive/llap/cache/BuddyAllocator.java | 1 - .../llap/cache/LowLevelCacheMemoryManager.java | 41 +- .../daemon/LlapDaemonProtocolBlockingPB.java | 6 + .../LlapManagementProtocolBlockingPB.java | 24 + .../hive/llap/daemon/impl/LlapDaemon.java | 41 +- .../impl/LlapDaemonProtocolClientImpl.java | 1 - .../impl/LlapDaemonProtocolServerImpl.java | 155 +- .../impl/LlapManagementProtocolClientImpl.java | 82 + .../hive/llap/daemon/impl/QueryFileCleaner.java | 96 - .../hive/llap/daemon/impl/QueryTracker.java | 114 +- .../daemon/services/impl/LlapWebServices.java | 33 +- .../llap/io/decode/OrcEncodedDataConsumer.java | 4 +- .../llap/io/encoded/OrcEncodedDataReader.java | 99 +- .../hive/llap/io/metadata/OrcFileMetadata.java | 41 +- .../llap/io/metadata/OrcStripeMetadata.java | 46 +- .../llap/metrics/LlapDaemonCacheMetrics.java | 13 +- .../protocol/LlapTaskUmbilicalProtocol.java | 3 + .../llap/security/LlapDaemonPolicyProvider.java | 38 + .../hive/llap/security/LlapSecurityHelper.java | 155 + .../llap/security/LlapServerSecurityInfo.java | 78 + .../hive/llap/security/LlapTokenSelector.java | 53 + .../hive/llap/security/SecretManager.java | 91 + .../llap/tezplugins/LlapTaskCommunicator.java | 22 +- .../tezplugins/LlapUmbilicalPolicyProvider.java | 42 + .../hive/llap/tezplugins/TaskCommunicator.java | 42 +- .../org.apache.hadoop.security.SecurityInfo | 14 + ...rg.apache.hadoop.security.token.TokenRenewer | 14 + llap-server/src/main/resources/package.py | 6 +- llap-server/src/main/resources/templates.py | 2 +- .../src/protobuf/LlapDaemonProtocol.proto | 11 + .../TestIncrementalObjectSizeEstimator.java | 91 +- .../llap/cache/TestLowLevelLrfuCachePolicy.java | 52 +- .../hive/llap/daemon/MiniLlapCluster.java | 2 +- .../impl/TestLlapDaemonProtocolServerImpl.java | 3 +- .../src/test/resources/llap-daemon-site.xml | 6 + .../upgrade/derby/022-HIVE-11107.derby.sql | 2 + .../upgrade/derby/hive-schema-2.1.0.derby.sql | 4 +- .../hive/metastore/HMSMetricsListener.java | 113 + .../hadoop/hive/metastore/HiveMetaStore.java | 51 + .../hadoop/hive/metastore/ObjectStore.java | 38 +- .../apache/hadoop/hive/metastore/RawStore.java | 19 + .../hive/metastore/hbase/HBaseReadWrite.java | 20 + .../hadoop/hive/metastore/hbase/HBaseStore.java | 30 + .../hadoop/hive/metastore/txn/TxnHandler.java | 89 +- .../DummyRawStoreControlledCommit.java | 15 + .../DummyRawStoreForJdoConnection.java | 15 + .../TestHiveMetaStorePartitionSpecs.java | 2 +- orc/pom.xml | 136 + .../protobuf-java/org/apache/orc/OrcProto.java | 19279 +++++++++++++++++ .../org/apache/orc/BinaryColumnStatistics.java | 27 + orc/src/java/org/apache/orc/BloomFilterIO.java | 43 + .../org/apache/orc/BooleanColumnStatistics.java | 29 + .../java/org/apache/orc/ColumnStatistics.java | 36 + .../java/org/apache/orc/CompressionCodec.java | 69 + .../java/org/apache/orc/CompressionKind.java | 27 + orc/src/java/org/apache/orc/DataReader.java | 58 + .../org/apache/orc/DateColumnStatistics.java | 39 + .../org/apache/orc/DecimalColumnStatistics.java | 46 + .../org/apache/orc/DoubleColumnStatistics.java | 46 + orc/src/java/org/apache/orc/FileMetaInfo.java | 64 + orc/src/java/org/apache/orc/FileMetadata.java | 64 + .../org/apache/orc/IntegerColumnStatistics.java | 52 + orc/src/java/org/apache/orc/OrcConf.java | 191 + orc/src/java/org/apache/orc/OrcFile.java | 536 + orc/src/java/org/apache/orc/OrcUtils.java | 452 + orc/src/java/org/apache/orc/Reader.java | 363 + orc/src/java/org/apache/orc/RecordReader.java | 66 + .../org/apache/orc/StringColumnStatistics.java | 43 + .../java/org/apache/orc/StripeInformation.java | 59 + .../java/org/apache/orc/StripeStatistics.java | 44 + .../apache/orc/TimestampColumnStatistics.java | 38 + .../java/org/apache/orc/TypeDescription.java | 544 + orc/src/java/org/apache/orc/Writer.java | 114 + .../org/apache/orc/impl/BitFieldReader.java | 216 + .../org/apache/orc/impl/BitFieldWriter.java | 73 + .../java/org/apache/orc/impl/BufferChunk.java | 85 + .../apache/orc/impl/ColumnStatisticsImpl.java | 1097 + .../orc/impl/DirectDecompressionCodec.java | 28 + .../org/apache/orc/impl/DynamicByteArray.java | 303 + .../org/apache/orc/impl/DynamicIntArray.java | 142 + .../java/org/apache/orc/impl/HadoopShims.java | 64 + .../org/apache/orc/impl/HadoopShimsCurrent.java | 62 + .../org/apache/orc/impl/HadoopShims_2_2.java | 36 + orc/src/java/org/apache/orc/impl/InStream.java | 496 + .../java/org/apache/orc/impl/IntegerReader.java | 67 + .../java/org/apache/orc/impl/IntegerWriter.java | 47 + .../java/org/apache/orc/impl/MemoryManager.java | 214 + .../org/apache/orc/impl/MetadataReader.java | 34 + .../org/apache/orc/impl/MetadataReaderImpl.java | 125 + orc/src/java/org/apache/orc/impl/OrcIndex.java | 43 + orc/src/java/org/apache/orc/impl/OutStream.java | 289 + .../org/apache/orc/impl/PositionProvider.java | 26 + .../org/apache/orc/impl/PositionRecorder.java | 25 + .../apache/orc/impl/PositionedOutputStream.java | 39 + .../java/org/apache/orc/impl/RedBlackTree.java | 311 + .../apache/orc/impl/RunLengthByteReader.java | 150 + .../apache/orc/impl/RunLengthByteWriter.java | 106 + .../apache/orc/impl/RunLengthIntegerReader.java | 157 + .../orc/impl/RunLengthIntegerReaderV2.java | 390 + .../apache/orc/impl/RunLengthIntegerWriter.java | 143 + .../orc/impl/RunLengthIntegerWriterV2.java | 831 + .../org/apache/orc/impl/SerializationUtils.java | 1297 ++ .../orc/impl/SettableUncompressedStream.java | 44 + .../java/org/apache/orc/impl/SnappyCodec.java | 108 + .../java/org/apache/orc/impl/StreamName.java | 97 + .../org/apache/orc/impl/StringRedBlackTree.java | 210 + .../java/org/apache/orc/impl/WriterImpl.java | 2912 +++ orc/src/java/org/apache/orc/impl/ZlibCodec.java | 169 + orc/src/protobuf/orc_proto.proto | 220 + .../org/apache/orc/impl/TestBitFieldReader.java | 145 + .../test/org/apache/orc/impl/TestBitPack.java | 279 + .../org/apache/orc/impl/TestDynamicArray.java | 90 + .../test/org/apache/orc/impl/TestInStream.java | 314 + .../orc/impl/TestIntegerCompressionReader.java | 130 + .../org/apache/orc/impl/TestMemoryManager.java | 133 + .../orc/impl/TestRunLengthByteReader.java | 143 + .../orc/impl/TestRunLengthIntegerReader.java | 125 + .../apache/orc/impl/TestSerializationUtils.java | 164 + .../apache/orc/impl/TestStringRedBlackTree.java | 234 + orc/src/test/org/apache/orc/impl/TestZlib.java | 56 + pom.xml | 1 + ql/pom.xml | 61 +- .../apache/hadoop/hive/ql/io/orc/OrcProto.java | 19272 ---------------- .../java/org/apache/hadoop/hive/ql/Driver.java | 206 +- .../org/apache/hadoop/hive/ql/ErrorMsg.java | 1 + .../org/apache/hadoop/hive/ql/exec/DDLTask.java | 33 +- .../hive/ql/exec/GlobalWorkMapFactory.java | 4 +- .../hadoop/hive/ql/exec/LimitOperator.java | 6 +- .../hadoop/hive/ql/exec/MapJoinOperator.java | 25 +- .../hadoop/hive/ql/exec/ObjectCacheFactory.java | 6 +- .../apache/hadoop/hive/ql/exec/Operator.java | 2 +- .../hive/ql/exec/OrcFileMergeOperator.java | 4 +- .../apache/hadoop/hive/ql/exec/PTFUtils.java | 180 - .../hadoop/hive/ql/exec/ReduceSinkOperator.java | 4 - .../hive/ql/exec/SerializationUtilities.java | 488 + .../org/apache/hadoop/hive/ql/exec/Task.java | 4 - .../hadoop/hive/ql/exec/UDFClassLoader.java | 70 + .../apache/hadoop/hive/ql/exec/Utilities.java | 745 +- .../hadoop/hive/ql/exec/mr/ExecDriver.java | 5 +- .../hadoop/hive/ql/exec/mr/MapRedTask.java | 3 +- .../hadoop/hive/ql/exec/mr/MapredLocalTask.java | 3 +- .../persistence/HybridHashTableContainer.java | 29 +- .../ql/exec/persistence/ObjectContainer.java | 40 +- .../hive/ql/exec/spark/KryoSerializer.java | 28 +- .../ql/exec/spark/RemoteHiveSparkClient.java | 1 - .../hive/ql/exec/spark/SparkUtilities.java | 6 +- .../hive/ql/exec/tez/MapRecordProcessor.java | 4 +- .../hive/ql/exec/tez/ReduceRecordProcessor.java | 4 +- .../hive/ql/exec/tez/TezSessionState.java | 38 +- .../ql/exec/vector/VectorLimitOperator.java | 26 +- .../ql/exec/vector/VectorizedBatchUtil.java | 13 +- .../ql/exec/vector/udf/VectorUDFArgDesc.java | 12 + .../org/apache/hadoop/hive/ql/io/HdfsUtils.java | 21 +- .../hadoop/hive/ql/io/HiveInputFormat.java | 11 +- .../hive/ql/io/filters/BloomFilterIO.java | 44 - .../hive/ql/io/orc/BinaryColumnStatistics.java | 25 - .../hadoop/hive/ql/io/orc/BitFieldReader.java | 212 - .../hadoop/hive/ql/io/orc/BitFieldWriter.java | 69 - .../hive/ql/io/orc/BooleanColumnStatistics.java | 27 - .../hadoop/hive/ql/io/orc/ColumnStatistics.java | 36 - .../hive/ql/io/orc/ColumnStatisticsImpl.java | 1082 - .../hadoop/hive/ql/io/orc/CompressionCodec.java | 69 - .../hadoop/hive/ql/io/orc/CompressionKind.java | 18 +- .../hadoop/hive/ql/io/orc/DataReader.java | 58 - .../hive/ql/io/orc/DateColumnStatistics.java | 37 - .../hive/ql/io/orc/DecimalColumnStatistics.java | 45 - .../ql/io/orc/DirectDecompressionCodec.java | 26 - .../hive/ql/io/orc/DoubleColumnStatistics.java | 44 - .../hadoop/hive/ql/io/orc/DynamicByteArray.java | 303 - .../hadoop/hive/ql/io/orc/DynamicIntArray.java | 142 - .../apache/hadoop/hive/ql/io/orc/FileDump.java | 22 +- .../hadoop/hive/ql/io/orc/FileMetaInfo.java | 64 - .../hadoop/hive/ql/io/orc/FileMetadata.java | 63 - .../apache/hadoop/hive/ql/io/orc/InStream.java | 501 - .../hive/ql/io/orc/IntegerColumnStatistics.java | 50 - .../hadoop/hive/ql/io/orc/IntegerReader.java | 67 - .../hadoop/hive/ql/io/orc/IntegerWriter.java | 47 - .../hadoop/hive/ql/io/orc/JsonFileDump.java | 18 +- .../hadoop/hive/ql/io/orc/MemoryManager.java | 213 - .../hadoop/hive/ql/io/orc/MetadataReader.java | 34 - .../hive/ql/io/orc/MetadataReaderImpl.java | 123 - .../apache/hadoop/hive/ql/io/orc/OrcConf.java | 191 - .../apache/hadoop/hive/ql/io/orc/OrcFile.java | 372 +- .../hive/ql/io/orc/OrcFileKeyWrapper.java | 2 + .../io/orc/OrcFileStripeMergeRecordReader.java | 4 +- .../hive/ql/io/orc/OrcFileValueWrapper.java | 2 + .../hadoop/hive/ql/io/orc/OrcInputFormat.java | 193 +- .../hive/ql/io/orc/OrcNewInputFormat.java | 1 + .../hadoop/hive/ql/io/orc/OrcNewSplit.java | 1 + .../hadoop/hive/ql/io/orc/OrcOutputFormat.java | 5 +- .../hive/ql/io/orc/OrcRawRecordMerger.java | 7 +- .../apache/hadoop/hive/ql/io/orc/OrcSerde.java | 1 + .../apache/hadoop/hive/ql/io/orc/OrcSplit.java | 2 +- .../apache/hadoop/hive/ql/io/orc/OrcStruct.java | 1 + .../apache/hadoop/hive/ql/io/orc/OrcUnion.java | 1 + .../apache/hadoop/hive/ql/io/orc/OrcUtils.java | 629 - .../apache/hadoop/hive/ql/io/orc/OutStream.java | 286 - .../hadoop/hive/ql/io/orc/PositionProvider.java | 26 - .../hadoop/hive/ql/io/orc/PositionRecorder.java | 25 - .../hive/ql/io/orc/PositionedOutputStream.java | 38 - .../apache/hadoop/hive/ql/io/orc/Reader.java | 319 +- .../hadoop/hive/ql/io/orc/ReaderImpl.java | 69 +- .../hadoop/hive/ql/io/orc/RecordReader.java | 38 +- .../hadoop/hive/ql/io/orc/RecordReaderImpl.java | 120 +- .../hive/ql/io/orc/RecordReaderUtils.java | 12 +- .../hadoop/hive/ql/io/orc/RedBlackTree.java | 309 - .../hive/ql/io/orc/RunLengthByteReader.java | 150 - .../hive/ql/io/orc/RunLengthByteWriter.java | 106 - .../hive/ql/io/orc/RunLengthIntegerReader.java | 157 - .../ql/io/orc/RunLengthIntegerReaderV2.java | 392 - .../hive/ql/io/orc/RunLengthIntegerWriter.java | 143 - .../ql/io/orc/RunLengthIntegerWriterV2.java | 831 - .../hadoop/hive/ql/io/orc/SchemaEvolution.java | 12 +- .../hive/ql/io/orc/SerializationUtils.java | 1291 -- .../ql/io/orc/SettableUncompressedStream.java | 44 - .../hadoop/hive/ql/io/orc/SnappyCodec.java | 109 - .../hadoop/hive/ql/io/orc/StreamName.java | 95 - .../hive/ql/io/orc/StringColumnStatistics.java | 41 - .../hive/ql/io/orc/StringRedBlackTree.java | 207 - .../hive/ql/io/orc/StripeInformation.java | 59 - .../hadoop/hive/ql/io/orc/StripeStatistics.java | 42 - .../ql/io/orc/TimestampColumnStatistics.java | 38 - .../hive/ql/io/orc/TreeReaderFactory.java | 14 +- .../hadoop/hive/ql/io/orc/TypeDescription.java | 540 - .../ql/io/orc/VectorizedOrcInputFormat.java | 4 +- .../apache/hadoop/hive/ql/io/orc/Writer.java | 90 +- .../hadoop/hive/ql/io/orc/WriterImpl.java | 3377 +-- .../apache/hadoop/hive/ql/io/orc/ZlibCodec.java | 171 - .../hive/ql/io/orc/encoded/EncodedReader.java | 9 +- .../ql/io/orc/encoded/EncodedReaderImpl.java | 89 +- .../orc/encoded/EncodedTreeReaderFactory.java | 260 +- .../hadoop/hive/ql/io/orc/encoded/Reader.java | 8 +- .../hive/ql/io/orc/encoded/ReaderImpl.java | 5 +- .../hive/ql/io/orc/encoded/StreamUtils.java | 11 +- .../hive/ql/io/parquet/ProjectionPusher.java | 3 +- .../io/parquet/convert/HiveStructConverter.java | 6 +- .../hive/ql/io/sarg/ConvertAstToSearchArg.java | 64 +- .../hadoop/hive/ql/lockmgr/DbLockManager.java | 47 +- .../apache/hadoop/hive/ql/metadata/Hive.java | 63 +- .../ql/optimizer/AbstractBucketJoinProc.java | 4 +- .../hive/ql/optimizer/AbstractSMBJoinProc.java | 6 +- .../ql/optimizer/BucketMapJoinOptimizer.java | 3 +- .../BucketingSortingReduceSinkOptimizer.java | 2 +- .../hadoop/hive/ql/optimizer/ColumnPruner.java | 2 +- .../hive/ql/optimizer/ConstantPropagate.java | 2 +- .../DynamicPartitionPruningOptimization.java | 73 +- .../optimizer/FixedBucketPruningOptimizer.java | 2 +- .../hive/ql/optimizer/GenMRFileSink1.java | 6 +- .../hive/ql/optimizer/GenMRProcContext.java | 20 +- .../hive/ql/optimizer/GenMRTableScan1.java | 7 +- .../hadoop/hive/ql/optimizer/GenMRUnion1.java | 5 +- .../hive/ql/optimizer/GenMapRedUtils.java | 43 +- .../hive/ql/optimizer/GlobalLimitOptimizer.java | 32 +- .../hive/ql/optimizer/GroupByOptimizer.java | 2 +- .../ql/optimizer/IdentityProjectRemover.java | 2 +- .../hadoop/hive/ql/optimizer/JoinReorder.java | 2 +- .../ql/optimizer/LimitPushdownOptimizer.java | 7 +- .../hive/ql/optimizer/MapJoinFactory.java | 10 +- .../hive/ql/optimizer/MapJoinProcessor.java | 2 +- .../ql/optimizer/NonBlockingOpDeDupProc.java | 2 +- .../hadoop/hive/ql/optimizer/Optimizer.java | 4 +- .../ql/optimizer/PartitionColumnsSeparator.java | 2 +- .../hive/ql/optimizer/PointLookupOptimizer.java | 2 +- .../hadoop/hive/ql/optimizer/SamplePruner.java | 2 +- .../ql/optimizer/SimpleFetchAggregation.java | 2 +- .../hive/ql/optimizer/SimpleFetchOptimizer.java | 32 +- .../hive/ql/optimizer/SkewJoinOptimizer.java | 8 +- .../optimizer/SortedDynPartitionOptimizer.java | 2 +- .../SortedMergeBucketMapJoinOptimizer.java | 2 +- .../hive/ql/optimizer/StatsOptimizer.java | 2 +- .../hadoop/hive/ql/optimizer/Transform.java | 20 +- .../ql/optimizer/calcite/HiveCalciteUtil.java | 98 + .../calcite/HiveDefaultRelMetadataProvider.java | 2 + .../ql/optimizer/calcite/HiveRelFactories.java | 206 + .../ql/optimizer/calcite/RelOptHiveTable.java | 9 +- .../hive/ql/optimizer/calcite/TraitsUtil.java | 4 + .../calcite/reloperators/HiveAggregate.java | 20 - .../calcite/reloperators/HiveFilter.java | 16 - .../calcite/reloperators/HiveJoin.java | 31 +- .../calcite/reloperators/HiveProject.java | 41 +- .../calcite/reloperators/HiveSemiJoin.java | 18 - .../calcite/reloperators/HiveSortLimit.java | 21 +- .../calcite/reloperators/HiveTableScan.java | 46 +- .../calcite/reloperators/HiveUnion.java | 14 - .../rules/HiveAggregateJoinTransposeRule.java | 23 +- .../rules/HiveAggregateProjectMergeRule.java | 3 +- .../rules/HiveExpandDistinctAggregatesRule.java | 18 +- .../rules/HiveFilterAggregateTransposeRule.java | 45 + .../calcite/rules/HiveFilterJoinRule.java | 14 +- .../rules/HiveFilterProjectTSTransposeRule.java | 113 + .../calcite/rules/HiveJoinAddNotNullRule.java | 3 +- .../rules/HiveJoinProjectTransposeRule.java | 36 +- .../HiveJoinPushTransitivePredicatesRule.java | 44 +- .../calcite/rules/HiveJoinToMultiJoinRule.java | 8 +- .../calcite/rules/HivePartitionPruneRule.java | 2 +- .../calcite/rules/HivePreFilteringRule.java | 174 +- .../calcite/rules/HiveProjectMergeRule.java | 4 +- .../calcite/rules/HiveRelFieldTrimmer.java | 17 +- .../calcite/rules/HiveSortJoinReduceRule.java | 5 +- .../calcite/rules/HiveWindowingFixRule.java | 4 +- .../stats/FilterSelectivityEstimator.java | 48 + .../calcite/stats/HiveRelMdPredicates.java | 645 + .../calcite/translator/ASTBuilder.java | 5 +- .../calcite/translator/ASTConverter.java | 11 +- .../calcite/translator/HiveOpConverter.java | 14 +- .../translator/HiveOpConverterPostProc.java | 8 +- .../translator/SqlFunctionConverter.java | 3 +- .../correlation/CorrelationOptimizer.java | 2 +- .../correlation/ReduceSinkDeDuplication.java | 2 +- .../ql/optimizer/index/RewriteGBUsingIndex.java | 24 +- .../RewriteQueryUsingAggregateIndexCtx.java | 13 +- .../ql/optimizer/lineage/ExprProcFactory.java | 35 +- .../hive/ql/optimizer/lineage/Generator.java | 2 +- .../ListBucketingPruner.java | 2 +- .../annotation/AnnotateWithOpTraits.java | 2 +- .../pcr/PartitionConditionRemover.java | 2 +- .../ql/optimizer/pcr/PcrExprProcFactory.java | 31 +- .../physical/CommonJoinTaskDispatcher.java | 3 +- .../physical/GenMRSkewJoinProcessor.java | 17 +- .../physical/GenSparkSkewJoinProcessor.java | 21 +- .../ql/optimizer/physical/SerializeFilter.java | 24 +- .../physical/SortMergeJoinTaskDispatcher.java | 5 +- .../ppr/PartitionExpressionForMetastore.java | 12 +- .../hive/ql/optimizer/ppr/PartitionPruner.java | 2 +- .../spark/SparkSortMergeJoinFactory.java | 6 - .../optimizer/spark/SplitSparkWorkResolver.java | 4 +- .../annotation/AnnotateWithStatistics.java | 2 +- .../stats/annotation/StatsRulesProcFactory.java | 62 +- .../ql/optimizer/unionproc/UnionProcessor.java | 2 +- .../hadoop/hive/ql/parse/CalcitePlanner.java | 216 +- .../hive/ql/parse/ColumnAccessAnalyzer.java | 36 +- .../hadoop/hive/ql/parse/GenTezUtils.java | 20 +- .../hadoop/hive/ql/parse/GlobalLimitCtx.java | 10 +- .../org/apache/hadoop/hive/ql/parse/HiveLexer.g | 1 + .../apache/hadoop/hive/ql/parse/HiveParser.g | 5 +- .../hadoop/hive/ql/parse/IdentifiersParser.g | 2 +- .../hadoop/hive/ql/parse/MapReduceCompiler.java | 3 +- .../hadoop/hive/ql/parse/ParseContext.java | 9 +- .../hadoop/hive/ql/parse/QBParseInfo.java | 20 +- .../hadoop/hive/ql/parse/SemanticAnalyzer.java | 64 +- .../hadoop/hive/ql/parse/TezCompiler.java | 8 +- .../ql/parse/UpdateDeleteSemanticAnalyzer.java | 21 +- .../ql/parse/spark/GenSparkProcContext.java | 5 +- .../hive/ql/parse/spark/GenSparkUtils.java | 18 +- .../hive/ql/parse/spark/SparkCompiler.java | 5 +- .../hive/ql/parse/spark/SplitOpTreeForDPP.java | 6 +- .../hive/ql/plan/AbstractOperatorDesc.java | 4 - .../hadoop/hive/ql/plan/AggregationDesc.java | 4 - .../hadoop/hive/ql/plan/ExprNodeDescUtils.java | 8 + .../apache/hadoop/hive/ql/plan/LimitDesc.java | 19 + .../hadoop/hive/ql/plan/LoadFileDesc.java | 3 - .../hadoop/hive/ql/plan/LoadMultiFilesDesc.java | 3 - .../org/apache/hadoop/hive/ql/plan/MapWork.java | 2 +- .../org/apache/hadoop/hive/ql/plan/PTFDesc.java | 22 +- .../apache/hadoop/hive/ql/plan/PlanUtils.java | 9 +- .../hadoop/hive/ql/plan/TableScanDesc.java | 4 - .../hive/ql/plan/ptf/PTFExpressionDef.java | 4 - .../hadoop/hive/ql/plan/ptf/ShapeDetails.java | 4 - .../hadoop/hive/ql/ppd/PredicatePushDown.java | 2 +- .../ql/ppd/PredicateTransitivePropagate.java | 2 +- .../hive/ql/ppd/SyntheticJoinPredicate.java | 2 +- .../authorization/AuthorizationUtils.java | 50 +- .../DefaultHiveAuthorizationTranslator.java | 81 + .../plugin/HiveAuthorizationTranslator.java | 46 + .../authorization/plugin/HiveAuthorizer.java | 26 +- .../plugin/HiveAuthorizerImpl.java | 26 +- .../authorization/plugin/HiveV1Authorizer.java | 18 +- .../hadoop/hive/ql/session/SessionState.java | 9 +- .../apache/hadoop/hive/ql/stats/StatsUtils.java | 20 +- .../hive/ql/stats/fs/FSStatsAggregator.java | 14 +- .../hive/ql/stats/fs/FSStatsPublisher.java | 14 +- .../ql/udf/generic/GenericUDAFFirstValue.java | 12 +- .../ql/udf/generic/GenericUDAFLastValue.java | 9 +- .../hive/ql/udf/generic/GenericUDAFMax.java | 14 +- .../generic/GenericUDAFStreamingEvaluator.java | 28 +- .../hive/ql/udf/generic/GenericUDFLeadLag.java | 5 - .../hive/ql/udf/ptf/TableFunctionEvaluator.java | 4 - .../hive/ql/udf/ptf/WindowingTableFunction.java | 18 +- .../hadoop/hive/ql/util/JavaDataModel.java | 335 - .../hadoop/hive/ql/io/orc/orc_proto.proto | 220 - .../hive/metastore/TestMetastoreExpr.java | 10 +- .../apache/hadoop/hive/ql/exec/TestPlan.java | 8 +- .../hadoop/hive/ql/exec/TestUtilities.java | 20 +- .../ql/exec/vector/util/OrcFileGenerator.java | 2 +- .../hive/ql/io/orc/TestBitFieldReader.java | 145 - .../hadoop/hive/ql/io/orc/TestBitPack.java | 316 - .../hive/ql/io/orc/TestColumnStatistics.java | 11 +- .../hadoop/hive/ql/io/orc/TestDynamicArray.java | 87 - .../hadoop/hive/ql/io/orc/TestFileDump.java | 25 +- .../hadoop/hive/ql/io/orc/TestInStream.java | 313 - .../hive/ql/io/orc/TestInputOutputFormat.java | 14 +- .../ql/io/orc/TestIntegerCompressionReader.java | 129 - .../hadoop/hive/ql/io/orc/TestJsonFileDump.java | 1 + .../hive/ql/io/orc/TestMemoryManager.java | 132 - .../hive/ql/io/orc/TestNewIntegerEncoding.java | 12 +- .../hadoop/hive/ql/io/orc/TestOrcFile.java | 72 +- .../hive/ql/io/orc/TestOrcNullOptimization.java | 7 + .../hive/ql/io/orc/TestOrcRawRecordMerger.java | 21 +- .../hive/ql/io/orc/TestOrcSerDeStats.java | 7 + .../hive/ql/io/orc/TestOrcSplitElimination.java | 40 +- .../hive/ql/io/orc/TestRecordReaderImpl.java | 7 +- .../hive/ql/io/orc/TestRunLengthByteReader.java | 142 - .../ql/io/orc/TestRunLengthIntegerReader.java | 124 - .../hive/ql/io/orc/TestSerializationUtils.java | 164 - .../hadoop/hive/ql/io/orc/TestStreamName.java | 2 + .../hive/ql/io/orc/TestStringDictionary.java | 7 +- .../hive/ql/io/orc/TestStringRedBlackTree.java | 288 - .../hive/ql/io/orc/TestTypeDescription.java | 1 + .../hive/ql/io/orc/TestUnrolledBitPack.java | 1 + .../hive/ql/io/orc/TestVectorOrcFile.java | 38 +- .../hive/ql/io/orc/TestVectorizedORCReader.java | 1 - .../apache/hadoop/hive/ql/io/orc/TestZlib.java | 55 - .../io/parquet/TestParquetRowGroupFilter.java | 27 +- .../ql/io/sarg/TestConvertAstToSearchArg.java | 35 +- .../hive/ql/lockmgr/TestDbTxnManager.java | 41 +- .../zookeeper/TestZookeeperLockManager.java | 29 +- .../hadoop/hive/ql/parse/TestGenTezWork.java | 19 +- .../queries/clientnegative/invalid_select_fn.q | 1 + .../clientpositive/cast_qualified_types.q | 2 - .../test/queries/clientpositive/decimal_stats.q | 16 + .../clientpositive/index_auto_mult_tables.q | 12 +- .../index_auto_mult_tables_compact.q | 12 +- .../queries/clientpositive/index_auto_update.q | 2 + .../test/queries/clientpositive/index_in_db.q | 3 + .../test/queries/clientpositive/index_stale.q | 1 + .../clientpositive/index_stale_partitioned.q | 1 + .../clientpositive/limit_join_transpose.q | 17 + .../test/queries/clientpositive/offset_limit.q | 25 + .../offset_limit_global_optimizer.q | 45 + .../clientpositive/offset_limit_ppd_optimizer.q | 80 + .../queries/clientpositive/orc_ppd_exception.q | 14 + .../clientpositive/parquet_type_promotion.q | 5 + .../test/queries/clientpositive/perf/query12.q | 1 + .../test/queries/clientpositive/perf/query13.q | 54 + .../test/queries/clientpositive/perf/query15.q | 1 + .../test/queries/clientpositive/perf/query17.q | 1 + .../test/queries/clientpositive/perf/query18.q | 1 + .../test/queries/clientpositive/perf/query19.q | 1 + .../test/queries/clientpositive/perf/query20.q | 1 + .../test/queries/clientpositive/perf/query21.q | 26 + .../test/queries/clientpositive/perf/query22.q | 1 + .../test/queries/clientpositive/perf/query25.q | 1 + .../test/queries/clientpositive/perf/query26.q | 1 + .../test/queries/clientpositive/perf/query27.q | 1 + .../test/queries/clientpositive/perf/query28.q | 52 + .../test/queries/clientpositive/perf/query29.q | 1 + .../test/queries/clientpositive/perf/query3.q | 1 + .../test/queries/clientpositive/perf/query31.q | 2 + .../test/queries/clientpositive/perf/query32.q | 19 + .../test/queries/clientpositive/perf/query34.q | 2 + .../test/queries/clientpositive/perf/query39.q | 2 + .../test/queries/clientpositive/perf/query40.q | 1 + .../test/queries/clientpositive/perf/query42.q | 1 + .../test/queries/clientpositive/perf/query43.q | 1 + .../test/queries/clientpositive/perf/query45.q | 1 + .../test/queries/clientpositive/perf/query46.q | 1 + .../test/queries/clientpositive/perf/query48.q | 2 + .../test/queries/clientpositive/perf/query50.q | 58 + .../test/queries/clientpositive/perf/query51.q | 42 + .../test/queries/clientpositive/perf/query52.q | 1 + .../test/queries/clientpositive/perf/query54.q | 1 + .../test/queries/clientpositive/perf/query55.q | 1 + .../test/queries/clientpositive/perf/query58.q | 47 + .../test/queries/clientpositive/perf/query64.q | 2 + .../test/queries/clientpositive/perf/query65.q | 38 + .../test/queries/clientpositive/perf/query66.q | 219 + .../test/queries/clientpositive/perf/query67.q | 44 + .../test/queries/clientpositive/perf/query68.q | 1 + .../test/queries/clientpositive/perf/query7.q | 1 + .../test/queries/clientpositive/perf/query70.q | 1 + .../test/queries/clientpositive/perf/query71.q | 2 + .../test/queries/clientpositive/perf/query72.q | 1 + .../test/queries/clientpositive/perf/query73.q | 2 + .../test/queries/clientpositive/perf/query75.q | 1 + .../test/queries/clientpositive/perf/query76.q | 1 + .../test/queries/clientpositive/perf/query79.q | 1 + .../test/queries/clientpositive/perf/query80.q | 1 + .../test/queries/clientpositive/perf/query82.q | 1 + .../test/queries/clientpositive/perf/query84.q | 1 + .../test/queries/clientpositive/perf/query85.q | 1 + .../test/queries/clientpositive/perf/query87.q | 1 + .../test/queries/clientpositive/perf/query88.q | 92 + .../test/queries/clientpositive/perf/query89.q | 27 + .../test/queries/clientpositive/perf/query90.q | 2 + .../test/queries/clientpositive/perf/query91.q | 2 + .../test/queries/clientpositive/perf/query92.q | 1 + .../test/queries/clientpositive/perf/query93.q | 1 + .../test/queries/clientpositive/perf/query94.q | 1 + .../test/queries/clientpositive/perf/query95.q | 1 + .../test/queries/clientpositive/perf/query96.q | 1 + .../test/queries/clientpositive/perf/query97.q | 1 + .../test/queries/clientpositive/perf/query98.q | 2 + ql/src/test/queries/clientpositive/semijoin3.q | 28 + .../special_character_in_tabnames_1.q | 26 +- .../queries/clientpositive/udf_classloader.q | 16 + ..._classloader_dynamic_dependency_resolution.q | 16 + ..._after_multiple_inserts_special_characters.q | 25 + .../clientpositive/vector_when_case_null.q | 14 + .../clientpositive/vectorization_offset_limit.q | 10 + .../clientpositive/windowing_windowspec4.q | 19 + .../resources/orc-file-dump-bloomfilter.out | 2 +- .../resources/orc-file-dump-bloomfilter2.out | 2 +- .../orc-file-dump-dictionary-threshold.out | 2 +- ql/src/test/resources/orc-file-dump.json | 2 +- ql/src/test/resources/orc-file-dump.out | 2 +- ql/src/test/resources/orc-file-has-null.out | 2 +- .../bucket_mapjoin_mismatch1.q.out | 28 +- .../clientnegative/invalid_select_fn.q.out | 1 + .../sortmerge_mapjoin_mismatch_1.q.out | 10 +- .../results/clientnegative/udf_invalid.q.out | 2 +- .../clientpositive/allcolref_in_udf.q.out | 14 +- .../results/clientpositive/ambiguous_col.q.out | 54 +- .../clientpositive/annotate_stats_join.q.out | 8 +- .../annotate_stats_join_pkfk.q.out | 61 +- .../archive_excludeHadoop20.q.out | 1 - .../results/clientpositive/archive_multi.q.out | 1 - .../results/clientpositive/auto_join1.q.out | 14 +- .../results/clientpositive/auto_join10.q.out | 12 +- .../results/clientpositive/auto_join12.q.out | 66 +- .../results/clientpositive/auto_join13.q.out | 10 +- .../results/clientpositive/auto_join15.q.out | 12 +- .../results/clientpositive/auto_join16.q.out | 18 +- .../results/clientpositive/auto_join17.q.out | 14 +- .../results/clientpositive/auto_join19.q.out | 14 +- .../results/clientpositive/auto_join2.q.out | 24 +- .../results/clientpositive/auto_join22.q.out | 18 +- .../results/clientpositive/auto_join24.q.out | 10 +- .../results/clientpositive/auto_join26.q.out | 20 +- .../results/clientpositive/auto_join3.q.out | 18 +- .../results/clientpositive/auto_join30.q.out | 64 +- .../results/clientpositive/auto_join33.q.out | 16 +- .../results/clientpositive/auto_join4.q.out | 4 +- .../results/clientpositive/auto_join5.q.out | 4 +- .../results/clientpositive/auto_join8.q.out | 18 +- .../results/clientpositive/auto_join9.q.out | 14 +- .../auto_join_reordering_values.q.out | 10 +- .../clientpositive/auto_join_stats.q.out | 106 +- .../clientpositive/auto_join_stats2.q.out | 46 +- .../auto_join_without_localtask.q.out | 148 +- .../clientpositive/auto_smb_mapjoin_14.q.out | 72 +- .../clientpositive/auto_sortmerge_join_1.q.out | 20 +- .../clientpositive/auto_sortmerge_join_11.q.out | 22 +- .../clientpositive/auto_sortmerge_join_12.q.out | 12 +- .../clientpositive/auto_sortmerge_join_13.q.out | 6 +- .../clientpositive/auto_sortmerge_join_2.q.out | 24 +- .../clientpositive/auto_sortmerge_join_3.q.out | 28 +- .../clientpositive/auto_sortmerge_join_4.q.out | 28 +- .../clientpositive/auto_sortmerge_join_5.q.out | 28 +- .../clientpositive/auto_sortmerge_join_6.q.out | 128 +- .../clientpositive/auto_sortmerge_join_7.q.out | 28 +- .../clientpositive/auto_sortmerge_join_8.q.out | 28 +- .../clientpositive/auto_sortmerge_join_9.q.out | 204 +- .../clientpositive/bucket_map_join_spark1.q.out | 28 +- .../clientpositive/bucket_map_join_spark2.q.out | 28 +- .../clientpositive/bucket_map_join_spark3.q.out | 28 +- .../clientpositive/bucket_map_join_spark4.q.out | 40 +- .../clientpositive/bucketcontext_1.q.out | 8 +- .../clientpositive/bucketcontext_2.q.out | 8 +- .../clientpositive/bucketcontext_3.q.out | 8 +- .../clientpositive/bucketcontext_4.q.out | 8 +- .../clientpositive/bucketcontext_5.q.out | 8 +- .../clientpositive/bucketcontext_6.q.out | 8 +- .../clientpositive/bucketcontext_7.q.out | 8 +- .../clientpositive/bucketcontext_8.q.out | 8 +- .../bucketizedhiveinputformat.q.out | 2 - .../results/clientpositive/bucketmapjoin1.q.out | 20 +- .../clientpositive/bucketmapjoin10.q.out | 6 +- .../clientpositive/bucketmapjoin11.q.out | 12 +- .../clientpositive/bucketmapjoin12.q.out | 12 +- .../clientpositive/bucketmapjoin13.q.out | 24 +- .../results/clientpositive/bucketmapjoin2.q.out | 30 +- .../results/clientpositive/bucketmapjoin3.q.out | 20 +- .../results/clientpositive/bucketmapjoin4.q.out | 20 +- .../results/clientpositive/bucketmapjoin5.q.out | 20 +- .../results/clientpositive/bucketmapjoin7.q.out | 12 +- .../results/clientpositive/bucketmapjoin8.q.out | 12 +- .../results/clientpositive/bucketmapjoin9.q.out | 12 +- .../clientpositive/bucketmapjoin_negative.q.out | 10 +- .../bucketmapjoin_negative2.q.out | 10 +- .../bucketmapjoin_negative3.q.out | 90 +- .../bucketsortoptimize_insert_2.q.out | 56 +- .../bucketsortoptimize_insert_4.q.out | 30 +- .../bucketsortoptimize_insert_5.q.out | 40 +- .../bucketsortoptimize_insert_6.q.out | 114 +- .../bucketsortoptimize_insert_7.q.out | 12 +- .../bucketsortoptimize_insert_8.q.out | 8 +- .../clientpositive/cbo_rp_auto_join1.q.out | 396 +- .../clientpositive/cbo_rp_auto_join17.q.out | 14 +- .../cbo_rp_cross_product_check_2.q.out | 56 +- .../clientpositive/cbo_rp_lineage2.q.out | 8 +- .../results/clientpositive/cbo_udf_max.q.out | 4 +- .../clientpositive/column_access_stats.q.out | 52 +- .../clientpositive/constprog_partitioner.q.out | 44 +- .../clientpositive/correlationoptimizer1.q.out | 190 +- .../clientpositive/correlationoptimizer10.q.out | 176 +- .../clientpositive/correlationoptimizer11.q.out | 72 +- .../clientpositive/correlationoptimizer12.q.out | 16 +- .../clientpositive/correlationoptimizer13.q.out | 42 +- .../clientpositive/correlationoptimizer14.q.out | 234 +- .../clientpositive/correlationoptimizer15.q.out | 60 +- .../clientpositive/correlationoptimizer2.q.out | 104 +- .../clientpositive/correlationoptimizer3.q.out | 220 +- .../clientpositive/correlationoptimizer4.q.out | 74 +- .../clientpositive/correlationoptimizer5.q.out | 110 +- .../clientpositive/correlationoptimizer6.q.out | 616 +- .../clientpositive/correlationoptimizer7.q.out | 104 +- .../clientpositive/correlationoptimizer8.q.out | 34 +- .../clientpositive/correlationoptimizer9.q.out | 120 +- .../results/clientpositive/cross_join.q.out | 28 +- .../clientpositive/cross_product_check_1.q.out | 66 +- .../clientpositive/cross_product_check_2.q.out | 54 +- .../results/clientpositive/decimal_join2.q.out | 36 +- .../results/clientpositive/decimal_stats.q.out | 106 + .../results/clientpositive/decimal_udf.q.out | 12 +- .../clientpositive/dynamic_rdd_cache.q.out | 34 +- .../encryption_join_unencrypted_tbl.q.out | 20 +- ...on_join_with_different_encryption_keys.q.out | 16 +- .../clientpositive/explain_logical.q.out | 198 +- .../clientpositive/filter_cond_pushdown.q.out | 241 +- .../clientpositive/filter_join_breaktask.q.out | 32 +- .../clientpositive/groupby_join_pushdown.q.out | 320 +- .../groupby_multi_single_reducer3.q.out | 16 +- .../clientpositive/groupby_position.q.out | 30 +- .../clientpositive/groupby_sort_1_23.q.out | 46 +- .../clientpositive/groupby_sort_skew_1_23.q.out | 50 +- .../test/results/clientpositive/having2.q.out | 66 +- .../identity_project_remove_skip.q.out | 10 +- .../clientpositive/index_auto_mult_tables.q.out | 170 +- .../index_auto_mult_tables_compact.q.out | 148 +- .../clientpositive/index_auto_self_join.q.out | 58 +- .../clientpositive/index_auto_update.q.out | 6 + .../results/clientpositive/index_bitmap3.q.out | 30 +- .../clientpositive/index_bitmap_auto.q.out | 30 +- .../index_bitmap_auto_partitioned.q.out | 6 +- .../index_bitmap_compression.q.out | 6 +- .../results/clientpositive/index_in_db.q.out | 12 + .../results/clientpositive/index_stale.q.out | 6 + .../index_stale_partitioned.q.out | 6 + .../infer_bucket_sort_map_operators.q.out | 22 +- .../test/results/clientpositive/innerjoin.q.out | 18 +- .../test/results/clientpositive/input39.q.out | 10 +- .../results/clientpositive/input_part9.q.out | 4 +- .../clientpositive/input_testxpath2.q.out | 6 +- .../clientpositive/input_testxpath4.q.out | 12 +- ql/src/test/results/clientpositive/join1.q.out | 18 +- ql/src/test/results/clientpositive/join10.q.out | 18 +- ql/src/test/results/clientpositive/join12.q.out | 65 +- ql/src/test/results/clientpositive/join13.q.out | 16 +- ql/src/test/results/clientpositive/join15.q.out | 18 +- ql/src/test/results/clientpositive/join16.q.out | 20 +- ql/src/test/results/clientpositive/join17.q.out | 18 +- ql/src/test/results/clientpositive/join2.q.out | 32 +- ql/src/test/results/clientpositive/join22.q.out | 28 +- ql/src/test/results/clientpositive/join25.q.out | 10 +- ql/src/test/results/clientpositive/join26.q.out | 12 +- ql/src/test/results/clientpositive/join27.q.out | 10 +- ql/src/test/results/clientpositive/join28.q.out | 22 +- ql/src/test/results/clientpositive/join29.q.out | 42 +- ql/src/test/results/clientpositive/join3.q.out | 24 +- ql/src/test/results/clientpositive/join30.q.out | 16 +- ql/src/test/results/clientpositive/join31.q.out | 40 +- ql/src/test/results/clientpositive/join32.q.out | 22 +- .../clientpositive/join32_lessSize.q.out | 124 +- ql/src/test/results/clientpositive/join33.q.out | 22 +- ql/src/test/results/clientpositive/join34.q.out | 4 +- ql/src/test/results/clientpositive/join35.q.out | 4 +- ql/src/test/results/clientpositive/join36.q.out | 10 +- ql/src/test/results/clientpositive/join37.q.out | 10 +- ql/src/test/results/clientpositive/join40.q.out | 32 +- ql/src/test/results/clientpositive/join42.q.out | 77 +- ql/src/test/results/clientpositive/join43.q.out | 66 +- ql/src/test/results/clientpositive/join8.q.out | 16 +- ql/src/test/results/clientpositive/join9.q.out | 18 +- .../clientpositive/join_alt_syntax.q.out | 144 +- .../clientpositive/join_cond_pushdown_1.q.out | 86 +- .../clientpositive/join_cond_pushdown_2.q.out | 74 +- .../clientpositive/join_cond_pushdown_3.q.out | 86 +- .../clientpositive/join_cond_pushdown_4.q.out | 74 +- .../join_cond_pushdown_unqual1.q.out | 24 +- .../join_cond_pushdown_unqual2.q.out | 44 +- .../join_cond_pushdown_unqual3.q.out | 24 +- .../join_cond_pushdown_unqual4.q.out | 44 +- .../clientpositive/join_grp_diff_keys.q.out | 8 +- .../results/clientpositive/join_map_ppr.q.out | 24 +- .../join_merge_multi_expressions.q.out | 20 +- .../results/clientpositive/join_nullsafe.q.out | 36 +- .../clientpositive/join_on_varchar.q.out | 14 +- .../results/clientpositive/join_parse.q.out | 130 +- .../test/results/clientpositive/join_rc.q.out | 18 +- .../results/clientpositive/join_reorder.q.out | 24 +- .../test/results/clientpositive/join_star.q.out | 54 +- .../results/clientpositive/join_thrift.q.out | 14 +- .../test/results/clientpositive/join_vc.q.out | 30 +- .../clientpositive/lateral_view_cp.q.out | 24 +- .../clientpositive/limit_join_transpose.q.out | 48 + .../results/clientpositive/limit_pushdown.q.out | 14 +- .../limit_pushdown_negative.q.out | 14 +- .../test/results/clientpositive/lineage2.q.out | 18 +- .../test/results/clientpositive/lineage3.q.out | 20 +- .../list_bucket_query_oneskew_2.q.out | 2 +- .../llap/bucket_map_join_tez1.q.out | 341 +- .../llap/bucket_map_join_tez2.q.out | 135 +- .../llap/dynamic_partition_pruning.q.out | 259 +- .../llap/dynamic_partition_pruning_2.q.out | 21 +- .../llap/hybridgrace_hashjoin_1.q.out | 97 +- .../llap/hybridgrace_hashjoin_2.q.out | 128 +- .../clientpositive/llap/lvj_mapjoin.q.out | 56 +- .../clientpositive/llap/mapjoin_decimal.q.out | 18 +- .../results/clientpositive/llap/mergejoin.q.out | 1614 +- .../test/results/clientpositive/llap/mrr.q.out | 130 +- .../llap/tez_bmj_schema_evolution.q.out | 18 +- .../llap/tez_dynpart_hashjoin_1.q.out | 120 +- .../llap/tez_dynpart_hashjoin_2.q.out | 118 +- .../clientpositive/llap/tez_join_hash.q.out | 145 +- .../llap/tez_join_result_complex.q.out | 64 +- .../clientpositive/llap/tez_self_join.q.out | 28 +- .../results/clientpositive/llap/tez_smb_1.q.out | 64 +- .../clientpositive/llap/tez_smb_main.q.out | 207 +- .../results/clientpositive/llap/tez_union.q.out | 172 +- .../llap/tez_vector_dynpart_hashjoin_1.q.out | 120 +- .../llap/tez_vector_dynpart_hashjoin_2.q.out | 122 +- .../vectorized_dynamic_partition_pruning.q.out | 259 +- .../llap/vectorized_nested_mapjoin.q.out | 66 +- .../clientpositive/llap_uncompressed.q.out | 6 +- .../clientpositive/louter_join_ppr.q.out | 28 +- .../clientpositive/mapjoin_distinct.q.out | 60 +- .../clientpositive/mapjoin_mapjoin.q.out | 60 +- .../clientpositive/mapjoin_memcheck.q.out | 12 +- .../clientpositive/mapjoin_subquery.q.out | 44 +- .../test/results/clientpositive/mergejoin.q.out | 210 +- .../results/clientpositive/mergejoins.q.out | 38 +- .../clientpositive/mergejoins_mixed.q.out | 266 +- .../results/clientpositive/metadataonly1.q.out | 8 +- .../results/clientpositive/multiMapJoin1.q.out | 384 +- .../results/clientpositive/multiMapJoin2.q.out | 324 +- .../clientpositive/multi_join_union.q.out | 26 +- .../results/clientpositive/nonmr_fetch.q.out | 16 +- .../results/clientpositive/offset_limit.q.out | 257 + .../offset_limit_global_optimizer.q.out | 3390 +++ .../offset_limit_ppd_optimizer.q.out | 1377 ++ .../results/clientpositive/orc_file_dump.q.out | 6 +- .../test/results/clientpositive/orc_llap.q.out | 52 +- .../results/clientpositive/orc_merge10.q.out | 4 +- .../results/clientpositive/orc_merge11.q.out | 6 +- .../clientpositive/orc_ppd_exception.q.out | 49 + .../clientpositive/orc_predicate_pushdown.q.out | 32 +- .../results/clientpositive/parallel_join1.q.out | 18 +- .../results/clientpositive/parquet_join.q.out | 36 +- .../parquet_predicate_pushdown.q.out | 32 +- .../clientpositive/parquet_type_promotion.q.out | 27 +- ql/src/test/results/clientpositive/pcr.q.out | 40 +- .../results/clientpositive/perf/query12.q.out | 129 + .../results/clientpositive/perf/query13.q.out | 300 + .../results/clientpositive/perf/query15.q.out | 153 + .../results/clientpositive/perf/query17.q.out | 264 + .../results/clientpositive/perf/query18.q.out | 236 + .../results/clientpositive/perf/query19.q.out | 207 + .../results/clientpositive/perf/query20.q.out | 138 + .../results/clientpositive/perf/query21.q.out | 201 + .../results/clientpositive/perf/query22.q.out | 148 + .../results/clientpositive/perf/query25.q.out | 264 + .../results/clientpositive/perf/query26.q.out | 174 + .../results/clientpositive/perf/query27.q.out | 178 + .../results/clientpositive/perf/query28.q.out | 357 + .../results/clientpositive/perf/query29.q.out | 264 + .../results/clientpositive/perf/query3.q.out | 119 + .../results/clientpositive/perf/query31.q.out | 641 + .../results/clientpositive/perf/query32.q.out | 205 + .../results/clientpositive/perf/query34.q.out | 177 + .../results/clientpositive/perf/query39.q.out | 313 + .../results/clientpositive/perf/query40.q.out | 177 + .../results/clientpositive/perf/query42.q.out | 117 + .../results/clientpositive/perf/query43.q.out | 118 + .../results/clientpositive/perf/query45.q.out | 210 + .../results/clientpositive/perf/query46.q.out | 241 + .../results/clientpositive/perf/query48.q.out | 160 + .../results/clientpositive/perf/query50.q.out | 287 + .../results/clientpositive/perf/query51.q.out | 283 + .../results/clientpositive/perf/query52.q.out | 118 + .../results/clientpositive/perf/query54.q.out | 314 + .../results/clientpositive/perf/query55.q.out | 118 + .../results/clientpositive/perf/query58.q.out | 602 + .../results/clientpositive/perf/query64.q.out | 1192 + .../results/clientpositive/perf/query65.q.out | 315 + .../results/clientpositive/perf/query66.q.out | 796 + .../results/clientpositive/perf/query67.q.out | 249 + .../results/clientpositive/perf/query68.q.out | 241 + .../results/clientpositive/perf/query7.q.out | 174 + .../results/clientpositive/perf/query70.q.out | 268 + .../results/clientpositive/perf/query71.q.out | 242 + .../results/clientpositive/perf/query72.q.out | 352 + .../results/clientpositive/perf/query73.q.out | 177 + .../results/clientpositive/perf/query75.q.out | 719 + .../results/clientpositive/perf/query76.q.out | 284 + .../results/clientpositive/perf/query79.q.out | 181 + .../results/clientpositive/perf/query80.q.out | 602 + .../results/clientpositive/perf/query82.q.out | 127 + .../results/clientpositive/perf/query84.q.out | 171 + .../results/clientpositive/perf/query85.q.out | 275 + .../results/clientpositive/perf/query87.q.out | 334 + .../results/clientpositive/perf/query88.q.out | 1157 + .../results/clientpositive/perf/query89.q.out | 224 + .../results/clientpositive/perf/query90.q.out | 260 + .../results/clientpositive/perf/query91.q.out | 232 + .../results/clientpositive/perf/query92.q.out | 160 + .../results/clientpositive/perf/query93.q.out | 117 + .../results/clientpositive/perf/query94.q.out | 228 + .../results/clientpositive/perf/query95.q.out | 275 + .../results/clientpositive/perf/query96.q.out | 135 + .../results/clientpositive/perf/query97.q.out | 163 + .../results/clientpositive/perf/query98.q.out | 135 + .../results/clientpositive/pointlookup2.q.out | 40 +- .../results/clientpositive/pointlookup3.q.out | 40 +- .../test/results/clientpositive/ppd_gby.q.out | 49 +- .../test/results/clientpositive/ppd_gby2.q.out | 55 +- .../results/clientpositive/ppd_gby_join.q.out | 96 +- .../test/results/clientpositive/ppd_join.q.out | 86 +- .../test/results/clientpositive/ppd_join2.q.out | 133 +- .../test/results/clientpositive/ppd_join3.q.out | 155 +- .../test/results/clientpositive/ppd_join5.q.out | 10 +- .../clientpositive/ppd_join_filter.q.out | 130 +- .../clientpositive/ppd_multi_insert.q.out | 68 +- .../clientpositive/ppd_outer_join2.q.out | 66 +- .../clientpositive/ppd_outer_join3.q.out | 66 +- .../clientpositive/ppd_outer_join4.q.out | 223 +- .../clientpositive/ppd_outer_join5.q.out | 231 +- .../results/clientpositive/ppd_random.q.out | 16 +- .../clientpositive/ppd_repeated_alias.q.out | 2 +- .../results/clientpositive/ppd_udf_case.q.out | 59 +- .../results/clientpositive/ppd_udf_col.q.out | 178 +- .../test/results/clientpositive/ppd_union.q.out | 42 +- .../results/clientpositive/ppd_union_view.q.out | 34 +- ql/src/test/results/clientpositive/ppd_vc.q.out | 30 +- ql/src/test/results/clientpositive/ptf.q.out | 72 +- .../results/clientpositive/ptf_streaming.q.out | 58 +- .../results/clientpositive/ptfgroupbyjoin.q.out | 44 +- .../results/clientpositive/quotedid_basic.q.out | 12 +- .../clientpositive/quotedid_partition.q.out | 4 +- .../reduce_deduplicate_exclude_join.q.out | 12 +- .../reduce_deduplicate_extended.q.out | 86 +- .../test/results/clientpositive/regex_col.q.out | 22 +- .../clientpositive/router_join_ppr.q.out | 30 +- .../runtime_skewjoin_mapjoin_spark.q.out | 58 +- .../test/results/clientpositive/sample8.q.out | 46 +- .../clientpositive/select_transform_hint.q.out | 24 +- .../test/results/clientpositive/semijoin.q.out | 272 +- .../test/results/clientpositive/semijoin3.q.out | 156 + .../test/results/clientpositive/skewjoin.q.out | 259 +- .../clientpositive/skewjoin_mapjoin10.q.out | 32 +- .../clientpositive/skewjoin_mapjoin6.q.out | 48 +- .../clientpositive/skewjoin_noskew.q.out | 18 +- .../clientpositive/skewjoin_onesideskew.q.out | 18 +- .../results/clientpositive/skewjoinopt10.q.out | 52 +- .../results/clientpositive/skewjoinopt12.q.out | 8 +- .../results/clientpositive/skewjoinopt15.q.out | 40 +- .../results/clientpositive/skewjoinopt16.q.out | 8 +- .../results/clientpositive/skewjoinopt17.q.out | 8 +- .../results/clientpositive/skewjoinopt18.q.out | 14 +- .../results/clientpositive/skewjoinopt2.q.out | 16 +- .../results/clientpositive/smb_mapjoin9.q.out | 2 +- .../results/clientpositive/smb_mapjoin_1.q.out | 2 +- .../results/clientpositive/smb_mapjoin_10.q.out | 2 +- .../results/clientpositive/smb_mapjoin_11.q.out | 2 +- .../results/clientpositive/smb_mapjoin_12.q.out | 4 +- .../results/clientpositive/smb_mapjoin_13.q.out | 14 +- .../results/clientpositive/smb_mapjoin_14.q.out | 18 +- .../results/clientpositive/smb_mapjoin_15.q.out | 18 +- .../results/clientpositive/smb_mapjoin_16.q.out | 2 +- .../results/clientpositive/smb_mapjoin_17.q.out | 2 +- .../results/clientpositive/smb_mapjoin_2.q.out | 4 +- .../results/clientpositive/smb_mapjoin_25.q.out | 105 +- .../results/clientpositive/smb_mapjoin_3.q.out | 2 +- .../results/clientpositive/smb_mapjoin_4.q.out | 2 +- .../results/clientpositive/smb_mapjoin_6.q.out | 4 +- .../clientpositive/sort_merge_join_desc_2.q.out | 2 +- .../clientpositive/sort_merge_join_desc_3.q.out | 2 +- .../clientpositive/sort_merge_join_desc_4.q.out | 6 +- .../clientpositive/sort_merge_join_desc_5.q.out | 2 +- .../clientpositive/sort_merge_join_desc_6.q.out | 6 +- .../clientpositive/sort_merge_join_desc_7.q.out | 6 +- .../clientpositive/sort_merge_join_desc_8.q.out | 6 +- .../spark/annotate_stats_join.q.out | 8 +- .../clientpositive/spark/auto_join1.q.out | 14 +- .../clientpositive/spark/auto_join10.q.out | 12 +- .../clientpositive/spark/auto_join12.q.out | 73 +- .../clientpositive/spark/auto_join13.q.out | 10 +- .../clientpositive/spark/auto_join15.q.out | 12 +- .../clientpositive/spark/auto_join16.q.out | 14 +- .../clientpositive/spark/auto_join17.q.out | 14 +- .../clientpositive/spark/auto_join19.q.out | 14 +- .../clientpositive/spark/auto_join2.q.out | 98 +- .../clientpositive/spark/auto_join22.q.out | 18 +- .../clientpositive/spark/auto_join24.q.out | 10 +- .../clientpositive/spark/auto_join26.q.out | 20 +- .../clientpositive/spark/auto_join3.q.out | 18 +- .../clientpositive/spark/auto_join30.q.out | 38 +- .../clientpositive/spark/auto_join8.q.out | 14 +- .../clientpositive/spark/auto_join9.q.out | 14 +- .../spark/auto_join_reordering_values.q.out | 10 +- .../clientpositive/spark/auto_join_stats.q.out | 58 +- .../clientpositive/spark/auto_join_stats2.q.out | 46 +- .../spark/auto_join_without_localtask.q.out | 68 +- .../spark/auto_smb_mapjoin_14.q.out | 126 +- .../spark/auto_sortmerge_join_1.q.out | 18 +- .../spark/auto_sortmerge_join_12.q.out | 12 +- .../spark/auto_sortmerge_join_13.q.out | 44 +- .../spark/auto_sortmerge_join_2.q.out | 16 +- .../spark/auto_sortmerge_join_3.q.out | 22 +- .../spark/auto_sortmerge_join_4.q.out | 22 +- .../spark/auto_sortmerge_join_5.q.out | 22 +- .../spark/auto_sortmerge_join_6.q.out | 144 +- .../spark/auto_sortmerge_join_7.q.out | 22 +- .../spark/auto_sortmerge_join_8.q.out | 22 +- .../spark/auto_sortmerge_join_9.q.out | 220 +- .../spark/bucket_map_join_spark1.q.out | 28 +- .../spark/bucket_map_join_spark2.q.out | 28 +- .../spark/bucket_map_join_spark3.q.out | 28 +- .../spark/bucket_map_join_spark4.q.out | 140 +- .../spark/bucket_map_join_tez1.q.out | 361 +- .../spark/bucket_map_join_tez2.q.out | 185 +- .../spark/bucketizedhiveinputformat.q.out | 2 - .../clientpositive/spark/bucketmapjoin1.q.out | 20 +- .../clientpositive/spark/bucketmapjoin10.q.out | 6 +- .../clientpositive/spark/bucketmapjoin11.q.out | 12 +- .../clientpositive/spark/bucketmapjoin12.q.out | 12 +- .../clientpositive/spark/bucketmapjoin13.q.out | 24 +- .../clientpositive/spark/bucketmapjoin2.q.out | 30 +- .../clientpositive/spark/bucketmapjoin3.q.out | 20 +- .../clientpositive/spark/bucketmapjoin4.q.out | 20 +- .../clientpositive/spark/bucketmapjoin5.q.out | 20 +- .../clientpositive/spark/bucketmapjoin7.q.out | 12 +- .../clientpositive/spark/bucketmapjoin8.q.out | 12 +- .../clientpositive/spark/bucketmapjoin9.q.out | 12 +- .../spark/bucketmapjoin_negative.q.out | 10 +- .../spark/bucketmapjoin_negative2.q.out | 10 +- .../spark/bucketmapjoin_negative3.q.out | 90 +- .../spark/bucketsortoptimize_insert_2.q.out | 108 +- .../spark/bucketsortoptimize_insert_4.q.out | 30 +- .../spark/bucketsortoptimize_insert_6.q.out | 154 +- .../spark/bucketsortoptimize_insert_7.q.out | 54 +- .../spark/bucketsortoptimize_insert_8.q.out | 36 +- .../spark/column_access_stats.q.out | 52 +- .../spark/constprog_partitioner.q.out | 44 +- .../clientpositive/spark/cross_join.q.out | 28 +- .../spark/cross_product_check_1.q.out | 66 +- .../spark/cross_product_check_2.q.out | 48 +- .../spark/dynamic_rdd_cache.q.out | 34 +- .../spark/filter_join_breaktask.q.out | 28 +- .../spark/groupby_multi_single_reducer3.q.out | 16 +- .../clientpositive/spark/groupby_position.q.out | 32 +- .../spark/groupby_sort_1_23.q.out | 46 +- .../spark/groupby_sort_skew_1_23.q.out | 50 +- .../spark/identity_project_remove_skip.q.out | 8 +- .../spark/index_auto_self_join.q.out | 42 +- .../clientpositive/spark/index_bitmap3.q.out | 30 +- .../spark/index_bitmap_auto.q.out | 30 +- .../spark/infer_bucket_sort_map_operators.q.out | 38 +- .../infer_bucket_sort_reducers_power_two.q.out | 8 +- .../clientpositive/spark/innerjoin.q.out | 18 +- .../results/clientpositive/spark/join1.q.out | 18 +- .../results/clientpositive/spark/join10.q.out | 18 +- .../results/clientpositive/spark/join12.q.out | 51 +- .../results/clientpositive/spark/join13.q.out | 16 +- .../results/clientpositive/spark/join15.q.out | 18 +- .../results/clientpositive/spark/join16.q.out | 20 +- .../results/clientpositive/spark/join17.q.out | 18 +- .../results/clientpositive/spark/join2.q.out | 32 +- .../results/clientpositive/spark/join22.q.out | 22 +- .../results/clientpositive/spark/join25.q.out | 10 +- .../results/clientpositive/spark/join26.q.out | 12 +- .../results/clientpositive/spark/join27.q.out | 10 +- .../results/clientpositive/spark/join28.q.out | 22 +- .../results/clientpositive/spark/join29.q.out | 26 +- .../results/clientpositive/spark/join3.q.out | 24 +- .../results/clientpositive/spark/join30.q.out | 16 +- .../results/clientpositive/spark/join31.q.out | 28 +- .../results/clientpositive/spark/join32.q.out | 22 +- .../clientpositive/spark/join32_lessSize.q.out | 138 +- .../results/clientpositive/spark/join33.q.out | 22 +- .../results/clientpositive/spark/join34.q.out | 6 +- .../results/clientpositive/spark/join35.q.out | 6 +- .../results/clientpositive/spark/join36.q.out | 10 +- .../results/clientpositive/spark/join37.q.out | 10 +- .../results/clientpositive/spark/join40.q.out | 32 +- .../results/clientpositive/spark/join8.q.out | 16 +- .../results/clientpositive/spark/join9.q.out | 18 +- .../clientpositive/spark/join_alt_syntax.q.out | 144 +- .../spark/join_cond_pushdown_1.q.out | 86 +- .../spark/join_cond_pushdown_2.q.out | 74 +- .../spark/join_cond_pushdown_3.q.out | 86 +- .../spark/join_cond_pushdown_4.q.out | 74 +- .../spark/join_cond_pushdown_unqual1.q.out | 24 +- .../spark/join_cond_pushdown_unqual2.q.out | 44 +- .../spark/join_cond_pushdown_unqual3.q.out | 24 +- .../spark/join_cond_pushdown_unqual4.q.out | 44 +- .../clientpositive/spark/join_map_ppr.q.out | 24 +- .../spark/join_merge_multi_expressions.q.out | 20 +- .../clientpositive/spark/join_nullsafe.q.out | 36 +- .../results/clientpositive/spark/join_rc.q.out | 18 +- .../clientpositive/spark/join_reorder.q.out | 24 +- .../clientpositive/spark/join_star.q.out | 54 +- .../clientpositive/spark/join_thrift.q.out | 14 +- .../results/clientpositive/spark/join_vc.q.out | 30 +- .../clientpositive/spark/limit_pushdown.q.out | 14 +- .../clientpositive/spark/louter_join_ppr.q.out | 18 +- .../clientpositive/spark/mapjoin_decimal.q.out | 16 +- .../clientpositive/spark/mapjoin_distinct.q.out | 60 +- .../clientpositive/spark/mapjoin_mapjoin.q.out | 158 +- .../clientpositive/spark/mapjoin_memcheck.q.out | 12 +- .../clientpositive/spark/mapjoin_subquery.q.out | 44 +- .../clientpositive/spark/mergejoins.q.out | 38 +- .../clientpositive/spark/mergejoins_mixed.q.out | 266 +- .../clientpositive/spark/multi_join_union.q.out | 28 +- .../clientpositive/spark/parallel_join1.q.out | 18 +- .../clientpositive/spark/parquet_join.q.out | 42 +- .../test/results/clientpositive/spark/pcr.q.out | 40 +- .../clientpositive/spark/ppd_gby_join.q.out | 96 +- .../results/clientpositive/spark/ppd_join.q.out | 86 +- .../clientpositive/spark/ppd_join2.q.out | 133 +- .../clientpositive/spark/ppd_join3.q.out | 153 +- .../clientpositive/spark/ppd_join5.q.out | 10 +- .../clientpositive/spark/ppd_join_filter.q.out | 130 +- .../clientpositive/spark/ppd_multi_insert.q.out | 68 +- .../clientpositive/spark/ppd_outer_join2.q.out | 66 +- .../clientpositive/spark/ppd_outer_join3.q.out | 66 +- .../clientpositive/spark/ppd_outer_join4.q.out | 211 +- .../clientpositive/spark/ppd_outer_join5.q.out | 207 +- .../test/results/clientpositive/spark/ptf.q.out | 72 +- .../clientpositive/spark/ptf_streaming.q.out | 58 +- .../spark/reduce_deduplicate_exclude_join.q.out | 12 +- .../clientpositive/spark/router_join_ppr.q.out | 20 +- .../spark/runtime_skewjoin_mapjoin_spark.q.out | 26 +- .../results/clientpositive/spark/sample8.q.out | 46 +- .../results/clientpositive/spark/semijoin.q.out | 272 +- .../results/clientpositive/spark/skewjoin.q.out | 283 +- .../clientpositive/spark/skewjoin_noskew.q.out | 18 +- .../clientpositive/spark/skewjoinopt10.q.out | 48 +- .../clientpositive/spark/skewjoinopt12.q.out | 8 +- .../clientpositive/spark/skewjoinopt15.q.out | 32 +- .../clientpositive/spark/skewjoinopt16.q.out | 8 +- .../clientpositive/spark/skewjoinopt17.q.out | 8 +- .../clientpositive/spark/skewjoinopt18.q.out | 14 +- .../clientpositive/spark/skewjoinopt2.q.out | 16 +- .../clientpositive/spark/smb_mapjoin_1.q.out | 14 +- .../clientpositive/spark/smb_mapjoin_10.q.out | 8 +- .../clientpositive/spark/smb_mapjoin_11.q.out | 12 +- .../clientpositive/spark/smb_mapjoin_12.q.out | 24 +- .../clientpositive/spark/smb_mapjoin_13.q.out | 22 +- .../clientpositive/spark/smb_mapjoin_14.q.out | 52 +- .../clientpositive/spark/smb_mapjoin_15.q.out | 42 +- .../clientpositive/spark/smb_mapjoin_16.q.out | 4 +- .../clientpositive/spark/smb_mapjoin_17.q.out | 4 +- .../clientpositive/spark/smb_mapjoin_2.q.out | 16 +- .../clientpositive/spark/smb_mapjoin_25.q.out | 83 +- .../clientpositive/spark/smb_mapjoin_3.q.out | 14 +- .../clientpositive/spark/smb_mapjoin_4.q.out | 8 +- .../clientpositive/spark/smb_mapjoin_5.q.out | 6 +- .../clientpositive/spark/smb_mapjoin_6.q.out | 16 +- .../clientpositive/spark/subquery_exists.q.out | 22 +- .../clientpositive/spark/subquery_in.q.out | 145 +- .../spark/subquery_multiinsert.q.java1.7.out | 14 +- .../spark/table_access_keys_stats.q.out | 37 +- .../clientpositive/spark/temp_table_join1.q.out | 54 +- .../results/clientpositive/spark/union26.q.out | 28 +- .../results/clientpositive/spark/union32.q.out | 80 +- .../results/clientpositive/spark/union34.q.out | 44 +- .../clientpositive/spark/union_top_level.q.out | 16 +- .../spark/vector_decimal_mapjoin.q.out | 12 +- .../spark/vector_mapjoin_reduce.q.out | 166 +- .../spark/vectorization_short_regress.q.out | 18 +- .../spark/vectorized_mapjoin.q.out | 12 +- .../spark/vectorized_nested_mapjoin.q.out | 32 +- .../clientpositive/spark/vectorized_ptf.q.out | 72 +- .../spark/vectorized_shufflejoin.q.out | 16 +- .../test/results/clientpositive/stats11.q.out | 20 +- .../subq_where_serialization.q.out | 30 +- .../clientpositive/subquery_exists.q.out | 22 +- .../clientpositive/subquery_exists_having.q.out | 44 +- .../results/clientpositive/subquery_in.q.out | 145 +- .../clientpositive/subquery_in_having.q.out | 118 +- .../subquery_multiinsert.q.java1.7.out | 14 +- .../results/clientpositive/subquery_notin.q.out | 16 +- .../subquery_notin_having.q.java1.7.out | 6 +- .../subquery_unqual_corr_expr.q.out | 16 +- .../subquery_unqualcolumnrefs.q.out | 142 +- .../results/clientpositive/subquery_views.q.out | 26 +- .../table_access_keys_stats.q.out | 37 +- .../clientpositive/temp_table_join1.q.out | 54 +- .../results/clientpositive/tez/auto_join1.q.out | 16 +- .../clientpositive/tez/auto_join30.q.out | 50 +- .../tez/auto_sortmerge_join_1.q.out | 18 +- .../tez/auto_sortmerge_join_11.q.out | 26 +- .../tez/auto_sortmerge_join_12.q.out | 12 +- .../tez/auto_sortmerge_join_13.q.out | 54 +- .../tez/auto_sortmerge_join_2.q.out | 28 +- .../tez/auto_sortmerge_join_3.q.out | 42 +- .../tez/auto_sortmerge_join_4.q.out | 42 +- .../tez/auto_sortmerge_join_5.q.out | 34 +- .../tez/auto_sortmerge_join_6.q.out | 192 +- .../tez/auto_sortmerge_join_7.q.out | 42 +- .../tez/auto_sortmerge_join_8.q.out | 42 +- .../tez/auto_sortmerge_join_9.q.out | 268 +- .../tez/bucket_map_join_tez1.q.out | 339 +- .../tez/bucket_map_join_tez2.q.out | 133 +- .../tez/correlationoptimizer1.q.out | 208 +- .../results/clientpositive/tez/cross_join.q.out | 30 +- .../tez/cross_product_check_1.q.out | 66 +- .../tez/cross_product_check_2.q.out | 54 +- .../tez/dynamic_partition_pruning.q.out | 226 +- .../tez/dynamic_partition_pruning_2.q.out | 21 +- .../clientpositive/tez/explainuser_1.q.out | 1502 +- .../clientpositive/tez/explainuser_2.q.out | 3195 ++- .../clientpositive/tez/explainuser_3.q.out | 34 +- .../tez/filter_join_breaktask.q.out | 28 +- .../tez/hybridgrace_hashjoin_1.q.out | 97 +- .../tez/hybridgrace_hashjoin_2.q.out | 128 +- .../test/results/clientpositive/tez/join1.q.out | 18 +- .../clientpositive/tez/join_nullsafe.q.out | 36 +- .../clientpositive/tez/limit_pushdown.q.out | 14 +- .../clientpositive/tez/lvj_mapjoin.q.out | 56 +- .../clientpositive/tez/mapjoin_decimal.q.out | 18 +- .../clientpositive/tez/mapjoin_mapjoin.q.out | 74 +- .../results/clientpositive/tez/mergejoin.q.out | 202 +- .../test/results/clientpositive/tez/mrr.q.out | 130 +- .../clientpositive/tez/orc_merge10.q.out | 4 +- .../clientpositive/tez/orc_merge11.q.out | 6 +- .../test/results/clientpositive/tez/ptf.q.out | 72 +- .../clientpositive/tez/ptf_streaming.q.out | 58 +- .../results/clientpositive/tez/skewjoin.q.out | 109 +- .../clientpositive/tez/subquery_exists.q.out | 22 +- .../clientpositive/tez/subquery_in.q.out | 145 +- .../tez/tez_bmj_schema_evolution.q.out | 18 +- .../tez/tez_dynpart_hashjoin_1.q.out | 120 +- .../tez/tez_dynpart_hashjoin_2.q.out | 118 +- .../clientpositive/tez/tez_join_hash.q.out | 144 +- .../tez/tez_join_result_complex.q.out | 64 +- .../clientpositive/tez/tez_self_join.q.out | 28 +- .../results/clientpositive/tez/tez_smb_1.q.out | 64 +- .../clientpositive/tez/tez_smb_empty.q.out | 116 +- .../clientpositive/tez/tez_smb_main.q.out | 206 +- .../results/clientpositive/tez/tez_union.q.out | 172 +- .../tez/tez_vector_dynpart_hashjoin_1.q.out | 120 +- .../tez/tez_vector_dynpart_hashjoin_2.q.out | 120 +- .../clientpositive/tez/unionDistinct_1.q.out | 190 +- .../tez/vector_auto_smb_mapjoin_14.q.out | 300 +- .../tez/vector_binary_join_groupby.q.out | 14 +- .../tez/vector_char_mapjoin1.q.out | 56 +- .../tez/vector_decimal_expressions.q.out | 8 +- .../tez/vector_decimal_mapjoin.q.out | 14 +- .../clientpositive/tez/vector_decimal_udf.q.out | 18 +- .../clientpositive/tez/vector_if_expr.q.out | 10 +- .../tez/vector_interval_mapjoin.q.out | 24 +- .../clientpositive/tez/vector_join30.q.out | 50 +- .../tez/vector_join_part_col_char.q.out | 22 +- .../tez/vector_leftsemi_mapjoin.q.out | 1500 +- .../tez/vector_mapjoin_reduce.q.out | 133 +- .../tez/vector_nullsafe_join.q.out | 64 +- .../tez/vector_reduce_groupby_decimal.q.out | 12 +- .../tez/vector_select_null2.q.out | 95 + .../tez/vector_varchar_mapjoin1.q.out | 56 +- .../tez/vector_when_case_null.q.out | 97 + .../clientpositive/tez/vectorization_8.q.out | 16 +- .../tez/vectorization_limit.q.out | 22 +- .../tez/vectorization_short_regress.q.out | 18 +- .../tez/vectorized_bucketmapjoin1.q.out | 42 +- .../clientpositive/tez/vectorized_context.q.out | 26 +- .../vectorized_dynamic_partition_pruning.q.out | 226 +- .../clientpositive/tez/vectorized_mapjoin.q.out | 14 +- .../tez/vectorized_nested_mapjoin.q.out | 66 +- .../clientpositive/tez/vectorized_ptf.q.out | 72 +- .../tez/vectorized_shufflejoin.q.out | 16 +- .../udf_case_column_pruning.q.out | 20 +- .../clientpositive/udf_classloader.q.out | 43 + ...ssloader_dynamic_dependency_resolution.q.out | 43 + .../clientpositive/udf_isnull_isnotnull.q.out | 4 +- .../test/results/clientpositive/udf_size.q.out | 4 +- .../clientpositive/udtf_json_tuple.q.out | 26 +- .../clientpositive/udtf_parse_url_tuple.q.out | 22 +- .../test/results/clientpositive/union22.q.out | 6 +- .../test/results/clientpositive/union26.q.out | 34 +- .../test/results/clientpositive/union32.q.out | 96 +- .../test/results/clientpositive/union34.q.out | 56 +- .../clientpositive/unionDistinct_1.q.out | 214 +- .../clientpositive/union_top_level.q.out | 32 +- ...er_multiple_inserts_special_characters.q.out | 78 + .../vector_auto_smb_mapjoin_14.q.out | 72 +- .../vector_binary_join_groupby.q.out | 12 +- .../clientpositive/vector_char_mapjoin1.q.out | 50 +- .../clientpositive/vector_decimal_cast.q.out | 4 +- .../vector_decimal_expressions.q.out | 8 +- .../clientpositive/vector_decimal_mapjoin.q.out | 12 +- .../clientpositive/vector_decimal_udf.q.out | 18 +- .../results/clientpositive/vector_if_expr.q.out | 10 +- .../vector_interval_mapjoin.q.out | 22 +- .../results/clientpositive/vector_join30.q.out | 64 +- .../vector_leftsemi_mapjoin.q.out | 1356 +- .../clientpositive/vector_mapjoin_reduce.q.out | 108 +- .../clientpositive/vector_nullsafe_join.q.out | 48 +- .../vector_reduce_groupby_decimal.q.out | 12 +- .../vector_varchar_mapjoin1.q.out | 50 +- .../clientpositive/vector_when_case_null.q.out | 90 + .../clientpositive/vectorization_8.q.out | 16 +- .../vectorization_decimal_date.q.out | 4 +- .../clientpositive/vectorization_limit.q.out | 22 +- .../vectorization_offset_limit.q.out | 118 + .../vectorization_short_regress.q.out | 18 +- .../vectorized_bucketmapjoin1.q.out | 6 +- .../clientpositive/vectorized_context.q.out | 22 +- .../clientpositive/vectorized_mapjoin.q.out | 12 +- .../vectorized_nested_mapjoin.q.out | 36 +- .../results/clientpositive/vectorized_ptf.q.out | 72 +- .../clientpositive/vectorized_shufflejoin.q.out | 16 +- .../clientpositive/windowing_windowspec4.q.out | 59 + .../compiler/errors/unknown_function1.q.out | 2 +- .../compiler/errors/unknown_function4.q.out | 2 +- ql/src/test/templates/TestCliDriver.vm | 76 +- ql/src/test/templates/TestCompareCliDriver.vm | 73 +- ql/src/test/templates/TestNegativeCliDriver.vm | 74 +- ql/src/test/templates/TestParseNegative.vm | 69 +- ql/src/test/templates/TestPerfCliDriver.vm | 175 + .../hadoop/hive/serde2/AbstractSerDe.java | 2 +- .../hadoop/hive/serde2/io/DateWritable.java | 179 - service/pom.xml | 14 +- .../apache/hive/service/server/HiveServer2.java | 15 + .../apache/hive/service/cli/CLIServiceTest.java | 127 +- .../cli/session/TestSessionManagerMetrics.java | 23 +- .../apache/hadoop/hive/shims/Hadoop23Shims.java | 9 - .../apache/hadoop/hive/shims/ZeroCopyShims.java | 42 - .../apache/hadoop/hive/shims/HadoopShims.java | 13 - .../hive/thrift/HadoopThriftAuthBridge.java | 3 - .../hadoop/hive/common/DiskRangeInfo.java | 59 + .../hadoop/hive/ql/util/JavaDataModel.java | 335 + .../hadoop/hive/serde2/io/DateWritable.java | 179 + .../apache/hive/common/util/BloomFilter.java | 309 + .../org/apache/hive/common/util/Murmur3.java | 335 + .../apache/hive/common/util/TestMurmur3.java | 224 + .../ptest2/src/main/resources/batch-exec.vm | 8 +- 1298 files changed, 92450 insertions(+), 60621 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hive/blob/27a14d5a/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java ----------------------------------------------------------------------