diff --git beeline/src/java/org/apache/hive/beeline/HiveSchemaTool.java beeline/src/java/org/apache/hive/beeline/HiveSchemaTool.java index 6f0ba07..2d7910d 100644 --- beeline/src/java/org/apache/hive/beeline/HiveSchemaTool.java +++ beeline/src/java/org/apache/hive/beeline/HiveSchemaTool.java @@ -17,18 +17,6 @@ */ package org.apache.hive.beeline; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.io.PrintStream; -import java.sql.Connection; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; -import java.util.ArrayList; -import java.util.List; - import org.apache.commons.cli.CommandLine; import org.apache.commons.cli.CommandLineParser; import org.apache.commons.cli.GnuParser; @@ -39,6 +27,7 @@ import org.apache.commons.cli.Options; import org.apache.commons.cli.ParseException; import org.apache.commons.io.output.NullOutputStream; +import org.apache.commons.lang.StringUtils; import org.apache.hadoop.hive.conf.HiveConf; import org.apache.hadoop.hive.conf.HiveConf.ConfVars; import org.apache.hadoop.hive.metastore.HiveMetaException; @@ -46,6 +35,22 @@ import org.apache.hadoop.hive.metastore.api.MetaException; import org.apache.hadoop.hive.shims.ShimLoader; import org.apache.hive.beeline.HiveSchemaHelper.NestedScriptParser; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.IOException; +import java.io.PrintStream; +import java.sql.Connection; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.sql.Statement; +import java.util.ArrayList; +import java.util.List; public class HiveSchemaTool { private String userName = null; @@ -57,6 +62,8 @@ private final String dbType; private final MetaStoreSchemaInfo metaStoreSchemaInfo; + static final private Logger LOG = LoggerFactory.getLogger(HiveSchemaTool.class.getName()); + public HiveSchemaTool(String dbType) throws HiveMetaException { this(System.getenv("HIVE_HOME"), new HiveConf(HiveSchemaTool.class), dbType); } @@ -356,6 +363,16 @@ public void runBeeLine(String sqlScriptFile) throws IOException { argList.add("-f"); argList.add(sqlScriptFile); + if (LOG.isDebugEnabled()) { + LOG.debug("Going to invoke file that contains:"); + FileReader fr = new FileReader(sqlScriptFile); + BufferedReader reader = new BufferedReader(fr); + String line; + while ((line = reader.readLine()) != null) { + LOG.debug("script: " + line); + } + } + // run the script using Beeline BeeLine beeLine = new BeeLine(); if (!verbose) { @@ -367,6 +384,7 @@ public void runBeeLine(String sqlScriptFile) throws IOException { // We can be pretty sure that an entire line can be processed as a single command since // we always add a line separator at the end while calling dbCommandParser.buildCommand. beeLine.getOpts().setEntireLineAsCommand(true); + LOG.debug("Going to run command <" + StringUtils.join(argList, " ") + ">"); int status = beeLine.begin(argList.toArray(new String[0]), null); if (status != 0) { throw new IOException("Schema script failed, errorcode " + status); diff --git metastore/if/hive_metastore.thrift metastore/if/hive_metastore.thrift index 56ec9aa..81837e6 100755 --- metastore/if/hive_metastore.thrift +++ metastore/if/hive_metastore.thrift @@ -543,6 +543,9 @@ struct TxnInfo { 2: required TxnState state, 3: required string user, // used in 'show transactions' to help admins find who has open transactions 4: required string hostname, // used in 'show transactions' to help admins find who has open transactions + 5: optional string agentInfo = "Unknown", + 6: optional i32 heartbeatCount=0, + 7: optional string metaInfo, } struct GetOpenTxnsInfoResponse { @@ -559,6 +562,7 @@ struct OpenTxnRequest { 1: required i32 num_txns, 2: required string user, 3: required string hostname, + 4: optional string agentInfo = "Unknown", } struct OpenTxnsResponse { @@ -586,6 +590,7 @@ struct LockRequest { 2: optional i64 txnid, 3: required string user, // used in 'show locks' to help admins find who has open locks 4: required string hostname, // used in 'show locks' to help admins find who has open locks + 5: optional string agentInfo = "Unknown", } struct LockResponse { @@ -595,6 +600,8 @@ struct LockResponse { struct CheckLockRequest { 1: required i64 lockid, + 2: optional i64 txnid, + 3: optional i64 elapsed_ms, } struct UnlockRequest { @@ -602,6 +609,10 @@ struct UnlockRequest { } struct ShowLocksRequest { + 1: optional string dbname, + 2: optional string tablename, + 3: optional string partname, + 4: optional bool isExtended=false, } struct ShowLocksResponseElement { @@ -616,6 +627,11 @@ struct ShowLocksResponseElement { 9: optional i64 acquiredat, 10: required string user, 11: required string hostname, + 12: optional i32 heartbeatCount = 0, + 13: optional string agentInfo, + 14: optional i64 blockedByExtId, + 15: optional i64 blockedByIntId, + 16: optional i64 lockIdInternal, } struct ShowLocksResponse { @@ -657,6 +673,10 @@ struct ShowCompactResponseElement { 6: optional string workerid, 7: optional i64 start, 8: optional string runAs, + 9: optional i64 hightestTxnId, // Highest Txn ID handled by this compaction + 10: optional string metaInfo, + 11: optional i64 endTime, + 12: optional string hadoopJobId = "None", } struct ShowCompactResponse { diff --git metastore/scripts/upgrade/derby/023-HIVE-12807.derby.sql metastore/scripts/upgrade/derby/023-HIVE-12807.derby.sql new file mode 100644 index 0000000..3dfc6fe --- /dev/null +++ metastore/scripts/upgrade/derby/023-HIVE-12807.derby.sql @@ -0,0 +1 @@ +ALTER TABLE "COMPACTION_QUEUE" ADD "CQ_HIGHEST_TXN_ID" bigint; diff --git metastore/scripts/upgrade/derby/024-HIVE-12814.derby.sql metastore/scripts/upgrade/derby/024-HIVE-12814.derby.sql new file mode 100644 index 0000000..a451846 --- /dev/null +++ metastore/scripts/upgrade/derby/024-HIVE-12814.derby.sql @@ -0,0 +1 @@ +ALTER TABLE "COMPACTION_QUEUE" ADD "CQ_META_INFO" varchar(2048) for bit data; diff --git metastore/scripts/upgrade/derby/025-HIVE-12816.derby.sql metastore/scripts/upgrade/derby/025-HIVE-12816.derby.sql new file mode 100644 index 0000000..2a78bf1 --- /dev/null +++ metastore/scripts/upgrade/derby/025-HIVE-12816.derby.sql @@ -0,0 +1 @@ +ALTER TABLE "COMPACTION_QUEUE" ADD "CQ_HADOOP_JOB_ID" VARCHAR(32); diff --git metastore/scripts/upgrade/derby/026-HIVE-12818.derby.sql metastore/scripts/upgrade/derby/026-HIVE-12818.derby.sql new file mode 100644 index 0000000..4e3c82b --- /dev/null +++ metastore/scripts/upgrade/derby/026-HIVE-12818.derby.sql @@ -0,0 +1,15 @@ +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID bigint PRIMARY KEY, + CC_DATABASE varchar(128) NOT NULL, + CC_TABLE varchar(128) NOT NULL, + CC_PARTITION varchar(767), + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID varchar(128), + CC_START bigint, + CC_END bigint, + CC_RUN_AS varchar(128), + CC_HIGHEST_TXN_ID bigint, + CC_META_INFO varchar(2048) for bit data, + CC_HADOOP_JOB_ID varchar(32) +); diff --git metastore/scripts/upgrade/derby/027-HIVE-12819.derby.sql metastore/scripts/upgrade/derby/027-HIVE-12819.derby.sql new file mode 100644 index 0000000..69b8a3a --- /dev/null +++ metastore/scripts/upgrade/derby/027-HIVE-12819.derby.sql @@ -0,0 +1 @@ +ALTER TABLE "TXNS" ADD "TXN_AGENT_INFO" varchar(128); diff --git metastore/scripts/upgrade/derby/028-HIVE-12821.derby.sql metastore/scripts/upgrade/derby/028-HIVE-12821.derby.sql new file mode 100644 index 0000000..0c10245 --- /dev/null +++ metastore/scripts/upgrade/derby/028-HIVE-12821.derby.sql @@ -0,0 +1,2 @@ +ALTER TABLE "TXNS" ADD "TXN_HEARTBEAT_COUNT" INTEGER; +ALTER TABLE "HIVE_LOCKS" ADD "HL_HEARTBEAT_COUNT" INTEGER; diff --git metastore/scripts/upgrade/derby/029-HIVE-12822.derby.sql metastore/scripts/upgrade/derby/029-HIVE-12822.derby.sql new file mode 100644 index 0000000..9f9423e --- /dev/null +++ metastore/scripts/upgrade/derby/029-HIVE-12822.derby.sql @@ -0,0 +1 @@ +ALTER TABLE "TXNS" ADD "TXN_META_INFO" varchar(128); diff --git metastore/scripts/upgrade/derby/030-HIVE-12823.derby.sql metastore/scripts/upgrade/derby/030-HIVE-12823.derby.sql new file mode 100644 index 0000000..b7fbc71 --- /dev/null +++ metastore/scripts/upgrade/derby/030-HIVE-12823.derby.sql @@ -0,0 +1 @@ +ALTER TABLE "HIVE_LOCKS" ADD "HL_AGENT_INFO" varchar(128); diff --git metastore/scripts/upgrade/derby/031-HIVE-12831.derby.sql metastore/scripts/upgrade/derby/031-HIVE-12831.derby.sql new file mode 100644 index 0000000..890fa1a --- /dev/null +++ metastore/scripts/upgrade/derby/031-HIVE-12831.derby.sql @@ -0,0 +1,2 @@ +ALTER TABLE "HIVE_LOCKS" ADD "HL_BLOCKEDBY_EXT_ID" bigint; +ALTER TABLE "HIVE_LOCKS" ADD "HL_BLOCKEDBY_INT_ID" bigint; diff --git metastore/scripts/upgrade/derby/032-HIVE-12832.derby.sql metastore/scripts/upgrade/derby/032-HIVE-12832.derby.sql new file mode 100644 index 0000000..0e5515c --- /dev/null +++ metastore/scripts/upgrade/derby/032-HIVE-12832.derby.sql @@ -0,0 +1,7 @@ +CREATE TABLE AUX_TABLE ( + MT_KEY1 varchar(128) NOT NULL, + MT_KEY2 bigint NOT NULL, + MT_COMMENT varchar(255), + PRIMARY KEY(MT_KEY1, MT_KEY2) +); + diff --git metastore/scripts/upgrade/derby/hive-schema-1.3.0.derby.sql metastore/scripts/upgrade/derby/hive-schema-1.3.0.derby.sql index 20eb326..3893194 100644 --- metastore/scripts/upgrade/derby/hive-schema-1.3.0.derby.sql +++ metastore/scripts/upgrade/derby/hive-schema-1.3.0.derby.sql @@ -327,7 +327,7 @@ ALTER TABLE "APP"."SDS" ADD CONSTRAINT "SQL110318025505550" CHECK (IS_COMPRESSED -- ---------------------------- -- Transaction and Lock Tables -- ---------------------------- -RUN 'hive-txn-schema-0.13.0.derby.sql'; +RUN 'hive-txn-schema-1.3.0.derby.sql'; -- ----------------------------------------------------------------- -- Record schema version. Should be the last step in the init script diff --git metastore/scripts/upgrade/derby/hive-schema-2.0.0.derby.sql metastore/scripts/upgrade/derby/hive-schema-2.0.0.derby.sql index abc6bf4..2c2f1e7 100644 --- metastore/scripts/upgrade/derby/hive-schema-2.0.0.derby.sql +++ metastore/scripts/upgrade/derby/hive-schema-2.0.0.derby.sql @@ -327,7 +327,7 @@ ALTER TABLE "APP"."SDS" ADD CONSTRAINT "SQL110318025505550" CHECK (IS_COMPRESSED -- ---------------------------- -- Transaction and Lock Tables -- ---------------------------- -RUN 'hive-txn-schema-0.13.0.derby.sql'; +RUN 'hive-txn-schema-2.0.0.derby.sql'; -- ----------------------------------------------------------------- -- Record schema version. Should be the last step in the init script diff --git metastore/scripts/upgrade/derby/hive-schema-2.1.0.derby.sql metastore/scripts/upgrade/derby/hive-schema-2.1.0.derby.sql index 8083199..660a85a 100644 --- metastore/scripts/upgrade/derby/hive-schema-2.1.0.derby.sql +++ metastore/scripts/upgrade/derby/hive-schema-2.1.0.derby.sql @@ -325,7 +325,7 @@ ALTER TABLE "APP"."SDS" ADD CONSTRAINT "SQL110318025505550" CHECK (IS_COMPRESSED -- ---------------------------- -- Transaction and Lock Tables -- ---------------------------- -RUN 'hive-txn-schema-0.13.0.derby.sql'; +RUN 'hive-txn-schema-2.0.0.derby.sql'; -- ----------------------------------------------------------------- -- Record schema version. Should be the last step in the init script diff --git metastore/scripts/upgrade/derby/hive-txn-schema-1.3.0.derby.sql metastore/scripts/upgrade/derby/hive-txn-schema-1.3.0.derby.sql new file mode 100644 index 0000000..13f3340 --- /dev/null +++ metastore/scripts/upgrade/derby/hive-txn-schema-1.3.0.derby.sql @@ -0,0 +1,119 @@ +-- Licensed to the Apache Software Foundation (ASF) under one or more +-- contributor license agreements. See the NOTICE file distributed with +-- this work for additional information regarding copyright ownership. +-- The ASF licenses this file to You under the Apache License, Version 2.0 +-- (the License); you may not use this file except in compliance with +-- the License. You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, software +-- distributed under the License is distributed on an AS IS BASIS, +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-- See the License for the specific language governing permissions and +-- limitations under the License. + +-- +-- Tables for transaction management +-- +CREATE TABLE TXNS ( + TXN_ID bigint PRIMARY KEY, + TXN_STATE char(1) NOT NULL, + TXN_STARTED bigint NOT NULL, + TXN_LAST_HEARTBEAT bigint NOT NULL, + TXN_USER varchar(128) NOT NULL, + TXN_HOST varchar(128) NOT NULL, + TXN_AGENT_INFO varchar(128), + TXN_META_INFO varchar(128), + TXN_HEARTBEAT_COUNT integer +); + +CREATE TABLE TXN_COMPONENTS ( + TC_TXNID bigint REFERENCES TXNS (TXN_ID), + TC_DATABASE varchar(128) NOT NULL, + TC_TABLE varchar(128), + TC_PARTITION varchar(767) +); + +CREATE TABLE COMPLETED_TXN_COMPONENTS ( + CTC_TXNID bigint, + CTC_DATABASE varchar(128) NOT NULL, + CTC_TABLE varchar(128), + CTC_PARTITION varchar(767) +); + +CREATE TABLE NEXT_TXN_ID ( + NTXN_NEXT bigint NOT NULL +); +INSERT INTO NEXT_TXN_ID VALUES(1); + +CREATE TABLE HIVE_LOCKS ( + HL_LOCK_EXT_ID bigint NOT NULL, + HL_LOCK_INT_ID bigint NOT NULL, + HL_TXNID bigint, + HL_DB varchar(128) NOT NULL, + HL_TABLE varchar(128), + HL_PARTITION varchar(767), + HL_LOCK_STATE char(1) NOT NULL, + HL_LOCK_TYPE char(1) NOT NULL, + HL_LAST_HEARTBEAT bigint NOT NULL, + HL_ACQUIRED_AT bigint, + HL_USER varchar(128) NOT NULL, + HL_HOST varchar(128) NOT NULL, + HL_HEARTBEAT_COUNT integer, + HL_AGENT_INFO varchar(128), + HL_BLOCKEDBY_EXT_ID bigint, + HL_BLOCKEDBY_INT_ID bigint, + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID) +); + +CREATE INDEX HL_TXNID_INDEX ON HIVE_LOCKS (HL_TXNID); + +CREATE TABLE NEXT_LOCK_ID ( + NL_NEXT bigint NOT NULL +); +INSERT INTO NEXT_LOCK_ID VALUES(1); + +CREATE TABLE COMPACTION_QUEUE ( + CQ_ID bigint PRIMARY KEY, + CQ_DATABASE varchar(128) NOT NULL, + CQ_TABLE varchar(128) NOT NULL, + CQ_PARTITION varchar(767), + CQ_STATE char(1) NOT NULL, + CQ_TYPE char(1) NOT NULL, + CQ_WORKER_ID varchar(128), + CQ_START bigint, + CQ_RUN_AS varchar(128), + CQ_HIGHEST_TXN_ID bigint, + CQ_META_INFO varchar(2048) for bit data, + CQ_HADOOP_JOB_ID varchar(32) +); + +CREATE TABLE NEXT_COMPACTION_QUEUE_ID ( + NCQ_NEXT bigint NOT NULL +); +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1); + +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID bigint PRIMARY KEY, + CC_DATABASE varchar(128) NOT NULL, + CC_TABLE varchar(128) NOT NULL, + CC_PARTITION varchar(767), + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID varchar(128), + CC_START bigint, + CC_END bigint, + CC_RUN_AS varchar(128), + CC_HIGHEST_TXN_ID bigint, + CC_META_INFO varchar(2048) for bit data, + CC_HADOOP_JOB_ID varchar(32) +); + +CREATE TABLE AUX_TABLE ( + MT_KEY1 varchar(128) NOT NULL, + MT_KEY2 bigint NOT NULL, + MT_COMMENT varchar(255), + PRIMARY KEY(MT_KEY1, MT_KEY2) +); + diff --git metastore/scripts/upgrade/derby/hive-txn-schema-2.0.0.derby.sql metastore/scripts/upgrade/derby/hive-txn-schema-2.0.0.derby.sql new file mode 100644 index 0000000..13f3340 --- /dev/null +++ metastore/scripts/upgrade/derby/hive-txn-schema-2.0.0.derby.sql @@ -0,0 +1,119 @@ +-- Licensed to the Apache Software Foundation (ASF) under one or more +-- contributor license agreements. See the NOTICE file distributed with +-- this work for additional information regarding copyright ownership. +-- The ASF licenses this file to You under the Apache License, Version 2.0 +-- (the License); you may not use this file except in compliance with +-- the License. You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, software +-- distributed under the License is distributed on an AS IS BASIS, +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-- See the License for the specific language governing permissions and +-- limitations under the License. + +-- +-- Tables for transaction management +-- +CREATE TABLE TXNS ( + TXN_ID bigint PRIMARY KEY, + TXN_STATE char(1) NOT NULL, + TXN_STARTED bigint NOT NULL, + TXN_LAST_HEARTBEAT bigint NOT NULL, + TXN_USER varchar(128) NOT NULL, + TXN_HOST varchar(128) NOT NULL, + TXN_AGENT_INFO varchar(128), + TXN_META_INFO varchar(128), + TXN_HEARTBEAT_COUNT integer +); + +CREATE TABLE TXN_COMPONENTS ( + TC_TXNID bigint REFERENCES TXNS (TXN_ID), + TC_DATABASE varchar(128) NOT NULL, + TC_TABLE varchar(128), + TC_PARTITION varchar(767) +); + +CREATE TABLE COMPLETED_TXN_COMPONENTS ( + CTC_TXNID bigint, + CTC_DATABASE varchar(128) NOT NULL, + CTC_TABLE varchar(128), + CTC_PARTITION varchar(767) +); + +CREATE TABLE NEXT_TXN_ID ( + NTXN_NEXT bigint NOT NULL +); +INSERT INTO NEXT_TXN_ID VALUES(1); + +CREATE TABLE HIVE_LOCKS ( + HL_LOCK_EXT_ID bigint NOT NULL, + HL_LOCK_INT_ID bigint NOT NULL, + HL_TXNID bigint, + HL_DB varchar(128) NOT NULL, + HL_TABLE varchar(128), + HL_PARTITION varchar(767), + HL_LOCK_STATE char(1) NOT NULL, + HL_LOCK_TYPE char(1) NOT NULL, + HL_LAST_HEARTBEAT bigint NOT NULL, + HL_ACQUIRED_AT bigint, + HL_USER varchar(128) NOT NULL, + HL_HOST varchar(128) NOT NULL, + HL_HEARTBEAT_COUNT integer, + HL_AGENT_INFO varchar(128), + HL_BLOCKEDBY_EXT_ID bigint, + HL_BLOCKEDBY_INT_ID bigint, + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID) +); + +CREATE INDEX HL_TXNID_INDEX ON HIVE_LOCKS (HL_TXNID); + +CREATE TABLE NEXT_LOCK_ID ( + NL_NEXT bigint NOT NULL +); +INSERT INTO NEXT_LOCK_ID VALUES(1); + +CREATE TABLE COMPACTION_QUEUE ( + CQ_ID bigint PRIMARY KEY, + CQ_DATABASE varchar(128) NOT NULL, + CQ_TABLE varchar(128) NOT NULL, + CQ_PARTITION varchar(767), + CQ_STATE char(1) NOT NULL, + CQ_TYPE char(1) NOT NULL, + CQ_WORKER_ID varchar(128), + CQ_START bigint, + CQ_RUN_AS varchar(128), + CQ_HIGHEST_TXN_ID bigint, + CQ_META_INFO varchar(2048) for bit data, + CQ_HADOOP_JOB_ID varchar(32) +); + +CREATE TABLE NEXT_COMPACTION_QUEUE_ID ( + NCQ_NEXT bigint NOT NULL +); +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1); + +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID bigint PRIMARY KEY, + CC_DATABASE varchar(128) NOT NULL, + CC_TABLE varchar(128) NOT NULL, + CC_PARTITION varchar(767), + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID varchar(128), + CC_START bigint, + CC_END bigint, + CC_RUN_AS varchar(128), + CC_HIGHEST_TXN_ID bigint, + CC_META_INFO varchar(2048) for bit data, + CC_HADOOP_JOB_ID varchar(32) +); + +CREATE TABLE AUX_TABLE ( + MT_KEY1 varchar(128) NOT NULL, + MT_KEY2 bigint NOT NULL, + MT_COMMENT varchar(255), + PRIMARY KEY(MT_KEY1, MT_KEY2) +); + diff --git metastore/scripts/upgrade/derby/upgrade-1.2.0-to-1.3.0.derby.sql metastore/scripts/upgrade/derby/upgrade-1.2.0-to-1.3.0.derby.sql index 6359de4..74ecac2 100644 --- metastore/scripts/upgrade/derby/upgrade-1.2.0-to-1.3.0.derby.sql +++ metastore/scripts/upgrade/derby/upgrade-1.2.0-to-1.3.0.derby.sql @@ -1,4 +1,14 @@ -- Upgrade MetaStore schema from 1.2.0 to 1.3.0 RUN '021-HIVE-11970.derby.sql'; +RUN '023-HIVE-12807.derby.sql'; +RUN '024-HIVE-12814.derby.sql'; +RUN '025-HIVE-12816.derby.sql'; +RUN '026-HIVE-12818.derby.sql'; +RUN '027-HIVE-12819.derby.sql'; +RUN '028-HIVE-12821.derby.sql'; +RUN '029-HIVE-12822.derby.sql'; +RUN '030-HIVE-12823.derby.sql'; +RUN '031-HIVE-12831.derby.sql'; +RUN '032-HIVE-12832.derby.sql'; UPDATE "APP".VERSION SET SCHEMA_VERSION='1.3.0', VERSION_COMMENT='Hive release version 1.3.0' where VER_ID=1; diff --git metastore/scripts/upgrade/derby/upgrade-1.2.0-to-2.0.0.derby.sql metastore/scripts/upgrade/derby/upgrade-1.2.0-to-2.0.0.derby.sql index adf3cb0..e6817ad 100644 --- metastore/scripts/upgrade/derby/upgrade-1.2.0-to-2.0.0.derby.sql +++ metastore/scripts/upgrade/derby/upgrade-1.2.0-to-2.0.0.derby.sql @@ -1,4 +1,14 @@ -- Upgrade MetaStore schema from 1.2.0 to 2.0.0 RUN '021-HIVE-11970.derby.sql'; +RUN '023-HIVE-12807.derby.sql'; +RUN '024-HIVE-12814.derby.sql'; +RUN '025-HIVE-12816.derby.sql'; +RUN '026-HIVE-12818.derby.sql'; +RUN '027-HIVE-12819.derby.sql'; +RUN '028-HIVE-12821.derby.sql'; +RUN '029-HIVE-12822.derby.sql'; +RUN '030-HIVE-12823.derby.sql'; +RUN '031-HIVE-12831.derby.sql'; +RUN '032-HIVE-12832.derby.sql'; UPDATE "APP".VERSION SET SCHEMA_VERSION='2.0.0', VERSION_COMMENT='Hive release version 2.0.0' where VER_ID=1; diff --git metastore/scripts/upgrade/mssql/008-HIVE-12807.mssql.sql metastore/scripts/upgrade/mssql/008-HIVE-12807.mssql.sql new file mode 100644 index 0000000..e2d7615 --- /dev/null +++ metastore/scripts/upgrade/mssql/008-HIVE-12807.mssql.sql @@ -0,0 +1 @@ +ALTER TABLE COMPACTION_QUEUE ADD CQ_HIGHEST_TXN_ID bigint NULL; diff --git metastore/scripts/upgrade/mssql/009-HIVE-12814.mssql.sql metastore/scripts/upgrade/mssql/009-HIVE-12814.mssql.sql new file mode 100644 index 0000000..0088290 --- /dev/null +++ metastore/scripts/upgrade/mssql/009-HIVE-12814.mssql.sql @@ -0,0 +1 @@ +ALTER TABLE COMPACTION_QUEUE ADD CQ_META_INFO varbinary(2048) NULL; diff --git metastore/scripts/upgrade/mssql/010-HIVE-12816.mssql.sql metastore/scripts/upgrade/mssql/010-HIVE-12816.mssql.sql new file mode 100644 index 0000000..0c0342f --- /dev/null +++ metastore/scripts/upgrade/mssql/010-HIVE-12816.mssql.sql @@ -0,0 +1 @@ +ALTER TABLE COMPACTION_QUEUE ADD CQ_HADOOP_JOB_ID nvarchar(32) NULL; diff --git metastore/scripts/upgrade/mssql/011-HIVE-12818.mssql.sql metastore/scripts/upgrade/mssql/011-HIVE-12818.mssql.sql new file mode 100644 index 0000000..74ac5bf --- /dev/null +++ metastore/scripts/upgrade/mssql/011-HIVE-12818.mssql.sql @@ -0,0 +1,21 @@ +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID bigint NOT NULL, + CC_DATABASE nvarchar(128) NOT NULL, + CC_TABLE nvarchar(128) NOT NULL, + CC_PARTITION nvarchar(767) NULL, + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID nvarchar(128) NULL, + CC_START bigint NULL, + CC_END bigint NULL, + CC_RUN_AS nvarchar(128) NULL, + CC_HIGHEST_TXN_ID bigint NULL, + CC_META_INFO varbinary(2048) NULL, + CC_HADOOP_JOB_ID nvarchar(128) NULL, +PRIMARY KEY CLUSTERED +( + CC_ID ASC +) +); + + diff --git metastore/scripts/upgrade/mssql/012-HIVE-12819.mssql.sql metastore/scripts/upgrade/mssql/012-HIVE-12819.mssql.sql new file mode 100644 index 0000000..778cbd5 --- /dev/null +++ metastore/scripts/upgrade/mssql/012-HIVE-12819.mssql.sql @@ -0,0 +1 @@ +ALTER TABLE TXNS ADD TXN_AGENT_INFO nvarchar(128) NULL; diff --git metastore/scripts/upgrade/mssql/013-HIVE-12821.mssql.sql metastore/scripts/upgrade/mssql/013-HIVE-12821.mssql.sql new file mode 100644 index 0000000..3b8a610 --- /dev/null +++ metastore/scripts/upgrade/mssql/013-HIVE-12821.mssql.sql @@ -0,0 +1,2 @@ +ALTER TABLE TXNS ADD TXN_HEARTBEAT_COUNT int NULL; +ALTER TABLE HIVE_LOCKS ADD HL_HEARTBEAT_COUNT int NULL; diff --git metastore/scripts/upgrade/mssql/014-HIVE-12822.mssql.sql metastore/scripts/upgrade/mssql/014-HIVE-12822.mssql.sql new file mode 100644 index 0000000..b82d0ec --- /dev/null +++ metastore/scripts/upgrade/mssql/014-HIVE-12822.mssql.sql @@ -0,0 +1 @@ +ALTER TABLE TXNS ADD TXN_META_INFO nvarchar(128) NULL; diff --git metastore/scripts/upgrade/mssql/015-HIVE-12823.mssql.sql metastore/scripts/upgrade/mssql/015-HIVE-12823.mssql.sql new file mode 100644 index 0000000..d125b24 --- /dev/null +++ metastore/scripts/upgrade/mssql/015-HIVE-12823.mssql.sql @@ -0,0 +1 @@ +ALTER TABLE HIVE_LOCKS ADD HL_AGENT_INFO nvarchar(128) NULL; diff --git metastore/scripts/upgrade/mssql/016-HIVE-12831.mssql.sql metastore/scripts/upgrade/mssql/016-HIVE-12831.mssql.sql new file mode 100644 index 0000000..9f37461 --- /dev/null +++ metastore/scripts/upgrade/mssql/016-HIVE-12831.mssql.sql @@ -0,0 +1,2 @@ +ALTER TABLE HIVE_LOCKS ADD HL_BLOCKEDBY_EXT_ID bigint NULL; +ALTER TABLE HIVE_LOCKS ADD HL_BLOCKEDBY_INT_ID bigint NULL; diff --git metastore/scripts/upgrade/mssql/017-HIVE-12832.mssql.sql metastore/scripts/upgrade/mssql/017-HIVE-12832.mssql.sql new file mode 100644 index 0000000..7adfe2e --- /dev/null +++ metastore/scripts/upgrade/mssql/017-HIVE-12832.mssql.sql @@ -0,0 +1,10 @@ +CREATE TABLE AUX_TABLE ( + MT_KEY1 nvarchar(128) NOT NULL, + MT_KEY2 bigint NOT NULL, + MT_COMMENT nvarchar(255) NULL, + PRIMARY KEY CLUSTERED +( + MT_KEY1 ASC, + MT_KEY2 ASC +) +); diff --git metastore/scripts/upgrade/mssql/hive-schema-1.3.0.mssql.sql metastore/scripts/upgrade/mssql/hive-schema-1.3.0.mssql.sql index 01c1376..57d2343 100644 --- metastore/scripts/upgrade/mssql/hive-schema-1.3.0.mssql.sql +++ metastore/scripts/upgrade/mssql/hive-schema-1.3.0.mssql.sql @@ -866,12 +866,35 @@ CREATE TABLE COMPACTION_QUEUE( CQ_WORKER_ID nvarchar(128) NULL, CQ_START bigint NULL, CQ_RUN_AS nvarchar(128) NULL, + CQ_HIGHEST_TXN_ID bigint NULL, + CQ_META_INFO varbinary(2048) NULL, + CQ_HADOOP_JOB_ID nvarchar(128) NULL, PRIMARY KEY CLUSTERED ( CQ_ID ASC ) ); +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID bigint NOT NULL, + CC_DATABASE nvarchar(128) NOT NULL, + CC_TABLE nvarchar(128) NOT NULL, + CC_PARTITION nvarchar(767) NULL, + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID nvarchar(128) NULL, + CC_START bigint NULL, + CC_END bigint NULL, + CC_RUN_AS nvarchar(128) NULL, + CC_HIGHEST_TXN_ID bigint NULL, + CC_META_INFO varbinary(2048) NULL, + CC_HADOOP_JOB_ID nvarchar(128) NULL, +PRIMARY KEY CLUSTERED +( + CC_ID ASC +) +); + CREATE TABLE COMPLETED_TXN_COMPONENTS( CTC_TXNID bigint NULL, CTC_DATABASE nvarchar(128) NOT NULL, @@ -892,6 +915,10 @@ CREATE TABLE HIVE_LOCKS( HL_ACQUIRED_AT bigint NULL, HL_USER nvarchar(128) NOT NULL, HL_HOST nvarchar(128) NOT NULL, + HL_HEARTBEAT_COUNT int NULL, + HL_AGENT_INFO nvarchar(128) NULL, + HL_BLOCKEDBY_EXT_ID bigint NULL, + HL_BLOCKEDBY_INT_ID bigint NULL, PRIMARY KEY CLUSTERED ( HL_LOCK_EXT_ID ASC, @@ -924,6 +951,9 @@ CREATE TABLE TXNS( TXN_LAST_HEARTBEAT bigint NOT NULL, TXN_USER nvarchar(128) NOT NULL, TXN_HOST nvarchar(128) NOT NULL, + TXN_AGENT_INFO nvarchar(128) NULL, + TXN_META_INFO nvarchar(128) NULL, + TXN_HEARTBEAT_COUNT int NULL, PRIMARY KEY CLUSTERED ( TXN_ID ASC @@ -939,6 +969,16 @@ CREATE TABLE TXN_COMPONENTS( ALTER TABLE TXN_COMPONENTS WITH CHECK ADD FOREIGN KEY(TC_TXNID) REFERENCES TXNS (TXN_ID); +CREATE TABLE AUX_TABLE ( + MT_KEY1 nvarchar(128) NOT NULL, + MT_KEY2 bigint NOT NULL, + MT_COMMENT nvarchar(255) NULL, + PRIMARY KEY CLUSTERED +( + MT_KEY1 ASC, + MT_KEY2 ASC +) +); -- ----------------------------------------------------------------- diff --git metastore/scripts/upgrade/mssql/hive-schema-2.0.0.mssql.sql metastore/scripts/upgrade/mssql/hive-schema-2.0.0.mssql.sql index 1ec8632..57257c4 100644 --- metastore/scripts/upgrade/mssql/hive-schema-2.0.0.mssql.sql +++ metastore/scripts/upgrade/mssql/hive-schema-2.0.0.mssql.sql @@ -866,12 +866,35 @@ CREATE TABLE COMPACTION_QUEUE( CQ_WORKER_ID nvarchar(128) NULL, CQ_START bigint NULL, CQ_RUN_AS nvarchar(128) NULL, + CQ_HIGHEST_TXN_ID bigint NULL, + CQ_META_INFO varbinary(2048) NULL, + CQ_HADOOP_JOB_ID nvarchar(128) NULL, PRIMARY KEY CLUSTERED ( CQ_ID ASC ) ); +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID bigint NOT NULL, + CC_DATABASE nvarchar(128) NOT NULL, + CC_TABLE nvarchar(128) NOT NULL, + CC_PARTITION nvarchar(767) NULL, + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID nvarchar(128) NULL, + CC_START bigint NULL, + CC_END bigint NULL, + CC_RUN_AS nvarchar(128) NULL, + CC_HIGHEST_TXN_ID bigint NULL, + CC_META_INFO varbinary(2048) NULL, + CC_HADOOP_JOB_ID nvarchar(128) NULL, +PRIMARY KEY CLUSTERED +( + CC_ID ASC +) +); + CREATE TABLE COMPLETED_TXN_COMPONENTS( CTC_TXNID bigint NULL, CTC_DATABASE nvarchar(128) NOT NULL, @@ -892,6 +915,10 @@ CREATE TABLE HIVE_LOCKS( HL_ACQUIRED_AT bigint NULL, HL_USER nvarchar(128) NOT NULL, HL_HOST nvarchar(128) NOT NULL, + HL_HEARTBEAT_COUNT int NULL, + HL_AGENT_INFO nvarchar(128) NULL, + HL_BLOCKEDBY_EXT_ID bigint NULL, + HL_BLOCKEDBY_INT_ID bigint NULL, PRIMARY KEY CLUSTERED ( HL_LOCK_EXT_ID ASC, @@ -924,6 +951,9 @@ CREATE TABLE TXNS( TXN_LAST_HEARTBEAT bigint NOT NULL, TXN_USER nvarchar(128) NOT NULL, TXN_HOST nvarchar(128) NOT NULL, + TXN_AGENT_INFO nvarchar(128) NULL, + TXN_META_INFO nvarchar(128) NULL, + TXN_HEARTBEAT_COUNT int NULL, PRIMARY KEY CLUSTERED ( TXN_ID ASC @@ -939,6 +969,16 @@ CREATE TABLE TXN_COMPONENTS( ALTER TABLE TXN_COMPONENTS WITH CHECK ADD FOREIGN KEY(TC_TXNID) REFERENCES TXNS (TXN_ID); +CREATE TABLE AUX_TABLE ( + MT_KEY1 nvarchar(128) NOT NULL, + MT_KEY2 bigint NOT NULL, + MT_COMMENT nvarchar(255) NULL, + PRIMARY KEY CLUSTERED +( + MT_KEY1 ASC, + MT_KEY2 ASC +) +); -- ----------------------------------------------------------------- diff --git metastore/scripts/upgrade/mssql/hive-schema-2.1.0.mssql.sql metastore/scripts/upgrade/mssql/hive-schema-2.1.0.mssql.sql index 731cc25..085c17d 100644 --- metastore/scripts/upgrade/mssql/hive-schema-2.1.0.mssql.sql +++ metastore/scripts/upgrade/mssql/hive-schema-2.1.0.mssql.sql @@ -866,12 +866,35 @@ CREATE TABLE COMPACTION_QUEUE( CQ_WORKER_ID nvarchar(128) NULL, CQ_START bigint NULL, CQ_RUN_AS nvarchar(128) NULL, + CQ_HIGHEST_TXN_ID bigint NULL, + CQ_META_INFO varbinary(2048) NULL, + CQ_HADOOP_JOB_ID nvarchar(128) NULL, PRIMARY KEY CLUSTERED ( CQ_ID ASC ) ); +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID bigint NOT NULL, + CC_DATABASE nvarchar(128) NOT NULL, + CC_TABLE nvarchar(128) NOT NULL, + CC_PARTITION nvarchar(767) NULL, + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID nvarchar(128) NULL, + CC_START bigint NULL, + CC_END bigint NULL, + CC_RUN_AS nvarchar(128) NULL, + CC_HIGHEST_TXN_ID bigint NULL, + CC_META_INFO varbinary(2048) NULL, + CC_HADOOP_JOB_ID nvarchar(128) NULL, +PRIMARY KEY CLUSTERED +( + CC_ID ASC +) +); + CREATE TABLE COMPLETED_TXN_COMPONENTS( CTC_TXNID bigint NULL, CTC_DATABASE nvarchar(128) NOT NULL, @@ -892,6 +915,10 @@ CREATE TABLE HIVE_LOCKS( HL_ACQUIRED_AT bigint NULL, HL_USER nvarchar(128) NOT NULL, HL_HOST nvarchar(128) NOT NULL, + HL_HEARTBEAT_COUNT int NULL, + HL_AGENT_INFO nvarchar(128) NULL, + HL_BLOCKEDBY_EXT_ID bigint NULL, + HL_BLOCKEDBY_INT_ID bigint NULL, PRIMARY KEY CLUSTERED ( HL_LOCK_EXT_ID ASC, @@ -924,6 +951,9 @@ CREATE TABLE TXNS( TXN_LAST_HEARTBEAT bigint NOT NULL, TXN_USER nvarchar(128) NOT NULL, TXN_HOST nvarchar(128) NOT NULL, + TXN_AGENT_INFO nvarchar(128) NULL, + TXN_META_INFO nvarchar(128) NULL, + TXN_HEARTBEAT_COUNT int NULL, PRIMARY KEY CLUSTERED ( TXN_ID ASC @@ -939,6 +969,16 @@ CREATE TABLE TXN_COMPONENTS( ALTER TABLE TXN_COMPONENTS WITH CHECK ADD FOREIGN KEY(TC_TXNID) REFERENCES TXNS (TXN_ID); +CREATE TABLE AUX_TABLE ( + MT_KEY1 nvarchar(128) NOT NULL, + MT_KEY2 bigint NOT NULL, + MT_COMMENT nvarchar(255) NULL, + PRIMARY KEY CLUSTERED +( + MT_KEY1 ASC, + MT_KEY2 ASC +) +); -- ----------------------------------------------------------------- diff --git metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-1.3.0.mssql.sql metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-1.3.0.mssql.sql index 9cf9d25..b0f28bb 100644 --- metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-1.3.0.mssql.sql +++ metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-1.3.0.mssql.sql @@ -1,6 +1,16 @@ SELECT 'Upgrading MetaStore schema from 1.2.0 to 1.3.0' AS MESSAGE; :r 007-HIVE-11970.mssql.sql; +:r 008-HIVE-12807.mssql.sql; +:r 009-HIVE-12814.mssql.sql; +:r 010-HIVE-12816.mssql.sql; +:r 011-HIVE-12818.mssql.sql; +:r 012-HIVE-12819.mssql.sql; +:r 013-HIVE-12821.mssql.sql; +:r 014-HIVE-12822.mssql.sql; +:r 015-HIVE-12823.mssql.sql; +:r 016-HIVE-12831.mssql.sql; +:r 017-HIVE-12832.mssql.sql; UPDATE VERSION SET SCHEMA_VERSION='1.3.0', VERSION_COMMENT='Hive release version 1.3.0' where VER_ID=1; SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 1.3.0' AS MESSAGE; diff --git metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-2.0.0.mssql.sql metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-2.0.0.mssql.sql index de3d29d..66a09a8 100644 --- metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-2.0.0.mssql.sql +++ metastore/scripts/upgrade/mssql/upgrade-1.2.0-to-2.0.0.mssql.sql @@ -1,6 +1,16 @@ SELECT 'Upgrading MetaStore schema from 1.2.0 to 2.0.0' AS MESSAGE; :r 007-HIVE-11970.mssql.sql; +:r 008-HIVE-12807.mssql.sql; +:r 009-HIVE-12814.mssql.sql; +:r 010-HIVE-12816.mssql.sql; +:r 011-HIVE-12818.mssql.sql; +:r 012-HIVE-12819.mssql.sql; +:r 013-HIVE-12821.mssql.sql; +:r 014-HIVE-12822.mssql.sql; +:r 015-HIVE-12823.mssql.sql; +:r 016-HIVE-12831.mssql.sql; +:r 017-HIVE-12832.mssql.sql; UPDATE VERSION SET SCHEMA_VERSION='2.0.0', VERSION_COMMENT='Hive release version 2.0.0' where VER_ID=1; SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 2.0.0' AS MESSAGE; diff --git metastore/scripts/upgrade/mysql/023-HIVE-12807.mysql.sql metastore/scripts/upgrade/mysql/023-HIVE-12807.mysql.sql new file mode 100644 index 0000000..31a2dd1 --- /dev/null +++ metastore/scripts/upgrade/mysql/023-HIVE-12807.mysql.sql @@ -0,0 +1 @@ +ALTER TABLE `COMPACTION_QUEUE` ADD `CQ_HIGHEST_TXN_ID` bigint; diff --git metastore/scripts/upgrade/mysql/024-HIVE-12814.mysql.sql metastore/scripts/upgrade/mysql/024-HIVE-12814.mysql.sql new file mode 100644 index 0000000..5d5f3ca --- /dev/null +++ metastore/scripts/upgrade/mysql/024-HIVE-12814.mysql.sql @@ -0,0 +1 @@ +ALTER TABLE `COMPACTION_QUEUE` ADD `CQ_META_INFO` varbinary(2048); diff --git metastore/scripts/upgrade/mysql/025-HIVE-12816.mysql.sql metastore/scripts/upgrade/mysql/025-HIVE-12816.mysql.sql new file mode 100644 index 0000000..87e48b4 --- /dev/null +++ metastore/scripts/upgrade/mysql/025-HIVE-12816.mysql.sql @@ -0,0 +1 @@ +ALTER TABLE `COMPACTION_QUEUE` ADD `CQ_HADOOP_JOB_ID` varchar(32); diff --git metastore/scripts/upgrade/mysql/026-HIVE-12818.mysql.sql metastore/scripts/upgrade/mysql/026-HIVE-12818.mysql.sql new file mode 100644 index 0000000..e241eee --- /dev/null +++ metastore/scripts/upgrade/mysql/026-HIVE-12818.mysql.sql @@ -0,0 +1,17 @@ +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID bigint PRIMARY KEY, + CC_DATABASE varchar(128) NOT NULL, + CC_TABLE varchar(128) NOT NULL, + CC_PARTITION varchar(767), + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID varchar(128), + CC_START bigint, + CC_END bigint, + CC_RUN_AS varchar(128), + CC_HIGHEST_TXN_ID bigint, + CC_META_INFO varbinary(2048), + CC_HADOOP_JOB_ID varchar(32) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + + diff --git metastore/scripts/upgrade/mysql/027-HIVE-12819.mysql.sql metastore/scripts/upgrade/mysql/027-HIVE-12819.mysql.sql new file mode 100644 index 0000000..f1e25d5 --- /dev/null +++ metastore/scripts/upgrade/mysql/027-HIVE-12819.mysql.sql @@ -0,0 +1 @@ +ALTER TABLE `TXNS` ADD `TXN_AGENT_INFO` varchar(128); diff --git metastore/scripts/upgrade/mysql/028-HIVE-12821.mysql.sql metastore/scripts/upgrade/mysql/028-HIVE-12821.mysql.sql new file mode 100644 index 0000000..a951021 --- /dev/null +++ metastore/scripts/upgrade/mysql/028-HIVE-12821.mysql.sql @@ -0,0 +1,2 @@ +ALTER TABLE `TXNS` ADD `TXN_HEARTBEAT_COUNT` int; +ALTER TABLE `HIVE_LOCKS` ADD `HL_HEARTBEAT_COUNT` int; diff --git metastore/scripts/upgrade/mysql/029-HIVE-12822.mysql.sql metastore/scripts/upgrade/mysql/029-HIVE-12822.mysql.sql new file mode 100644 index 0000000..ffd0bab --- /dev/null +++ metastore/scripts/upgrade/mysql/029-HIVE-12822.mysql.sql @@ -0,0 +1 @@ +ALTER TABLE `TXNS` ADD `TXN_META_INFO` varchar(128); diff --git metastore/scripts/upgrade/mysql/030-HIVE-12823.mysql.sql metastore/scripts/upgrade/mysql/030-HIVE-12823.mysql.sql new file mode 100644 index 0000000..42c9b17 --- /dev/null +++ metastore/scripts/upgrade/mysql/030-HIVE-12823.mysql.sql @@ -0,0 +1 @@ +ALTER TABLE `HIVE_LOCKS` ADD `HL_AGENT_INFO` varchar(128); diff --git metastore/scripts/upgrade/mysql/031-HIVE-12831.mysql.sql metastore/scripts/upgrade/mysql/031-HIVE-12831.mysql.sql new file mode 100644 index 0000000..0b19bba --- /dev/null +++ metastore/scripts/upgrade/mysql/031-HIVE-12831.mysql.sql @@ -0,0 +1,2 @@ +ALTER TABLE `HIVE_LOCKS` ADD `HL_BLOCKEDBY_EXT_ID` bigint; +ALTER TABLE `HIVE_LOCKS` ADD `HL_BLOCKEDBY_INT_ID` bigint; diff --git metastore/scripts/upgrade/mysql/032-HIVE-12832.mysql.sql metastore/scripts/upgrade/mysql/032-HIVE-12832.mysql.sql new file mode 100644 index 0000000..98c7706 --- /dev/null +++ metastore/scripts/upgrade/mysql/032-HIVE-12832.mysql.sql @@ -0,0 +1,7 @@ +CREATE TABLE AUX_TABLE ( + MT_KEY1 varchar(128) NOT NULL, + MT_KEY2 bigint NOT NULL, + MT_COMMENT varchar(255), + PRIMARY KEY(MT_KEY1, MT_KEY2) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + diff --git metastore/scripts/upgrade/mysql/hive-schema-1.3.0.mysql.sql metastore/scripts/upgrade/mysql/hive-schema-1.3.0.mysql.sql index 6c211a6..d9232d2 100644 --- metastore/scripts/upgrade/mysql/hive-schema-1.3.0.mysql.sql +++ metastore/scripts/upgrade/mysql/hive-schema-1.3.0.mysql.sql @@ -813,7 +813,7 @@ CREATE TABLE IF NOT EXISTS `NOTIFICATION_SEQUENCE` -- ---------------------------- -- Transaction and Lock Tables -- ---------------------------- -SOURCE hive-txn-schema-0.13.0.mysql.sql; +SOURCE hive-txn-schema-1.3.0.mysql.sql; -- ----------------------------------------------------------------- -- Record schema version. Should be the last step in the init script diff --git metastore/scripts/upgrade/mysql/hive-schema-2.0.0.mysql.sql metastore/scripts/upgrade/mysql/hive-schema-2.0.0.mysql.sql index ff0b643..82e0128 100644 --- metastore/scripts/upgrade/mysql/hive-schema-2.0.0.mysql.sql +++ metastore/scripts/upgrade/mysql/hive-schema-2.0.0.mysql.sql @@ -813,7 +813,7 @@ CREATE TABLE IF NOT EXISTS `NOTIFICATION_SEQUENCE` -- ---------------------------- -- Transaction and Lock Tables -- ---------------------------- -SOURCE hive-txn-schema-0.13.0.mysql.sql; +SOURCE hive-txn-schema-2.0.0.mysql.sql; -- ----------------------------------------------------------------- -- Record schema version. Should be the last step in the init script diff --git metastore/scripts/upgrade/mysql/hive-schema-2.1.0.mysql.sql metastore/scripts/upgrade/mysql/hive-schema-2.1.0.mysql.sql index d7e384c..06c3d90 100644 --- metastore/scripts/upgrade/mysql/hive-schema-2.1.0.mysql.sql +++ metastore/scripts/upgrade/mysql/hive-schema-2.1.0.mysql.sql @@ -813,7 +813,7 @@ CREATE TABLE IF NOT EXISTS `NOTIFICATION_SEQUENCE` -- ---------------------------- -- Transaction and Lock Tables -- ---------------------------- -SOURCE hive-txn-schema-0.13.0.mysql.sql; +SOURCE hive-txn-schema-2.0.0.mysql.sql; -- ----------------------------------------------------------------- -- Record schema version. Should be the last step in the init script diff --git metastore/scripts/upgrade/mysql/hive-txn-schema-1.3.0.mysql.sql metastore/scripts/upgrade/mysql/hive-txn-schema-1.3.0.mysql.sql new file mode 100644 index 0000000..ea42757 --- /dev/null +++ metastore/scripts/upgrade/mysql/hive-txn-schema-1.3.0.mysql.sql @@ -0,0 +1,122 @@ +-- Licensed to the Apache Software Foundation (ASF) under one or more +-- contributor license agreements. See the NOTICE file distributed with +-- this work for additional information regarding copyright ownership. +-- The ASF licenses this file to You under the Apache License, Version 2.0 +-- (the "License"); you may not use this file except in compliance with +-- the License. You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, software +-- distributed under the License is distributed on an "AS IS" BASIS, +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-- See the License for the specific language governing permissions and +-- limitations under the License. + +-- +-- Tables for transaction management +-- + +CREATE TABLE TXNS ( + TXN_ID bigint PRIMARY KEY, + TXN_STATE char(1) NOT NULL, + TXN_STARTED bigint NOT NULL, + TXN_LAST_HEARTBEAT bigint NOT NULL, + TXN_USER varchar(128) NOT NULL, + TXN_HOST varchar(128) NOT NULL, + TXN_AGENT_INFO varchar(128), + TXN_META_INFO varchar(128), + TXN_HEARTBEAT_COUNT int +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +CREATE TABLE TXN_COMPONENTS ( + TC_TXNID bigint, + TC_DATABASE varchar(128) NOT NULL, + TC_TABLE varchar(128), + TC_PARTITION varchar(767), + FOREIGN KEY (TC_TXNID) REFERENCES TXNS (TXN_ID) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +CREATE TABLE COMPLETED_TXN_COMPONENTS ( + CTC_TXNID bigint, + CTC_DATABASE varchar(128) NOT NULL, + CTC_TABLE varchar(128), + CTC_PARTITION varchar(767) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +CREATE TABLE NEXT_TXN_ID ( + NTXN_NEXT bigint NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +INSERT INTO NEXT_TXN_ID VALUES(1); + +CREATE TABLE HIVE_LOCKS ( + HL_LOCK_EXT_ID bigint NOT NULL, + HL_LOCK_INT_ID bigint NOT NULL, + HL_TXNID bigint, + HL_DB varchar(128) NOT NULL, + HL_TABLE varchar(128), + HL_PARTITION varchar(767), + HL_LOCK_STATE char(1) not null, + HL_LOCK_TYPE char(1) not null, + HL_LAST_HEARTBEAT bigint NOT NULL, + HL_ACQUIRED_AT bigint, + HL_USER varchar(128) NOT NULL, + HL_HOST varchar(128) NOT NULL, + HL_HEARTBEAT_COUNT int, + HL_AGENT_INFO varchar(128), + HL_BLOCKEDBY_EXT_ID bigint, + HL_BLOCKEDBY_INT_ID bigint, + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID), + KEY HIVE_LOCK_TXNID_INDEX (HL_TXNID) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +CREATE INDEX HL_TXNID_IDX ON HIVE_LOCKS (HL_TXNID); + +CREATE TABLE NEXT_LOCK_ID ( + NL_NEXT bigint NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +INSERT INTO NEXT_LOCK_ID VALUES(1); + +CREATE TABLE COMPACTION_QUEUE ( + CQ_ID bigint PRIMARY KEY, + CQ_DATABASE varchar(128) NOT NULL, + CQ_TABLE varchar(128) NOT NULL, + CQ_PARTITION varchar(767), + CQ_STATE char(1) NOT NULL, + CQ_TYPE char(1) NOT NULL, + CQ_WORKER_ID varchar(128), + CQ_START bigint, + CQ_RUN_AS varchar(128), + CQ_HIGHEST_TXN_ID bigint, + CQ_META_INFO varbinary(2048), + CQ_HADOOP_JOB_ID varchar(32) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID bigint PRIMARY KEY, + CC_DATABASE varchar(128) NOT NULL, + CC_TABLE varchar(128) NOT NULL, + CC_PARTITION varchar(767), + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID varchar(128), + CC_START bigint, + CC_END bigint, + CC_RUN_AS varchar(128), + CC_HIGHEST_TXN_ID bigint, + CC_META_INFO varbinary(2048), + CC_HADOOP_JOB_ID varchar(32) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +CREATE TABLE NEXT_COMPACTION_QUEUE_ID ( + NCQ_NEXT bigint NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1); + +CREATE TABLE AUX_TABLE ( + MT_KEY1 varchar(128) NOT NULL, + MT_KEY2 bigint NOT NULL, + MT_COMMENT varchar(255), + PRIMARY KEY(MT_KEY1, MT_KEY2) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + diff --git metastore/scripts/upgrade/mysql/hive-txn-schema-2.0.0.mysql.sql metastore/scripts/upgrade/mysql/hive-txn-schema-2.0.0.mysql.sql new file mode 100644 index 0000000..ea42757 --- /dev/null +++ metastore/scripts/upgrade/mysql/hive-txn-schema-2.0.0.mysql.sql @@ -0,0 +1,122 @@ +-- Licensed to the Apache Software Foundation (ASF) under one or more +-- contributor license agreements. See the NOTICE file distributed with +-- this work for additional information regarding copyright ownership. +-- The ASF licenses this file to You under the Apache License, Version 2.0 +-- (the "License"); you may not use this file except in compliance with +-- the License. You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, software +-- distributed under the License is distributed on an "AS IS" BASIS, +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-- See the License for the specific language governing permissions and +-- limitations under the License. + +-- +-- Tables for transaction management +-- + +CREATE TABLE TXNS ( + TXN_ID bigint PRIMARY KEY, + TXN_STATE char(1) NOT NULL, + TXN_STARTED bigint NOT NULL, + TXN_LAST_HEARTBEAT bigint NOT NULL, + TXN_USER varchar(128) NOT NULL, + TXN_HOST varchar(128) NOT NULL, + TXN_AGENT_INFO varchar(128), + TXN_META_INFO varchar(128), + TXN_HEARTBEAT_COUNT int +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +CREATE TABLE TXN_COMPONENTS ( + TC_TXNID bigint, + TC_DATABASE varchar(128) NOT NULL, + TC_TABLE varchar(128), + TC_PARTITION varchar(767), + FOREIGN KEY (TC_TXNID) REFERENCES TXNS (TXN_ID) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +CREATE TABLE COMPLETED_TXN_COMPONENTS ( + CTC_TXNID bigint, + CTC_DATABASE varchar(128) NOT NULL, + CTC_TABLE varchar(128), + CTC_PARTITION varchar(767) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +CREATE TABLE NEXT_TXN_ID ( + NTXN_NEXT bigint NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +INSERT INTO NEXT_TXN_ID VALUES(1); + +CREATE TABLE HIVE_LOCKS ( + HL_LOCK_EXT_ID bigint NOT NULL, + HL_LOCK_INT_ID bigint NOT NULL, + HL_TXNID bigint, + HL_DB varchar(128) NOT NULL, + HL_TABLE varchar(128), + HL_PARTITION varchar(767), + HL_LOCK_STATE char(1) not null, + HL_LOCK_TYPE char(1) not null, + HL_LAST_HEARTBEAT bigint NOT NULL, + HL_ACQUIRED_AT bigint, + HL_USER varchar(128) NOT NULL, + HL_HOST varchar(128) NOT NULL, + HL_HEARTBEAT_COUNT int, + HL_AGENT_INFO varchar(128), + HL_BLOCKEDBY_EXT_ID bigint, + HL_BLOCKEDBY_INT_ID bigint, + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID), + KEY HIVE_LOCK_TXNID_INDEX (HL_TXNID) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +CREATE INDEX HL_TXNID_IDX ON HIVE_LOCKS (HL_TXNID); + +CREATE TABLE NEXT_LOCK_ID ( + NL_NEXT bigint NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +INSERT INTO NEXT_LOCK_ID VALUES(1); + +CREATE TABLE COMPACTION_QUEUE ( + CQ_ID bigint PRIMARY KEY, + CQ_DATABASE varchar(128) NOT NULL, + CQ_TABLE varchar(128) NOT NULL, + CQ_PARTITION varchar(767), + CQ_STATE char(1) NOT NULL, + CQ_TYPE char(1) NOT NULL, + CQ_WORKER_ID varchar(128), + CQ_START bigint, + CQ_RUN_AS varchar(128), + CQ_HIGHEST_TXN_ID bigint, + CQ_META_INFO varbinary(2048), + CQ_HADOOP_JOB_ID varchar(32) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID bigint PRIMARY KEY, + CC_DATABASE varchar(128) NOT NULL, + CC_TABLE varchar(128) NOT NULL, + CC_PARTITION varchar(767), + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID varchar(128), + CC_START bigint, + CC_END bigint, + CC_RUN_AS varchar(128), + CC_HIGHEST_TXN_ID bigint, + CC_META_INFO varbinary(2048), + CC_HADOOP_JOB_ID varchar(32) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +CREATE TABLE NEXT_COMPACTION_QUEUE_ID ( + NCQ_NEXT bigint NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1); + +CREATE TABLE AUX_TABLE ( + MT_KEY1 varchar(128) NOT NULL, + MT_KEY2 bigint NOT NULL, + MT_COMMENT varchar(255), + PRIMARY KEY(MT_KEY1, MT_KEY2) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + diff --git metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-1.3.0.mysql.sql metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-1.3.0.mysql.sql index 1b32d93..477c10b 100644 --- metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-1.3.0.mysql.sql +++ metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-1.3.0.mysql.sql @@ -1,5 +1,16 @@ SELECT 'Upgrading MetaStore schema from 1.2.0 to 1.3.0' AS ' '; SOURCE 021-HIVE-7018.mysql.sql; SOURCE 022-HIVE-11970.mysql.sql; +SOURCE 023-HIVE-12807.mysql.sql; +SOURCE 024-HIVE-12814.mysql.sql; +SOURCE 025-HIVE-12816.mysql.sql; +SOURCE 026-HIVE-12818.mysql.sql; +SOURCE 027-HIVE-12819.mysql.sql; +SOURCE 028-HIVE-12821.mysql.sql; +SOURCE 029-HIVE-12822.mysql.sql; +SOURCE 030-HIVE-12823.mysql.sql; +SOURCE 031-HIVE-12831.mysql.sql; +SOURCE 032-HIVE-12832.mysql.sql; + UPDATE VERSION SET SCHEMA_VERSION='1.3.0', VERSION_COMMENT='Hive release version 1.3.0' where VER_ID=1; SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 1.3.0' AS ' '; diff --git metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-2.0.0.mysql.sql metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-2.0.0.mysql.sql index 1340f27..4fc1ea7 100644 --- metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-2.0.0.mysql.sql +++ metastore/scripts/upgrade/mysql/upgrade-1.2.0-to-2.0.0.mysql.sql @@ -1,6 +1,17 @@ SELECT 'Upgrading MetaStore schema from 1.2.0 to 2.0.0' AS ' '; SOURCE 021-HIVE-7018.mysql.sql; SOURCE 022-HIVE-11970.mysql.sql; +SOURCE 023-HIVE-12807.mysql.sql; +SOURCE 024-HIVE-12814.mysql.sql; +SOURCE 025-HIVE-12816.mysql.sql; +SOURCE 026-HIVE-12818.mysql.sql; +SOURCE 027-HIVE-12819.mysql.sql; +SOURCE 028-HIVE-12821.mysql.sql; +SOURCE 029-HIVE-12822.mysql.sql; +SOURCE 030-HIVE-12823.mysql.sql; +SOURCE 031-HIVE-12831.mysql.sql; +SOURCE 032-HIVE-12832.mysql.sql; + UPDATE VERSION SET SCHEMA_VERSION='2.0.0', VERSION_COMMENT='Hive release version 2.0.0' where VER_ID=1; SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 2.0.0' AS ' '; diff --git metastore/scripts/upgrade/oracle/023-HIVE-12807.oracle.sql metastore/scripts/upgrade/oracle/023-HIVE-12807.oracle.sql new file mode 100644 index 0000000..0313e96 --- /dev/null +++ metastore/scripts/upgrade/oracle/023-HIVE-12807.oracle.sql @@ -0,0 +1 @@ +ALTER TABLE COMPACTION_QUEUE ADD CQ_HIGHEST_TXN_ID NUMBER(19); diff --git metastore/scripts/upgrade/oracle/024-HIVE-12814.oracle.sql metastore/scripts/upgrade/oracle/024-HIVE-12814.oracle.sql new file mode 100644 index 0000000..d9a5575 --- /dev/null +++ metastore/scripts/upgrade/oracle/024-HIVE-12814.oracle.sql @@ -0,0 +1 @@ +ALTER TABLE COMPACTION_QUEUE ADD CQ_META_INFO BLOB; diff --git metastore/scripts/upgrade/oracle/025-HIVE-12816.oracle.sql metastore/scripts/upgrade/oracle/025-HIVE-12816.oracle.sql new file mode 100644 index 0000000..9a96d8c --- /dev/null +++ metastore/scripts/upgrade/oracle/025-HIVE-12816.oracle.sql @@ -0,0 +1 @@ +ALTER TABLE COMPACTION_QUEUE ADD CQ_HADOOP_JOB_ID varchar2(32); diff --git metastore/scripts/upgrade/oracle/026-HIVE-12818.oracle.sql metastore/scripts/upgrade/oracle/026-HIVE-12818.oracle.sql new file mode 100644 index 0000000..9ecb43e --- /dev/null +++ metastore/scripts/upgrade/oracle/026-HIVE-12818.oracle.sql @@ -0,0 +1,17 @@ +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID NUMBER(19) PRIMARY KEY, + CC_DATABASE varchar(128) NOT NULL, + CC_TABLE varchar(128) NOT NULL, + CC_PARTITION varchar(767), + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID varchar(128), + CC_START NUMBER(19), + CC_END NUMBER(19), + CC_RUN_AS varchar(128), + CC_HIGHEST_TXN_ID NUMBER(19), + CC_META_INFO BLOB, + CC_HADOOP_JOB_ID varchar2(32) +) ROWDEPENDENCIES; + + diff --git metastore/scripts/upgrade/oracle/027-HIVE-12819.oracle.sql metastore/scripts/upgrade/oracle/027-HIVE-12819.oracle.sql new file mode 100644 index 0000000..0d74a98 --- /dev/null +++ metastore/scripts/upgrade/oracle/027-HIVE-12819.oracle.sql @@ -0,0 +1 @@ +ALTER TABLE TXNS ADD TXN_AGENT_INFO varchar2(128); diff --git metastore/scripts/upgrade/oracle/028-HIVE-12821.oracle.sql metastore/scripts/upgrade/oracle/028-HIVE-12821.oracle.sql new file mode 100644 index 0000000..152d2ab --- /dev/null +++ metastore/scripts/upgrade/oracle/028-HIVE-12821.oracle.sql @@ -0,0 +1,2 @@ +ALTER TABLE TXNS ADD TXN_HEARTBEAT_COUNT number(10); +ALTER TABLE HIVE_LOCKS ADD HL_HEARTBEAT_COUNT number(10); diff --git metastore/scripts/upgrade/oracle/029-HIVE-12822.oracle.sql metastore/scripts/upgrade/oracle/029-HIVE-12822.oracle.sql new file mode 100644 index 0000000..63c0d77 --- /dev/null +++ metastore/scripts/upgrade/oracle/029-HIVE-12822.oracle.sql @@ -0,0 +1 @@ +ALTER TABLE TXNS ADD TXN_META_INFO varchar2(128); diff --git metastore/scripts/upgrade/oracle/030-HIVE-12823.oracle.sql metastore/scripts/upgrade/oracle/030-HIVE-12823.oracle.sql new file mode 100644 index 0000000..f938603 --- /dev/null +++ metastore/scripts/upgrade/oracle/030-HIVE-12823.oracle.sql @@ -0,0 +1 @@ +ALTER TABLE HIVE_LOCKS ADD HL_AGENT_INFO varchar2(128); diff --git metastore/scripts/upgrade/oracle/031-HIVE-12381.oracle.sql metastore/scripts/upgrade/oracle/031-HIVE-12381.oracle.sql new file mode 100644 index 0000000..35a9b9d --- /dev/null +++ metastore/scripts/upgrade/oracle/031-HIVE-12381.oracle.sql @@ -0,0 +1,2 @@ +ALTER TABLE HIVE_LOCKS ADD HL_BLOCKEDBY_EXT_ID number(19); +ALTER TABLE HIVE_LOCKS ADD HL_BLOCKEDBY_INT_ID number(19); diff --git metastore/scripts/upgrade/oracle/032-HIVE-12832.oracle.sql metastore/scripts/upgrade/oracle/032-HIVE-12832.oracle.sql new file mode 100644 index 0000000..2b58d2e --- /dev/null +++ metastore/scripts/upgrade/oracle/032-HIVE-12832.oracle.sql @@ -0,0 +1,7 @@ +CREATE TABLE AUX_TABLE ( + MT_KEY1 varchar2(128) NOT NULL, + MT_KEY2 number(19) NOT NULL, + MT_COMMENT varchar2(255), + PRIMARY KEY(MT_KEY1, MT_KEY2) +); + diff --git metastore/scripts/upgrade/oracle/hive-schema-1.3.0.oracle.sql metastore/scripts/upgrade/oracle/hive-schema-1.3.0.oracle.sql index d2e7945..e162988 100644 --- metastore/scripts/upgrade/oracle/hive-schema-1.3.0.oracle.sql +++ metastore/scripts/upgrade/oracle/hive-schema-1.3.0.oracle.sql @@ -780,7 +780,7 @@ CREATE INDEX FUNC_RU_N49 ON FUNC_RU (FUNC_ID); ------------------------------ -- Transaction and lock tables ------------------------------ -@hive-txn-schema-0.13.0.oracle.sql; +@hive-txn-schema-1.3.0.oracle.sql; -- ----------------------------------------------------------------- -- Record schema version. Should be the last step in the init script diff --git metastore/scripts/upgrade/oracle/hive-schema-2.0.0.oracle.sql metastore/scripts/upgrade/oracle/hive-schema-2.0.0.oracle.sql index 2dcdd77..168473a 100644 --- metastore/scripts/upgrade/oracle/hive-schema-2.0.0.oracle.sql +++ metastore/scripts/upgrade/oracle/hive-schema-2.0.0.oracle.sql @@ -780,7 +780,7 @@ CREATE INDEX FUNC_RU_N49 ON FUNC_RU (FUNC_ID); ------------------------------ -- Transaction and lock tables ------------------------------ -@hive-txn-schema-0.13.0.oracle.sql; +@hive-txn-schema-2.0.0.oracle.sql; -- ----------------------------------------------------------------- -- Record schema version. Should be the last step in the init script diff --git metastore/scripts/upgrade/oracle/hive-schema-2.1.0.oracle.sql metastore/scripts/upgrade/oracle/hive-schema-2.1.0.oracle.sql index 88f2ca6..644463d 100644 --- metastore/scripts/upgrade/oracle/hive-schema-2.1.0.oracle.sql +++ metastore/scripts/upgrade/oracle/hive-schema-2.1.0.oracle.sql @@ -780,7 +780,7 @@ CREATE INDEX FUNC_RU_N49 ON FUNC_RU (FUNC_ID); ------------------------------ -- Transaction and lock tables ------------------------------ -@hive-txn-schema-0.13.0.oracle.sql; +@hive-txn-schema-2.0.0.oracle.sql; -- ----------------------------------------------------------------- -- Record schema version. Should be the last step in the init script diff --git metastore/scripts/upgrade/oracle/hive-txn-schema-1.3.0.oracle.sql metastore/scripts/upgrade/oracle/hive-txn-schema-1.3.0.oracle.sql new file mode 100644 index 0000000..788741a --- /dev/null +++ metastore/scripts/upgrade/oracle/hive-txn-schema-1.3.0.oracle.sql @@ -0,0 +1,120 @@ +-- Licensed to the Apache Software Foundation (ASF) under one or more +-- contributor license agreements. See the NOTICE file distributed with +-- this work for additional information regarding copyright ownership. +-- The ASF licenses this file to You under the Apache License, Version 2.0 +-- (the License); you may not use this file except in compliance with +-- the License. You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, software +-- distributed under the License is distributed on an AS IS BASIS, +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-- See the License for the specific language governing permissions and +-- limitations under the License. + +-- +-- Tables for transaction management +-- + +CREATE TABLE TXNS ( + TXN_ID NUMBER(19) PRIMARY KEY, + TXN_STATE char(1) NOT NULL, + TXN_STARTED NUMBER(19) NOT NULL, + TXN_LAST_HEARTBEAT NUMBER(19) NOT NULL, + TXN_USER varchar(128) NOT NULL, + TXN_HOST varchar(128) NOT NULL, + TXN_AGENT_INFO varchar2(128), + TXN_META_INFO varchar2(128), + TXN_HEARTBEAT_COUNT number(10) +) ROWDEPENDENCIES; + +CREATE TABLE TXN_COMPONENTS ( + TC_TXNID NUMBER(19) REFERENCES TXNS (TXN_ID), + TC_DATABASE VARCHAR2(128) NOT NULL, + TC_TABLE VARCHAR2(128), + TC_PARTITION VARCHAR2(767) NULL +) ROWDEPENDENCIES; + +CREATE TABLE COMPLETED_TXN_COMPONENTS ( + CTC_TXNID NUMBER(19), + CTC_DATABASE varchar(128) NOT NULL, + CTC_TABLE varchar(128), + CTC_PARTITION varchar(767) +) ROWDEPENDENCIES; + +CREATE TABLE NEXT_TXN_ID ( + NTXN_NEXT NUMBER(19) NOT NULL +); +INSERT INTO NEXT_TXN_ID VALUES(1); + +CREATE TABLE HIVE_LOCKS ( + HL_LOCK_EXT_ID NUMBER(19) NOT NULL, + HL_LOCK_INT_ID NUMBER(19) NOT NULL, + HL_TXNID NUMBER(19), + HL_DB VARCHAR2(128) NOT NULL, + HL_TABLE VARCHAR2(128), + HL_PARTITION VARCHAR2(767), + HL_LOCK_STATE CHAR(1) NOT NULL, + HL_LOCK_TYPE CHAR(1) NOT NULL, + HL_LAST_HEARTBEAT NUMBER(19) NOT NULL, + HL_ACQUIRED_AT NUMBER(19), + HL_USER varchar(128) NOT NULL, + HL_HOST varchar(128) NOT NULL, + HL_HEARTBEAT_COUNT number(10), + HL_AGENT_INFO varchar2(128), + HL_BLOCKEDBY_EXT_ID number(19), + HL_BLOCKEDBY_INT_ID number(19), + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID) +) ROWDEPENDENCIES; + +CREATE INDEX HL_TXNID_INDEX ON HIVE_LOCKS (HL_TXNID); + +CREATE TABLE NEXT_LOCK_ID ( + NL_NEXT NUMBER(19) NOT NULL +); +INSERT INTO NEXT_LOCK_ID VALUES(1); + +CREATE TABLE COMPACTION_QUEUE ( + CQ_ID NUMBER(19) PRIMARY KEY, + CQ_DATABASE varchar(128) NOT NULL, + CQ_TABLE varchar(128) NOT NULL, + CQ_PARTITION varchar(767), + CQ_STATE char(1) NOT NULL, + CQ_TYPE char(1) NOT NULL, + CQ_WORKER_ID varchar(128), + CQ_START NUMBER(19), + CQ_RUN_AS varchar(128), + CQ_HIGHEST_TXN_ID NUMBER(19), + CQ_META_INFO BLOB, + CQ_HADOOP_JOB_ID varchar2(32) +) ROWDEPENDENCIES; + +CREATE TABLE NEXT_COMPACTION_QUEUE_ID ( + NCQ_NEXT NUMBER(19) NOT NULL +); +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1); + +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID NUMBER(19) PRIMARY KEY, + CC_DATABASE varchar(128) NOT NULL, + CC_TABLE varchar(128) NOT NULL, + CC_PARTITION varchar(767), + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID varchar(128), + CC_START NUMBER(19), + CC_END NUMBER(19), + CC_RUN_AS varchar(128), + CC_HIGHEST_TXN_ID NUMBER(19), + CC_META_INFO BLOB, + CC_HADOOP_JOB_ID varchar2(32) +) ROWDEPENDENCIES; + +CREATE TABLE AUX_TABLE ( + MT_KEY1 varchar2(128) NOT NULL, + MT_KEY2 number(19) NOT NULL, + MT_COMMENT varchar2(255), + PRIMARY KEY(MT_KEY1, MT_KEY2) +); + diff --git metastore/scripts/upgrade/oracle/hive-txn-schema-2.0.0.oracle.sql metastore/scripts/upgrade/oracle/hive-txn-schema-2.0.0.oracle.sql new file mode 100644 index 0000000..788741a --- /dev/null +++ metastore/scripts/upgrade/oracle/hive-txn-schema-2.0.0.oracle.sql @@ -0,0 +1,120 @@ +-- Licensed to the Apache Software Foundation (ASF) under one or more +-- contributor license agreements. See the NOTICE file distributed with +-- this work for additional information regarding copyright ownership. +-- The ASF licenses this file to You under the Apache License, Version 2.0 +-- (the License); you may not use this file except in compliance with +-- the License. You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, software +-- distributed under the License is distributed on an AS IS BASIS, +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-- See the License for the specific language governing permissions and +-- limitations under the License. + +-- +-- Tables for transaction management +-- + +CREATE TABLE TXNS ( + TXN_ID NUMBER(19) PRIMARY KEY, + TXN_STATE char(1) NOT NULL, + TXN_STARTED NUMBER(19) NOT NULL, + TXN_LAST_HEARTBEAT NUMBER(19) NOT NULL, + TXN_USER varchar(128) NOT NULL, + TXN_HOST varchar(128) NOT NULL, + TXN_AGENT_INFO varchar2(128), + TXN_META_INFO varchar2(128), + TXN_HEARTBEAT_COUNT number(10) +) ROWDEPENDENCIES; + +CREATE TABLE TXN_COMPONENTS ( + TC_TXNID NUMBER(19) REFERENCES TXNS (TXN_ID), + TC_DATABASE VARCHAR2(128) NOT NULL, + TC_TABLE VARCHAR2(128), + TC_PARTITION VARCHAR2(767) NULL +) ROWDEPENDENCIES; + +CREATE TABLE COMPLETED_TXN_COMPONENTS ( + CTC_TXNID NUMBER(19), + CTC_DATABASE varchar(128) NOT NULL, + CTC_TABLE varchar(128), + CTC_PARTITION varchar(767) +) ROWDEPENDENCIES; + +CREATE TABLE NEXT_TXN_ID ( + NTXN_NEXT NUMBER(19) NOT NULL +); +INSERT INTO NEXT_TXN_ID VALUES(1); + +CREATE TABLE HIVE_LOCKS ( + HL_LOCK_EXT_ID NUMBER(19) NOT NULL, + HL_LOCK_INT_ID NUMBER(19) NOT NULL, + HL_TXNID NUMBER(19), + HL_DB VARCHAR2(128) NOT NULL, + HL_TABLE VARCHAR2(128), + HL_PARTITION VARCHAR2(767), + HL_LOCK_STATE CHAR(1) NOT NULL, + HL_LOCK_TYPE CHAR(1) NOT NULL, + HL_LAST_HEARTBEAT NUMBER(19) NOT NULL, + HL_ACQUIRED_AT NUMBER(19), + HL_USER varchar(128) NOT NULL, + HL_HOST varchar(128) NOT NULL, + HL_HEARTBEAT_COUNT number(10), + HL_AGENT_INFO varchar2(128), + HL_BLOCKEDBY_EXT_ID number(19), + HL_BLOCKEDBY_INT_ID number(19), + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID) +) ROWDEPENDENCIES; + +CREATE INDEX HL_TXNID_INDEX ON HIVE_LOCKS (HL_TXNID); + +CREATE TABLE NEXT_LOCK_ID ( + NL_NEXT NUMBER(19) NOT NULL +); +INSERT INTO NEXT_LOCK_ID VALUES(1); + +CREATE TABLE COMPACTION_QUEUE ( + CQ_ID NUMBER(19) PRIMARY KEY, + CQ_DATABASE varchar(128) NOT NULL, + CQ_TABLE varchar(128) NOT NULL, + CQ_PARTITION varchar(767), + CQ_STATE char(1) NOT NULL, + CQ_TYPE char(1) NOT NULL, + CQ_WORKER_ID varchar(128), + CQ_START NUMBER(19), + CQ_RUN_AS varchar(128), + CQ_HIGHEST_TXN_ID NUMBER(19), + CQ_META_INFO BLOB, + CQ_HADOOP_JOB_ID varchar2(32) +) ROWDEPENDENCIES; + +CREATE TABLE NEXT_COMPACTION_QUEUE_ID ( + NCQ_NEXT NUMBER(19) NOT NULL +); +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1); + +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID NUMBER(19) PRIMARY KEY, + CC_DATABASE varchar(128) NOT NULL, + CC_TABLE varchar(128) NOT NULL, + CC_PARTITION varchar(767), + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID varchar(128), + CC_START NUMBER(19), + CC_END NUMBER(19), + CC_RUN_AS varchar(128), + CC_HIGHEST_TXN_ID NUMBER(19), + CC_META_INFO BLOB, + CC_HADOOP_JOB_ID varchar2(32) +) ROWDEPENDENCIES; + +CREATE TABLE AUX_TABLE ( + MT_KEY1 varchar2(128) NOT NULL, + MT_KEY2 number(19) NOT NULL, + MT_COMMENT varchar2(255), + PRIMARY KEY(MT_KEY1, MT_KEY2) +); + diff --git metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-1.3.0.oracle.sql metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-1.3.0.oracle.sql index bd283d4..94ee2c4 100644 --- metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-1.3.0.oracle.sql +++ metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-1.3.0.oracle.sql @@ -1,6 +1,16 @@ SELECT 'Upgrading MetaStore schema from 1.2.0 to 1.3.0' AS Status from dual; @022-HIVE-11970.oracle.sql; +@023-HIVE-12807.oracle.sql; +@024-HIVE-12814.oracle.sql; +@025-HIVE-12816.oracle.sql; +@026-HIVE-12818.oracle.sql; +@027-HIVE-12819.oracle.sql; +@028-HIVE-12821.oracle.sql; +@029-HIVE-12822.oracle.sql; +@030-HIVE-12823.oracle.sql; +@031-HIVE-12381.oracle.sql; +@032-HIVE-12832.oracle.sql; UPDATE VERSION SET SCHEMA_VERSION='1.3.0', VERSION_COMMENT='Hive release version 1.3.0' where VER_ID=1; SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 1.3.0' AS Status from dual; diff --git metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-2.0.0.oracle.sql metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-2.0.0.oracle.sql index ceb09be..f3a774a 100644 --- metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-2.0.0.oracle.sql +++ metastore/scripts/upgrade/oracle/upgrade-1.2.0-to-2.0.0.oracle.sql @@ -1,6 +1,16 @@ SELECT 'Upgrading MetaStore schema from 1.2.0 to 2.0.0' AS Status from dual; @022-HIVE-11970.oracle.sql; +@023-HIVE-12807.oracle.sql; +@024-HIVE-12814.oracle.sql; +@025-HIVE-12816.oracle.sql; +@026-HIVE-12818.oracle.sql; +@027-HIVE-12819.oracle.sql; +@028-HIVE-12821.oracle.sql; +@029-HIVE-12822.oracle.sql; +@030-HIVE-12823.oracle.sql; +@031-HIVE-12381.oracle.sql; +@032-HIVE-12832.oracle.sql; UPDATE VERSION SET SCHEMA_VERSION='2.0.0', VERSION_COMMENT='Hive release version 2.0.0' where VER_ID=1; SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 2.0.0' AS Status from dual; diff --git metastore/scripts/upgrade/postgres/022-HIVE-12807.postgres.sql metastore/scripts/upgrade/postgres/022-HIVE-12807.postgres.sql new file mode 100644 index 0000000..d4c7a18 --- /dev/null +++ metastore/scripts/upgrade/postgres/022-HIVE-12807.postgres.sql @@ -0,0 +1 @@ +ALTER TABLE COMPACTION_QUEUE ADD COLUMN CQ_HIGHEST_TXN_ID bigint; diff --git metastore/scripts/upgrade/postgres/023-HIVE-12814.postgres.sql metastore/scripts/upgrade/postgres/023-HIVE-12814.postgres.sql new file mode 100644 index 0000000..37ef99e --- /dev/null +++ metastore/scripts/upgrade/postgres/023-HIVE-12814.postgres.sql @@ -0,0 +1 @@ +ALTER TABLE COMPACTION_QUEUE ADD COLUMN CQ_META_INFO bytea; diff --git metastore/scripts/upgrade/postgres/024-HIVE-12816.postgres.sql metastore/scripts/upgrade/postgres/024-HIVE-12816.postgres.sql new file mode 100644 index 0000000..fa987d9 --- /dev/null +++ metastore/scripts/upgrade/postgres/024-HIVE-12816.postgres.sql @@ -0,0 +1 @@ +ALTER TABLE COMPACTION_QUEUE ADD COLUMN CQ_HADOOP_JOB_ID varchar(32); diff --git metastore/scripts/upgrade/postgres/025-HIVE-12818.postgres.sql metastore/scripts/upgrade/postgres/025-HIVE-12818.postgres.sql new file mode 100644 index 0000000..5eb2f26 --- /dev/null +++ metastore/scripts/upgrade/postgres/025-HIVE-12818.postgres.sql @@ -0,0 +1,17 @@ +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID bigint PRIMARY KEY, + CC_DATABASE varchar(128) NOT NULL, + CC_TABLE varchar(128) NOT NULL, + CC_PARTITION varchar(767), + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID varchar(128), + CC_START bigint, + CC_END bigint, + CC_RUN_AS varchar(128), + CC_HIGHEST_TXN_ID bigint, + CC_META_INFO bytea, + CC_HADOOP_JOB_ID varchar(32) +); + + diff --git metastore/scripts/upgrade/postgres/026-HIVE-12819.postgres.sql metastore/scripts/upgrade/postgres/026-HIVE-12819.postgres.sql new file mode 100644 index 0000000..eceb910 --- /dev/null +++ metastore/scripts/upgrade/postgres/026-HIVE-12819.postgres.sql @@ -0,0 +1 @@ +ALTER TABLE TXNS ADD COLUMN TXN_AGENT_INFO varchar(128); diff --git metastore/scripts/upgrade/postgres/027-HIVE-12821.postgres.sql metastore/scripts/upgrade/postgres/027-HIVE-12821.postgres.sql new file mode 100644 index 0000000..ba5a51a --- /dev/null +++ metastore/scripts/upgrade/postgres/027-HIVE-12821.postgres.sql @@ -0,0 +1,2 @@ +ALTER TABLE TXNS ADD COLUMN TXN_HEARTBEAT_COUNT integer; +ALTER TABLE HIVE_LOCKS ADD COLUMN HL_HEARTBEAT_COUNT integer; diff --git metastore/scripts/upgrade/postgres/028-HIVE-12822.postgres.sql metastore/scripts/upgrade/postgres/028-HIVE-12822.postgres.sql new file mode 100644 index 0000000..f4e9742 --- /dev/null +++ metastore/scripts/upgrade/postgres/028-HIVE-12822.postgres.sql @@ -0,0 +1 @@ +ALTER TABLE TXNS ADD COLUMN TXN_META_INFO varchar(128); diff --git metastore/scripts/upgrade/postgres/029-HIVE-12823.postgres.sql metastore/scripts/upgrade/postgres/029-HIVE-12823.postgres.sql new file mode 100644 index 0000000..f7a980b --- /dev/null +++ metastore/scripts/upgrade/postgres/029-HIVE-12823.postgres.sql @@ -0,0 +1 @@ +ALTER TABLE HIVE_LOCKS ADD COLUMN HL_AGENT_INFO varchar(128); diff --git metastore/scripts/upgrade/postgres/030-HIVE-12831.postgres.sql metastore/scripts/upgrade/postgres/030-HIVE-12831.postgres.sql new file mode 100644 index 0000000..3f314e8 --- /dev/null +++ metastore/scripts/upgrade/postgres/030-HIVE-12831.postgres.sql @@ -0,0 +1,2 @@ +ALTER TABLE HIVE_LOCKS ADD COLUMN HL_BLOCKEDBY_EXT_ID bigint; +ALTER TABLE HIVE_LOCKS ADD COLUMN HL_BLOCKEDBY_INT_ID bigint; diff --git metastore/scripts/upgrade/postgres/031-HIVE-12832.postgres.sql metastore/scripts/upgrade/postgres/031-HIVE-12832.postgres.sql new file mode 100644 index 0000000..0e5515c --- /dev/null +++ metastore/scripts/upgrade/postgres/031-HIVE-12832.postgres.sql @@ -0,0 +1,7 @@ +CREATE TABLE AUX_TABLE ( + MT_KEY1 varchar(128) NOT NULL, + MT_KEY2 bigint NOT NULL, + MT_COMMENT varchar(255), + PRIMARY KEY(MT_KEY1, MT_KEY2) +); + diff --git metastore/scripts/upgrade/postgres/hive-schema-1.3.0.postgres.sql metastore/scripts/upgrade/postgres/hive-schema-1.3.0.postgres.sql index 9bb5765..1ea19c3 100644 --- metastore/scripts/upgrade/postgres/hive-schema-1.3.0.postgres.sql +++ metastore/scripts/upgrade/postgres/hive-schema-1.3.0.postgres.sql @@ -1449,7 +1449,7 @@ GRANT ALL ON SCHEMA public TO PUBLIC; ------------------------------ -- Transaction and lock tables ------------------------------ -\i hive-txn-schema-0.13.0.postgres.sql; +\i hive-txn-schema-1.3.0.postgres.sql; -- ----------------------------------------------------------------- -- Record schema version. Should be the last step in the init script diff --git metastore/scripts/upgrade/postgres/hive-schema-2.0.0.postgres.sql metastore/scripts/upgrade/postgres/hive-schema-2.0.0.postgres.sql index c749a29..4f034d7 100644 --- metastore/scripts/upgrade/postgres/hive-schema-2.0.0.postgres.sql +++ metastore/scripts/upgrade/postgres/hive-schema-2.0.0.postgres.sql @@ -1449,7 +1449,7 @@ GRANT ALL ON SCHEMA public TO PUBLIC; ------------------------------ -- Transaction and lock tables ------------------------------ -\i hive-txn-schema-0.13.0.postgres.sql; +\i hive-txn-schema-2.0.0.postgres.sql; -- ----------------------------------------------------------------- -- Record schema version. Should be the last step in the init script diff --git metastore/scripts/upgrade/postgres/hive-schema-2.1.0.postgres.sql metastore/scripts/upgrade/postgres/hive-schema-2.1.0.postgres.sql index efc0f0c..1db9993 100644 --- metastore/scripts/upgrade/postgres/hive-schema-2.1.0.postgres.sql +++ metastore/scripts/upgrade/postgres/hive-schema-2.1.0.postgres.sql @@ -1449,7 +1449,7 @@ GRANT ALL ON SCHEMA public TO PUBLIC; ------------------------------ -- Transaction and lock tables ------------------------------ -\i hive-txn-schema-0.13.0.postgres.sql; +\i hive-txn-schema-2.0.0.postgres.sql; -- ----------------------------------------------------------------- -- Record schema version. Should be the last step in the init script diff --git metastore/scripts/upgrade/postgres/hive-txn-schema-1.3.0.postgres.sql metastore/scripts/upgrade/postgres/hive-txn-schema-1.3.0.postgres.sql new file mode 100644 index 0000000..b2fc1a8 --- /dev/null +++ metastore/scripts/upgrade/postgres/hive-txn-schema-1.3.0.postgres.sql @@ -0,0 +1,121 @@ +-- Licensed to the Apache Software Foundation (ASF) under one or more +-- contributor license agreements. See the NOTICE file distributed with +-- this work for additional information regarding copyright ownership. +-- The ASF licenses this file to You under the Apache License, Version 2.0 +-- (the "License"); you may not use this file except in compliance with +-- the License. You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, software +-- distributed under the License is distributed on an "AS IS" BASIS, +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-- See the License for the specific language governing permissions and +-- limitations under the License. + +-- +-- Tables for transaction management +-- + +CREATE TABLE TXNS ( + TXN_ID bigint PRIMARY KEY, + TXN_STATE char(1) NOT NULL, + TXN_STARTED bigint NOT NULL, + TXN_LAST_HEARTBEAT bigint NOT NULL, + TXN_USER varchar(128) NOT NULL, + TXN_HOST varchar(128) NOT NULL, + TXN_AGENT_INFO varchar(128), + TXN_META_INFO varchar(128), + TXN_HEARTBEAT_COUNT integer +); + +CREATE TABLE TXN_COMPONENTS ( + TC_TXNID bigint REFERENCES TXNS (TXN_ID), + TC_DATABASE varchar(128) NOT NULL, + TC_TABLE varchar(128), + TC_PARTITION varchar(767) DEFAULT NULL +); + +CREATE TABLE COMPLETED_TXN_COMPONENTS ( + CTC_TXNID bigint, + CTC_DATABASE varchar(128) NOT NULL, + CTC_TABLE varchar(128), + CTC_PARTITION varchar(767) +); + +CREATE TABLE NEXT_TXN_ID ( + NTXN_NEXT bigint NOT NULL +); +INSERT INTO NEXT_TXN_ID VALUES(1); + +CREATE TABLE HIVE_LOCKS ( + HL_LOCK_EXT_ID bigint NOT NULL, + HL_LOCK_INT_ID bigint NOT NULL, + HL_TXNID bigint, + HL_DB varchar(128) NOT NULL, + HL_TABLE varchar(128), + HL_PARTITION varchar(767) DEFAULT NULL, + HL_LOCK_STATE char(1) NOT NULL, + HL_LOCK_TYPE char(1) NOT NULL, + HL_LAST_HEARTBEAT bigint NOT NULL, + HL_ACQUIRED_AT bigint, + HL_USER varchar(128) NOT NULL, + HL_HOST varchar(128) NOT NULL, + HL_HEARTBEAT_COUNT integer, + HL_AGENT_INFO varchar(128), + HL_BLOCKEDBY_EXT_ID bigint, + HL_BLOCKEDBY_INT_ID bigint, + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID) +); + +CREATE INDEX HL_TXNID_INDEX ON HIVE_LOCKS USING hash (HL_TXNID); + +CREATE TABLE NEXT_LOCK_ID ( + NL_NEXT bigint NOT NULL +); +INSERT INTO NEXT_LOCK_ID VALUES(1); + +CREATE TABLE COMPACTION_QUEUE ( + CQ_ID bigint PRIMARY KEY, + CQ_DATABASE varchar(128) NOT NULL, + CQ_TABLE varchar(128) NOT NULL, + CQ_PARTITION varchar(767), + CQ_STATE char(1) NOT NULL, + CQ_TYPE char(1) NOT NULL, + CQ_WORKER_ID varchar(128), + CQ_START bigint, + CQ_RUN_AS varchar(128), + CQ_HIGHEST_TXN_ID bigint, + CQ_META_INFO bytea, + CQ_HADOOP_JOB_ID varchar(32) +); + +CREATE TABLE NEXT_COMPACTION_QUEUE_ID ( + NCQ_NEXT bigint NOT NULL +); +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1); + +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID bigint PRIMARY KEY, + CC_DATABASE varchar(128) NOT NULL, + CC_TABLE varchar(128) NOT NULL, + CC_PARTITION varchar(767), + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID varchar(128), + CC_START bigint, + CC_END bigint, + CC_RUN_AS varchar(128), + CC_HIGHEST_TXN_ID bigint, + CC_META_INFO bytea, + CC_HADOOP_JOB_ID varchar(32) +); + +CREATE TABLE AUX_TABLE ( + MT_KEY1 varchar(128) NOT NULL, + MT_KEY2 bigint NOT NULL, + MT_COMMENT varchar(255), + PRIMARY KEY(MT_KEY1, MT_KEY2) +); + + diff --git metastore/scripts/upgrade/postgres/hive-txn-schema-2.0.0.postgres.sql metastore/scripts/upgrade/postgres/hive-txn-schema-2.0.0.postgres.sql new file mode 100644 index 0000000..b2fc1a8 --- /dev/null +++ metastore/scripts/upgrade/postgres/hive-txn-schema-2.0.0.postgres.sql @@ -0,0 +1,121 @@ +-- Licensed to the Apache Software Foundation (ASF) under one or more +-- contributor license agreements. See the NOTICE file distributed with +-- this work for additional information regarding copyright ownership. +-- The ASF licenses this file to You under the Apache License, Version 2.0 +-- (the "License"); you may not use this file except in compliance with +-- the License. You may obtain a copy of the License at +-- +-- http://www.apache.org/licenses/LICENSE-2.0 +-- +-- Unless required by applicable law or agreed to in writing, software +-- distributed under the License is distributed on an "AS IS" BASIS, +-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-- See the License for the specific language governing permissions and +-- limitations under the License. + +-- +-- Tables for transaction management +-- + +CREATE TABLE TXNS ( + TXN_ID bigint PRIMARY KEY, + TXN_STATE char(1) NOT NULL, + TXN_STARTED bigint NOT NULL, + TXN_LAST_HEARTBEAT bigint NOT NULL, + TXN_USER varchar(128) NOT NULL, + TXN_HOST varchar(128) NOT NULL, + TXN_AGENT_INFO varchar(128), + TXN_META_INFO varchar(128), + TXN_HEARTBEAT_COUNT integer +); + +CREATE TABLE TXN_COMPONENTS ( + TC_TXNID bigint REFERENCES TXNS (TXN_ID), + TC_DATABASE varchar(128) NOT NULL, + TC_TABLE varchar(128), + TC_PARTITION varchar(767) DEFAULT NULL +); + +CREATE TABLE COMPLETED_TXN_COMPONENTS ( + CTC_TXNID bigint, + CTC_DATABASE varchar(128) NOT NULL, + CTC_TABLE varchar(128), + CTC_PARTITION varchar(767) +); + +CREATE TABLE NEXT_TXN_ID ( + NTXN_NEXT bigint NOT NULL +); +INSERT INTO NEXT_TXN_ID VALUES(1); + +CREATE TABLE HIVE_LOCKS ( + HL_LOCK_EXT_ID bigint NOT NULL, + HL_LOCK_INT_ID bigint NOT NULL, + HL_TXNID bigint, + HL_DB varchar(128) NOT NULL, + HL_TABLE varchar(128), + HL_PARTITION varchar(767) DEFAULT NULL, + HL_LOCK_STATE char(1) NOT NULL, + HL_LOCK_TYPE char(1) NOT NULL, + HL_LAST_HEARTBEAT bigint NOT NULL, + HL_ACQUIRED_AT bigint, + HL_USER varchar(128) NOT NULL, + HL_HOST varchar(128) NOT NULL, + HL_HEARTBEAT_COUNT integer, + HL_AGENT_INFO varchar(128), + HL_BLOCKEDBY_EXT_ID bigint, + HL_BLOCKEDBY_INT_ID bigint, + PRIMARY KEY(HL_LOCK_EXT_ID, HL_LOCK_INT_ID) +); + +CREATE INDEX HL_TXNID_INDEX ON HIVE_LOCKS USING hash (HL_TXNID); + +CREATE TABLE NEXT_LOCK_ID ( + NL_NEXT bigint NOT NULL +); +INSERT INTO NEXT_LOCK_ID VALUES(1); + +CREATE TABLE COMPACTION_QUEUE ( + CQ_ID bigint PRIMARY KEY, + CQ_DATABASE varchar(128) NOT NULL, + CQ_TABLE varchar(128) NOT NULL, + CQ_PARTITION varchar(767), + CQ_STATE char(1) NOT NULL, + CQ_TYPE char(1) NOT NULL, + CQ_WORKER_ID varchar(128), + CQ_START bigint, + CQ_RUN_AS varchar(128), + CQ_HIGHEST_TXN_ID bigint, + CQ_META_INFO bytea, + CQ_HADOOP_JOB_ID varchar(32) +); + +CREATE TABLE NEXT_COMPACTION_QUEUE_ID ( + NCQ_NEXT bigint NOT NULL +); +INSERT INTO NEXT_COMPACTION_QUEUE_ID VALUES(1); + +CREATE TABLE COMPLETED_COMPACTIONS ( + CC_ID bigint PRIMARY KEY, + CC_DATABASE varchar(128) NOT NULL, + CC_TABLE varchar(128) NOT NULL, + CC_PARTITION varchar(767), + CC_STATE char(1) NOT NULL, + CC_TYPE char(1) NOT NULL, + CC_WORKER_ID varchar(128), + CC_START bigint, + CC_END bigint, + CC_RUN_AS varchar(128), + CC_HIGHEST_TXN_ID bigint, + CC_META_INFO bytea, + CC_HADOOP_JOB_ID varchar(32) +); + +CREATE TABLE AUX_TABLE ( + MT_KEY1 varchar(128) NOT NULL, + MT_KEY2 bigint NOT NULL, + MT_COMMENT varchar(255), + PRIMARY KEY(MT_KEY1, MT_KEY2) +); + + diff --git metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-1.3.0.postgres.sql metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-1.3.0.postgres.sql index b1ec241..6eb5620 100644 --- metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-1.3.0.postgres.sql +++ metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-1.3.0.postgres.sql @@ -1,6 +1,16 @@ SELECT 'Upgrading MetaStore schema from 1.2.0 to 1.3.0'; \i 021-HIVE-11970.postgres.sql; +\i 022-HIVE-12807.postgres.sql; +\i 023-HIVE-12814.postgres.sql; +\i 024-HIVE-12816.postgres.sql; +\i 025-HIVE-12818.postgres.sql; +\i 026-HIVE-12819.postgres.sql; +\i 027-HIVE-12821.postgres.sql; +\i 028-HIVE-12822.postgres.sql; +\i 029-HIVE-12823.postgres.sql; +\i 030-HIVE-12831.postgres.sql; +\i 031-HIVE-12832.postgres.sql; UPDATE "VERSION" SET "SCHEMA_VERSION"='1.3.0', "VERSION_COMMENT"='Hive release version 1.3.0' where "VER_ID"=1; SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 1.3.0'; diff --git metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-2.0.0.postgres.sql metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-2.0.0.postgres.sql index 628444c..77438c9 100644 --- metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-2.0.0.postgres.sql +++ metastore/scripts/upgrade/postgres/upgrade-1.2.0-to-2.0.0.postgres.sql @@ -1,6 +1,16 @@ SELECT 'Upgrading MetaStore schema from 1.2.0 to 2.0.0'; \i 021-HIVE-11970.postgres.sql; +\i 022-HIVE-12807.postgres.sql; +\i 023-HIVE-12814.postgres.sql; +\i 024-HIVE-12816.postgres.sql; +\i 025-HIVE-12818.postgres.sql; +\i 026-HIVE-12819.postgres.sql; +\i 027-HIVE-12821.postgres.sql; +\i 028-HIVE-12822.postgres.sql; +\i 029-HIVE-12823.postgres.sql; +\i 030-HIVE-12831.postgres.sql; +\i 031-HIVE-12832.postgres.sql; UPDATE "VERSION" SET "SCHEMA_VERSION"='2.0.0', "VERSION_COMMENT"='Hive release version 2.0.0' where "VER_ID"=1; SELECT 'Finished upgrading MetaStore schema from 1.2.0 to 2.0.0'; diff --git metastore/src/gen/thrift/gen-cpp/hive_metastore_types.cpp metastore/src/gen/thrift/gen-cpp/hive_metastore_types.cpp index d997e33..0203b06 100644 --- metastore/src/gen/thrift/gen-cpp/hive_metastore_types.cpp +++ metastore/src/gen/thrift/gen-cpp/hive_metastore_types.cpp @@ -9975,6 +9975,21 @@ void TxnInfo::__set_hostname(const std::string& val) { this->hostname = val; } +void TxnInfo::__set_agentInfo(const std::string& val) { + this->agentInfo = val; +__isset.agentInfo = true; +} + +void TxnInfo::__set_heartbeatCount(const int32_t val) { + this->heartbeatCount = val; +__isset.heartbeatCount = true; +} + +void TxnInfo::__set_metaInfo(const std::string& val) { + this->metaInfo = val; +__isset.metaInfo = true; +} + uint32_t TxnInfo::read(::apache::thrift::protocol::TProtocol* iprot) { apache::thrift::protocol::TInputRecursionTracker tracker(*iprot); @@ -10034,6 +10049,30 @@ uint32_t TxnInfo::read(::apache::thrift::protocol::TProtocol* iprot) { xfer += iprot->skip(ftype); } break; + case 5: + if (ftype == ::apache::thrift::protocol::T_STRING) { + xfer += iprot->readString(this->agentInfo); + this->__isset.agentInfo = true; + } else { + xfer += iprot->skip(ftype); + } + break; + case 6: + if (ftype == ::apache::thrift::protocol::T_I32) { + xfer += iprot->readI32(this->heartbeatCount); + this->__isset.heartbeatCount = true; + } else { + xfer += iprot->skip(ftype); + } + break; + case 7: + if (ftype == ::apache::thrift::protocol::T_STRING) { + xfer += iprot->readString(this->metaInfo); + this->__isset.metaInfo = true; + } else { + xfer += iprot->skip(ftype); + } + break; default: xfer += iprot->skip(ftype); break; @@ -10075,6 +10114,21 @@ uint32_t TxnInfo::write(::apache::thrift::protocol::TProtocol* oprot) const { xfer += oprot->writeString(this->hostname); xfer += oprot->writeFieldEnd(); + if (this->__isset.agentInfo) { + xfer += oprot->writeFieldBegin("agentInfo", ::apache::thrift::protocol::T_STRING, 5); + xfer += oprot->writeString(this->agentInfo); + xfer += oprot->writeFieldEnd(); + } + if (this->__isset.heartbeatCount) { + xfer += oprot->writeFieldBegin("heartbeatCount", ::apache::thrift::protocol::T_I32, 6); + xfer += oprot->writeI32(this->heartbeatCount); + xfer += oprot->writeFieldEnd(); + } + if (this->__isset.metaInfo) { + xfer += oprot->writeFieldBegin("metaInfo", ::apache::thrift::protocol::T_STRING, 7); + xfer += oprot->writeString(this->metaInfo); + xfer += oprot->writeFieldEnd(); + } xfer += oprot->writeFieldStop(); xfer += oprot->writeStructEnd(); return xfer; @@ -10086,6 +10140,10 @@ void swap(TxnInfo &a, TxnInfo &b) { swap(a.state, b.state); swap(a.user, b.user); swap(a.hostname, b.hostname); + swap(a.agentInfo, b.agentInfo); + swap(a.heartbeatCount, b.heartbeatCount); + swap(a.metaInfo, b.metaInfo); + swap(a.__isset, b.__isset); } TxnInfo::TxnInfo(const TxnInfo& other465) { @@ -10093,12 +10151,20 @@ TxnInfo::TxnInfo(const TxnInfo& other465) { state = other465.state; user = other465.user; hostname = other465.hostname; + agentInfo = other465.agentInfo; + heartbeatCount = other465.heartbeatCount; + metaInfo = other465.metaInfo; + __isset = other465.__isset; } TxnInfo& TxnInfo::operator=(const TxnInfo& other466) { id = other466.id; state = other466.state; user = other466.user; hostname = other466.hostname; + agentInfo = other466.agentInfo; + heartbeatCount = other466.heartbeatCount; + metaInfo = other466.metaInfo; + __isset = other466.__isset; return *this; } void TxnInfo::printTo(std::ostream& out) const { @@ -10108,6 +10174,9 @@ void TxnInfo::printTo(std::ostream& out) const { out << ", " << "state=" << to_string(state); out << ", " << "user=" << to_string(user); out << ", " << "hostname=" << to_string(hostname); + out << ", " << "agentInfo="; (__isset.agentInfo ? (out << to_string(agentInfo)) : (out << "")); + out << ", " << "heartbeatCount="; (__isset.heartbeatCount ? (out << to_string(heartbeatCount)) : (out << "")); + out << ", " << "metaInfo="; (__isset.metaInfo ? (out << to_string(metaInfo)) : (out << "")); out << ")"; } @@ -10387,6 +10456,11 @@ void OpenTxnRequest::__set_hostname(const std::string& val) { this->hostname = val; } +void OpenTxnRequest::__set_agentInfo(const std::string& val) { + this->agentInfo = val; +__isset.agentInfo = true; +} + uint32_t OpenTxnRequest::read(::apache::thrift::protocol::TProtocol* iprot) { apache::thrift::protocol::TInputRecursionTracker tracker(*iprot); @@ -10435,6 +10509,14 @@ uint32_t OpenTxnRequest::read(::apache::thrift::protocol::TProtocol* iprot) { xfer += iprot->skip(ftype); } break; + case 4: + if (ftype == ::apache::thrift::protocol::T_STRING) { + xfer += iprot->readString(this->agentInfo); + this->__isset.agentInfo = true; + } else { + xfer += iprot->skip(ftype); + } + break; default: xfer += iprot->skip(ftype); break; @@ -10470,6 +10552,11 @@ uint32_t OpenTxnRequest::write(::apache::thrift::protocol::TProtocol* oprot) con xfer += oprot->writeString(this->hostname); xfer += oprot->writeFieldEnd(); + if (this->__isset.agentInfo) { + xfer += oprot->writeFieldBegin("agentInfo", ::apache::thrift::protocol::T_STRING, 4); + xfer += oprot->writeString(this->agentInfo); + xfer += oprot->writeFieldEnd(); + } xfer += oprot->writeFieldStop(); xfer += oprot->writeStructEnd(); return xfer; @@ -10480,17 +10567,23 @@ void swap(OpenTxnRequest &a, OpenTxnRequest &b) { swap(a.num_txns, b.num_txns); swap(a.user, b.user); swap(a.hostname, b.hostname); + swap(a.agentInfo, b.agentInfo); + swap(a.__isset, b.__isset); } OpenTxnRequest::OpenTxnRequest(const OpenTxnRequest& other484) { num_txns = other484.num_txns; user = other484.user; hostname = other484.hostname; + agentInfo = other484.agentInfo; + __isset = other484.__isset; } OpenTxnRequest& OpenTxnRequest::operator=(const OpenTxnRequest& other485) { num_txns = other485.num_txns; user = other485.user; hostname = other485.hostname; + agentInfo = other485.agentInfo; + __isset = other485.__isset; return *this; } void OpenTxnRequest::printTo(std::ostream& out) const { @@ -10499,6 +10592,7 @@ void OpenTxnRequest::printTo(std::ostream& out) const { out << "num_txns=" << to_string(num_txns); out << ", " << "user=" << to_string(user); out << ", " << "hostname=" << to_string(hostname); + out << ", " << "agentInfo="; (__isset.agentInfo ? (out << to_string(agentInfo)) : (out << "")); out << ")"; } @@ -10985,6 +11079,11 @@ void LockRequest::__set_hostname(const std::string& val) { this->hostname = val; } +void LockRequest::__set_agentInfo(const std::string& val) { + this->agentInfo = val; +__isset.agentInfo = true; +} + uint32_t LockRequest::read(::apache::thrift::protocol::TProtocol* iprot) { apache::thrift::protocol::TInputRecursionTracker tracker(*iprot); @@ -11053,6 +11152,14 @@ uint32_t LockRequest::read(::apache::thrift::protocol::TProtocol* iprot) { xfer += iprot->skip(ftype); } break; + case 5: + if (ftype == ::apache::thrift::protocol::T_STRING) { + xfer += iprot->readString(this->agentInfo); + this->__isset.agentInfo = true; + } else { + xfer += iprot->skip(ftype); + } + break; default: xfer += iprot->skip(ftype); break; @@ -11101,6 +11208,11 @@ uint32_t LockRequest::write(::apache::thrift::protocol::TProtocol* oprot) const xfer += oprot->writeString(this->hostname); xfer += oprot->writeFieldEnd(); + if (this->__isset.agentInfo) { + xfer += oprot->writeFieldBegin("agentInfo", ::apache::thrift::protocol::T_STRING, 5); + xfer += oprot->writeString(this->agentInfo); + xfer += oprot->writeFieldEnd(); + } xfer += oprot->writeFieldStop(); xfer += oprot->writeStructEnd(); return xfer; @@ -11112,6 +11224,7 @@ void swap(LockRequest &a, LockRequest &b) { swap(a.txnid, b.txnid); swap(a.user, b.user); swap(a.hostname, b.hostname); + swap(a.agentInfo, b.agentInfo); swap(a.__isset, b.__isset); } @@ -11120,6 +11233,7 @@ LockRequest::LockRequest(const LockRequest& other508) { txnid = other508.txnid; user = other508.user; hostname = other508.hostname; + agentInfo = other508.agentInfo; __isset = other508.__isset; } LockRequest& LockRequest::operator=(const LockRequest& other509) { @@ -11127,6 +11241,7 @@ LockRequest& LockRequest::operator=(const LockRequest& other509) { txnid = other509.txnid; user = other509.user; hostname = other509.hostname; + agentInfo = other509.agentInfo; __isset = other509.__isset; return *this; } @@ -11137,6 +11252,7 @@ void LockRequest::printTo(std::ostream& out) const { out << ", " << "txnid="; (__isset.txnid ? (out << to_string(txnid)) : (out << "")); out << ", " << "user=" << to_string(user); out << ", " << "hostname=" << to_string(hostname); + out << ", " << "agentInfo="; (__isset.agentInfo ? (out << to_string(agentInfo)) : (out << "")); out << ")"; } @@ -11260,6 +11376,16 @@ void CheckLockRequest::__set_lockid(const int64_t val) { this->lockid = val; } +void CheckLockRequest::__set_txnid(const int64_t val) { + this->txnid = val; +__isset.txnid = true; +} + +void CheckLockRequest::__set_elapsed_ms(const int64_t val) { + this->elapsed_ms = val; +__isset.elapsed_ms = true; +} + uint32_t CheckLockRequest::read(::apache::thrift::protocol::TProtocol* iprot) { apache::thrift::protocol::TInputRecursionTracker tracker(*iprot); @@ -11290,6 +11416,22 @@ uint32_t CheckLockRequest::read(::apache::thrift::protocol::TProtocol* iprot) { xfer += iprot->skip(ftype); } break; + case 2: + if (ftype == ::apache::thrift::protocol::T_I64) { + xfer += iprot->readI64(this->txnid); + this->__isset.txnid = true; + } else { + xfer += iprot->skip(ftype); + } + break; + case 3: + if (ftype == ::apache::thrift::protocol::T_I64) { + xfer += iprot->readI64(this->elapsed_ms); + this->__isset.elapsed_ms = true; + } else { + xfer += iprot->skip(ftype); + } + break; default: xfer += iprot->skip(ftype); break; @@ -11313,6 +11455,16 @@ uint32_t CheckLockRequest::write(::apache::thrift::protocol::TProtocol* oprot) c xfer += oprot->writeI64(this->lockid); xfer += oprot->writeFieldEnd(); + if (this->__isset.txnid) { + xfer += oprot->writeFieldBegin("txnid", ::apache::thrift::protocol::T_I64, 2); + xfer += oprot->writeI64(this->txnid); + xfer += oprot->writeFieldEnd(); + } + if (this->__isset.elapsed_ms) { + xfer += oprot->writeFieldBegin("elapsed_ms", ::apache::thrift::protocol::T_I64, 3); + xfer += oprot->writeI64(this->elapsed_ms); + xfer += oprot->writeFieldEnd(); + } xfer += oprot->writeFieldStop(); xfer += oprot->writeStructEnd(); return xfer; @@ -11321,19 +11473,30 @@ uint32_t CheckLockRequest::write(::apache::thrift::protocol::TProtocol* oprot) c void swap(CheckLockRequest &a, CheckLockRequest &b) { using ::std::swap; swap(a.lockid, b.lockid); + swap(a.txnid, b.txnid); + swap(a.elapsed_ms, b.elapsed_ms); + swap(a.__isset, b.__isset); } CheckLockRequest::CheckLockRequest(const CheckLockRequest& other513) { lockid = other513.lockid; + txnid = other513.txnid; + elapsed_ms = other513.elapsed_ms; + __isset = other513.__isset; } CheckLockRequest& CheckLockRequest::operator=(const CheckLockRequest& other514) { lockid = other514.lockid; + txnid = other514.txnid; + elapsed_ms = other514.elapsed_ms; + __isset = other514.__isset; return *this; } void CheckLockRequest::printTo(std::ostream& out) const { using ::apache::thrift::to_string; out << "CheckLockRequest("; out << "lockid=" << to_string(lockid); + out << ", " << "txnid="; (__isset.txnid ? (out << to_string(txnid)) : (out << "")); + out << ", " << "elapsed_ms="; (__isset.elapsed_ms ? (out << to_string(elapsed_ms)) : (out << "")); out << ")"; } @@ -11428,6 +11591,26 @@ ShowLocksRequest::~ShowLocksRequest() throw() { } +void ShowLocksRequest::__set_dbname(const std::string& val) { + this->dbname = val; +__isset.dbname = true; +} + +void ShowLocksRequest::__set_tablename(const std::string& val) { + this->tablename = val; +__isset.tablename = true; +} + +void ShowLocksRequest::__set_partname(const std::string& val) { + this->partname = val; +__isset.partname = true; +} + +void ShowLocksRequest::__set_isExtended(const bool val) { + this->isExtended = val; +__isset.isExtended = true; +} + uint32_t ShowLocksRequest::read(::apache::thrift::protocol::TProtocol* iprot) { apache::thrift::protocol::TInputRecursionTracker tracker(*iprot); @@ -11447,7 +11630,44 @@ uint32_t ShowLocksRequest::read(::apache::thrift::protocol::TProtocol* iprot) { if (ftype == ::apache::thrift::protocol::T_STOP) { break; } - xfer += iprot->skip(ftype); + switch (fid) + { + case 1: + if (ftype == ::apache::thrift::protocol::T_STRING) { + xfer += iprot->readString(this->dbname); + this->__isset.dbname = true; + } else { + xfer += iprot->skip(ftype); + } + break; + case 2: + if (ftype == ::apache::thrift::protocol::T_STRING) { + xfer += iprot->readString(this->tablename); + this->__isset.tablename = true; + } else { + xfer += iprot->skip(ftype); + } + break; + case 3: + if (ftype == ::apache::thrift::protocol::T_STRING) { + xfer += iprot->readString(this->partname); + this->__isset.partname = true; + } else { + xfer += iprot->skip(ftype); + } + break; + case 4: + if (ftype == ::apache::thrift::protocol::T_BOOL) { + xfer += iprot->readBool(this->isExtended); + this->__isset.isExtended = true; + } else { + xfer += iprot->skip(ftype); + } + break; + default: + xfer += iprot->skip(ftype); + break; + } xfer += iprot->readFieldEnd(); } @@ -11461,6 +11681,26 @@ uint32_t ShowLocksRequest::write(::apache::thrift::protocol::TProtocol* oprot) c apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot); xfer += oprot->writeStructBegin("ShowLocksRequest"); + if (this->__isset.dbname) { + xfer += oprot->writeFieldBegin("dbname", ::apache::thrift::protocol::T_STRING, 1); + xfer += oprot->writeString(this->dbname); + xfer += oprot->writeFieldEnd(); + } + if (this->__isset.tablename) { + xfer += oprot->writeFieldBegin("tablename", ::apache::thrift::protocol::T_STRING, 2); + xfer += oprot->writeString(this->tablename); + xfer += oprot->writeFieldEnd(); + } + if (this->__isset.partname) { + xfer += oprot->writeFieldBegin("partname", ::apache::thrift::protocol::T_STRING, 3); + xfer += oprot->writeString(this->partname); + xfer += oprot->writeFieldEnd(); + } + if (this->__isset.isExtended) { + xfer += oprot->writeFieldBegin("isExtended", ::apache::thrift::protocol::T_BOOL, 4); + xfer += oprot->writeBool(this->isExtended); + xfer += oprot->writeFieldEnd(); + } xfer += oprot->writeFieldStop(); xfer += oprot->writeStructEnd(); return xfer; @@ -11468,20 +11708,35 @@ uint32_t ShowLocksRequest::write(::apache::thrift::protocol::TProtocol* oprot) c void swap(ShowLocksRequest &a, ShowLocksRequest &b) { using ::std::swap; - (void) a; - (void) b; + swap(a.dbname, b.dbname); + swap(a.tablename, b.tablename); + swap(a.partname, b.partname); + swap(a.isExtended, b.isExtended); + swap(a.__isset, b.__isset); } ShowLocksRequest::ShowLocksRequest(const ShowLocksRequest& other517) { - (void) other517; + dbname = other517.dbname; + tablename = other517.tablename; + partname = other517.partname; + isExtended = other517.isExtended; + __isset = other517.__isset; } ShowLocksRequest& ShowLocksRequest::operator=(const ShowLocksRequest& other518) { - (void) other518; + dbname = other518.dbname; + tablename = other518.tablename; + partname = other518.partname; + isExtended = other518.isExtended; + __isset = other518.__isset; return *this; } void ShowLocksRequest::printTo(std::ostream& out) const { using ::apache::thrift::to_string; out << "ShowLocksRequest("; + out << "dbname="; (__isset.dbname ? (out << to_string(dbname)) : (out << "")); + out << ", " << "tablename="; (__isset.tablename ? (out << to_string(tablename)) : (out << "")); + out << ", " << "partname="; (__isset.partname ? (out << to_string(partname)) : (out << "")); + out << ", " << "isExtended="; (__isset.isExtended ? (out << to_string(isExtended)) : (out << "")); out << ")"; } @@ -11538,6 +11793,31 @@ void ShowLocksResponseElement::__set_hostname(const std::string& val) { this->hostname = val; } +void ShowLocksResponseElement::__set_heartbeatCount(const int32_t val) { + this->heartbeatCount = val; +__isset.heartbeatCount = true; +} + +void ShowLocksResponseElement::__set_agentInfo(const std::string& val) { + this->agentInfo = val; +__isset.agentInfo = true; +} + +void ShowLocksResponseElement::__set_blockedByExtId(const int64_t val) { + this->blockedByExtId = val; +__isset.blockedByExtId = true; +} + +void ShowLocksResponseElement::__set_blockedByIntId(const int64_t val) { + this->blockedByIntId = val; +__isset.blockedByIntId = true; +} + +void ShowLocksResponseElement::__set_lockIdInternal(const int64_t val) { + this->lockIdInternal = val; +__isset.lockIdInternal = true; +} + uint32_t ShowLocksResponseElement::read(::apache::thrift::protocol::TProtocol* iprot) { apache::thrift::protocol::TInputRecursionTracker tracker(*iprot); @@ -11658,6 +11938,46 @@ uint32_t ShowLocksResponseElement::read(::apache::thrift::protocol::TProtocol* i xfer += iprot->skip(ftype); } break; + case 12: + if (ftype == ::apache::thrift::protocol::T_I32) { + xfer += iprot->readI32(this->heartbeatCount); + this->__isset.heartbeatCount = true; + } else { + xfer += iprot->skip(ftype); + } + break; + case 13: + if (ftype == ::apache::thrift::protocol::T_STRING) { + xfer += iprot->readString(this->agentInfo); + this->__isset.agentInfo = true; + } else { + xfer += iprot->skip(ftype); + } + break; + case 14: + if (ftype == ::apache::thrift::protocol::T_I64) { + xfer += iprot->readI64(this->blockedByExtId); + this->__isset.blockedByExtId = true; + } else { + xfer += iprot->skip(ftype); + } + break; + case 15: + if (ftype == ::apache::thrift::protocol::T_I64) { + xfer += iprot->readI64(this->blockedByIntId); + this->__isset.blockedByIntId = true; + } else { + xfer += iprot->skip(ftype); + } + break; + case 16: + if (ftype == ::apache::thrift::protocol::T_I64) { + xfer += iprot->readI64(this->lockIdInternal); + this->__isset.lockIdInternal = true; + } else { + xfer += iprot->skip(ftype); + } + break; default: xfer += iprot->skip(ftype); break; @@ -11737,6 +12057,31 @@ uint32_t ShowLocksResponseElement::write(::apache::thrift::protocol::TProtocol* xfer += oprot->writeString(this->hostname); xfer += oprot->writeFieldEnd(); + if (this->__isset.heartbeatCount) { + xfer += oprot->writeFieldBegin("heartbeatCount", ::apache::thrift::protocol::T_I32, 12); + xfer += oprot->writeI32(this->heartbeatCount); + xfer += oprot->writeFieldEnd(); + } + if (this->__isset.agentInfo) { + xfer += oprot->writeFieldBegin("agentInfo", ::apache::thrift::protocol::T_STRING, 13); + xfer += oprot->writeString(this->agentInfo); + xfer += oprot->writeFieldEnd(); + } + if (this->__isset.blockedByExtId) { + xfer += oprot->writeFieldBegin("blockedByExtId", ::apache::thrift::protocol::T_I64, 14); + xfer += oprot->writeI64(this->blockedByExtId); + xfer += oprot->writeFieldEnd(); + } + if (this->__isset.blockedByIntId) { + xfer += oprot->writeFieldBegin("blockedByIntId", ::apache::thrift::protocol::T_I64, 15); + xfer += oprot->writeI64(this->blockedByIntId); + xfer += oprot->writeFieldEnd(); + } + if (this->__isset.lockIdInternal) { + xfer += oprot->writeFieldBegin("lockIdInternal", ::apache::thrift::protocol::T_I64, 16); + xfer += oprot->writeI64(this->lockIdInternal); + xfer += oprot->writeFieldEnd(); + } xfer += oprot->writeFieldStop(); xfer += oprot->writeStructEnd(); return xfer; @@ -11755,6 +12100,11 @@ void swap(ShowLocksResponseElement &a, ShowLocksResponseElement &b) { swap(a.acquiredat, b.acquiredat); swap(a.user, b.user); swap(a.hostname, b.hostname); + swap(a.heartbeatCount, b.heartbeatCount); + swap(a.agentInfo, b.agentInfo); + swap(a.blockedByExtId, b.blockedByExtId); + swap(a.blockedByIntId, b.blockedByIntId); + swap(a.lockIdInternal, b.lockIdInternal); swap(a.__isset, b.__isset); } @@ -11770,6 +12120,11 @@ ShowLocksResponseElement::ShowLocksResponseElement(const ShowLocksResponseElemen acquiredat = other521.acquiredat; user = other521.user; hostname = other521.hostname; + heartbeatCount = other521.heartbeatCount; + agentInfo = other521.agentInfo; + blockedByExtId = other521.blockedByExtId; + blockedByIntId = other521.blockedByIntId; + lockIdInternal = other521.lockIdInternal; __isset = other521.__isset; } ShowLocksResponseElement& ShowLocksResponseElement::operator=(const ShowLocksResponseElement& other522) { @@ -11784,6 +12139,11 @@ ShowLocksResponseElement& ShowLocksResponseElement::operator=(const ShowLocksRes acquiredat = other522.acquiredat; user = other522.user; hostname = other522.hostname; + heartbeatCount = other522.heartbeatCount; + agentInfo = other522.agentInfo; + blockedByExtId = other522.blockedByExtId; + blockedByIntId = other522.blockedByIntId; + lockIdInternal = other522.lockIdInternal; __isset = other522.__isset; return *this; } @@ -11801,6 +12161,11 @@ void ShowLocksResponseElement::printTo(std::ostream& out) const { out << ", " << "acquiredat="; (__isset.acquiredat ? (out << to_string(acquiredat)) : (out << "")); out << ", " << "user=" << to_string(user); out << ", " << "hostname=" << to_string(hostname); + out << ", " << "heartbeatCount="; (__isset.heartbeatCount ? (out << to_string(heartbeatCount)) : (out << "")); + out << ", " << "agentInfo="; (__isset.agentInfo ? (out << to_string(agentInfo)) : (out << "")); + out << ", " << "blockedByExtId="; (__isset.blockedByExtId ? (out << to_string(blockedByExtId)) : (out << "")); + out << ", " << "blockedByIntId="; (__isset.blockedByIntId ? (out << to_string(blockedByIntId)) : (out << "")); + out << ", " << "lockIdInternal="; (__isset.lockIdInternal ? (out << to_string(lockIdInternal)) : (out << "")); out << ")"; } @@ -12564,6 +12929,26 @@ void ShowCompactResponseElement::__set_runAs(const std::string& val) { __isset.runAs = true; } +void ShowCompactResponseElement::__set_hightestTxnId(const int64_t val) { + this->hightestTxnId = val; +__isset.hightestTxnId = true; +} + +void ShowCompactResponseElement::__set_metaInfo(const std::string& val) { + this->metaInfo = val; +__isset.metaInfo = true; +} + +void ShowCompactResponseElement::__set_endTime(const int64_t val) { + this->endTime = val; +__isset.endTime = true; +} + +void ShowCompactResponseElement::__set_hadoopJobId(const std::string& val) { + this->hadoopJobId = val; +__isset.hadoopJobId = true; +} + uint32_t ShowCompactResponseElement::read(::apache::thrift::protocol::TProtocol* iprot) { apache::thrift::protocol::TInputRecursionTracker tracker(*iprot); @@ -12655,6 +13040,38 @@ uint32_t ShowCompactResponseElement::read(::apache::thrift::protocol::TProtocol* xfer += iprot->skip(ftype); } break; + case 9: + if (ftype == ::apache::thrift::protocol::T_I64) { + xfer += iprot->readI64(this->hightestTxnId); + this->__isset.hightestTxnId = true; + } else { + xfer += iprot->skip(ftype); + } + break; + case 10: + if (ftype == ::apache::thrift::protocol::T_STRING) { + xfer += iprot->readString(this->metaInfo); + this->__isset.metaInfo = true; + } else { + xfer += iprot->skip(ftype); + } + break; + case 11: + if (ftype == ::apache::thrift::protocol::T_I64) { + xfer += iprot->readI64(this->endTime); + this->__isset.endTime = true; + } else { + xfer += iprot->skip(ftype); + } + break; + case 12: + if (ftype == ::apache::thrift::protocol::T_STRING) { + xfer += iprot->readString(this->hadoopJobId); + this->__isset.hadoopJobId = true; + } else { + xfer += iprot->skip(ftype); + } + break; default: xfer += iprot->skip(ftype); break; @@ -12716,6 +13133,26 @@ uint32_t ShowCompactResponseElement::write(::apache::thrift::protocol::TProtocol xfer += oprot->writeString(this->runAs); xfer += oprot->writeFieldEnd(); } + if (this->__isset.hightestTxnId) { + xfer += oprot->writeFieldBegin("hightestTxnId", ::apache::thrift::protocol::T_I64, 9); + xfer += oprot->writeI64(this->hightestTxnId); + xfer += oprot->writeFieldEnd(); + } + if (this->__isset.metaInfo) { + xfer += oprot->writeFieldBegin("metaInfo", ::apache::thrift::protocol::T_STRING, 10); + xfer += oprot->writeString(this->metaInfo); + xfer += oprot->writeFieldEnd(); + } + if (this->__isset.endTime) { + xfer += oprot->writeFieldBegin("endTime", ::apache::thrift::protocol::T_I64, 11); + xfer += oprot->writeI64(this->endTime); + xfer += oprot->writeFieldEnd(); + } + if (this->__isset.hadoopJobId) { + xfer += oprot->writeFieldBegin("hadoopJobId", ::apache::thrift::protocol::T_STRING, 12); + xfer += oprot->writeString(this->hadoopJobId); + xfer += oprot->writeFieldEnd(); + } xfer += oprot->writeFieldStop(); xfer += oprot->writeStructEnd(); return xfer; @@ -12731,6 +13168,10 @@ void swap(ShowCompactResponseElement &a, ShowCompactResponseElement &b) { swap(a.workerid, b.workerid); swap(a.start, b.start); swap(a.runAs, b.runAs); + swap(a.hightestTxnId, b.hightestTxnId); + swap(a.metaInfo, b.metaInfo); + swap(a.endTime, b.endTime); + swap(a.hadoopJobId, b.hadoopJobId); swap(a.__isset, b.__isset); } @@ -12743,6 +13184,10 @@ ShowCompactResponseElement::ShowCompactResponseElement(const ShowCompactResponse workerid = other557.workerid; start = other557.start; runAs = other557.runAs; + hightestTxnId = other557.hightestTxnId; + metaInfo = other557.metaInfo; + endTime = other557.endTime; + hadoopJobId = other557.hadoopJobId; __isset = other557.__isset; } ShowCompactResponseElement& ShowCompactResponseElement::operator=(const ShowCompactResponseElement& other558) { @@ -12754,6 +13199,10 @@ ShowCompactResponseElement& ShowCompactResponseElement::operator=(const ShowComp workerid = other558.workerid; start = other558.start; runAs = other558.runAs; + hightestTxnId = other558.hightestTxnId; + metaInfo = other558.metaInfo; + endTime = other558.endTime; + hadoopJobId = other558.hadoopJobId; __isset = other558.__isset; return *this; } @@ -12768,6 +13217,10 @@ void ShowCompactResponseElement::printTo(std::ostream& out) const { out << ", " << "workerid="; (__isset.workerid ? (out << to_string(workerid)) : (out << "")); out << ", " << "start="; (__isset.start ? (out << to_string(start)) : (out << "")); out << ", " << "runAs="; (__isset.runAs ? (out << to_string(runAs)) : (out << "")); + out << ", " << "hightestTxnId="; (__isset.hightestTxnId ? (out << to_string(hightestTxnId)) : (out << "")); + out << ", " << "metaInfo="; (__isset.metaInfo ? (out << to_string(metaInfo)) : (out << "")); + out << ", " << "endTime="; (__isset.endTime ? (out << to_string(endTime)) : (out << "")); + out << ", " << "hadoopJobId="; (__isset.hadoopJobId ? (out << to_string(hadoopJobId)) : (out << "")); out << ")"; } diff --git metastore/src/gen/thrift/gen-cpp/hive_metastore_types.h metastore/src/gen/thrift/gen-cpp/hive_metastore_types.h index 97d3362..ce1d7da 100644 --- metastore/src/gen/thrift/gen-cpp/hive_metastore_types.h +++ metastore/src/gen/thrift/gen-cpp/hive_metastore_types.h @@ -4104,13 +4104,19 @@ inline std::ostream& operator<<(std::ostream& out, const Function& obj) return out; } +typedef struct _TxnInfo__isset { + _TxnInfo__isset() : agentInfo(true), heartbeatCount(true), metaInfo(false) {} + bool agentInfo :1; + bool heartbeatCount :1; + bool metaInfo :1; +} _TxnInfo__isset; class TxnInfo { public: TxnInfo(const TxnInfo&); TxnInfo& operator=(const TxnInfo&); - TxnInfo() : id(0), state((TxnState::type)0), user(), hostname() { + TxnInfo() : id(0), state((TxnState::type)0), user(), hostname(), agentInfo("Unknown"), heartbeatCount(0), metaInfo() { } virtual ~TxnInfo() throw(); @@ -4118,6 +4124,11 @@ class TxnInfo { TxnState::type state; std::string user; std::string hostname; + std::string agentInfo; + int32_t heartbeatCount; + std::string metaInfo; + + _TxnInfo__isset __isset; void __set_id(const int64_t val); @@ -4127,6 +4138,12 @@ class TxnInfo { void __set_hostname(const std::string& val); + void __set_agentInfo(const std::string& val); + + void __set_heartbeatCount(const int32_t val); + + void __set_metaInfo(const std::string& val); + bool operator == (const TxnInfo & rhs) const { if (!(id == rhs.id)) @@ -4137,6 +4154,18 @@ class TxnInfo { return false; if (!(hostname == rhs.hostname)) return false; + if (__isset.agentInfo != rhs.__isset.agentInfo) + return false; + else if (__isset.agentInfo && !(agentInfo == rhs.agentInfo)) + return false; + if (__isset.heartbeatCount != rhs.__isset.heartbeatCount) + return false; + else if (__isset.heartbeatCount && !(heartbeatCount == rhs.heartbeatCount)) + return false; + if (__isset.metaInfo != rhs.__isset.metaInfo) + return false; + else if (__isset.metaInfo && !(metaInfo == rhs.metaInfo)) + return false; return true; } bool operator != (const TxnInfo &rhs) const { @@ -4249,19 +4278,26 @@ inline std::ostream& operator<<(std::ostream& out, const GetOpenTxnsResponse& ob return out; } +typedef struct _OpenTxnRequest__isset { + _OpenTxnRequest__isset() : agentInfo(true) {} + bool agentInfo :1; +} _OpenTxnRequest__isset; class OpenTxnRequest { public: OpenTxnRequest(const OpenTxnRequest&); OpenTxnRequest& operator=(const OpenTxnRequest&); - OpenTxnRequest() : num_txns(0), user(), hostname() { + OpenTxnRequest() : num_txns(0), user(), hostname(), agentInfo("Unknown") { } virtual ~OpenTxnRequest() throw(); int32_t num_txns; std::string user; std::string hostname; + std::string agentInfo; + + _OpenTxnRequest__isset __isset; void __set_num_txns(const int32_t val); @@ -4269,6 +4305,8 @@ class OpenTxnRequest { void __set_hostname(const std::string& val); + void __set_agentInfo(const std::string& val); + bool operator == (const OpenTxnRequest & rhs) const { if (!(num_txns == rhs.num_txns)) @@ -4277,6 +4315,10 @@ class OpenTxnRequest { return false; if (!(hostname == rhs.hostname)) return false; + if (__isset.agentInfo != rhs.__isset.agentInfo) + return false; + else if (__isset.agentInfo && !(agentInfo == rhs.agentInfo)) + return false; return true; } bool operator != (const OpenTxnRequest &rhs) const { @@ -4491,8 +4533,9 @@ inline std::ostream& operator<<(std::ostream& out, const LockComponent& obj) } typedef struct _LockRequest__isset { - _LockRequest__isset() : txnid(false) {} + _LockRequest__isset() : txnid(false), agentInfo(true) {} bool txnid :1; + bool agentInfo :1; } _LockRequest__isset; class LockRequest { @@ -4500,7 +4543,7 @@ class LockRequest { LockRequest(const LockRequest&); LockRequest& operator=(const LockRequest&); - LockRequest() : txnid(0), user(), hostname() { + LockRequest() : txnid(0), user(), hostname(), agentInfo("Unknown") { } virtual ~LockRequest() throw(); @@ -4508,6 +4551,7 @@ class LockRequest { int64_t txnid; std::string user; std::string hostname; + std::string agentInfo; _LockRequest__isset __isset; @@ -4519,6 +4563,8 @@ class LockRequest { void __set_hostname(const std::string& val); + void __set_agentInfo(const std::string& val); + bool operator == (const LockRequest & rhs) const { if (!(component == rhs.component)) @@ -4531,6 +4577,10 @@ class LockRequest { return false; if (!(hostname == rhs.hostname)) return false; + if (__isset.agentInfo != rhs.__isset.agentInfo) + return false; + else if (__isset.agentInfo && !(agentInfo == rhs.agentInfo)) + return false; return true; } bool operator != (const LockRequest &rhs) const { @@ -4598,24 +4648,45 @@ inline std::ostream& operator<<(std::ostream& out, const LockResponse& obj) return out; } +typedef struct _CheckLockRequest__isset { + _CheckLockRequest__isset() : txnid(false), elapsed_ms(false) {} + bool txnid :1; + bool elapsed_ms :1; +} _CheckLockRequest__isset; class CheckLockRequest { public: CheckLockRequest(const CheckLockRequest&); CheckLockRequest& operator=(const CheckLockRequest&); - CheckLockRequest() : lockid(0) { + CheckLockRequest() : lockid(0), txnid(0), elapsed_ms(0) { } virtual ~CheckLockRequest() throw(); int64_t lockid; + int64_t txnid; + int64_t elapsed_ms; + + _CheckLockRequest__isset __isset; void __set_lockid(const int64_t val); + void __set_txnid(const int64_t val); + + void __set_elapsed_ms(const int64_t val); + bool operator == (const CheckLockRequest & rhs) const { if (!(lockid == rhs.lockid)) return false; + if (__isset.txnid != rhs.__isset.txnid) + return false; + else if (__isset.txnid && !(txnid == rhs.txnid)) + return false; + if (__isset.elapsed_ms != rhs.__isset.elapsed_ms) + return false; + else if (__isset.elapsed_ms && !(elapsed_ms == rhs.elapsed_ms)) + return false; return true; } bool operator != (const CheckLockRequest &rhs) const { @@ -4678,19 +4749,56 @@ inline std::ostream& operator<<(std::ostream& out, const UnlockRequest& obj) return out; } +typedef struct _ShowLocksRequest__isset { + _ShowLocksRequest__isset() : dbname(false), tablename(false), partname(false), isExtended(true) {} + bool dbname :1; + bool tablename :1; + bool partname :1; + bool isExtended :1; +} _ShowLocksRequest__isset; class ShowLocksRequest { public: ShowLocksRequest(const ShowLocksRequest&); ShowLocksRequest& operator=(const ShowLocksRequest&); - ShowLocksRequest() { + ShowLocksRequest() : dbname(), tablename(), partname(), isExtended(false) { } virtual ~ShowLocksRequest() throw(); + std::string dbname; + std::string tablename; + std::string partname; + bool isExtended; + + _ShowLocksRequest__isset __isset; + + void __set_dbname(const std::string& val); + + void __set_tablename(const std::string& val); + + void __set_partname(const std::string& val); - bool operator == (const ShowLocksRequest & /* rhs */) const + void __set_isExtended(const bool val); + + bool operator == (const ShowLocksRequest & rhs) const { + if (__isset.dbname != rhs.__isset.dbname) + return false; + else if (__isset.dbname && !(dbname == rhs.dbname)) + return false; + if (__isset.tablename != rhs.__isset.tablename) + return false; + else if (__isset.tablename && !(tablename == rhs.tablename)) + return false; + if (__isset.partname != rhs.__isset.partname) + return false; + else if (__isset.partname && !(partname == rhs.partname)) + return false; + if (__isset.isExtended != rhs.__isset.isExtended) + return false; + else if (__isset.isExtended && !(isExtended == rhs.isExtended)) + return false; return true; } bool operator != (const ShowLocksRequest &rhs) const { @@ -4714,11 +4822,16 @@ inline std::ostream& operator<<(std::ostream& out, const ShowLocksRequest& obj) } typedef struct _ShowLocksResponseElement__isset { - _ShowLocksResponseElement__isset() : tablename(false), partname(false), txnid(false), acquiredat(false) {} + _ShowLocksResponseElement__isset() : tablename(false), partname(false), txnid(false), acquiredat(false), heartbeatCount(true), agentInfo(false), blockedByExtId(false), blockedByIntId(false), lockIdInternal(false) {} bool tablename :1; bool partname :1; bool txnid :1; bool acquiredat :1; + bool heartbeatCount :1; + bool agentInfo :1; + bool blockedByExtId :1; + bool blockedByIntId :1; + bool lockIdInternal :1; } _ShowLocksResponseElement__isset; class ShowLocksResponseElement { @@ -4726,7 +4839,7 @@ class ShowLocksResponseElement { ShowLocksResponseElement(const ShowLocksResponseElement&); ShowLocksResponseElement& operator=(const ShowLocksResponseElement&); - ShowLocksResponseElement() : lockid(0), dbname(), tablename(), partname(), state((LockState::type)0), type((LockType::type)0), txnid(0), lastheartbeat(0), acquiredat(0), user(), hostname() { + ShowLocksResponseElement() : lockid(0), dbname(), tablename(), partname(), state((LockState::type)0), type((LockType::type)0), txnid(0), lastheartbeat(0), acquiredat(0), user(), hostname(), heartbeatCount(0), agentInfo(), blockedByExtId(0), blockedByIntId(0), lockIdInternal(0) { } virtual ~ShowLocksResponseElement() throw(); @@ -4741,6 +4854,11 @@ class ShowLocksResponseElement { int64_t acquiredat; std::string user; std::string hostname; + int32_t heartbeatCount; + std::string agentInfo; + int64_t blockedByExtId; + int64_t blockedByIntId; + int64_t lockIdInternal; _ShowLocksResponseElement__isset __isset; @@ -4766,6 +4884,16 @@ class ShowLocksResponseElement { void __set_hostname(const std::string& val); + void __set_heartbeatCount(const int32_t val); + + void __set_agentInfo(const std::string& val); + + void __set_blockedByExtId(const int64_t val); + + void __set_blockedByIntId(const int64_t val); + + void __set_lockIdInternal(const int64_t val); + bool operator == (const ShowLocksResponseElement & rhs) const { if (!(lockid == rhs.lockid)) @@ -4798,6 +4926,26 @@ class ShowLocksResponseElement { return false; if (!(hostname == rhs.hostname)) return false; + if (__isset.heartbeatCount != rhs.__isset.heartbeatCount) + return false; + else if (__isset.heartbeatCount && !(heartbeatCount == rhs.heartbeatCount)) + return false; + if (__isset.agentInfo != rhs.__isset.agentInfo) + return false; + else if (__isset.agentInfo && !(agentInfo == rhs.agentInfo)) + return false; + if (__isset.blockedByExtId != rhs.__isset.blockedByExtId) + return false; + else if (__isset.blockedByExtId && !(blockedByExtId == rhs.blockedByExtId)) + return false; + if (__isset.blockedByIntId != rhs.__isset.blockedByIntId) + return false; + else if (__isset.blockedByIntId && !(blockedByIntId == rhs.blockedByIntId)) + return false; + if (__isset.lockIdInternal != rhs.__isset.lockIdInternal) + return false; + else if (__isset.lockIdInternal && !(lockIdInternal == rhs.lockIdInternal)) + return false; return true; } bool operator != (const ShowLocksResponseElement &rhs) const { @@ -5119,11 +5267,15 @@ inline std::ostream& operator<<(std::ostream& out, const ShowCompactRequest& obj } typedef struct _ShowCompactResponseElement__isset { - _ShowCompactResponseElement__isset() : partitionname(false), workerid(false), start(false), runAs(false) {} + _ShowCompactResponseElement__isset() : partitionname(false), workerid(false), start(false), runAs(false), hightestTxnId(false), metaInfo(false), endTime(false), hadoopJobId(true) {} bool partitionname :1; bool workerid :1; bool start :1; bool runAs :1; + bool hightestTxnId :1; + bool metaInfo :1; + bool endTime :1; + bool hadoopJobId :1; } _ShowCompactResponseElement__isset; class ShowCompactResponseElement { @@ -5131,7 +5283,7 @@ class ShowCompactResponseElement { ShowCompactResponseElement(const ShowCompactResponseElement&); ShowCompactResponseElement& operator=(const ShowCompactResponseElement&); - ShowCompactResponseElement() : dbname(), tablename(), partitionname(), type((CompactionType::type)0), state(), workerid(), start(0), runAs() { + ShowCompactResponseElement() : dbname(), tablename(), partitionname(), type((CompactionType::type)0), state(), workerid(), start(0), runAs(), hightestTxnId(0), metaInfo(), endTime(0), hadoopJobId("None") { } virtual ~ShowCompactResponseElement() throw(); @@ -5143,6 +5295,10 @@ class ShowCompactResponseElement { std::string workerid; int64_t start; std::string runAs; + int64_t hightestTxnId; + std::string metaInfo; + int64_t endTime; + std::string hadoopJobId; _ShowCompactResponseElement__isset __isset; @@ -5162,6 +5318,14 @@ class ShowCompactResponseElement { void __set_runAs(const std::string& val); + void __set_hightestTxnId(const int64_t val); + + void __set_metaInfo(const std::string& val); + + void __set_endTime(const int64_t val); + + void __set_hadoopJobId(const std::string& val); + bool operator == (const ShowCompactResponseElement & rhs) const { if (!(dbname == rhs.dbname)) @@ -5188,6 +5352,22 @@ class ShowCompactResponseElement { return false; else if (__isset.runAs && !(runAs == rhs.runAs)) return false; + if (__isset.hightestTxnId != rhs.__isset.hightestTxnId) + return false; + else if (__isset.hightestTxnId && !(hightestTxnId == rhs.hightestTxnId)) + return false; + if (__isset.metaInfo != rhs.__isset.metaInfo) + return false; + else if (__isset.metaInfo && !(metaInfo == rhs.metaInfo)) + return false; + if (__isset.endTime != rhs.__isset.endTime) + return false; + else if (__isset.endTime && !(endTime == rhs.endTime)) + return false; + if (__isset.hadoopJobId != rhs.__isset.hadoopJobId) + return false; + else if (__isset.hadoopJobId && !(hadoopJobId == rhs.hadoopJobId)) + return false; return true; } bool operator != (const ShowCompactResponseElement &rhs) const { diff --git metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/CheckLockRequest.java metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/CheckLockRequest.java index 430be03..bcef2ff 100644 --- metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/CheckLockRequest.java +++ metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/CheckLockRequest.java @@ -39,6 +39,8 @@ private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("CheckLockRequest"); private static final org.apache.thrift.protocol.TField LOCKID_FIELD_DESC = new org.apache.thrift.protocol.TField("lockid", org.apache.thrift.protocol.TType.I64, (short)1); + private static final org.apache.thrift.protocol.TField TXNID_FIELD_DESC = new org.apache.thrift.protocol.TField("txnid", org.apache.thrift.protocol.TType.I64, (short)2); + private static final org.apache.thrift.protocol.TField ELAPSED_MS_FIELD_DESC = new org.apache.thrift.protocol.TField("elapsed_ms", org.apache.thrift.protocol.TType.I64, (short)3); private static final Map, SchemeFactory> schemes = new HashMap, SchemeFactory>(); static { @@ -47,10 +49,14 @@ } private long lockid; // required + private long txnid; // optional + private long elapsed_ms; // optional /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ public enum _Fields implements org.apache.thrift.TFieldIdEnum { - LOCKID((short)1, "lockid"); + LOCKID((short)1, "lockid"), + TXNID((short)2, "txnid"), + ELAPSED_MS((short)3, "elapsed_ms"); private static final Map byName = new HashMap(); @@ -67,6 +73,10 @@ public static _Fields findByThriftId(int fieldId) { switch(fieldId) { case 1: // LOCKID return LOCKID; + case 2: // TXNID + return TXNID; + case 3: // ELAPSED_MS + return ELAPSED_MS; default: return null; } @@ -108,12 +118,19 @@ public String getFieldName() { // isset id assignments private static final int __LOCKID_ISSET_ID = 0; + private static final int __TXNID_ISSET_ID = 1; + private static final int __ELAPSED_MS_ISSET_ID = 2; private byte __isset_bitfield = 0; + private static final _Fields optionals[] = {_Fields.TXNID,_Fields.ELAPSED_MS}; public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap; static { Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class); tmpMap.put(_Fields.LOCKID, new org.apache.thrift.meta_data.FieldMetaData("lockid", org.apache.thrift.TFieldRequirementType.REQUIRED, new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64))); + tmpMap.put(_Fields.TXNID, new org.apache.thrift.meta_data.FieldMetaData("txnid", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64))); + tmpMap.put(_Fields.ELAPSED_MS, new org.apache.thrift.meta_data.FieldMetaData("elapsed_ms", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64))); metaDataMap = Collections.unmodifiableMap(tmpMap); org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(CheckLockRequest.class, metaDataMap); } @@ -135,6 +152,8 @@ public CheckLockRequest( public CheckLockRequest(CheckLockRequest other) { __isset_bitfield = other.__isset_bitfield; this.lockid = other.lockid; + this.txnid = other.txnid; + this.elapsed_ms = other.elapsed_ms; } public CheckLockRequest deepCopy() { @@ -145,6 +164,10 @@ public CheckLockRequest deepCopy() { public void clear() { setLockidIsSet(false); this.lockid = 0; + setTxnidIsSet(false); + this.txnid = 0; + setElapsed_msIsSet(false); + this.elapsed_ms = 0; } public long getLockid() { @@ -169,6 +192,50 @@ public void setLockidIsSet(boolean value) { __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __LOCKID_ISSET_ID, value); } + public long getTxnid() { + return this.txnid; + } + + public void setTxnid(long txnid) { + this.txnid = txnid; + setTxnidIsSet(true); + } + + public void unsetTxnid() { + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __TXNID_ISSET_ID); + } + + /** Returns true if field txnid is set (has been assigned a value) and false otherwise */ + public boolean isSetTxnid() { + return EncodingUtils.testBit(__isset_bitfield, __TXNID_ISSET_ID); + } + + public void setTxnidIsSet(boolean value) { + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __TXNID_ISSET_ID, value); + } + + public long getElapsed_ms() { + return this.elapsed_ms; + } + + public void setElapsed_ms(long elapsed_ms) { + this.elapsed_ms = elapsed_ms; + setElapsed_msIsSet(true); + } + + public void unsetElapsed_ms() { + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __ELAPSED_MS_ISSET_ID); + } + + /** Returns true if field elapsed_ms is set (has been assigned a value) and false otherwise */ + public boolean isSetElapsed_ms() { + return EncodingUtils.testBit(__isset_bitfield, __ELAPSED_MS_ISSET_ID); + } + + public void setElapsed_msIsSet(boolean value) { + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __ELAPSED_MS_ISSET_ID, value); + } + public void setFieldValue(_Fields field, Object value) { switch (field) { case LOCKID: @@ -179,6 +246,22 @@ public void setFieldValue(_Fields field, Object value) { } break; + case TXNID: + if (value == null) { + unsetTxnid(); + } else { + setTxnid((Long)value); + } + break; + + case ELAPSED_MS: + if (value == null) { + unsetElapsed_ms(); + } else { + setElapsed_ms((Long)value); + } + break; + } } @@ -187,6 +270,12 @@ public Object getFieldValue(_Fields field) { case LOCKID: return getLockid(); + case TXNID: + return getTxnid(); + + case ELAPSED_MS: + return getElapsed_ms(); + } throw new IllegalStateException(); } @@ -200,6 +289,10 @@ public boolean isSet(_Fields field) { switch (field) { case LOCKID: return isSetLockid(); + case TXNID: + return isSetTxnid(); + case ELAPSED_MS: + return isSetElapsed_ms(); } throw new IllegalStateException(); } @@ -226,6 +319,24 @@ public boolean equals(CheckLockRequest that) { return false; } + boolean this_present_txnid = true && this.isSetTxnid(); + boolean that_present_txnid = true && that.isSetTxnid(); + if (this_present_txnid || that_present_txnid) { + if (!(this_present_txnid && that_present_txnid)) + return false; + if (this.txnid != that.txnid) + return false; + } + + boolean this_present_elapsed_ms = true && this.isSetElapsed_ms(); + boolean that_present_elapsed_ms = true && that.isSetElapsed_ms(); + if (this_present_elapsed_ms || that_present_elapsed_ms) { + if (!(this_present_elapsed_ms && that_present_elapsed_ms)) + return false; + if (this.elapsed_ms != that.elapsed_ms) + return false; + } + return true; } @@ -238,6 +349,16 @@ public int hashCode() { if (present_lockid) list.add(lockid); + boolean present_txnid = true && (isSetTxnid()); + list.add(present_txnid); + if (present_txnid) + list.add(txnid); + + boolean present_elapsed_ms = true && (isSetElapsed_ms()); + list.add(present_elapsed_ms); + if (present_elapsed_ms) + list.add(elapsed_ms); + return list.hashCode(); } @@ -259,6 +380,26 @@ public int compareTo(CheckLockRequest other) { return lastComparison; } } + lastComparison = Boolean.valueOf(isSetTxnid()).compareTo(other.isSetTxnid()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetTxnid()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.txnid, other.txnid); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetElapsed_ms()).compareTo(other.isSetElapsed_ms()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetElapsed_ms()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.elapsed_ms, other.elapsed_ms); + if (lastComparison != 0) { + return lastComparison; + } + } return 0; } @@ -282,6 +423,18 @@ public String toString() { sb.append("lockid:"); sb.append(this.lockid); first = false; + if (isSetTxnid()) { + if (!first) sb.append(", "); + sb.append("txnid:"); + sb.append(this.txnid); + first = false; + } + if (isSetElapsed_ms()) { + if (!first) sb.append(", "); + sb.append("elapsed_ms:"); + sb.append(this.elapsed_ms); + first = false; + } sb.append(")"); return sb.toString(); } @@ -339,6 +492,22 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, CheckLockRequest st org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; + case 2: // TXNID + if (schemeField.type == org.apache.thrift.protocol.TType.I64) { + struct.txnid = iprot.readI64(); + struct.setTxnidIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 3: // ELAPSED_MS + if (schemeField.type == org.apache.thrift.protocol.TType.I64) { + struct.elapsed_ms = iprot.readI64(); + struct.setElapsed_msIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; default: org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } @@ -355,6 +524,16 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, CheckLockRequest s oprot.writeFieldBegin(LOCKID_FIELD_DESC); oprot.writeI64(struct.lockid); oprot.writeFieldEnd(); + if (struct.isSetTxnid()) { + oprot.writeFieldBegin(TXNID_FIELD_DESC); + oprot.writeI64(struct.txnid); + oprot.writeFieldEnd(); + } + if (struct.isSetElapsed_ms()) { + oprot.writeFieldBegin(ELAPSED_MS_FIELD_DESC); + oprot.writeI64(struct.elapsed_ms); + oprot.writeFieldEnd(); + } oprot.writeFieldStop(); oprot.writeStructEnd(); } @@ -373,6 +552,20 @@ public CheckLockRequestTupleScheme getScheme() { public void write(org.apache.thrift.protocol.TProtocol prot, CheckLockRequest struct) throws org.apache.thrift.TException { TTupleProtocol oprot = (TTupleProtocol) prot; oprot.writeI64(struct.lockid); + BitSet optionals = new BitSet(); + if (struct.isSetTxnid()) { + optionals.set(0); + } + if (struct.isSetElapsed_ms()) { + optionals.set(1); + } + oprot.writeBitSet(optionals, 2); + if (struct.isSetTxnid()) { + oprot.writeI64(struct.txnid); + } + if (struct.isSetElapsed_ms()) { + oprot.writeI64(struct.elapsed_ms); + } } @Override @@ -380,6 +573,15 @@ public void read(org.apache.thrift.protocol.TProtocol prot, CheckLockRequest str TTupleProtocol iprot = (TTupleProtocol) prot; struct.lockid = iprot.readI64(); struct.setLockidIsSet(true); + BitSet incoming = iprot.readBitSet(2); + if (incoming.get(0)) { + struct.txnid = iprot.readI64(); + struct.setTxnidIsSet(true); + } + if (incoming.get(1)) { + struct.elapsed_ms = iprot.readI64(); + struct.setElapsed_msIsSet(true); + } } } diff --git metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/LockRequest.java metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/LockRequest.java index eada4ee..f39f582 100644 --- metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/LockRequest.java +++ metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/LockRequest.java @@ -42,6 +42,7 @@ private static final org.apache.thrift.protocol.TField TXNID_FIELD_DESC = new org.apache.thrift.protocol.TField("txnid", org.apache.thrift.protocol.TType.I64, (short)2); private static final org.apache.thrift.protocol.TField USER_FIELD_DESC = new org.apache.thrift.protocol.TField("user", org.apache.thrift.protocol.TType.STRING, (short)3); private static final org.apache.thrift.protocol.TField HOSTNAME_FIELD_DESC = new org.apache.thrift.protocol.TField("hostname", org.apache.thrift.protocol.TType.STRING, (short)4); + private static final org.apache.thrift.protocol.TField AGENT_INFO_FIELD_DESC = new org.apache.thrift.protocol.TField("agentInfo", org.apache.thrift.protocol.TType.STRING, (short)5); private static final Map, SchemeFactory> schemes = new HashMap, SchemeFactory>(); static { @@ -53,13 +54,15 @@ private long txnid; // optional private String user; // required private String hostname; // required + private String agentInfo; // optional /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ public enum _Fields implements org.apache.thrift.TFieldIdEnum { COMPONENT((short)1, "component"), TXNID((short)2, "txnid"), USER((short)3, "user"), - HOSTNAME((short)4, "hostname"); + HOSTNAME((short)4, "hostname"), + AGENT_INFO((short)5, "agentInfo"); private static final Map byName = new HashMap(); @@ -82,6 +85,8 @@ public static _Fields findByThriftId(int fieldId) { return USER; case 4: // HOSTNAME return HOSTNAME; + case 5: // AGENT_INFO + return AGENT_INFO; default: return null; } @@ -124,7 +129,7 @@ public String getFieldName() { // isset id assignments private static final int __TXNID_ISSET_ID = 0; private byte __isset_bitfield = 0; - private static final _Fields optionals[] = {_Fields.TXNID}; + private static final _Fields optionals[] = {_Fields.TXNID,_Fields.AGENT_INFO}; public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap; static { Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class); @@ -137,11 +142,15 @@ public String getFieldName() { new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); tmpMap.put(_Fields.HOSTNAME, new org.apache.thrift.meta_data.FieldMetaData("hostname", org.apache.thrift.TFieldRequirementType.REQUIRED, new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.AGENT_INFO, new org.apache.thrift.meta_data.FieldMetaData("agentInfo", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); metaDataMap = Collections.unmodifiableMap(tmpMap); org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(LockRequest.class, metaDataMap); } public LockRequest() { + this.agentInfo = "Unknown"; + } public LockRequest( @@ -174,6 +183,9 @@ public LockRequest(LockRequest other) { if (other.isSetHostname()) { this.hostname = other.hostname; } + if (other.isSetAgentInfo()) { + this.agentInfo = other.agentInfo; + } } public LockRequest deepCopy() { @@ -187,6 +199,8 @@ public void clear() { this.txnid = 0; this.user = null; this.hostname = null; + this.agentInfo = "Unknown"; + } public int getComponentSize() { @@ -295,6 +309,29 @@ public void setHostnameIsSet(boolean value) { } } + public String getAgentInfo() { + return this.agentInfo; + } + + public void setAgentInfo(String agentInfo) { + this.agentInfo = agentInfo; + } + + public void unsetAgentInfo() { + this.agentInfo = null; + } + + /** Returns true if field agentInfo is set (has been assigned a value) and false otherwise */ + public boolean isSetAgentInfo() { + return this.agentInfo != null; + } + + public void setAgentInfoIsSet(boolean value) { + if (!value) { + this.agentInfo = null; + } + } + public void setFieldValue(_Fields field, Object value) { switch (field) { case COMPONENT: @@ -329,6 +366,14 @@ public void setFieldValue(_Fields field, Object value) { } break; + case AGENT_INFO: + if (value == null) { + unsetAgentInfo(); + } else { + setAgentInfo((String)value); + } + break; + } } @@ -346,6 +391,9 @@ public Object getFieldValue(_Fields field) { case HOSTNAME: return getHostname(); + case AGENT_INFO: + return getAgentInfo(); + } throw new IllegalStateException(); } @@ -365,6 +413,8 @@ public boolean isSet(_Fields field) { return isSetUser(); case HOSTNAME: return isSetHostname(); + case AGENT_INFO: + return isSetAgentInfo(); } throw new IllegalStateException(); } @@ -418,6 +468,15 @@ public boolean equals(LockRequest that) { return false; } + boolean this_present_agentInfo = true && this.isSetAgentInfo(); + boolean that_present_agentInfo = true && that.isSetAgentInfo(); + if (this_present_agentInfo || that_present_agentInfo) { + if (!(this_present_agentInfo && that_present_agentInfo)) + return false; + if (!this.agentInfo.equals(that.agentInfo)) + return false; + } + return true; } @@ -445,6 +504,11 @@ public int hashCode() { if (present_hostname) list.add(hostname); + boolean present_agentInfo = true && (isSetAgentInfo()); + list.add(present_agentInfo); + if (present_agentInfo) + list.add(agentInfo); + return list.hashCode(); } @@ -496,6 +560,16 @@ public int compareTo(LockRequest other) { return lastComparison; } } + lastComparison = Boolean.valueOf(isSetAgentInfo()).compareTo(other.isSetAgentInfo()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetAgentInfo()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.agentInfo, other.agentInfo); + if (lastComparison != 0) { + return lastComparison; + } + } return 0; } @@ -545,6 +619,16 @@ public String toString() { sb.append(this.hostname); } first = false; + if (isSetAgentInfo()) { + if (!first) sb.append(", "); + sb.append("agentInfo:"); + if (this.agentInfo == null) { + sb.append("null"); + } else { + sb.append(this.agentInfo); + } + first = false; + } sb.append(")"); return sb.toString(); } @@ -645,6 +729,14 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, LockRequest struct) org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; + case 5: // AGENT_INFO + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.agentInfo = iprot.readString(); + struct.setAgentInfoIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; default: org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } @@ -685,6 +777,13 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, LockRequest struct oprot.writeString(struct.hostname); oprot.writeFieldEnd(); } + if (struct.agentInfo != null) { + if (struct.isSetAgentInfo()) { + oprot.writeFieldBegin(AGENT_INFO_FIELD_DESC); + oprot.writeString(struct.agentInfo); + oprot.writeFieldEnd(); + } + } oprot.writeFieldStop(); oprot.writeStructEnd(); } @@ -715,10 +814,16 @@ public void write(org.apache.thrift.protocol.TProtocol prot, LockRequest struct) if (struct.isSetTxnid()) { optionals.set(0); } - oprot.writeBitSet(optionals, 1); + if (struct.isSetAgentInfo()) { + optionals.set(1); + } + oprot.writeBitSet(optionals, 2); if (struct.isSetTxnid()) { oprot.writeI64(struct.txnid); } + if (struct.isSetAgentInfo()) { + oprot.writeString(struct.agentInfo); + } } @Override @@ -740,11 +845,15 @@ public void read(org.apache.thrift.protocol.TProtocol prot, LockRequest struct) struct.setUserIsSet(true); struct.hostname = iprot.readString(); struct.setHostnameIsSet(true); - BitSet incoming = iprot.readBitSet(1); + BitSet incoming = iprot.readBitSet(2); if (incoming.get(0)) { struct.txnid = iprot.readI64(); struct.setTxnidIsSet(true); } + if (incoming.get(1)) { + struct.agentInfo = iprot.readString(); + struct.setAgentInfoIsSet(true); + } } } diff --git metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/OpenTxnRequest.java metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/OpenTxnRequest.java index 01371ec..f058c0d 100644 --- metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/OpenTxnRequest.java +++ metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/OpenTxnRequest.java @@ -41,6 +41,7 @@ private static final org.apache.thrift.protocol.TField NUM_TXNS_FIELD_DESC = new org.apache.thrift.protocol.TField("num_txns", org.apache.thrift.protocol.TType.I32, (short)1); private static final org.apache.thrift.protocol.TField USER_FIELD_DESC = new org.apache.thrift.protocol.TField("user", org.apache.thrift.protocol.TType.STRING, (short)2); private static final org.apache.thrift.protocol.TField HOSTNAME_FIELD_DESC = new org.apache.thrift.protocol.TField("hostname", org.apache.thrift.protocol.TType.STRING, (short)3); + private static final org.apache.thrift.protocol.TField AGENT_INFO_FIELD_DESC = new org.apache.thrift.protocol.TField("agentInfo", org.apache.thrift.protocol.TType.STRING, (short)4); private static final Map, SchemeFactory> schemes = new HashMap, SchemeFactory>(); static { @@ -51,12 +52,14 @@ private int num_txns; // required private String user; // required private String hostname; // required + private String agentInfo; // optional /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ public enum _Fields implements org.apache.thrift.TFieldIdEnum { NUM_TXNS((short)1, "num_txns"), USER((short)2, "user"), - HOSTNAME((short)3, "hostname"); + HOSTNAME((short)3, "hostname"), + AGENT_INFO((short)4, "agentInfo"); private static final Map byName = new HashMap(); @@ -77,6 +80,8 @@ public static _Fields findByThriftId(int fieldId) { return USER; case 3: // HOSTNAME return HOSTNAME; + case 4: // AGENT_INFO + return AGENT_INFO; default: return null; } @@ -119,6 +124,7 @@ public String getFieldName() { // isset id assignments private static final int __NUM_TXNS_ISSET_ID = 0; private byte __isset_bitfield = 0; + private static final _Fields optionals[] = {_Fields.AGENT_INFO}; public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap; static { Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class); @@ -128,11 +134,15 @@ public String getFieldName() { new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); tmpMap.put(_Fields.HOSTNAME, new org.apache.thrift.meta_data.FieldMetaData("hostname", org.apache.thrift.TFieldRequirementType.REQUIRED, new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.AGENT_INFO, new org.apache.thrift.meta_data.FieldMetaData("agentInfo", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); metaDataMap = Collections.unmodifiableMap(tmpMap); org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(OpenTxnRequest.class, metaDataMap); } public OpenTxnRequest() { + this.agentInfo = "Unknown"; + } public OpenTxnRequest( @@ -159,6 +169,9 @@ public OpenTxnRequest(OpenTxnRequest other) { if (other.isSetHostname()) { this.hostname = other.hostname; } + if (other.isSetAgentInfo()) { + this.agentInfo = other.agentInfo; + } } public OpenTxnRequest deepCopy() { @@ -171,6 +184,8 @@ public void clear() { this.num_txns = 0; this.user = null; this.hostname = null; + this.agentInfo = "Unknown"; + } public int getNum_txns() { @@ -241,6 +256,29 @@ public void setHostnameIsSet(boolean value) { } } + public String getAgentInfo() { + return this.agentInfo; + } + + public void setAgentInfo(String agentInfo) { + this.agentInfo = agentInfo; + } + + public void unsetAgentInfo() { + this.agentInfo = null; + } + + /** Returns true if field agentInfo is set (has been assigned a value) and false otherwise */ + public boolean isSetAgentInfo() { + return this.agentInfo != null; + } + + public void setAgentInfoIsSet(boolean value) { + if (!value) { + this.agentInfo = null; + } + } + public void setFieldValue(_Fields field, Object value) { switch (field) { case NUM_TXNS: @@ -267,6 +305,14 @@ public void setFieldValue(_Fields field, Object value) { } break; + case AGENT_INFO: + if (value == null) { + unsetAgentInfo(); + } else { + setAgentInfo((String)value); + } + break; + } } @@ -281,6 +327,9 @@ public Object getFieldValue(_Fields field) { case HOSTNAME: return getHostname(); + case AGENT_INFO: + return getAgentInfo(); + } throw new IllegalStateException(); } @@ -298,6 +347,8 @@ public boolean isSet(_Fields field) { return isSetUser(); case HOSTNAME: return isSetHostname(); + case AGENT_INFO: + return isSetAgentInfo(); } throw new IllegalStateException(); } @@ -342,6 +393,15 @@ public boolean equals(OpenTxnRequest that) { return false; } + boolean this_present_agentInfo = true && this.isSetAgentInfo(); + boolean that_present_agentInfo = true && that.isSetAgentInfo(); + if (this_present_agentInfo || that_present_agentInfo) { + if (!(this_present_agentInfo && that_present_agentInfo)) + return false; + if (!this.agentInfo.equals(that.agentInfo)) + return false; + } + return true; } @@ -364,6 +424,11 @@ public int hashCode() { if (present_hostname) list.add(hostname); + boolean present_agentInfo = true && (isSetAgentInfo()); + list.add(present_agentInfo); + if (present_agentInfo) + list.add(agentInfo); + return list.hashCode(); } @@ -405,6 +470,16 @@ public int compareTo(OpenTxnRequest other) { return lastComparison; } } + lastComparison = Boolean.valueOf(isSetAgentInfo()).compareTo(other.isSetAgentInfo()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetAgentInfo()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.agentInfo, other.agentInfo); + if (lastComparison != 0) { + return lastComparison; + } + } return 0; } @@ -444,6 +519,16 @@ public String toString() { sb.append(this.hostname); } first = false; + if (isSetAgentInfo()) { + if (!first) sb.append(", "); + sb.append("agentInfo:"); + if (this.agentInfo == null) { + sb.append("null"); + } else { + sb.append(this.agentInfo); + } + first = false; + } sb.append(")"); return sb.toString(); } @@ -525,6 +610,14 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, OpenTxnRequest stru org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; + case 4: // AGENT_INFO + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.agentInfo = iprot.readString(); + struct.setAgentInfoIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; default: org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } @@ -551,6 +644,13 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, OpenTxnRequest str oprot.writeString(struct.hostname); oprot.writeFieldEnd(); } + if (struct.agentInfo != null) { + if (struct.isSetAgentInfo()) { + oprot.writeFieldBegin(AGENT_INFO_FIELD_DESC); + oprot.writeString(struct.agentInfo); + oprot.writeFieldEnd(); + } + } oprot.writeFieldStop(); oprot.writeStructEnd(); } @@ -571,6 +671,14 @@ public void write(org.apache.thrift.protocol.TProtocol prot, OpenTxnRequest stru oprot.writeI32(struct.num_txns); oprot.writeString(struct.user); oprot.writeString(struct.hostname); + BitSet optionals = new BitSet(); + if (struct.isSetAgentInfo()) { + optionals.set(0); + } + oprot.writeBitSet(optionals, 1); + if (struct.isSetAgentInfo()) { + oprot.writeString(struct.agentInfo); + } } @Override @@ -582,6 +690,11 @@ public void read(org.apache.thrift.protocol.TProtocol prot, OpenTxnRequest struc struct.setUserIsSet(true); struct.hostname = iprot.readString(); struct.setHostnameIsSet(true); + BitSet incoming = iprot.readBitSet(1); + if (incoming.get(0)) { + struct.agentInfo = iprot.readString(); + struct.setAgentInfoIsSet(true); + } } } diff --git metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowCompactResponseElement.java metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowCompactResponseElement.java index dd7dd8e..212ecd6 100644 --- metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowCompactResponseElement.java +++ metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowCompactResponseElement.java @@ -46,6 +46,10 @@ private static final org.apache.thrift.protocol.TField WORKERID_FIELD_DESC = new org.apache.thrift.protocol.TField("workerid", org.apache.thrift.protocol.TType.STRING, (short)6); private static final org.apache.thrift.protocol.TField START_FIELD_DESC = new org.apache.thrift.protocol.TField("start", org.apache.thrift.protocol.TType.I64, (short)7); private static final org.apache.thrift.protocol.TField RUN_AS_FIELD_DESC = new org.apache.thrift.protocol.TField("runAs", org.apache.thrift.protocol.TType.STRING, (short)8); + private static final org.apache.thrift.protocol.TField HIGHTEST_TXN_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("hightestTxnId", org.apache.thrift.protocol.TType.I64, (short)9); + private static final org.apache.thrift.protocol.TField META_INFO_FIELD_DESC = new org.apache.thrift.protocol.TField("metaInfo", org.apache.thrift.protocol.TType.STRING, (short)10); + private static final org.apache.thrift.protocol.TField END_TIME_FIELD_DESC = new org.apache.thrift.protocol.TField("endTime", org.apache.thrift.protocol.TType.I64, (short)11); + private static final org.apache.thrift.protocol.TField HADOOP_JOB_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("hadoopJobId", org.apache.thrift.protocol.TType.STRING, (short)12); private static final Map, SchemeFactory> schemes = new HashMap, SchemeFactory>(); static { @@ -61,6 +65,10 @@ private String workerid; // optional private long start; // optional private String runAs; // optional + private long hightestTxnId; // optional + private String metaInfo; // optional + private long endTime; // optional + private String hadoopJobId; // optional /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ public enum _Fields implements org.apache.thrift.TFieldIdEnum { @@ -75,7 +83,11 @@ STATE((short)5, "state"), WORKERID((short)6, "workerid"), START((short)7, "start"), - RUN_AS((short)8, "runAs"); + RUN_AS((short)8, "runAs"), + HIGHTEST_TXN_ID((short)9, "hightestTxnId"), + META_INFO((short)10, "metaInfo"), + END_TIME((short)11, "endTime"), + HADOOP_JOB_ID((short)12, "hadoopJobId"); private static final Map byName = new HashMap(); @@ -106,6 +118,14 @@ public static _Fields findByThriftId(int fieldId) { return START; case 8: // RUN_AS return RUN_AS; + case 9: // HIGHTEST_TXN_ID + return HIGHTEST_TXN_ID; + case 10: // META_INFO + return META_INFO; + case 11: // END_TIME + return END_TIME; + case 12: // HADOOP_JOB_ID + return HADOOP_JOB_ID; default: return null; } @@ -147,8 +167,10 @@ public String getFieldName() { // isset id assignments private static final int __START_ISSET_ID = 0; + private static final int __HIGHTESTTXNID_ISSET_ID = 1; + private static final int __ENDTIME_ISSET_ID = 2; private byte __isset_bitfield = 0; - private static final _Fields optionals[] = {_Fields.PARTITIONNAME,_Fields.WORKERID,_Fields.START,_Fields.RUN_AS}; + private static final _Fields optionals[] = {_Fields.PARTITIONNAME,_Fields.WORKERID,_Fields.START,_Fields.RUN_AS,_Fields.HIGHTEST_TXN_ID,_Fields.META_INFO,_Fields.END_TIME,_Fields.HADOOP_JOB_ID}; public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap; static { Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class); @@ -168,11 +190,21 @@ public String getFieldName() { new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64))); tmpMap.put(_Fields.RUN_AS, new org.apache.thrift.meta_data.FieldMetaData("runAs", org.apache.thrift.TFieldRequirementType.OPTIONAL, new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.HIGHTEST_TXN_ID, new org.apache.thrift.meta_data.FieldMetaData("hightestTxnId", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64))); + tmpMap.put(_Fields.META_INFO, new org.apache.thrift.meta_data.FieldMetaData("metaInfo", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.END_TIME, new org.apache.thrift.meta_data.FieldMetaData("endTime", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64))); + tmpMap.put(_Fields.HADOOP_JOB_ID, new org.apache.thrift.meta_data.FieldMetaData("hadoopJobId", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); metaDataMap = Collections.unmodifiableMap(tmpMap); org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(ShowCompactResponseElement.class, metaDataMap); } public ShowCompactResponseElement() { + this.hadoopJobId = "None"; + } public ShowCompactResponseElement( @@ -215,6 +247,14 @@ public ShowCompactResponseElement(ShowCompactResponseElement other) { if (other.isSetRunAs()) { this.runAs = other.runAs; } + this.hightestTxnId = other.hightestTxnId; + if (other.isSetMetaInfo()) { + this.metaInfo = other.metaInfo; + } + this.endTime = other.endTime; + if (other.isSetHadoopJobId()) { + this.hadoopJobId = other.hadoopJobId; + } } public ShowCompactResponseElement deepCopy() { @@ -232,6 +272,13 @@ public void clear() { setStartIsSet(false); this.start = 0; this.runAs = null; + setHightestTxnIdIsSet(false); + this.hightestTxnId = 0; + this.metaInfo = null; + setEndTimeIsSet(false); + this.endTime = 0; + this.hadoopJobId = "None"; + } public String getDbname() { @@ -425,6 +472,96 @@ public void setRunAsIsSet(boolean value) { } } + public long getHightestTxnId() { + return this.hightestTxnId; + } + + public void setHightestTxnId(long hightestTxnId) { + this.hightestTxnId = hightestTxnId; + setHightestTxnIdIsSet(true); + } + + public void unsetHightestTxnId() { + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __HIGHTESTTXNID_ISSET_ID); + } + + /** Returns true if field hightestTxnId is set (has been assigned a value) and false otherwise */ + public boolean isSetHightestTxnId() { + return EncodingUtils.testBit(__isset_bitfield, __HIGHTESTTXNID_ISSET_ID); + } + + public void setHightestTxnIdIsSet(boolean value) { + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __HIGHTESTTXNID_ISSET_ID, value); + } + + public String getMetaInfo() { + return this.metaInfo; + } + + public void setMetaInfo(String metaInfo) { + this.metaInfo = metaInfo; + } + + public void unsetMetaInfo() { + this.metaInfo = null; + } + + /** Returns true if field metaInfo is set (has been assigned a value) and false otherwise */ + public boolean isSetMetaInfo() { + return this.metaInfo != null; + } + + public void setMetaInfoIsSet(boolean value) { + if (!value) { + this.metaInfo = null; + } + } + + public long getEndTime() { + return this.endTime; + } + + public void setEndTime(long endTime) { + this.endTime = endTime; + setEndTimeIsSet(true); + } + + public void unsetEndTime() { + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __ENDTIME_ISSET_ID); + } + + /** Returns true if field endTime is set (has been assigned a value) and false otherwise */ + public boolean isSetEndTime() { + return EncodingUtils.testBit(__isset_bitfield, __ENDTIME_ISSET_ID); + } + + public void setEndTimeIsSet(boolean value) { + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __ENDTIME_ISSET_ID, value); + } + + public String getHadoopJobId() { + return this.hadoopJobId; + } + + public void setHadoopJobId(String hadoopJobId) { + this.hadoopJobId = hadoopJobId; + } + + public void unsetHadoopJobId() { + this.hadoopJobId = null; + } + + /** Returns true if field hadoopJobId is set (has been assigned a value) and false otherwise */ + public boolean isSetHadoopJobId() { + return this.hadoopJobId != null; + } + + public void setHadoopJobIdIsSet(boolean value) { + if (!value) { + this.hadoopJobId = null; + } + } + public void setFieldValue(_Fields field, Object value) { switch (field) { case DBNAME: @@ -491,6 +628,38 @@ public void setFieldValue(_Fields field, Object value) { } break; + case HIGHTEST_TXN_ID: + if (value == null) { + unsetHightestTxnId(); + } else { + setHightestTxnId((Long)value); + } + break; + + case META_INFO: + if (value == null) { + unsetMetaInfo(); + } else { + setMetaInfo((String)value); + } + break; + + case END_TIME: + if (value == null) { + unsetEndTime(); + } else { + setEndTime((Long)value); + } + break; + + case HADOOP_JOB_ID: + if (value == null) { + unsetHadoopJobId(); + } else { + setHadoopJobId((String)value); + } + break; + } } @@ -520,6 +689,18 @@ public Object getFieldValue(_Fields field) { case RUN_AS: return getRunAs(); + case HIGHTEST_TXN_ID: + return getHightestTxnId(); + + case META_INFO: + return getMetaInfo(); + + case END_TIME: + return getEndTime(); + + case HADOOP_JOB_ID: + return getHadoopJobId(); + } throw new IllegalStateException(); } @@ -547,6 +728,14 @@ public boolean isSet(_Fields field) { return isSetStart(); case RUN_AS: return isSetRunAs(); + case HIGHTEST_TXN_ID: + return isSetHightestTxnId(); + case META_INFO: + return isSetMetaInfo(); + case END_TIME: + return isSetEndTime(); + case HADOOP_JOB_ID: + return isSetHadoopJobId(); } throw new IllegalStateException(); } @@ -636,6 +825,42 @@ public boolean equals(ShowCompactResponseElement that) { return false; } + boolean this_present_hightestTxnId = true && this.isSetHightestTxnId(); + boolean that_present_hightestTxnId = true && that.isSetHightestTxnId(); + if (this_present_hightestTxnId || that_present_hightestTxnId) { + if (!(this_present_hightestTxnId && that_present_hightestTxnId)) + return false; + if (this.hightestTxnId != that.hightestTxnId) + return false; + } + + boolean this_present_metaInfo = true && this.isSetMetaInfo(); + boolean that_present_metaInfo = true && that.isSetMetaInfo(); + if (this_present_metaInfo || that_present_metaInfo) { + if (!(this_present_metaInfo && that_present_metaInfo)) + return false; + if (!this.metaInfo.equals(that.metaInfo)) + return false; + } + + boolean this_present_endTime = true && this.isSetEndTime(); + boolean that_present_endTime = true && that.isSetEndTime(); + if (this_present_endTime || that_present_endTime) { + if (!(this_present_endTime && that_present_endTime)) + return false; + if (this.endTime != that.endTime) + return false; + } + + boolean this_present_hadoopJobId = true && this.isSetHadoopJobId(); + boolean that_present_hadoopJobId = true && that.isSetHadoopJobId(); + if (this_present_hadoopJobId || that_present_hadoopJobId) { + if (!(this_present_hadoopJobId && that_present_hadoopJobId)) + return false; + if (!this.hadoopJobId.equals(that.hadoopJobId)) + return false; + } + return true; } @@ -683,6 +908,26 @@ public int hashCode() { if (present_runAs) list.add(runAs); + boolean present_hightestTxnId = true && (isSetHightestTxnId()); + list.add(present_hightestTxnId); + if (present_hightestTxnId) + list.add(hightestTxnId); + + boolean present_metaInfo = true && (isSetMetaInfo()); + list.add(present_metaInfo); + if (present_metaInfo) + list.add(metaInfo); + + boolean present_endTime = true && (isSetEndTime()); + list.add(present_endTime); + if (present_endTime) + list.add(endTime); + + boolean present_hadoopJobId = true && (isSetHadoopJobId()); + list.add(present_hadoopJobId); + if (present_hadoopJobId) + list.add(hadoopJobId); + return list.hashCode(); } @@ -774,6 +1019,46 @@ public int compareTo(ShowCompactResponseElement other) { return lastComparison; } } + lastComparison = Boolean.valueOf(isSetHightestTxnId()).compareTo(other.isSetHightestTxnId()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetHightestTxnId()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.hightestTxnId, other.hightestTxnId); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetMetaInfo()).compareTo(other.isSetMetaInfo()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetMetaInfo()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.metaInfo, other.metaInfo); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetEndTime()).compareTo(other.isSetEndTime()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetEndTime()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.endTime, other.endTime); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetHadoopJobId()).compareTo(other.isSetHadoopJobId()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetHadoopJobId()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.hadoopJobId, other.hadoopJobId); + if (lastComparison != 0) { + return lastComparison; + } + } return 0; } @@ -861,6 +1146,38 @@ public String toString() { } first = false; } + if (isSetHightestTxnId()) { + if (!first) sb.append(", "); + sb.append("hightestTxnId:"); + sb.append(this.hightestTxnId); + first = false; + } + if (isSetMetaInfo()) { + if (!first) sb.append(", "); + sb.append("metaInfo:"); + if (this.metaInfo == null) { + sb.append("null"); + } else { + sb.append(this.metaInfo); + } + first = false; + } + if (isSetEndTime()) { + if (!first) sb.append(", "); + sb.append("endTime:"); + sb.append(this.endTime); + first = false; + } + if (isSetHadoopJobId()) { + if (!first) sb.append(", "); + sb.append("hadoopJobId:"); + if (this.hadoopJobId == null) { + sb.append("null"); + } else { + sb.append(this.hadoopJobId); + } + first = false; + } sb.append(")"); return sb.toString(); } @@ -986,6 +1303,38 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, ShowCompactResponse org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; + case 9: // HIGHTEST_TXN_ID + if (schemeField.type == org.apache.thrift.protocol.TType.I64) { + struct.hightestTxnId = iprot.readI64(); + struct.setHightestTxnIdIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 10: // META_INFO + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.metaInfo = iprot.readString(); + struct.setMetaInfoIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 11: // END_TIME + if (schemeField.type == org.apache.thrift.protocol.TType.I64) { + struct.endTime = iprot.readI64(); + struct.setEndTimeIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 12: // HADOOP_JOB_ID + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.hadoopJobId = iprot.readString(); + struct.setHadoopJobIdIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; default: org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } @@ -1045,6 +1394,30 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, ShowCompactRespons oprot.writeFieldEnd(); } } + if (struct.isSetHightestTxnId()) { + oprot.writeFieldBegin(HIGHTEST_TXN_ID_FIELD_DESC); + oprot.writeI64(struct.hightestTxnId); + oprot.writeFieldEnd(); + } + if (struct.metaInfo != null) { + if (struct.isSetMetaInfo()) { + oprot.writeFieldBegin(META_INFO_FIELD_DESC); + oprot.writeString(struct.metaInfo); + oprot.writeFieldEnd(); + } + } + if (struct.isSetEndTime()) { + oprot.writeFieldBegin(END_TIME_FIELD_DESC); + oprot.writeI64(struct.endTime); + oprot.writeFieldEnd(); + } + if (struct.hadoopJobId != null) { + if (struct.isSetHadoopJobId()) { + oprot.writeFieldBegin(HADOOP_JOB_ID_FIELD_DESC); + oprot.writeString(struct.hadoopJobId); + oprot.writeFieldEnd(); + } + } oprot.writeFieldStop(); oprot.writeStructEnd(); } @@ -1079,7 +1452,19 @@ public void write(org.apache.thrift.protocol.TProtocol prot, ShowCompactResponse if (struct.isSetRunAs()) { optionals.set(3); } - oprot.writeBitSet(optionals, 4); + if (struct.isSetHightestTxnId()) { + optionals.set(4); + } + if (struct.isSetMetaInfo()) { + optionals.set(5); + } + if (struct.isSetEndTime()) { + optionals.set(6); + } + if (struct.isSetHadoopJobId()) { + optionals.set(7); + } + oprot.writeBitSet(optionals, 8); if (struct.isSetPartitionname()) { oprot.writeString(struct.partitionname); } @@ -1092,6 +1477,18 @@ public void write(org.apache.thrift.protocol.TProtocol prot, ShowCompactResponse if (struct.isSetRunAs()) { oprot.writeString(struct.runAs); } + if (struct.isSetHightestTxnId()) { + oprot.writeI64(struct.hightestTxnId); + } + if (struct.isSetMetaInfo()) { + oprot.writeString(struct.metaInfo); + } + if (struct.isSetEndTime()) { + oprot.writeI64(struct.endTime); + } + if (struct.isSetHadoopJobId()) { + oprot.writeString(struct.hadoopJobId); + } } @Override @@ -1105,7 +1502,7 @@ public void read(org.apache.thrift.protocol.TProtocol prot, ShowCompactResponseE struct.setTypeIsSet(true); struct.state = iprot.readString(); struct.setStateIsSet(true); - BitSet incoming = iprot.readBitSet(4); + BitSet incoming = iprot.readBitSet(8); if (incoming.get(0)) { struct.partitionname = iprot.readString(); struct.setPartitionnameIsSet(true); @@ -1122,6 +1519,22 @@ public void read(org.apache.thrift.protocol.TProtocol prot, ShowCompactResponseE struct.runAs = iprot.readString(); struct.setRunAsIsSet(true); } + if (incoming.get(4)) { + struct.hightestTxnId = iprot.readI64(); + struct.setHightestTxnIdIsSet(true); + } + if (incoming.get(5)) { + struct.metaInfo = iprot.readString(); + struct.setMetaInfoIsSet(true); + } + if (incoming.get(6)) { + struct.endTime = iprot.readI64(); + struct.setEndTimeIsSet(true); + } + if (incoming.get(7)) { + struct.hadoopJobId = iprot.readString(); + struct.setHadoopJobIdIsSet(true); + } } } diff --git metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksRequest.java metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksRequest.java index e89b93b..f566d6f 100644 --- metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksRequest.java +++ metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksRequest.java @@ -38,6 +38,10 @@ public class ShowLocksRequest implements org.apache.thrift.TBase, java.io.Serializable, Cloneable, Comparable { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ShowLocksRequest"); + private static final org.apache.thrift.protocol.TField DBNAME_FIELD_DESC = new org.apache.thrift.protocol.TField("dbname", org.apache.thrift.protocol.TType.STRING, (short)1); + private static final org.apache.thrift.protocol.TField TABLENAME_FIELD_DESC = new org.apache.thrift.protocol.TField("tablename", org.apache.thrift.protocol.TType.STRING, (short)2); + private static final org.apache.thrift.protocol.TField PARTNAME_FIELD_DESC = new org.apache.thrift.protocol.TField("partname", org.apache.thrift.protocol.TType.STRING, (short)3); + private static final org.apache.thrift.protocol.TField IS_EXTENDED_FIELD_DESC = new org.apache.thrift.protocol.TField("isExtended", org.apache.thrift.protocol.TType.BOOL, (short)4); private static final Map, SchemeFactory> schemes = new HashMap, SchemeFactory>(); static { @@ -45,10 +49,17 @@ schemes.put(TupleScheme.class, new ShowLocksRequestTupleSchemeFactory()); } + private String dbname; // optional + private String tablename; // optional + private String partname; // optional + private boolean isExtended; // optional /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ public enum _Fields implements org.apache.thrift.TFieldIdEnum { -; + DBNAME((short)1, "dbname"), + TABLENAME((short)2, "tablename"), + PARTNAME((short)3, "partname"), + IS_EXTENDED((short)4, "isExtended"); private static final Map byName = new HashMap(); @@ -63,6 +74,14 @@ */ public static _Fields findByThriftId(int fieldId) { switch(fieldId) { + case 1: // DBNAME + return DBNAME; + case 2: // TABLENAME + return TABLENAME; + case 3: // PARTNAME + return PARTNAME; + case 4: // IS_EXTENDED + return IS_EXTENDED; default: return null; } @@ -101,20 +120,46 @@ public String getFieldName() { return _fieldName; } } + + // isset id assignments + private static final int __ISEXTENDED_ISSET_ID = 0; + private byte __isset_bitfield = 0; + private static final _Fields optionals[] = {_Fields.DBNAME,_Fields.TABLENAME,_Fields.PARTNAME,_Fields.IS_EXTENDED}; public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap; static { Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class); + tmpMap.put(_Fields.DBNAME, new org.apache.thrift.meta_data.FieldMetaData("dbname", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.TABLENAME, new org.apache.thrift.meta_data.FieldMetaData("tablename", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.PARTNAME, new org.apache.thrift.meta_data.FieldMetaData("partname", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.IS_EXTENDED, new org.apache.thrift.meta_data.FieldMetaData("isExtended", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL))); metaDataMap = Collections.unmodifiableMap(tmpMap); org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(ShowLocksRequest.class, metaDataMap); } public ShowLocksRequest() { + this.isExtended = false; + } /** * Performs a deep copy on other. */ public ShowLocksRequest(ShowLocksRequest other) { + __isset_bitfield = other.__isset_bitfield; + if (other.isSetDbname()) { + this.dbname = other.dbname; + } + if (other.isSetTablename()) { + this.tablename = other.tablename; + } + if (other.isSetPartname()) { + this.partname = other.partname; + } + this.isExtended = other.isExtended; } public ShowLocksRequest deepCopy() { @@ -123,15 +168,155 @@ public ShowLocksRequest deepCopy() { @Override public void clear() { + this.dbname = null; + this.tablename = null; + this.partname = null; + this.isExtended = false; + + } + + public String getDbname() { + return this.dbname; + } + + public void setDbname(String dbname) { + this.dbname = dbname; + } + + public void unsetDbname() { + this.dbname = null; + } + + /** Returns true if field dbname is set (has been assigned a value) and false otherwise */ + public boolean isSetDbname() { + return this.dbname != null; + } + + public void setDbnameIsSet(boolean value) { + if (!value) { + this.dbname = null; + } + } + + public String getTablename() { + return this.tablename; + } + + public void setTablename(String tablename) { + this.tablename = tablename; + } + + public void unsetTablename() { + this.tablename = null; + } + + /** Returns true if field tablename is set (has been assigned a value) and false otherwise */ + public boolean isSetTablename() { + return this.tablename != null; + } + + public void setTablenameIsSet(boolean value) { + if (!value) { + this.tablename = null; + } + } + + public String getPartname() { + return this.partname; + } + + public void setPartname(String partname) { + this.partname = partname; + } + + public void unsetPartname() { + this.partname = null; + } + + /** Returns true if field partname is set (has been assigned a value) and false otherwise */ + public boolean isSetPartname() { + return this.partname != null; + } + + public void setPartnameIsSet(boolean value) { + if (!value) { + this.partname = null; + } + } + + public boolean isIsExtended() { + return this.isExtended; + } + + public void setIsExtended(boolean isExtended) { + this.isExtended = isExtended; + setIsExtendedIsSet(true); + } + + public void unsetIsExtended() { + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __ISEXTENDED_ISSET_ID); + } + + /** Returns true if field isExtended is set (has been assigned a value) and false otherwise */ + public boolean isSetIsExtended() { + return EncodingUtils.testBit(__isset_bitfield, __ISEXTENDED_ISSET_ID); + } + + public void setIsExtendedIsSet(boolean value) { + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __ISEXTENDED_ISSET_ID, value); } public void setFieldValue(_Fields field, Object value) { switch (field) { + case DBNAME: + if (value == null) { + unsetDbname(); + } else { + setDbname((String)value); + } + break; + + case TABLENAME: + if (value == null) { + unsetTablename(); + } else { + setTablename((String)value); + } + break; + + case PARTNAME: + if (value == null) { + unsetPartname(); + } else { + setPartname((String)value); + } + break; + + case IS_EXTENDED: + if (value == null) { + unsetIsExtended(); + } else { + setIsExtended((Boolean)value); + } + break; + } } public Object getFieldValue(_Fields field) { switch (field) { + case DBNAME: + return getDbname(); + + case TABLENAME: + return getTablename(); + + case PARTNAME: + return getPartname(); + + case IS_EXTENDED: + return isIsExtended(); + } throw new IllegalStateException(); } @@ -143,6 +328,14 @@ public boolean isSet(_Fields field) { } switch (field) { + case DBNAME: + return isSetDbname(); + case TABLENAME: + return isSetTablename(); + case PARTNAME: + return isSetPartname(); + case IS_EXTENDED: + return isSetIsExtended(); } throw new IllegalStateException(); } @@ -160,6 +353,42 @@ public boolean equals(ShowLocksRequest that) { if (that == null) return false; + boolean this_present_dbname = true && this.isSetDbname(); + boolean that_present_dbname = true && that.isSetDbname(); + if (this_present_dbname || that_present_dbname) { + if (!(this_present_dbname && that_present_dbname)) + return false; + if (!this.dbname.equals(that.dbname)) + return false; + } + + boolean this_present_tablename = true && this.isSetTablename(); + boolean that_present_tablename = true && that.isSetTablename(); + if (this_present_tablename || that_present_tablename) { + if (!(this_present_tablename && that_present_tablename)) + return false; + if (!this.tablename.equals(that.tablename)) + return false; + } + + boolean this_present_partname = true && this.isSetPartname(); + boolean that_present_partname = true && that.isSetPartname(); + if (this_present_partname || that_present_partname) { + if (!(this_present_partname && that_present_partname)) + return false; + if (!this.partname.equals(that.partname)) + return false; + } + + boolean this_present_isExtended = true && this.isSetIsExtended(); + boolean that_present_isExtended = true && that.isSetIsExtended(); + if (this_present_isExtended || that_present_isExtended) { + if (!(this_present_isExtended && that_present_isExtended)) + return false; + if (this.isExtended != that.isExtended) + return false; + } + return true; } @@ -167,6 +396,26 @@ public boolean equals(ShowLocksRequest that) { public int hashCode() { List list = new ArrayList(); + boolean present_dbname = true && (isSetDbname()); + list.add(present_dbname); + if (present_dbname) + list.add(dbname); + + boolean present_tablename = true && (isSetTablename()); + list.add(present_tablename); + if (present_tablename) + list.add(tablename); + + boolean present_partname = true && (isSetPartname()); + list.add(present_partname); + if (present_partname) + list.add(partname); + + boolean present_isExtended = true && (isSetIsExtended()); + list.add(present_isExtended); + if (present_isExtended) + list.add(isExtended); + return list.hashCode(); } @@ -178,6 +427,46 @@ public int compareTo(ShowLocksRequest other) { int lastComparison = 0; + lastComparison = Boolean.valueOf(isSetDbname()).compareTo(other.isSetDbname()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetDbname()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.dbname, other.dbname); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetTablename()).compareTo(other.isSetTablename()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetTablename()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.tablename, other.tablename); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetPartname()).compareTo(other.isSetPartname()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetPartname()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.partname, other.partname); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetIsExtended()).compareTo(other.isSetIsExtended()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetIsExtended()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.isExtended, other.isExtended); + if (lastComparison != 0) { + return lastComparison; + } + } return 0; } @@ -198,6 +487,41 @@ public String toString() { StringBuilder sb = new StringBuilder("ShowLocksRequest("); boolean first = true; + if (isSetDbname()) { + sb.append("dbname:"); + if (this.dbname == null) { + sb.append("null"); + } else { + sb.append(this.dbname); + } + first = false; + } + if (isSetTablename()) { + if (!first) sb.append(", "); + sb.append("tablename:"); + if (this.tablename == null) { + sb.append("null"); + } else { + sb.append(this.tablename); + } + first = false; + } + if (isSetPartname()) { + if (!first) sb.append(", "); + sb.append("partname:"); + if (this.partname == null) { + sb.append("null"); + } else { + sb.append(this.partname); + } + first = false; + } + if (isSetIsExtended()) { + if (!first) sb.append(", "); + sb.append("isExtended:"); + sb.append(this.isExtended); + first = false; + } sb.append(")"); return sb.toString(); } @@ -217,6 +541,8 @@ private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOExcept private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException { try { + // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor. + __isset_bitfield = 0; read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in))); } catch (org.apache.thrift.TException te) { throw new java.io.IOException(te); @@ -241,6 +567,38 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, ShowLocksRequest st break; } switch (schemeField.id) { + case 1: // DBNAME + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.dbname = iprot.readString(); + struct.setDbnameIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 2: // TABLENAME + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.tablename = iprot.readString(); + struct.setTablenameIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 3: // PARTNAME + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.partname = iprot.readString(); + struct.setPartnameIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 4: // IS_EXTENDED + if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) { + struct.isExtended = iprot.readBool(); + struct.setIsExtendedIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; default: org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } @@ -254,6 +612,32 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, ShowLocksRequest s struct.validate(); oprot.writeStructBegin(STRUCT_DESC); + if (struct.dbname != null) { + if (struct.isSetDbname()) { + oprot.writeFieldBegin(DBNAME_FIELD_DESC); + oprot.writeString(struct.dbname); + oprot.writeFieldEnd(); + } + } + if (struct.tablename != null) { + if (struct.isSetTablename()) { + oprot.writeFieldBegin(TABLENAME_FIELD_DESC); + oprot.writeString(struct.tablename); + oprot.writeFieldEnd(); + } + } + if (struct.partname != null) { + if (struct.isSetPartname()) { + oprot.writeFieldBegin(PARTNAME_FIELD_DESC); + oprot.writeString(struct.partname); + oprot.writeFieldEnd(); + } + } + if (struct.isSetIsExtended()) { + oprot.writeFieldBegin(IS_EXTENDED_FIELD_DESC); + oprot.writeBool(struct.isExtended); + oprot.writeFieldEnd(); + } oprot.writeFieldStop(); oprot.writeStructEnd(); } @@ -271,11 +655,54 @@ public ShowLocksRequestTupleScheme getScheme() { @Override public void write(org.apache.thrift.protocol.TProtocol prot, ShowLocksRequest struct) throws org.apache.thrift.TException { TTupleProtocol oprot = (TTupleProtocol) prot; + BitSet optionals = new BitSet(); + if (struct.isSetDbname()) { + optionals.set(0); + } + if (struct.isSetTablename()) { + optionals.set(1); + } + if (struct.isSetPartname()) { + optionals.set(2); + } + if (struct.isSetIsExtended()) { + optionals.set(3); + } + oprot.writeBitSet(optionals, 4); + if (struct.isSetDbname()) { + oprot.writeString(struct.dbname); + } + if (struct.isSetTablename()) { + oprot.writeString(struct.tablename); + } + if (struct.isSetPartname()) { + oprot.writeString(struct.partname); + } + if (struct.isSetIsExtended()) { + oprot.writeBool(struct.isExtended); + } } @Override public void read(org.apache.thrift.protocol.TProtocol prot, ShowLocksRequest struct) throws org.apache.thrift.TException { TTupleProtocol iprot = (TTupleProtocol) prot; + BitSet incoming = iprot.readBitSet(4); + if (incoming.get(0)) { + struct.dbname = iprot.readString(); + struct.setDbnameIsSet(true); + } + if (incoming.get(1)) { + struct.tablename = iprot.readString(); + struct.setTablenameIsSet(true); + } + if (incoming.get(2)) { + struct.partname = iprot.readString(); + struct.setPartnameIsSet(true); + } + if (incoming.get(3)) { + struct.isExtended = iprot.readBool(); + struct.setIsExtendedIsSet(true); + } } } diff --git metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksResponseElement.java metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksResponseElement.java index 037a383..4bd7a7e 100644 --- metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksResponseElement.java +++ metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ShowLocksResponseElement.java @@ -49,6 +49,11 @@ private static final org.apache.thrift.protocol.TField ACQUIREDAT_FIELD_DESC = new org.apache.thrift.protocol.TField("acquiredat", org.apache.thrift.protocol.TType.I64, (short)9); private static final org.apache.thrift.protocol.TField USER_FIELD_DESC = new org.apache.thrift.protocol.TField("user", org.apache.thrift.protocol.TType.STRING, (short)10); private static final org.apache.thrift.protocol.TField HOSTNAME_FIELD_DESC = new org.apache.thrift.protocol.TField("hostname", org.apache.thrift.protocol.TType.STRING, (short)11); + private static final org.apache.thrift.protocol.TField HEARTBEAT_COUNT_FIELD_DESC = new org.apache.thrift.protocol.TField("heartbeatCount", org.apache.thrift.protocol.TType.I32, (short)12); + private static final org.apache.thrift.protocol.TField AGENT_INFO_FIELD_DESC = new org.apache.thrift.protocol.TField("agentInfo", org.apache.thrift.protocol.TType.STRING, (short)13); + private static final org.apache.thrift.protocol.TField BLOCKED_BY_EXT_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("blockedByExtId", org.apache.thrift.protocol.TType.I64, (short)14); + private static final org.apache.thrift.protocol.TField BLOCKED_BY_INT_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("blockedByIntId", org.apache.thrift.protocol.TType.I64, (short)15); + private static final org.apache.thrift.protocol.TField LOCK_ID_INTERNAL_FIELD_DESC = new org.apache.thrift.protocol.TField("lockIdInternal", org.apache.thrift.protocol.TType.I64, (short)16); private static final Map, SchemeFactory> schemes = new HashMap, SchemeFactory>(); static { @@ -67,6 +72,11 @@ private long acquiredat; // optional private String user; // required private String hostname; // required + private int heartbeatCount; // optional + private String agentInfo; // optional + private long blockedByExtId; // optional + private long blockedByIntId; // optional + private long lockIdInternal; // optional /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ public enum _Fields implements org.apache.thrift.TFieldIdEnum { @@ -88,7 +98,12 @@ LASTHEARTBEAT((short)8, "lastheartbeat"), ACQUIREDAT((short)9, "acquiredat"), USER((short)10, "user"), - HOSTNAME((short)11, "hostname"); + HOSTNAME((short)11, "hostname"), + HEARTBEAT_COUNT((short)12, "heartbeatCount"), + AGENT_INFO((short)13, "agentInfo"), + BLOCKED_BY_EXT_ID((short)14, "blockedByExtId"), + BLOCKED_BY_INT_ID((short)15, "blockedByIntId"), + LOCK_ID_INTERNAL((short)16, "lockIdInternal"); private static final Map byName = new HashMap(); @@ -125,6 +140,16 @@ public static _Fields findByThriftId(int fieldId) { return USER; case 11: // HOSTNAME return HOSTNAME; + case 12: // HEARTBEAT_COUNT + return HEARTBEAT_COUNT; + case 13: // AGENT_INFO + return AGENT_INFO; + case 14: // BLOCKED_BY_EXT_ID + return BLOCKED_BY_EXT_ID; + case 15: // BLOCKED_BY_INT_ID + return BLOCKED_BY_INT_ID; + case 16: // LOCK_ID_INTERNAL + return LOCK_ID_INTERNAL; default: return null; } @@ -169,8 +194,12 @@ public String getFieldName() { private static final int __TXNID_ISSET_ID = 1; private static final int __LASTHEARTBEAT_ISSET_ID = 2; private static final int __ACQUIREDAT_ISSET_ID = 3; + private static final int __HEARTBEATCOUNT_ISSET_ID = 4; + private static final int __BLOCKEDBYEXTID_ISSET_ID = 5; + private static final int __BLOCKEDBYINTID_ISSET_ID = 6; + private static final int __LOCKIDINTERNAL_ISSET_ID = 7; private byte __isset_bitfield = 0; - private static final _Fields optionals[] = {_Fields.TABLENAME,_Fields.PARTNAME,_Fields.TXNID,_Fields.ACQUIREDAT}; + private static final _Fields optionals[] = {_Fields.TABLENAME,_Fields.PARTNAME,_Fields.TXNID,_Fields.ACQUIREDAT,_Fields.HEARTBEAT_COUNT,_Fields.AGENT_INFO,_Fields.BLOCKED_BY_EXT_ID,_Fields.BLOCKED_BY_INT_ID,_Fields.LOCK_ID_INTERNAL}; public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap; static { Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class); @@ -196,11 +225,23 @@ public String getFieldName() { new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); tmpMap.put(_Fields.HOSTNAME, new org.apache.thrift.meta_data.FieldMetaData("hostname", org.apache.thrift.TFieldRequirementType.REQUIRED, new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.HEARTBEAT_COUNT, new org.apache.thrift.meta_data.FieldMetaData("heartbeatCount", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32))); + tmpMap.put(_Fields.AGENT_INFO, new org.apache.thrift.meta_data.FieldMetaData("agentInfo", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.BLOCKED_BY_EXT_ID, new org.apache.thrift.meta_data.FieldMetaData("blockedByExtId", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64))); + tmpMap.put(_Fields.BLOCKED_BY_INT_ID, new org.apache.thrift.meta_data.FieldMetaData("blockedByIntId", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64))); + tmpMap.put(_Fields.LOCK_ID_INTERNAL, new org.apache.thrift.meta_data.FieldMetaData("lockIdInternal", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64))); metaDataMap = Collections.unmodifiableMap(tmpMap); org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(ShowLocksResponseElement.class, metaDataMap); } public ShowLocksResponseElement() { + this.heartbeatCount = 0; + } public ShowLocksResponseElement( @@ -254,6 +295,13 @@ public ShowLocksResponseElement(ShowLocksResponseElement other) { if (other.isSetHostname()) { this.hostname = other.hostname; } + this.heartbeatCount = other.heartbeatCount; + if (other.isSetAgentInfo()) { + this.agentInfo = other.agentInfo; + } + this.blockedByExtId = other.blockedByExtId; + this.blockedByIntId = other.blockedByIntId; + this.lockIdInternal = other.lockIdInternal; } public ShowLocksResponseElement deepCopy() { @@ -277,6 +325,15 @@ public void clear() { this.acquiredat = 0; this.user = null; this.hostname = null; + this.heartbeatCount = 0; + + this.agentInfo = null; + setBlockedByExtIdIsSet(false); + this.blockedByExtId = 0; + setBlockedByIntIdIsSet(false); + this.blockedByIntId = 0; + setLockIdInternalIsSet(false); + this.lockIdInternal = 0; } public long getLockid() { @@ -544,6 +601,117 @@ public void setHostnameIsSet(boolean value) { } } + public int getHeartbeatCount() { + return this.heartbeatCount; + } + + public void setHeartbeatCount(int heartbeatCount) { + this.heartbeatCount = heartbeatCount; + setHeartbeatCountIsSet(true); + } + + public void unsetHeartbeatCount() { + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __HEARTBEATCOUNT_ISSET_ID); + } + + /** Returns true if field heartbeatCount is set (has been assigned a value) and false otherwise */ + public boolean isSetHeartbeatCount() { + return EncodingUtils.testBit(__isset_bitfield, __HEARTBEATCOUNT_ISSET_ID); + } + + public void setHeartbeatCountIsSet(boolean value) { + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __HEARTBEATCOUNT_ISSET_ID, value); + } + + public String getAgentInfo() { + return this.agentInfo; + } + + public void setAgentInfo(String agentInfo) { + this.agentInfo = agentInfo; + } + + public void unsetAgentInfo() { + this.agentInfo = null; + } + + /** Returns true if field agentInfo is set (has been assigned a value) and false otherwise */ + public boolean isSetAgentInfo() { + return this.agentInfo != null; + } + + public void setAgentInfoIsSet(boolean value) { + if (!value) { + this.agentInfo = null; + } + } + + public long getBlockedByExtId() { + return this.blockedByExtId; + } + + public void setBlockedByExtId(long blockedByExtId) { + this.blockedByExtId = blockedByExtId; + setBlockedByExtIdIsSet(true); + } + + public void unsetBlockedByExtId() { + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __BLOCKEDBYEXTID_ISSET_ID); + } + + /** Returns true if field blockedByExtId is set (has been assigned a value) and false otherwise */ + public boolean isSetBlockedByExtId() { + return EncodingUtils.testBit(__isset_bitfield, __BLOCKEDBYEXTID_ISSET_ID); + } + + public void setBlockedByExtIdIsSet(boolean value) { + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __BLOCKEDBYEXTID_ISSET_ID, value); + } + + public long getBlockedByIntId() { + return this.blockedByIntId; + } + + public void setBlockedByIntId(long blockedByIntId) { + this.blockedByIntId = blockedByIntId; + setBlockedByIntIdIsSet(true); + } + + public void unsetBlockedByIntId() { + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __BLOCKEDBYINTID_ISSET_ID); + } + + /** Returns true if field blockedByIntId is set (has been assigned a value) and false otherwise */ + public boolean isSetBlockedByIntId() { + return EncodingUtils.testBit(__isset_bitfield, __BLOCKEDBYINTID_ISSET_ID); + } + + public void setBlockedByIntIdIsSet(boolean value) { + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __BLOCKEDBYINTID_ISSET_ID, value); + } + + public long getLockIdInternal() { + return this.lockIdInternal; + } + + public void setLockIdInternal(long lockIdInternal) { + this.lockIdInternal = lockIdInternal; + setLockIdInternalIsSet(true); + } + + public void unsetLockIdInternal() { + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __LOCKIDINTERNAL_ISSET_ID); + } + + /** Returns true if field lockIdInternal is set (has been assigned a value) and false otherwise */ + public boolean isSetLockIdInternal() { + return EncodingUtils.testBit(__isset_bitfield, __LOCKIDINTERNAL_ISSET_ID); + } + + public void setLockIdInternalIsSet(boolean value) { + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __LOCKIDINTERNAL_ISSET_ID, value); + } + public void setFieldValue(_Fields field, Object value) { switch (field) { case LOCKID: @@ -634,6 +802,46 @@ public void setFieldValue(_Fields field, Object value) { } break; + case HEARTBEAT_COUNT: + if (value == null) { + unsetHeartbeatCount(); + } else { + setHeartbeatCount((Integer)value); + } + break; + + case AGENT_INFO: + if (value == null) { + unsetAgentInfo(); + } else { + setAgentInfo((String)value); + } + break; + + case BLOCKED_BY_EXT_ID: + if (value == null) { + unsetBlockedByExtId(); + } else { + setBlockedByExtId((Long)value); + } + break; + + case BLOCKED_BY_INT_ID: + if (value == null) { + unsetBlockedByIntId(); + } else { + setBlockedByIntId((Long)value); + } + break; + + case LOCK_ID_INTERNAL: + if (value == null) { + unsetLockIdInternal(); + } else { + setLockIdInternal((Long)value); + } + break; + } } @@ -672,6 +880,21 @@ public Object getFieldValue(_Fields field) { case HOSTNAME: return getHostname(); + case HEARTBEAT_COUNT: + return getHeartbeatCount(); + + case AGENT_INFO: + return getAgentInfo(); + + case BLOCKED_BY_EXT_ID: + return getBlockedByExtId(); + + case BLOCKED_BY_INT_ID: + return getBlockedByIntId(); + + case LOCK_ID_INTERNAL: + return getLockIdInternal(); + } throw new IllegalStateException(); } @@ -705,6 +928,16 @@ public boolean isSet(_Fields field) { return isSetUser(); case HOSTNAME: return isSetHostname(); + case HEARTBEAT_COUNT: + return isSetHeartbeatCount(); + case AGENT_INFO: + return isSetAgentInfo(); + case BLOCKED_BY_EXT_ID: + return isSetBlockedByExtId(); + case BLOCKED_BY_INT_ID: + return isSetBlockedByIntId(); + case LOCK_ID_INTERNAL: + return isSetLockIdInternal(); } throw new IllegalStateException(); } @@ -821,6 +1054,51 @@ public boolean equals(ShowLocksResponseElement that) { return false; } + boolean this_present_heartbeatCount = true && this.isSetHeartbeatCount(); + boolean that_present_heartbeatCount = true && that.isSetHeartbeatCount(); + if (this_present_heartbeatCount || that_present_heartbeatCount) { + if (!(this_present_heartbeatCount && that_present_heartbeatCount)) + return false; + if (this.heartbeatCount != that.heartbeatCount) + return false; + } + + boolean this_present_agentInfo = true && this.isSetAgentInfo(); + boolean that_present_agentInfo = true && that.isSetAgentInfo(); + if (this_present_agentInfo || that_present_agentInfo) { + if (!(this_present_agentInfo && that_present_agentInfo)) + return false; + if (!this.agentInfo.equals(that.agentInfo)) + return false; + } + + boolean this_present_blockedByExtId = true && this.isSetBlockedByExtId(); + boolean that_present_blockedByExtId = true && that.isSetBlockedByExtId(); + if (this_present_blockedByExtId || that_present_blockedByExtId) { + if (!(this_present_blockedByExtId && that_present_blockedByExtId)) + return false; + if (this.blockedByExtId != that.blockedByExtId) + return false; + } + + boolean this_present_blockedByIntId = true && this.isSetBlockedByIntId(); + boolean that_present_blockedByIntId = true && that.isSetBlockedByIntId(); + if (this_present_blockedByIntId || that_present_blockedByIntId) { + if (!(this_present_blockedByIntId && that_present_blockedByIntId)) + return false; + if (this.blockedByIntId != that.blockedByIntId) + return false; + } + + boolean this_present_lockIdInternal = true && this.isSetLockIdInternal(); + boolean that_present_lockIdInternal = true && that.isSetLockIdInternal(); + if (this_present_lockIdInternal || that_present_lockIdInternal) { + if (!(this_present_lockIdInternal && that_present_lockIdInternal)) + return false; + if (this.lockIdInternal != that.lockIdInternal) + return false; + } + return true; } @@ -883,6 +1161,31 @@ public int hashCode() { if (present_hostname) list.add(hostname); + boolean present_heartbeatCount = true && (isSetHeartbeatCount()); + list.add(present_heartbeatCount); + if (present_heartbeatCount) + list.add(heartbeatCount); + + boolean present_agentInfo = true && (isSetAgentInfo()); + list.add(present_agentInfo); + if (present_agentInfo) + list.add(agentInfo); + + boolean present_blockedByExtId = true && (isSetBlockedByExtId()); + list.add(present_blockedByExtId); + if (present_blockedByExtId) + list.add(blockedByExtId); + + boolean present_blockedByIntId = true && (isSetBlockedByIntId()); + list.add(present_blockedByIntId); + if (present_blockedByIntId) + list.add(blockedByIntId); + + boolean present_lockIdInternal = true && (isSetLockIdInternal()); + list.add(present_lockIdInternal); + if (present_lockIdInternal) + list.add(lockIdInternal); + return list.hashCode(); } @@ -1004,6 +1307,56 @@ public int compareTo(ShowLocksResponseElement other) { return lastComparison; } } + lastComparison = Boolean.valueOf(isSetHeartbeatCount()).compareTo(other.isSetHeartbeatCount()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetHeartbeatCount()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.heartbeatCount, other.heartbeatCount); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetAgentInfo()).compareTo(other.isSetAgentInfo()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetAgentInfo()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.agentInfo, other.agentInfo); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetBlockedByExtId()).compareTo(other.isSetBlockedByExtId()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetBlockedByExtId()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.blockedByExtId, other.blockedByExtId); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetBlockedByIntId()).compareTo(other.isSetBlockedByIntId()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetBlockedByIntId()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.blockedByIntId, other.blockedByIntId); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetLockIdInternal()).compareTo(other.isSetLockIdInternal()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetLockIdInternal()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.lockIdInternal, other.lockIdInternal); + if (lastComparison != 0) { + return lastComparison; + } + } return 0; } @@ -1103,6 +1456,40 @@ public String toString() { sb.append(this.hostname); } first = false; + if (isSetHeartbeatCount()) { + if (!first) sb.append(", "); + sb.append("heartbeatCount:"); + sb.append(this.heartbeatCount); + first = false; + } + if (isSetAgentInfo()) { + if (!first) sb.append(", "); + sb.append("agentInfo:"); + if (this.agentInfo == null) { + sb.append("null"); + } else { + sb.append(this.agentInfo); + } + first = false; + } + if (isSetBlockedByExtId()) { + if (!first) sb.append(", "); + sb.append("blockedByExtId:"); + sb.append(this.blockedByExtId); + first = false; + } + if (isSetBlockedByIntId()) { + if (!first) sb.append(", "); + sb.append("blockedByIntId:"); + sb.append(this.blockedByIntId); + first = false; + } + if (isSetLockIdInternal()) { + if (!first) sb.append(", "); + sb.append("lockIdInternal:"); + sb.append(this.lockIdInternal); + first = false; + } sb.append(")"); return sb.toString(); } @@ -1264,6 +1651,46 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, ShowLocksResponseEl org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; + case 12: // HEARTBEAT_COUNT + if (schemeField.type == org.apache.thrift.protocol.TType.I32) { + struct.heartbeatCount = iprot.readI32(); + struct.setHeartbeatCountIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 13: // AGENT_INFO + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.agentInfo = iprot.readString(); + struct.setAgentInfoIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 14: // BLOCKED_BY_EXT_ID + if (schemeField.type == org.apache.thrift.protocol.TType.I64) { + struct.blockedByExtId = iprot.readI64(); + struct.setBlockedByExtIdIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 15: // BLOCKED_BY_INT_ID + if (schemeField.type == org.apache.thrift.protocol.TType.I64) { + struct.blockedByIntId = iprot.readI64(); + struct.setBlockedByIntIdIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 16: // LOCK_ID_INTERNAL + if (schemeField.type == org.apache.thrift.protocol.TType.I64) { + struct.lockIdInternal = iprot.readI64(); + struct.setLockIdInternalIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; default: org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } @@ -1332,6 +1759,33 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, ShowLocksResponseE oprot.writeString(struct.hostname); oprot.writeFieldEnd(); } + if (struct.isSetHeartbeatCount()) { + oprot.writeFieldBegin(HEARTBEAT_COUNT_FIELD_DESC); + oprot.writeI32(struct.heartbeatCount); + oprot.writeFieldEnd(); + } + if (struct.agentInfo != null) { + if (struct.isSetAgentInfo()) { + oprot.writeFieldBegin(AGENT_INFO_FIELD_DESC); + oprot.writeString(struct.agentInfo); + oprot.writeFieldEnd(); + } + } + if (struct.isSetBlockedByExtId()) { + oprot.writeFieldBegin(BLOCKED_BY_EXT_ID_FIELD_DESC); + oprot.writeI64(struct.blockedByExtId); + oprot.writeFieldEnd(); + } + if (struct.isSetBlockedByIntId()) { + oprot.writeFieldBegin(BLOCKED_BY_INT_ID_FIELD_DESC); + oprot.writeI64(struct.blockedByIntId); + oprot.writeFieldEnd(); + } + if (struct.isSetLockIdInternal()) { + oprot.writeFieldBegin(LOCK_ID_INTERNAL_FIELD_DESC); + oprot.writeI64(struct.lockIdInternal); + oprot.writeFieldEnd(); + } oprot.writeFieldStop(); oprot.writeStructEnd(); } @@ -1369,7 +1823,22 @@ public void write(org.apache.thrift.protocol.TProtocol prot, ShowLocksResponseEl if (struct.isSetAcquiredat()) { optionals.set(3); } - oprot.writeBitSet(optionals, 4); + if (struct.isSetHeartbeatCount()) { + optionals.set(4); + } + if (struct.isSetAgentInfo()) { + optionals.set(5); + } + if (struct.isSetBlockedByExtId()) { + optionals.set(6); + } + if (struct.isSetBlockedByIntId()) { + optionals.set(7); + } + if (struct.isSetLockIdInternal()) { + optionals.set(8); + } + oprot.writeBitSet(optionals, 9); if (struct.isSetTablename()) { oprot.writeString(struct.tablename); } @@ -1382,6 +1851,21 @@ public void write(org.apache.thrift.protocol.TProtocol prot, ShowLocksResponseEl if (struct.isSetAcquiredat()) { oprot.writeI64(struct.acquiredat); } + if (struct.isSetHeartbeatCount()) { + oprot.writeI32(struct.heartbeatCount); + } + if (struct.isSetAgentInfo()) { + oprot.writeString(struct.agentInfo); + } + if (struct.isSetBlockedByExtId()) { + oprot.writeI64(struct.blockedByExtId); + } + if (struct.isSetBlockedByIntId()) { + oprot.writeI64(struct.blockedByIntId); + } + if (struct.isSetLockIdInternal()) { + oprot.writeI64(struct.lockIdInternal); + } } @Override @@ -1401,7 +1885,7 @@ public void read(org.apache.thrift.protocol.TProtocol prot, ShowLocksResponseEle struct.setUserIsSet(true); struct.hostname = iprot.readString(); struct.setHostnameIsSet(true); - BitSet incoming = iprot.readBitSet(4); + BitSet incoming = iprot.readBitSet(9); if (incoming.get(0)) { struct.tablename = iprot.readString(); struct.setTablenameIsSet(true); @@ -1418,6 +1902,26 @@ public void read(org.apache.thrift.protocol.TProtocol prot, ShowLocksResponseEle struct.acquiredat = iprot.readI64(); struct.setAcquiredatIsSet(true); } + if (incoming.get(4)) { + struct.heartbeatCount = iprot.readI32(); + struct.setHeartbeatCountIsSet(true); + } + if (incoming.get(5)) { + struct.agentInfo = iprot.readString(); + struct.setAgentInfoIsSet(true); + } + if (incoming.get(6)) { + struct.blockedByExtId = iprot.readI64(); + struct.setBlockedByExtIdIsSet(true); + } + if (incoming.get(7)) { + struct.blockedByIntId = iprot.readI64(); + struct.setBlockedByIntIdIsSet(true); + } + if (incoming.get(8)) { + struct.lockIdInternal = iprot.readI64(); + struct.setLockIdInternalIsSet(true); + } } } diff --git metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/TxnInfo.java metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/TxnInfo.java index 47cdaf4..9c56ee3 100644 --- metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/TxnInfo.java +++ metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/TxnInfo.java @@ -42,6 +42,9 @@ private static final org.apache.thrift.protocol.TField STATE_FIELD_DESC = new org.apache.thrift.protocol.TField("state", org.apache.thrift.protocol.TType.I32, (short)2); private static final org.apache.thrift.protocol.TField USER_FIELD_DESC = new org.apache.thrift.protocol.TField("user", org.apache.thrift.protocol.TType.STRING, (short)3); private static final org.apache.thrift.protocol.TField HOSTNAME_FIELD_DESC = new org.apache.thrift.protocol.TField("hostname", org.apache.thrift.protocol.TType.STRING, (short)4); + private static final org.apache.thrift.protocol.TField AGENT_INFO_FIELD_DESC = new org.apache.thrift.protocol.TField("agentInfo", org.apache.thrift.protocol.TType.STRING, (short)5); + private static final org.apache.thrift.protocol.TField HEARTBEAT_COUNT_FIELD_DESC = new org.apache.thrift.protocol.TField("heartbeatCount", org.apache.thrift.protocol.TType.I32, (short)6); + private static final org.apache.thrift.protocol.TField META_INFO_FIELD_DESC = new org.apache.thrift.protocol.TField("metaInfo", org.apache.thrift.protocol.TType.STRING, (short)7); private static final Map, SchemeFactory> schemes = new HashMap, SchemeFactory>(); static { @@ -53,6 +56,9 @@ private TxnState state; // required private String user; // required private String hostname; // required + private String agentInfo; // optional + private int heartbeatCount; // optional + private String metaInfo; // optional /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ public enum _Fields implements org.apache.thrift.TFieldIdEnum { @@ -63,7 +69,10 @@ */ STATE((short)2, "state"), USER((short)3, "user"), - HOSTNAME((short)4, "hostname"); + HOSTNAME((short)4, "hostname"), + AGENT_INFO((short)5, "agentInfo"), + HEARTBEAT_COUNT((short)6, "heartbeatCount"), + META_INFO((short)7, "metaInfo"); private static final Map byName = new HashMap(); @@ -86,6 +95,12 @@ public static _Fields findByThriftId(int fieldId) { return USER; case 4: // HOSTNAME return HOSTNAME; + case 5: // AGENT_INFO + return AGENT_INFO; + case 6: // HEARTBEAT_COUNT + return HEARTBEAT_COUNT; + case 7: // META_INFO + return META_INFO; default: return null; } @@ -127,7 +142,9 @@ public String getFieldName() { // isset id assignments private static final int __ID_ISSET_ID = 0; + private static final int __HEARTBEATCOUNT_ISSET_ID = 1; private byte __isset_bitfield = 0; + private static final _Fields optionals[] = {_Fields.AGENT_INFO,_Fields.HEARTBEAT_COUNT,_Fields.META_INFO}; public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap; static { Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class); @@ -139,11 +156,21 @@ public String getFieldName() { new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); tmpMap.put(_Fields.HOSTNAME, new org.apache.thrift.meta_data.FieldMetaData("hostname", org.apache.thrift.TFieldRequirementType.REQUIRED, new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.AGENT_INFO, new org.apache.thrift.meta_data.FieldMetaData("agentInfo", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.HEARTBEAT_COUNT, new org.apache.thrift.meta_data.FieldMetaData("heartbeatCount", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32))); + tmpMap.put(_Fields.META_INFO, new org.apache.thrift.meta_data.FieldMetaData("metaInfo", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); metaDataMap = Collections.unmodifiableMap(tmpMap); org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(TxnInfo.class, metaDataMap); } public TxnInfo() { + this.agentInfo = "Unknown"; + + this.heartbeatCount = 0; + } public TxnInfo( @@ -175,6 +202,13 @@ public TxnInfo(TxnInfo other) { if (other.isSetHostname()) { this.hostname = other.hostname; } + if (other.isSetAgentInfo()) { + this.agentInfo = other.agentInfo; + } + this.heartbeatCount = other.heartbeatCount; + if (other.isSetMetaInfo()) { + this.metaInfo = other.metaInfo; + } } public TxnInfo deepCopy() { @@ -188,6 +222,11 @@ public void clear() { this.state = null; this.user = null; this.hostname = null; + this.agentInfo = "Unknown"; + + this.heartbeatCount = 0; + + this.metaInfo = null; } public long getId() { @@ -289,6 +328,74 @@ public void setHostnameIsSet(boolean value) { } } + public String getAgentInfo() { + return this.agentInfo; + } + + public void setAgentInfo(String agentInfo) { + this.agentInfo = agentInfo; + } + + public void unsetAgentInfo() { + this.agentInfo = null; + } + + /** Returns true if field agentInfo is set (has been assigned a value) and false otherwise */ + public boolean isSetAgentInfo() { + return this.agentInfo != null; + } + + public void setAgentInfoIsSet(boolean value) { + if (!value) { + this.agentInfo = null; + } + } + + public int getHeartbeatCount() { + return this.heartbeatCount; + } + + public void setHeartbeatCount(int heartbeatCount) { + this.heartbeatCount = heartbeatCount; + setHeartbeatCountIsSet(true); + } + + public void unsetHeartbeatCount() { + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __HEARTBEATCOUNT_ISSET_ID); + } + + /** Returns true if field heartbeatCount is set (has been assigned a value) and false otherwise */ + public boolean isSetHeartbeatCount() { + return EncodingUtils.testBit(__isset_bitfield, __HEARTBEATCOUNT_ISSET_ID); + } + + public void setHeartbeatCountIsSet(boolean value) { + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __HEARTBEATCOUNT_ISSET_ID, value); + } + + public String getMetaInfo() { + return this.metaInfo; + } + + public void setMetaInfo(String metaInfo) { + this.metaInfo = metaInfo; + } + + public void unsetMetaInfo() { + this.metaInfo = null; + } + + /** Returns true if field metaInfo is set (has been assigned a value) and false otherwise */ + public boolean isSetMetaInfo() { + return this.metaInfo != null; + } + + public void setMetaInfoIsSet(boolean value) { + if (!value) { + this.metaInfo = null; + } + } + public void setFieldValue(_Fields field, Object value) { switch (field) { case ID: @@ -323,6 +430,30 @@ public void setFieldValue(_Fields field, Object value) { } break; + case AGENT_INFO: + if (value == null) { + unsetAgentInfo(); + } else { + setAgentInfo((String)value); + } + break; + + case HEARTBEAT_COUNT: + if (value == null) { + unsetHeartbeatCount(); + } else { + setHeartbeatCount((Integer)value); + } + break; + + case META_INFO: + if (value == null) { + unsetMetaInfo(); + } else { + setMetaInfo((String)value); + } + break; + } } @@ -340,6 +471,15 @@ public Object getFieldValue(_Fields field) { case HOSTNAME: return getHostname(); + case AGENT_INFO: + return getAgentInfo(); + + case HEARTBEAT_COUNT: + return getHeartbeatCount(); + + case META_INFO: + return getMetaInfo(); + } throw new IllegalStateException(); } @@ -359,6 +499,12 @@ public boolean isSet(_Fields field) { return isSetUser(); case HOSTNAME: return isSetHostname(); + case AGENT_INFO: + return isSetAgentInfo(); + case HEARTBEAT_COUNT: + return isSetHeartbeatCount(); + case META_INFO: + return isSetMetaInfo(); } throw new IllegalStateException(); } @@ -412,6 +558,33 @@ public boolean equals(TxnInfo that) { return false; } + boolean this_present_agentInfo = true && this.isSetAgentInfo(); + boolean that_present_agentInfo = true && that.isSetAgentInfo(); + if (this_present_agentInfo || that_present_agentInfo) { + if (!(this_present_agentInfo && that_present_agentInfo)) + return false; + if (!this.agentInfo.equals(that.agentInfo)) + return false; + } + + boolean this_present_heartbeatCount = true && this.isSetHeartbeatCount(); + boolean that_present_heartbeatCount = true && that.isSetHeartbeatCount(); + if (this_present_heartbeatCount || that_present_heartbeatCount) { + if (!(this_present_heartbeatCount && that_present_heartbeatCount)) + return false; + if (this.heartbeatCount != that.heartbeatCount) + return false; + } + + boolean this_present_metaInfo = true && this.isSetMetaInfo(); + boolean that_present_metaInfo = true && that.isSetMetaInfo(); + if (this_present_metaInfo || that_present_metaInfo) { + if (!(this_present_metaInfo && that_present_metaInfo)) + return false; + if (!this.metaInfo.equals(that.metaInfo)) + return false; + } + return true; } @@ -439,6 +612,21 @@ public int hashCode() { if (present_hostname) list.add(hostname); + boolean present_agentInfo = true && (isSetAgentInfo()); + list.add(present_agentInfo); + if (present_agentInfo) + list.add(agentInfo); + + boolean present_heartbeatCount = true && (isSetHeartbeatCount()); + list.add(present_heartbeatCount); + if (present_heartbeatCount) + list.add(heartbeatCount); + + boolean present_metaInfo = true && (isSetMetaInfo()); + list.add(present_metaInfo); + if (present_metaInfo) + list.add(metaInfo); + return list.hashCode(); } @@ -490,6 +678,36 @@ public int compareTo(TxnInfo other) { return lastComparison; } } + lastComparison = Boolean.valueOf(isSetAgentInfo()).compareTo(other.isSetAgentInfo()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetAgentInfo()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.agentInfo, other.agentInfo); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetHeartbeatCount()).compareTo(other.isSetHeartbeatCount()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetHeartbeatCount()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.heartbeatCount, other.heartbeatCount); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetMetaInfo()).compareTo(other.isSetMetaInfo()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetMetaInfo()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.metaInfo, other.metaInfo); + if (lastComparison != 0) { + return lastComparison; + } + } return 0; } @@ -537,6 +755,32 @@ public String toString() { sb.append(this.hostname); } first = false; + if (isSetAgentInfo()) { + if (!first) sb.append(", "); + sb.append("agentInfo:"); + if (this.agentInfo == null) { + sb.append("null"); + } else { + sb.append(this.agentInfo); + } + first = false; + } + if (isSetHeartbeatCount()) { + if (!first) sb.append(", "); + sb.append("heartbeatCount:"); + sb.append(this.heartbeatCount); + first = false; + } + if (isSetMetaInfo()) { + if (!first) sb.append(", "); + sb.append("metaInfo:"); + if (this.metaInfo == null) { + sb.append("null"); + } else { + sb.append(this.metaInfo); + } + first = false; + } sb.append(")"); return sb.toString(); } @@ -630,6 +874,30 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, TxnInfo struct) thr org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } break; + case 5: // AGENT_INFO + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.agentInfo = iprot.readString(); + struct.setAgentInfoIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 6: // HEARTBEAT_COUNT + if (schemeField.type == org.apache.thrift.protocol.TType.I32) { + struct.heartbeatCount = iprot.readI32(); + struct.setHeartbeatCountIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 7: // META_INFO + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.metaInfo = iprot.readString(); + struct.setMetaInfoIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; default: org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); } @@ -661,6 +929,25 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, TxnInfo struct) th oprot.writeString(struct.hostname); oprot.writeFieldEnd(); } + if (struct.agentInfo != null) { + if (struct.isSetAgentInfo()) { + oprot.writeFieldBegin(AGENT_INFO_FIELD_DESC); + oprot.writeString(struct.agentInfo); + oprot.writeFieldEnd(); + } + } + if (struct.isSetHeartbeatCount()) { + oprot.writeFieldBegin(HEARTBEAT_COUNT_FIELD_DESC); + oprot.writeI32(struct.heartbeatCount); + oprot.writeFieldEnd(); + } + if (struct.metaInfo != null) { + if (struct.isSetMetaInfo()) { + oprot.writeFieldBegin(META_INFO_FIELD_DESC); + oprot.writeString(struct.metaInfo); + oprot.writeFieldEnd(); + } + } oprot.writeFieldStop(); oprot.writeStructEnd(); } @@ -682,6 +969,26 @@ public void write(org.apache.thrift.protocol.TProtocol prot, TxnInfo struct) thr oprot.writeI32(struct.state.getValue()); oprot.writeString(struct.user); oprot.writeString(struct.hostname); + BitSet optionals = new BitSet(); + if (struct.isSetAgentInfo()) { + optionals.set(0); + } + if (struct.isSetHeartbeatCount()) { + optionals.set(1); + } + if (struct.isSetMetaInfo()) { + optionals.set(2); + } + oprot.writeBitSet(optionals, 3); + if (struct.isSetAgentInfo()) { + oprot.writeString(struct.agentInfo); + } + if (struct.isSetHeartbeatCount()) { + oprot.writeI32(struct.heartbeatCount); + } + if (struct.isSetMetaInfo()) { + oprot.writeString(struct.metaInfo); + } } @Override @@ -695,6 +1002,19 @@ public void read(org.apache.thrift.protocol.TProtocol prot, TxnInfo struct) thro struct.setUserIsSet(true); struct.hostname = iprot.readString(); struct.setHostnameIsSet(true); + BitSet incoming = iprot.readBitSet(3); + if (incoming.get(0)) { + struct.agentInfo = iprot.readString(); + struct.setAgentInfoIsSet(true); + } + if (incoming.get(1)) { + struct.heartbeatCount = iprot.readI32(); + struct.setHeartbeatCountIsSet(true); + } + if (incoming.get(2)) { + struct.metaInfo = iprot.readString(); + struct.setMetaInfoIsSet(true); + } } } diff --git metastore/src/gen/thrift/gen-php/metastore/Types.php metastore/src/gen/thrift/gen-php/metastore/Types.php index fe4c966..380e6d0 100644 --- metastore/src/gen/thrift/gen-php/metastore/Types.php +++ metastore/src/gen/thrift/gen-php/metastore/Types.php @@ -10085,6 +10085,18 @@ class TxnInfo { * @var string */ public $hostname = null; + /** + * @var string + */ + public $agentInfo = "Unknown"; + /** + * @var int + */ + public $heartbeatCount = 0; + /** + * @var string + */ + public $metaInfo = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { @@ -10105,6 +10117,18 @@ class TxnInfo { 'var' => 'hostname', 'type' => TType::STRING, ), + 5 => array( + 'var' => 'agentInfo', + 'type' => TType::STRING, + ), + 6 => array( + 'var' => 'heartbeatCount', + 'type' => TType::I32, + ), + 7 => array( + 'var' => 'metaInfo', + 'type' => TType::STRING, + ), ); } if (is_array($vals)) { @@ -10120,6 +10144,15 @@ class TxnInfo { if (isset($vals['hostname'])) { $this->hostname = $vals['hostname']; } + if (isset($vals['agentInfo'])) { + $this->agentInfo = $vals['agentInfo']; + } + if (isset($vals['heartbeatCount'])) { + $this->heartbeatCount = $vals['heartbeatCount']; + } + if (isset($vals['metaInfo'])) { + $this->metaInfo = $vals['metaInfo']; + } } } @@ -10170,6 +10203,27 @@ class TxnInfo { $xfer += $input->skip($ftype); } break; + case 5: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->agentInfo); + } else { + $xfer += $input->skip($ftype); + } + break; + case 6: + if ($ftype == TType::I32) { + $xfer += $input->readI32($this->heartbeatCount); + } else { + $xfer += $input->skip($ftype); + } + break; + case 7: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->metaInfo); + } else { + $xfer += $input->skip($ftype); + } + break; default: $xfer += $input->skip($ftype); break; @@ -10203,6 +10257,21 @@ class TxnInfo { $xfer += $output->writeString($this->hostname); $xfer += $output->writeFieldEnd(); } + if ($this->agentInfo !== null) { + $xfer += $output->writeFieldBegin('agentInfo', TType::STRING, 5); + $xfer += $output->writeString($this->agentInfo); + $xfer += $output->writeFieldEnd(); + } + if ($this->heartbeatCount !== null) { + $xfer += $output->writeFieldBegin('heartbeatCount', TType::I32, 6); + $xfer += $output->writeI32($this->heartbeatCount); + $xfer += $output->writeFieldEnd(); + } + if ($this->metaInfo !== null) { + $xfer += $output->writeFieldBegin('metaInfo', TType::STRING, 7); + $xfer += $output->writeString($this->metaInfo); + $xfer += $output->writeFieldEnd(); + } $xfer += $output->writeFieldStop(); $xfer += $output->writeStructEnd(); return $xfer; @@ -10483,6 +10552,10 @@ class OpenTxnRequest { * @var string */ public $hostname = null; + /** + * @var string + */ + public $agentInfo = "Unknown"; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { @@ -10499,6 +10572,10 @@ class OpenTxnRequest { 'var' => 'hostname', 'type' => TType::STRING, ), + 4 => array( + 'var' => 'agentInfo', + 'type' => TType::STRING, + ), ); } if (is_array($vals)) { @@ -10511,6 +10588,9 @@ class OpenTxnRequest { if (isset($vals['hostname'])) { $this->hostname = $vals['hostname']; } + if (isset($vals['agentInfo'])) { + $this->agentInfo = $vals['agentInfo']; + } } } @@ -10554,6 +10634,13 @@ class OpenTxnRequest { $xfer += $input->skip($ftype); } break; + case 4: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->agentInfo); + } else { + $xfer += $input->skip($ftype); + } + break; default: $xfer += $input->skip($ftype); break; @@ -10582,6 +10669,11 @@ class OpenTxnRequest { $xfer += $output->writeString($this->hostname); $xfer += $output->writeFieldEnd(); } + if ($this->agentInfo !== null) { + $xfer += $output->writeFieldBegin('agentInfo', TType::STRING, 4); + $xfer += $output->writeString($this->agentInfo); + $xfer += $output->writeFieldEnd(); + } $xfer += $output->writeFieldStop(); $xfer += $output->writeStructEnd(); return $xfer; @@ -11026,6 +11118,10 @@ class LockRequest { * @var string */ public $hostname = null; + /** + * @var string + */ + public $agentInfo = "Unknown"; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { @@ -11051,6 +11147,10 @@ class LockRequest { 'var' => 'hostname', 'type' => TType::STRING, ), + 5 => array( + 'var' => 'agentInfo', + 'type' => TType::STRING, + ), ); } if (is_array($vals)) { @@ -11066,6 +11166,9 @@ class LockRequest { if (isset($vals['hostname'])) { $this->hostname = $vals['hostname']; } + if (isset($vals['agentInfo'])) { + $this->agentInfo = $vals['agentInfo']; + } } } @@ -11127,6 +11230,13 @@ class LockRequest { $xfer += $input->skip($ftype); } break; + case 5: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->agentInfo); + } else { + $xfer += $input->skip($ftype); + } + break; default: $xfer += $input->skip($ftype); break; @@ -11172,6 +11282,11 @@ class LockRequest { $xfer += $output->writeString($this->hostname); $xfer += $output->writeFieldEnd(); } + if ($this->agentInfo !== null) { + $xfer += $output->writeFieldBegin('agentInfo', TType::STRING, 5); + $xfer += $output->writeString($this->agentInfo); + $xfer += $output->writeFieldEnd(); + } $xfer += $output->writeFieldStop(); $xfer += $output->writeStructEnd(); return $xfer; @@ -11284,6 +11399,14 @@ class CheckLockRequest { * @var int */ public $lockid = null; + /** + * @var int + */ + public $txnid = null; + /** + * @var int + */ + public $elapsed_ms = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { @@ -11292,12 +11415,26 @@ class CheckLockRequest { 'var' => 'lockid', 'type' => TType::I64, ), + 2 => array( + 'var' => 'txnid', + 'type' => TType::I64, + ), + 3 => array( + 'var' => 'elapsed_ms', + 'type' => TType::I64, + ), ); } if (is_array($vals)) { if (isset($vals['lockid'])) { $this->lockid = $vals['lockid']; } + if (isset($vals['txnid'])) { + $this->txnid = $vals['txnid']; + } + if (isset($vals['elapsed_ms'])) { + $this->elapsed_ms = $vals['elapsed_ms']; + } } } @@ -11327,6 +11464,20 @@ class CheckLockRequest { $xfer += $input->skip($ftype); } break; + case 2: + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->txnid); + } else { + $xfer += $input->skip($ftype); + } + break; + case 3: + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->elapsed_ms); + } else { + $xfer += $input->skip($ftype); + } + break; default: $xfer += $input->skip($ftype); break; @@ -11345,6 +11496,16 @@ class CheckLockRequest { $xfer += $output->writeI64($this->lockid); $xfer += $output->writeFieldEnd(); } + if ($this->txnid !== null) { + $xfer += $output->writeFieldBegin('txnid', TType::I64, 2); + $xfer += $output->writeI64($this->txnid); + $xfer += $output->writeFieldEnd(); + } + if ($this->elapsed_ms !== null) { + $xfer += $output->writeFieldBegin('elapsed_ms', TType::I64, 3); + $xfer += $output->writeI64($this->elapsed_ms); + $xfer += $output->writeFieldEnd(); + } $xfer += $output->writeFieldStop(); $xfer += $output->writeStructEnd(); return $xfer; @@ -11430,12 +11591,58 @@ class UnlockRequest { class ShowLocksRequest { static $_TSPEC; + /** + * @var string + */ + public $dbname = null; + /** + * @var string + */ + public $tablename = null; + /** + * @var string + */ + public $partname = null; + /** + * @var bool + */ + public $isExtended = false; - public function __construct() { + public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( + 1 => array( + 'var' => 'dbname', + 'type' => TType::STRING, + ), + 2 => array( + 'var' => 'tablename', + 'type' => TType::STRING, + ), + 3 => array( + 'var' => 'partname', + 'type' => TType::STRING, + ), + 4 => array( + 'var' => 'isExtended', + 'type' => TType::BOOL, + ), ); } + if (is_array($vals)) { + if (isset($vals['dbname'])) { + $this->dbname = $vals['dbname']; + } + if (isset($vals['tablename'])) { + $this->tablename = $vals['tablename']; + } + if (isset($vals['partname'])) { + $this->partname = $vals['partname']; + } + if (isset($vals['isExtended'])) { + $this->isExtended = $vals['isExtended']; + } + } } public function getName() { @@ -11457,6 +11664,34 @@ class ShowLocksRequest { } switch ($fid) { + case 1: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->dbname); + } else { + $xfer += $input->skip($ftype); + } + break; + case 2: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->tablename); + } else { + $xfer += $input->skip($ftype); + } + break; + case 3: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->partname); + } else { + $xfer += $input->skip($ftype); + } + break; + case 4: + if ($ftype == TType::BOOL) { + $xfer += $input->readBool($this->isExtended); + } else { + $xfer += $input->skip($ftype); + } + break; default: $xfer += $input->skip($ftype); break; @@ -11470,6 +11705,26 @@ class ShowLocksRequest { public function write($output) { $xfer = 0; $xfer += $output->writeStructBegin('ShowLocksRequest'); + if ($this->dbname !== null) { + $xfer += $output->writeFieldBegin('dbname', TType::STRING, 1); + $xfer += $output->writeString($this->dbname); + $xfer += $output->writeFieldEnd(); + } + if ($this->tablename !== null) { + $xfer += $output->writeFieldBegin('tablename', TType::STRING, 2); + $xfer += $output->writeString($this->tablename); + $xfer += $output->writeFieldEnd(); + } + if ($this->partname !== null) { + $xfer += $output->writeFieldBegin('partname', TType::STRING, 3); + $xfer += $output->writeString($this->partname); + $xfer += $output->writeFieldEnd(); + } + if ($this->isExtended !== null) { + $xfer += $output->writeFieldBegin('isExtended', TType::BOOL, 4); + $xfer += $output->writeBool($this->isExtended); + $xfer += $output->writeFieldEnd(); + } $xfer += $output->writeFieldStop(); $xfer += $output->writeStructEnd(); return $xfer; @@ -11524,6 +11779,26 @@ class ShowLocksResponseElement { * @var string */ public $hostname = null; + /** + * @var int + */ + public $heartbeatCount = 0; + /** + * @var string + */ + public $agentInfo = null; + /** + * @var int + */ + public $blockedByExtId = null; + /** + * @var int + */ + public $blockedByIntId = null; + /** + * @var int + */ + public $lockIdInternal = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { @@ -11572,6 +11847,26 @@ class ShowLocksResponseElement { 'var' => 'hostname', 'type' => TType::STRING, ), + 12 => array( + 'var' => 'heartbeatCount', + 'type' => TType::I32, + ), + 13 => array( + 'var' => 'agentInfo', + 'type' => TType::STRING, + ), + 14 => array( + 'var' => 'blockedByExtId', + 'type' => TType::I64, + ), + 15 => array( + 'var' => 'blockedByIntId', + 'type' => TType::I64, + ), + 16 => array( + 'var' => 'lockIdInternal', + 'type' => TType::I64, + ), ); } if (is_array($vals)) { @@ -11608,6 +11903,21 @@ class ShowLocksResponseElement { if (isset($vals['hostname'])) { $this->hostname = $vals['hostname']; } + if (isset($vals['heartbeatCount'])) { + $this->heartbeatCount = $vals['heartbeatCount']; + } + if (isset($vals['agentInfo'])) { + $this->agentInfo = $vals['agentInfo']; + } + if (isset($vals['blockedByExtId'])) { + $this->blockedByExtId = $vals['blockedByExtId']; + } + if (isset($vals['blockedByIntId'])) { + $this->blockedByIntId = $vals['blockedByIntId']; + } + if (isset($vals['lockIdInternal'])) { + $this->lockIdInternal = $vals['lockIdInternal']; + } } } @@ -11707,6 +12017,41 @@ class ShowLocksResponseElement { $xfer += $input->skip($ftype); } break; + case 12: + if ($ftype == TType::I32) { + $xfer += $input->readI32($this->heartbeatCount); + } else { + $xfer += $input->skip($ftype); + } + break; + case 13: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->agentInfo); + } else { + $xfer += $input->skip($ftype); + } + break; + case 14: + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->blockedByExtId); + } else { + $xfer += $input->skip($ftype); + } + break; + case 15: + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->blockedByIntId); + } else { + $xfer += $input->skip($ftype); + } + break; + case 16: + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->lockIdInternal); + } else { + $xfer += $input->skip($ftype); + } + break; default: $xfer += $input->skip($ftype); break; @@ -11775,6 +12120,31 @@ class ShowLocksResponseElement { $xfer += $output->writeString($this->hostname); $xfer += $output->writeFieldEnd(); } + if ($this->heartbeatCount !== null) { + $xfer += $output->writeFieldBegin('heartbeatCount', TType::I32, 12); + $xfer += $output->writeI32($this->heartbeatCount); + $xfer += $output->writeFieldEnd(); + } + if ($this->agentInfo !== null) { + $xfer += $output->writeFieldBegin('agentInfo', TType::STRING, 13); + $xfer += $output->writeString($this->agentInfo); + $xfer += $output->writeFieldEnd(); + } + if ($this->blockedByExtId !== null) { + $xfer += $output->writeFieldBegin('blockedByExtId', TType::I64, 14); + $xfer += $output->writeI64($this->blockedByExtId); + $xfer += $output->writeFieldEnd(); + } + if ($this->blockedByIntId !== null) { + $xfer += $output->writeFieldBegin('blockedByIntId', TType::I64, 15); + $xfer += $output->writeI64($this->blockedByIntId); + $xfer += $output->writeFieldEnd(); + } + if ($this->lockIdInternal !== null) { + $xfer += $output->writeFieldBegin('lockIdInternal', TType::I64, 16); + $xfer += $output->writeI64($this->lockIdInternal); + $xfer += $output->writeFieldEnd(); + } $xfer += $output->writeFieldStop(); $xfer += $output->writeStructEnd(); return $xfer; @@ -12499,6 +12869,22 @@ class ShowCompactResponseElement { * @var string */ public $runAs = null; + /** + * @var int + */ + public $hightestTxnId = null; + /** + * @var string + */ + public $metaInfo = null; + /** + * @var int + */ + public $endTime = null; + /** + * @var string + */ + public $hadoopJobId = "None"; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { @@ -12535,6 +12921,22 @@ class ShowCompactResponseElement { 'var' => 'runAs', 'type' => TType::STRING, ), + 9 => array( + 'var' => 'hightestTxnId', + 'type' => TType::I64, + ), + 10 => array( + 'var' => 'metaInfo', + 'type' => TType::STRING, + ), + 11 => array( + 'var' => 'endTime', + 'type' => TType::I64, + ), + 12 => array( + 'var' => 'hadoopJobId', + 'type' => TType::STRING, + ), ); } if (is_array($vals)) { @@ -12562,6 +12964,18 @@ class ShowCompactResponseElement { if (isset($vals['runAs'])) { $this->runAs = $vals['runAs']; } + if (isset($vals['hightestTxnId'])) { + $this->hightestTxnId = $vals['hightestTxnId']; + } + if (isset($vals['metaInfo'])) { + $this->metaInfo = $vals['metaInfo']; + } + if (isset($vals['endTime'])) { + $this->endTime = $vals['endTime']; + } + if (isset($vals['hadoopJobId'])) { + $this->hadoopJobId = $vals['hadoopJobId']; + } } } @@ -12640,6 +13054,34 @@ class ShowCompactResponseElement { $xfer += $input->skip($ftype); } break; + case 9: + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->hightestTxnId); + } else { + $xfer += $input->skip($ftype); + } + break; + case 10: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->metaInfo); + } else { + $xfer += $input->skip($ftype); + } + break; + case 11: + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->endTime); + } else { + $xfer += $input->skip($ftype); + } + break; + case 12: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->hadoopJobId); + } else { + $xfer += $input->skip($ftype); + } + break; default: $xfer += $input->skip($ftype); break; @@ -12693,6 +13135,26 @@ class ShowCompactResponseElement { $xfer += $output->writeString($this->runAs); $xfer += $output->writeFieldEnd(); } + if ($this->hightestTxnId !== null) { + $xfer += $output->writeFieldBegin('hightestTxnId', TType::I64, 9); + $xfer += $output->writeI64($this->hightestTxnId); + $xfer += $output->writeFieldEnd(); + } + if ($this->metaInfo !== null) { + $xfer += $output->writeFieldBegin('metaInfo', TType::STRING, 10); + $xfer += $output->writeString($this->metaInfo); + $xfer += $output->writeFieldEnd(); + } + if ($this->endTime !== null) { + $xfer += $output->writeFieldBegin('endTime', TType::I64, 11); + $xfer += $output->writeI64($this->endTime); + $xfer += $output->writeFieldEnd(); + } + if ($this->hadoopJobId !== null) { + $xfer += $output->writeFieldBegin('hadoopJobId', TType::STRING, 12); + $xfer += $output->writeString($this->hadoopJobId); + $xfer += $output->writeFieldEnd(); + } $xfer += $output->writeFieldStop(); $xfer += $output->writeStructEnd(); return $xfer; diff --git metastore/src/gen/thrift/gen-py/hive_metastore/ttypes.py metastore/src/gen/thrift/gen-py/hive_metastore/ttypes.py index fbeab5e..409c247 100644 --- metastore/src/gen/thrift/gen-py/hive_metastore/ttypes.py +++ metastore/src/gen/thrift/gen-py/hive_metastore/ttypes.py @@ -6917,6 +6917,9 @@ class TxnInfo: - state - user - hostname + - agentInfo + - heartbeatCount + - metaInfo """ thrift_spec = ( @@ -6925,13 +6928,19 @@ class TxnInfo: (2, TType.I32, 'state', None, None, ), # 2 (3, TType.STRING, 'user', None, None, ), # 3 (4, TType.STRING, 'hostname', None, None, ), # 4 + (5, TType.STRING, 'agentInfo', None, "Unknown", ), # 5 + (6, TType.I32, 'heartbeatCount', None, 0, ), # 6 + (7, TType.STRING, 'metaInfo', None, None, ), # 7 ) - def __init__(self, id=None, state=None, user=None, hostname=None,): + def __init__(self, id=None, state=None, user=None, hostname=None, agentInfo=thrift_spec[5][4], heartbeatCount=thrift_spec[6][4], metaInfo=None,): self.id = id self.state = state self.user = user self.hostname = hostname + self.agentInfo = agentInfo + self.heartbeatCount = heartbeatCount + self.metaInfo = metaInfo def read(self, iprot): if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None: @@ -6962,6 +6971,21 @@ def read(self, iprot): self.hostname = iprot.readString() else: iprot.skip(ftype) + elif fid == 5: + if ftype == TType.STRING: + self.agentInfo = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 6: + if ftype == TType.I32: + self.heartbeatCount = iprot.readI32() + else: + iprot.skip(ftype) + elif fid == 7: + if ftype == TType.STRING: + self.metaInfo = iprot.readString() + else: + iprot.skip(ftype) else: iprot.skip(ftype) iprot.readFieldEnd() @@ -6988,6 +7012,18 @@ def write(self, oprot): oprot.writeFieldBegin('hostname', TType.STRING, 4) oprot.writeString(self.hostname) oprot.writeFieldEnd() + if self.agentInfo is not None: + oprot.writeFieldBegin('agentInfo', TType.STRING, 5) + oprot.writeString(self.agentInfo) + oprot.writeFieldEnd() + if self.heartbeatCount is not None: + oprot.writeFieldBegin('heartbeatCount', TType.I32, 6) + oprot.writeI32(self.heartbeatCount) + oprot.writeFieldEnd() + if self.metaInfo is not None: + oprot.writeFieldBegin('metaInfo', TType.STRING, 7) + oprot.writeString(self.metaInfo) + oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() @@ -7009,6 +7045,9 @@ def __hash__(self): value = (value * 31) ^ hash(self.state) value = (value * 31) ^ hash(self.user) value = (value * 31) ^ hash(self.hostname) + value = (value * 31) ^ hash(self.agentInfo) + value = (value * 31) ^ hash(self.heartbeatCount) + value = (value * 31) ^ hash(self.metaInfo) return value def __repr__(self): @@ -7209,6 +7248,7 @@ class OpenTxnRequest: - num_txns - user - hostname + - agentInfo """ thrift_spec = ( @@ -7216,12 +7256,14 @@ class OpenTxnRequest: (1, TType.I32, 'num_txns', None, None, ), # 1 (2, TType.STRING, 'user', None, None, ), # 2 (3, TType.STRING, 'hostname', None, None, ), # 3 + (4, TType.STRING, 'agentInfo', None, "Unknown", ), # 4 ) - def __init__(self, num_txns=None, user=None, hostname=None,): + def __init__(self, num_txns=None, user=None, hostname=None, agentInfo=thrift_spec[4][4],): self.num_txns = num_txns self.user = user self.hostname = hostname + self.agentInfo = agentInfo def read(self, iprot): if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None: @@ -7247,6 +7289,11 @@ def read(self, iprot): self.hostname = iprot.readString() else: iprot.skip(ftype) + elif fid == 4: + if ftype == TType.STRING: + self.agentInfo = iprot.readString() + else: + iprot.skip(ftype) else: iprot.skip(ftype) iprot.readFieldEnd() @@ -7269,6 +7316,10 @@ def write(self, oprot): oprot.writeFieldBegin('hostname', TType.STRING, 3) oprot.writeString(self.hostname) oprot.writeFieldEnd() + if self.agentInfo is not None: + oprot.writeFieldBegin('agentInfo', TType.STRING, 4) + oprot.writeString(self.agentInfo) + oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() @@ -7287,6 +7338,7 @@ def __hash__(self): value = (value * 31) ^ hash(self.num_txns) value = (value * 31) ^ hash(self.user) value = (value * 31) ^ hash(self.hostname) + value = (value * 31) ^ hash(self.agentInfo) return value def __repr__(self): @@ -7639,6 +7691,7 @@ class LockRequest: - txnid - user - hostname + - agentInfo """ thrift_spec = ( @@ -7647,13 +7700,15 @@ class LockRequest: (2, TType.I64, 'txnid', None, None, ), # 2 (3, TType.STRING, 'user', None, None, ), # 3 (4, TType.STRING, 'hostname', None, None, ), # 4 + (5, TType.STRING, 'agentInfo', None, "Unknown", ), # 5 ) - def __init__(self, component=None, txnid=None, user=None, hostname=None,): + def __init__(self, component=None, txnid=None, user=None, hostname=None, agentInfo=thrift_spec[5][4],): self.component = component self.txnid = txnid self.user = user self.hostname = hostname + self.agentInfo = agentInfo def read(self, iprot): if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None: @@ -7690,6 +7745,11 @@ def read(self, iprot): self.hostname = iprot.readString() else: iprot.skip(ftype) + elif fid == 5: + if ftype == TType.STRING: + self.agentInfo = iprot.readString() + else: + iprot.skip(ftype) else: iprot.skip(ftype) iprot.readFieldEnd() @@ -7719,6 +7779,10 @@ def write(self, oprot): oprot.writeFieldBegin('hostname', TType.STRING, 4) oprot.writeString(self.hostname) oprot.writeFieldEnd() + if self.agentInfo is not None: + oprot.writeFieldBegin('agentInfo', TType.STRING, 5) + oprot.writeString(self.agentInfo) + oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() @@ -7738,6 +7802,7 @@ def __hash__(self): value = (value * 31) ^ hash(self.txnid) value = (value * 31) ^ hash(self.user) value = (value * 31) ^ hash(self.hostname) + value = (value * 31) ^ hash(self.agentInfo) return value def __repr__(self): @@ -7837,15 +7902,21 @@ class CheckLockRequest: """ Attributes: - lockid + - txnid + - elapsed_ms """ thrift_spec = ( None, # 0 (1, TType.I64, 'lockid', None, None, ), # 1 + (2, TType.I64, 'txnid', None, None, ), # 2 + (3, TType.I64, 'elapsed_ms', None, None, ), # 3 ) - def __init__(self, lockid=None,): + def __init__(self, lockid=None, txnid=None, elapsed_ms=None,): self.lockid = lockid + self.txnid = txnid + self.elapsed_ms = elapsed_ms def read(self, iprot): if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None: @@ -7861,6 +7932,16 @@ def read(self, iprot): self.lockid = iprot.readI64() else: iprot.skip(ftype) + elif fid == 2: + if ftype == TType.I64: + self.txnid = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 3: + if ftype == TType.I64: + self.elapsed_ms = iprot.readI64() + else: + iprot.skip(ftype) else: iprot.skip(ftype) iprot.readFieldEnd() @@ -7875,6 +7956,14 @@ def write(self, oprot): oprot.writeFieldBegin('lockid', TType.I64, 1) oprot.writeI64(self.lockid) oprot.writeFieldEnd() + if self.txnid is not None: + oprot.writeFieldBegin('txnid', TType.I64, 2) + oprot.writeI64(self.txnid) + oprot.writeFieldEnd() + if self.elapsed_ms is not None: + oprot.writeFieldBegin('elapsed_ms', TType.I64, 3) + oprot.writeI64(self.elapsed_ms) + oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() @@ -7887,6 +7976,8 @@ def validate(self): def __hash__(self): value = 17 value = (value * 31) ^ hash(self.lockid) + value = (value * 31) ^ hash(self.txnid) + value = (value * 31) ^ hash(self.elapsed_ms) return value def __repr__(self): @@ -7968,10 +8059,28 @@ def __ne__(self, other): return not (self == other) class ShowLocksRequest: + """ + Attributes: + - dbname + - tablename + - partname + - isExtended + """ thrift_spec = ( + None, # 0 + (1, TType.STRING, 'dbname', None, None, ), # 1 + (2, TType.STRING, 'tablename', None, None, ), # 2 + (3, TType.STRING, 'partname', None, None, ), # 3 + (4, TType.BOOL, 'isExtended', None, False, ), # 4 ) + def __init__(self, dbname=None, tablename=None, partname=None, isExtended=thrift_spec[4][4],): + self.dbname = dbname + self.tablename = tablename + self.partname = partname + self.isExtended = isExtended + def read(self, iprot): if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None: fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec)) @@ -7981,6 +8090,26 @@ def read(self, iprot): (fname, ftype, fid) = iprot.readFieldBegin() if ftype == TType.STOP: break + if fid == 1: + if ftype == TType.STRING: + self.dbname = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 2: + if ftype == TType.STRING: + self.tablename = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 3: + if ftype == TType.STRING: + self.partname = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 4: + if ftype == TType.BOOL: + self.isExtended = iprot.readBool() + else: + iprot.skip(ftype) else: iprot.skip(ftype) iprot.readFieldEnd() @@ -7991,6 +8120,22 @@ def write(self, oprot): oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return oprot.writeStructBegin('ShowLocksRequest') + if self.dbname is not None: + oprot.writeFieldBegin('dbname', TType.STRING, 1) + oprot.writeString(self.dbname) + oprot.writeFieldEnd() + if self.tablename is not None: + oprot.writeFieldBegin('tablename', TType.STRING, 2) + oprot.writeString(self.tablename) + oprot.writeFieldEnd() + if self.partname is not None: + oprot.writeFieldBegin('partname', TType.STRING, 3) + oprot.writeString(self.partname) + oprot.writeFieldEnd() + if self.isExtended is not None: + oprot.writeFieldBegin('isExtended', TType.BOOL, 4) + oprot.writeBool(self.isExtended) + oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() @@ -8000,6 +8145,10 @@ def validate(self): def __hash__(self): value = 17 + value = (value * 31) ^ hash(self.dbname) + value = (value * 31) ^ hash(self.tablename) + value = (value * 31) ^ hash(self.partname) + value = (value * 31) ^ hash(self.isExtended) return value def __repr__(self): @@ -8027,6 +8176,11 @@ class ShowLocksResponseElement: - acquiredat - user - hostname + - heartbeatCount + - agentInfo + - blockedByExtId + - blockedByIntId + - lockIdInternal """ thrift_spec = ( @@ -8042,9 +8196,14 @@ class ShowLocksResponseElement: (9, TType.I64, 'acquiredat', None, None, ), # 9 (10, TType.STRING, 'user', None, None, ), # 10 (11, TType.STRING, 'hostname', None, None, ), # 11 + (12, TType.I32, 'heartbeatCount', None, 0, ), # 12 + (13, TType.STRING, 'agentInfo', None, None, ), # 13 + (14, TType.I64, 'blockedByExtId', None, None, ), # 14 + (15, TType.I64, 'blockedByIntId', None, None, ), # 15 + (16, TType.I64, 'lockIdInternal', None, None, ), # 16 ) - def __init__(self, lockid=None, dbname=None, tablename=None, partname=None, state=None, type=None, txnid=None, lastheartbeat=None, acquiredat=None, user=None, hostname=None,): + def __init__(self, lockid=None, dbname=None, tablename=None, partname=None, state=None, type=None, txnid=None, lastheartbeat=None, acquiredat=None, user=None, hostname=None, heartbeatCount=thrift_spec[12][4], agentInfo=None, blockedByExtId=None, blockedByIntId=None, lockIdInternal=None,): self.lockid = lockid self.dbname = dbname self.tablename = tablename @@ -8056,6 +8215,11 @@ def __init__(self, lockid=None, dbname=None, tablename=None, partname=None, stat self.acquiredat = acquiredat self.user = user self.hostname = hostname + self.heartbeatCount = heartbeatCount + self.agentInfo = agentInfo + self.blockedByExtId = blockedByExtId + self.blockedByIntId = blockedByIntId + self.lockIdInternal = lockIdInternal def read(self, iprot): if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None: @@ -8121,6 +8285,31 @@ def read(self, iprot): self.hostname = iprot.readString() else: iprot.skip(ftype) + elif fid == 12: + if ftype == TType.I32: + self.heartbeatCount = iprot.readI32() + else: + iprot.skip(ftype) + elif fid == 13: + if ftype == TType.STRING: + self.agentInfo = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 14: + if ftype == TType.I64: + self.blockedByExtId = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 15: + if ftype == TType.I64: + self.blockedByIntId = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 16: + if ftype == TType.I64: + self.lockIdInternal = iprot.readI64() + else: + iprot.skip(ftype) else: iprot.skip(ftype) iprot.readFieldEnd() @@ -8175,6 +8364,26 @@ def write(self, oprot): oprot.writeFieldBegin('hostname', TType.STRING, 11) oprot.writeString(self.hostname) oprot.writeFieldEnd() + if self.heartbeatCount is not None: + oprot.writeFieldBegin('heartbeatCount', TType.I32, 12) + oprot.writeI32(self.heartbeatCount) + oprot.writeFieldEnd() + if self.agentInfo is not None: + oprot.writeFieldBegin('agentInfo', TType.STRING, 13) + oprot.writeString(self.agentInfo) + oprot.writeFieldEnd() + if self.blockedByExtId is not None: + oprot.writeFieldBegin('blockedByExtId', TType.I64, 14) + oprot.writeI64(self.blockedByExtId) + oprot.writeFieldEnd() + if self.blockedByIntId is not None: + oprot.writeFieldBegin('blockedByIntId', TType.I64, 15) + oprot.writeI64(self.blockedByIntId) + oprot.writeFieldEnd() + if self.lockIdInternal is not None: + oprot.writeFieldBegin('lockIdInternal', TType.I64, 16) + oprot.writeI64(self.lockIdInternal) + oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() @@ -8209,6 +8418,11 @@ def __hash__(self): value = (value * 31) ^ hash(self.acquiredat) value = (value * 31) ^ hash(self.user) value = (value * 31) ^ hash(self.hostname) + value = (value * 31) ^ hash(self.heartbeatCount) + value = (value * 31) ^ hash(self.agentInfo) + value = (value * 31) ^ hash(self.blockedByExtId) + value = (value * 31) ^ hash(self.blockedByIntId) + value = (value * 31) ^ hash(self.lockIdInternal) return value def __repr__(self): @@ -8734,6 +8948,10 @@ class ShowCompactResponseElement: - workerid - start - runAs + - hightestTxnId + - metaInfo + - endTime + - hadoopJobId """ thrift_spec = ( @@ -8746,9 +8964,13 @@ class ShowCompactResponseElement: (6, TType.STRING, 'workerid', None, None, ), # 6 (7, TType.I64, 'start', None, None, ), # 7 (8, TType.STRING, 'runAs', None, None, ), # 8 + (9, TType.I64, 'hightestTxnId', None, None, ), # 9 + (10, TType.STRING, 'metaInfo', None, None, ), # 10 + (11, TType.I64, 'endTime', None, None, ), # 11 + (12, TType.STRING, 'hadoopJobId', None, "None", ), # 12 ) - def __init__(self, dbname=None, tablename=None, partitionname=None, type=None, state=None, workerid=None, start=None, runAs=None,): + def __init__(self, dbname=None, tablename=None, partitionname=None, type=None, state=None, workerid=None, start=None, runAs=None, hightestTxnId=None, metaInfo=None, endTime=None, hadoopJobId=thrift_spec[12][4],): self.dbname = dbname self.tablename = tablename self.partitionname = partitionname @@ -8757,6 +8979,10 @@ def __init__(self, dbname=None, tablename=None, partitionname=None, type=None, s self.workerid = workerid self.start = start self.runAs = runAs + self.hightestTxnId = hightestTxnId + self.metaInfo = metaInfo + self.endTime = endTime + self.hadoopJobId = hadoopJobId def read(self, iprot): if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None: @@ -8807,6 +9033,26 @@ def read(self, iprot): self.runAs = iprot.readString() else: iprot.skip(ftype) + elif fid == 9: + if ftype == TType.I64: + self.hightestTxnId = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 10: + if ftype == TType.STRING: + self.metaInfo = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 11: + if ftype == TType.I64: + self.endTime = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 12: + if ftype == TType.STRING: + self.hadoopJobId = iprot.readString() + else: + iprot.skip(ftype) else: iprot.skip(ftype) iprot.readFieldEnd() @@ -8849,6 +9095,22 @@ def write(self, oprot): oprot.writeFieldBegin('runAs', TType.STRING, 8) oprot.writeString(self.runAs) oprot.writeFieldEnd() + if self.hightestTxnId is not None: + oprot.writeFieldBegin('hightestTxnId', TType.I64, 9) + oprot.writeI64(self.hightestTxnId) + oprot.writeFieldEnd() + if self.metaInfo is not None: + oprot.writeFieldBegin('metaInfo', TType.STRING, 10) + oprot.writeString(self.metaInfo) + oprot.writeFieldEnd() + if self.endTime is not None: + oprot.writeFieldBegin('endTime', TType.I64, 11) + oprot.writeI64(self.endTime) + oprot.writeFieldEnd() + if self.hadoopJobId is not None: + oprot.writeFieldBegin('hadoopJobId', TType.STRING, 12) + oprot.writeString(self.hadoopJobId) + oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() @@ -8874,6 +9136,10 @@ def __hash__(self): value = (value * 31) ^ hash(self.workerid) value = (value * 31) ^ hash(self.start) value = (value * 31) ^ hash(self.runAs) + value = (value * 31) ^ hash(self.hightestTxnId) + value = (value * 31) ^ hash(self.metaInfo) + value = (value * 31) ^ hash(self.endTime) + value = (value * 31) ^ hash(self.hadoopJobId) return value def __repr__(self): diff --git metastore/src/gen/thrift/gen-rb/hive_metastore_types.rb metastore/src/gen/thrift/gen-rb/hive_metastore_types.rb index a7b1e86..a473611 100644 --- metastore/src/gen/thrift/gen-rb/hive_metastore_types.rb +++ metastore/src/gen/thrift/gen-rb/hive_metastore_types.rb @@ -1558,12 +1558,18 @@ class TxnInfo STATE = 2 USER = 3 HOSTNAME = 4 + AGENTINFO = 5 + HEARTBEATCOUNT = 6 + METAINFO = 7 FIELDS = { ID => {:type => ::Thrift::Types::I64, :name => 'id'}, STATE => {:type => ::Thrift::Types::I32, :name => 'state', :enum_class => ::TxnState}, USER => {:type => ::Thrift::Types::STRING, :name => 'user'}, - HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'} + HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'}, + AGENTINFO => {:type => ::Thrift::Types::STRING, :name => 'agentInfo', :default => %q"Unknown", :optional => true}, + HEARTBEATCOUNT => {:type => ::Thrift::Types::I32, :name => 'heartbeatCount', :default => 0, :optional => true}, + METAINFO => {:type => ::Thrift::Types::STRING, :name => 'metaInfo', :optional => true} } def struct_fields; FIELDS; end @@ -1626,11 +1632,13 @@ class OpenTxnRequest NUM_TXNS = 1 USER = 2 HOSTNAME = 3 + AGENTINFO = 4 FIELDS = { NUM_TXNS => {:type => ::Thrift::Types::I32, :name => 'num_txns'}, USER => {:type => ::Thrift::Types::STRING, :name => 'user'}, - HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'} + HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'}, + AGENTINFO => {:type => ::Thrift::Types::STRING, :name => 'agentInfo', :default => %q"Unknown", :optional => true} } def struct_fields; FIELDS; end @@ -1734,12 +1742,14 @@ class LockRequest TXNID = 2 USER = 3 HOSTNAME = 4 + AGENTINFO = 5 FIELDS = { COMPONENT => {:type => ::Thrift::Types::LIST, :name => 'component', :element => {:type => ::Thrift::Types::STRUCT, :class => ::LockComponent}}, TXNID => {:type => ::Thrift::Types::I64, :name => 'txnid', :optional => true}, USER => {:type => ::Thrift::Types::STRING, :name => 'user'}, - HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'} + HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'}, + AGENTINFO => {:type => ::Thrift::Types::STRING, :name => 'agentInfo', :default => %q"Unknown", :optional => true} } def struct_fields; FIELDS; end @@ -1779,9 +1789,13 @@ end class CheckLockRequest include ::Thrift::Struct, ::Thrift::Struct_Union LOCKID = 1 + TXNID = 2 + ELAPSED_MS = 3 FIELDS = { - LOCKID => {:type => ::Thrift::Types::I64, :name => 'lockid'} + LOCKID => {:type => ::Thrift::Types::I64, :name => 'lockid'}, + TXNID => {:type => ::Thrift::Types::I64, :name => 'txnid', :optional => true}, + ELAPSED_MS => {:type => ::Thrift::Types::I64, :name => 'elapsed_ms', :optional => true} } def struct_fields; FIELDS; end @@ -1812,9 +1826,16 @@ end class ShowLocksRequest include ::Thrift::Struct, ::Thrift::Struct_Union + DBNAME = 1 + TABLENAME = 2 + PARTNAME = 3 + ISEXTENDED = 4 FIELDS = { - + DBNAME => {:type => ::Thrift::Types::STRING, :name => 'dbname', :optional => true}, + TABLENAME => {:type => ::Thrift::Types::STRING, :name => 'tablename', :optional => true}, + PARTNAME => {:type => ::Thrift::Types::STRING, :name => 'partname', :optional => true}, + ISEXTENDED => {:type => ::Thrift::Types::BOOL, :name => 'isExtended', :default => false, :optional => true} } def struct_fields; FIELDS; end @@ -1838,6 +1859,11 @@ class ShowLocksResponseElement ACQUIREDAT = 9 USER = 10 HOSTNAME = 11 + HEARTBEATCOUNT = 12 + AGENTINFO = 13 + BLOCKEDBYEXTID = 14 + BLOCKEDBYINTID = 15 + LOCKIDINTERNAL = 16 FIELDS = { LOCKID => {:type => ::Thrift::Types::I64, :name => 'lockid'}, @@ -1850,7 +1876,12 @@ class ShowLocksResponseElement LASTHEARTBEAT => {:type => ::Thrift::Types::I64, :name => 'lastheartbeat'}, ACQUIREDAT => {:type => ::Thrift::Types::I64, :name => 'acquiredat', :optional => true}, USER => {:type => ::Thrift::Types::STRING, :name => 'user'}, - HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'} + HOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'hostname'}, + HEARTBEATCOUNT => {:type => ::Thrift::Types::I32, :name => 'heartbeatCount', :default => 0, :optional => true}, + AGENTINFO => {:type => ::Thrift::Types::STRING, :name => 'agentInfo', :optional => true}, + BLOCKEDBYEXTID => {:type => ::Thrift::Types::I64, :name => 'blockedByExtId', :optional => true}, + BLOCKEDBYINTID => {:type => ::Thrift::Types::I64, :name => 'blockedByIntId', :optional => true}, + LOCKIDINTERNAL => {:type => ::Thrift::Types::I64, :name => 'lockIdInternal', :optional => true} } def struct_fields; FIELDS; end @@ -2003,6 +2034,10 @@ class ShowCompactResponseElement WORKERID = 6 START = 7 RUNAS = 8 + HIGHTESTTXNID = 9 + METAINFO = 10 + ENDTIME = 11 + HADOOPJOBID = 12 FIELDS = { DBNAME => {:type => ::Thrift::Types::STRING, :name => 'dbname'}, @@ -2012,7 +2047,11 @@ class ShowCompactResponseElement STATE => {:type => ::Thrift::Types::STRING, :name => 'state'}, WORKERID => {:type => ::Thrift::Types::STRING, :name => 'workerid', :optional => true}, START => {:type => ::Thrift::Types::I64, :name => 'start', :optional => true}, - RUNAS => {:type => ::Thrift::Types::STRING, :name => 'runAs', :optional => true} + RUNAS => {:type => ::Thrift::Types::STRING, :name => 'runAs', :optional => true}, + HIGHTESTTXNID => {:type => ::Thrift::Types::I64, :name => 'hightestTxnId', :optional => true}, + METAINFO => {:type => ::Thrift::Types::STRING, :name => 'metaInfo', :optional => true}, + ENDTIME => {:type => ::Thrift::Types::I64, :name => 'endTime', :optional => true}, + HADOOPJOBID => {:type => ::Thrift::Types::STRING, :name => 'hadoopJobId', :default => %q"None", :optional => true} } def struct_fields; FIELDS; end