diff --git beeline/pom.xml beeline/pom.xml
index 4e5ad0795c..7efd0c9f0f 100644
--- beeline/pom.xml
+++ beeline/pom.xml
@@ -104,7 +104,7 @@
org.apache.hive
hive-service
${project.version}
- test
+
diff --git conf/hive-site.xml conf/hive-site.xml
index dab494e4bd..1b69994088 100644
--- conf/hive-site.xml
+++ conf/hive-site.xml
@@ -18,5 +18,171 @@
-->
+
+ hive.metastore.try.direct.sql
+ true
+
+
+
+ hive.metastore.try.direct.sql.ddl
+ true
+
+
+
+
+
+ hive.jar.path
+ /Users/zchovan/dev/hive/ql/target/hive-exec-2.1.1-cdh6.3.x-SNAPSHOT.jar
+ The location of hive_cli.jar that is used when submitting jobs in a separate jvm.
+
+
+
+ hive.hadoop.classpath
+ /Users/zchovan/dev/hive/ql/target/hive-exec-2.1.1-cdh6.3.x-SNAPSHOT.jar
+
+
+
+ hive.metastore.local
+ false
+
+
+
+ hive.metastore.uris
+ thrift://localhost:9083
+
+
+
+ hive.metastore.warehouse.dir
+ pfile:///Users/zchovan/data/cdh/hive/warehouse
+
+
+
+ fs.pfile.impl
+ org.apache.hadoop.fs.ProxyLocalFileSystem
+ A proxy for local file system used for cross file system testing
+
+
+
+ hive.metastore.schema.verification
+ false
+
+
+
+ datanucleus.autoCreateTables
+ false
+
+
+
+ datanucleus.schema.autoCreateAll
+ false
+
+
+
+ hive.exec.scratchdir
+ /tmp/hive-${user.name}
+
+
+
+ javax.jdo.option.ConnectionURL
+ jdbc:mysql://localhost:3306/hive?useSSL=false
+ JDBC connect string for a JDBC metastore
+
+
+
+ javax.jdo.option.ConnectionDriverName
+ com.mysql.jdbc.Driver
+
+
+
+ metastore.storage.schema.reader.impl
+ org.apache.hadoop.hive.metastore.SerDeStorageSchemaReader
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ javax.jdo.option.ConnectionURL
+ jdbc:mysql://localhost:32787/hive?useSSL=false
+ JDBC connect string for a JDBC metastore
+
+
+
+ javax.jdo.option.ConnectionDriverName
+ com.mysql.jdbc.Driver
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ javax.jdo.option.ConnectionUserName
+ hive
+
+
+
+ javax.jdo.option.ConnectionPassword
+ hive
+
+
+
+ hive.server2.enable.doAs
+ false
+
+
+
+ hive.server2.enable.impersonation
+ false
+
+
+
+ dfs.namenode.acls.enabled
+ false
+
+
+
+ hive.metastore.event.db.notification.api.auth
+ false
+
+
+
+ hive.aux.jars.path
+ /Users/zchovan/dev/hive/jdbc-handler/target/
+
+
diff --git data/conf/llap/hive-site.xml data/conf/llap/hive-site.xml
index 0c5d030146..f92b7da681 100644
--- data/conf/llap/hive-site.xml
+++ data/conf/llap/hive-site.xml
@@ -373,4 +373,9 @@
org.apache.hadoop.hive.ql.hooks.ScheduledQueryCreationRegistryHook
+
+ hive.aux.jars.path
+ /Users/zchovan/dev/hive/jdbc-handler/target/
+
+
diff --git metastore/scripts/upgrade/hive/upgrade-3.1.0-to-4.0.0.hive.sql metastore/scripts/upgrade/hive/upgrade-3.1.0-to-4.0.0.hive.sql
index 6cb12f9123..6d0290af0a 100644
--- metastore/scripts/upgrade/hive/upgrade-3.1.0-to-4.0.0.hive.sql
+++ metastore/scripts/upgrade/hive/upgrade-3.1.0-to-4.0.0.hive.sql
@@ -1,10 +1,10 @@
-SELECT 'Upgrading MetaStore schema from 3.1.0 to 4.0.0';
+select 'Upgrading MetaStore schema from 3.1.0 to 4.0.0';
USE SYS;
-- HIVE-20793
-DROP TABLE IF EXISTS `WM_RESOURCEPLANS`;
-CREATE EXTERNAL TABLE IF NOT EXISTS `WM_RESOURCEPLANS` (
+drop table IF EXISTS `WM_RESOURCEPLANS`;
+create EXTERNAL TABLE IF NOT EXISTS `WM_RESOURCEPLANS` (
`NAME` string,
`NS` string,
`STATUS` string,
@@ -25,8 +25,8 @@ FROM
\"WM_RESOURCEPLAN\" LEFT OUTER JOIN \"WM_POOL\" ON \"WM_RESOURCEPLAN\".\"DEFAULT_POOL_ID\" = \"WM_POOL\".\"POOL_ID\""
);
-DROP TABLE IF EXISTS `WM_TRIGGERS`;
-CREATE EXTERNAL TABLE IF NOT EXISTS `WM_TRIGGERS` (
+drop table IF EXISTS `WM_TRIGGERS`;
+create EXTERNAL TABLE IF NOT EXISTS `WM_TRIGGERS` (
`RP_NAME` string,
`NS` string,
`NAME` string,
@@ -51,8 +51,8 @@ ON
t.\"RP_ID\" = r.\"RP_ID\""
);
-DROP TABLE IF EXISTS `WM_POOLS`;
-CREATE EXTERNAL TABLE IF NOT EXISTS `WM_POOLS` (
+drop table IF EXISTS `WM_POOLS`;
+create EXTERNAL TABLE IF NOT EXISTS `WM_POOLS` (
`RP_NAME` string,
`NS` string,
`PATH` string,
@@ -79,8 +79,8 @@ ON
\"WM_POOL\".\"RP_ID\" = \"WM_RESOURCEPLAN\".\"RP_ID\""
);
-DROP TABLE IF EXISTS `WM_POOLS_TO_TRIGGERS`;
-CREATE EXTERNAL TABLE IF NOT EXISTS `WM_POOLS_TO_TRIGGERS` (
+drop table IF EXISTS `WM_POOLS_TO_TRIGGERS`;
+create EXTERNAL TABLE IF NOT EXISTS `WM_POOLS_TO_TRIGGERS` (
`RP_NAME` string,
`NS` string,
`POOL_PATH` string,
@@ -111,8 +111,8 @@ WHERE CAST(\"WM_TRIGGER\".\"IS_IN_UNMANAGED\" AS CHAR) IN ('1', 't')
"
);
-DROP TABLE IF EXISTS `WM_MAPPINGS`;
-CREATE EXTERNAL TABLE IF NOT EXISTS `WM_MAPPINGS` (
+drop table IF EXISTS `WM_MAPPINGS`;
+create EXTERNAL TABLE IF NOT EXISTS `WM_MAPPINGS` (
`RP_NAME` string,
`NS` string,
`ENTITY_TYPE` string,
@@ -138,10 +138,177 @@ LEFT OUTER JOIN \"WM_POOL\" ON \"WM_POOL\".\"POOL_ID\" = \"WM_MAPPING\".\"POOL_I
);
+create EXTERNAL TABLE IF NOT EXISTS `TXNS` (
+ `TXN_ID` bigint,
+ `TXN_STATE` string,
+ `TXN_STARTED` bigint,
+ `TXN_LAST_HEARTBEAT` bigint,
+ `TXN_USER` string,
+ `TXN_HOST` string,
+ `TXN_AGENT_INFO` string,
+ `TXN_META_INFO` string,
+ `TXN_HEARTBEAT_COUNT` int,
+ `TXN_TYPE` int
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+"hive.sql.database.type" = "METASTORE",
+"hive.sql.query" =
+"SELECT
+ \"TXN_ID\",
+ \"TXN_STATE\",
+ \"TXN_STARTED\",
+ \"TXN_LAST_HEARTBEAT\",
+ \"TXN_USER\",
+ \"TXN_HOST\",
+ \"TXN_AGENT_INFO\",
+ \"TXN_META_INFO\",
+ \"TXN_HEARTBEAT_COUNT\",
+ \"TXN_TYPE\"
+FROM \"TXNS\""
+);
+
+
+CREATE EXTERNAL TABLE IF NOT EXISTS `TXN_COMPONENTS` (
+ `TC_TXNID` bigint,
+ `TC_DATABASE` string,
+ `TC_TABLE` string,
+ `TC_PARTITION` string,
+ `TC_OPERATION_TYPE` string,
+ `TC_WRITEID` bigint
+)
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+"hive.sql.database.type" = "METASTORE",
+"hive.sql.query" =
+"SELECT
+ \"TC_TXNID\",
+ \"TC_DATABASE\",
+ \"TC_TABLE\",
+ \"TC_PARTITION\",
+ \"TC_OPERATION_TYPE\",
+ \"TC_WRITEID\"
+FROM \"TXN_COMPONENTS\""
+);
+
+
+CREATE OR REPLACE VIEW `TRANSACTIONS` (
+ `TXN_ID`,
+ `STATE`,
+ `STARTED`,
+ `LAST_HEARTBEAT`,
+ `USER`,
+ `HOST`,
+ `AGENT_INFO`,
+ `META_INFO`,
+ `HEARTBEAT_COUNT`,
+ `TYPE`,
+ `TC_DATABASE`,
+ `TC_TABLE`,
+ `TC_PARTITION`,
+ `TC_OPERATION_TYPE`,
+ `TC_WRITEID`
+) AS
+SELECT DISTINCT
+ T.`TXN_ID`,
+ CASE WHEN T.`TXN_STATE` = 'o' THEN 'open' WHEN T.`TXN_STATE` = 'a' THEN 'aborted' WHEN T.`TXN_STATE` = 'c' THEN 'commited' ELSE 'UNKNOWN' END AS TXN_STATE,
+ FROM_UNIXTIME(T.`TXN_STARTED`) AS TXN_STARTED,
+ FROM_UNIXTIME(T.`TXN_LAST_HEARTBEAT`) AS TXN_LAST_HEARTBEAT,
+ T.`TXN_USER`,
+ T.`TXN_HOST`,
+ T.`TXN_AGENT_INFO`,
+ T.`TXN_META_INFO`,
+ T.`TXN_HEARTBEAT_COUNT`,
+ CASE WHEN T.`TXN_TYPE` = 0 THEN 'DEFAULT' WHEN T.`TXN_TYPE` = 1 THEN 'REPL_CREATED' WHEN T.`TXN_TYPE` = 2 THEN 'READ_ONLY' WHEN T.`TXN_TYPE` = 3 THEN 'COMPACTION' END AS TXN_TYPE,
+ TC.`TC_DATABASE`,
+ TC.`TC_TABLE`,
+ TC.`TC_PARTITION`,
+ CASE WHEN TC.`TC_OPERATION_TYPE` = 's' THEN 'SELECT' WHEN 'i' THEN 'INSERT' WHEN 'u' THEN 'UPDATE' WHEN 'c' THEN 'COMPACT' END AS OPERATION_TYPE,
+ TC.`TC_WRITEID`
+FROM `SYS`.`TXNS` AS T
+LEFT JOIN `SYS`.`TXN_COMPONENTS` AS TC ON T.`TXN_ID` = TC.`TC_TXNID`;
+
+CREATE TABLE `HIVE_LOCKS` (
+ `HL_LOCK_EXT_ID` bigint,
+ `HL_LOCK_INT_ID` bigint,
+ `HL_TXNID` bigint,
+ `HL_DB` string,
+ `HL_TABLE` string,
+ `HL_PARTITION` string,
+ `HL_LOCK_STATE` string,
+ `HL_LOCK_TYPE` string,
+ `HL_LAST_HEARTBEAT` bigint,
+ `HL_ACQUIRED_AT` bigint,
+ `HL_USER` string,
+ `HL_HOST` string,
+ `HL_HEARTBEAT_COUNT` int,
+ `HL_AGENT_INFO` string,
+ `HL_BLOCKEDBY_EXT_ID` bigint,
+ `HL_BLOCKEDBY_INT_ID` bigint
+STORED BY 'org.apache.hive.storage.jdbc.JdbcStorageHandler'
+TBLPROPERTIES (
+"hive.sql.database.type" = "METASTORE",
+"hive.sql.query" =
+"SELECT
+ \"HL_LOCK_EXT_ID\",
+ \"HL_LOCK_INT_ID\",
+ \"HL_TXNID\",
+ \"HL_DB\",
+ \"HL_TABLE\",
+ \"HL_PARTITION\",
+ \"HL_LOCK_STATE\",
+ \"HL_LOCK_TYPE\",
+ \"HL_LAST_HEARTBEAT\",
+ \"HL_ACQUIRED_AT\",
+ \"HL_USER\",
+ \"HL_HOST\",
+ \"HL_HEARTBEAT_COUNT\",
+ \"HL_AGENT_INFO\",
+ \"HL_BLOCKEDBY_EXT_ID\",
+ \"HL_BLOCKEDBY_INT_ID\"
+FROM \"HIVE_LOCKS\""
+);
+
+CREATE OR REPLACE VIEW `LOCKS` (
+ `HL_LOCK_EXT_ID`,
+ `HL_LOCK_INT_ID`,
+ `HL_TXNID`,
+ `HL_DB`,
+ `HL_TABLE`,
+ `HL_PARTITION`,
+ `HL_LOCK_STATE`,
+ `HL_LOCK_TYPE`,
+ `HL_LAST_HEARTBEAT`,
+ `HL_ACQUIRED_AT`,
+ `HL_USER`,
+ `HL_HOST`,
+ `HL_HEARTBEAT_COUNT`,
+ `HL_AGENT_INFO`,
+ `HL_BLOCKEDBY_EXT_ID`,
+ `HL_BLOCKEDBY_INT_ID`
+) AS
+SELECT DISTINCT
+ HL.`HL_LOCK_EXT_ID`,
+ HL.`HL_LOCK_INT_ID`,
+ HL.`HL_TXNID`,
+ HL.`HL_DB`,
+ HL.`HL_TABLE`,
+ HL.`HL_PARTITION`,
+ case when HL.`HL_LOCK_STATE` = 'a' then 'acquired' when HL.`HL_LOCK_STATE` = 'w' then 'waiting' end as HL_LOCK_STATE,
+ case when HL.`HL_LOCK_TYPE`, = 'e' then 'exclusive' when HL.`HL_LOCK_TYPE` = 'r' then 'shared' when HL.`HL_LOCK_TYPE` = 'w' then 'semi-shared' end as HL_LOCK_TYPE,
+ FROM_UNIXTIME(HL.`HL_LAST_HEARTBEAT`),
+ FROM_UNIXTIME(HL.`HL_ACQUIRED_AT`),
+ HL.`HL_USER`,
+ HL.`HL_HOST`,
+ HL.`HL_HEARTBEAT_COUNT`,
+ HL.`HL_AGENT_INFO`,
+ HL.`HL_BLOCKEDBY_EXT_ID`,
+ HL.`HL_BLOCKEDBY_INT_ID`
+FROM SYS.`HIVE_LOCKS` AS HL;
-DROP TABLE IF EXISTS `VERSION`;
+drop table IF EXISTS `VERSION`;
-CREATE OR REPLACE VIEW `VERSION` AS SELECT 1 AS `VER_ID`, '4.0.0' AS `SCHEMA_VERSION`,
+create or replace view `VERSION` AS select 1 as `VER_ID`, '4.0.0' AS `SCHEMA_VERSION`,
'Hive release version 4.0.0' AS `VERSION_COMMENT`;
-SELECT 'Finished upgrading MetaStore schema from 3.1.0 to 4.0.0';
+select 'Finished upgrading MetaStore schema from 3.1.0 to 4.0.0';
diff --git standalone-metastore/metastore-server/src/main/sql/postgres/hive-schema-4.0.0.postgres.sql standalone-metastore/metastore-server/src/main/sql/postgres/hive-schema-4.0.0.postgres.sql
index 33f7271a52..455f98b725 100644
--- standalone-metastore/metastore-server/src/main/sql/postgres/hive-schema-4.0.0.postgres.sql
+++ standalone-metastore/metastore-server/src/main/sql/postgres/hive-schema-4.0.0.postgres.sql
@@ -1656,160 +1656,160 @@ GRANT ALL ON SCHEMA public TO PUBLIC;
------------------------------
-- Transaction and lock tables
------------------------------
-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,
- TXN_TYPE integer
-);
-
-CREATE TABLE TXN_COMPONENTS (
- TC_TXNID bigint NOT NULL REFERENCES TXNS (TXN_ID),
- TC_DATABASE varchar(128) NOT NULL,
- TC_TABLE varchar(128),
- TC_PARTITION varchar(767) DEFAULT NULL,
- TC_OPERATION_TYPE char(1) NOT NULL,
- TC_WRITEID bigint
-);
-
-CREATE INDEX TC_TXNID_INDEX ON TXN_COMPONENTS USING hash (TC_TXNID);
-
-CREATE TABLE COMPLETED_TXN_COMPONENTS (
- CTC_TXNID bigint NOT NULL,
- CTC_DATABASE varchar(128) NOT NULL,
- CTC_TABLE varchar(256),
- CTC_PARTITION varchar(767),
- CTC_TIMESTAMP timestamp DEFAULT CURRENT_TIMESTAMP NOT NULL,
- CTC_WRITEID bigint,
- CTC_UPDATE_DELETE char(1) NOT NULL
-);
-
-CREATE INDEX COMPLETED_TXN_COMPONENTS_INDEX ON COMPLETED_TXN_COMPONENTS USING btree (CTC_DATABASE, CTC_TABLE, CTC_PARTITION);
-
-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 NOT NULL,
- 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_TBLPROPERTIES varchar(2048),
- CQ_WORKER_ID varchar(128),
- CQ_START bigint,
- CQ_RUN_AS varchar(128),
- CQ_HIGHEST_WRITE_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_TBLPROPERTIES varchar(2048),
- CC_WORKER_ID varchar(128),
- CC_START bigint,
- CC_END bigint,
- CC_RUN_AS varchar(128),
- CC_HIGHEST_WRITE_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)
+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,
+ "TXN_TYPE" integer
+);
+
+CREATE TABLE "TXN_COMPONENTS" (
+ "TC_TXNID" bigint NOT NULL REFERENCES "TXNS" ("TXN_ID"),
+ "TC_DATABASE" varchar(128) NOT NULL,
+ "TC_TABLE" varchar(128),
+ "TC_PARTITION" varchar(767) DEFAULT NULL,
+ "TC_OPERATION_TYPE" char(1) NOT NULL,
+ "TC_WRITEID" bigint
+);
+
+CREATE INDEX TC_TXNID_INDEX ON "TXN_COMPONENTS" USING hash ("TC_TXNID");
+
+CREATE TABLE "COMPLETED_TXN_COMPONENTS" (
+ "CTC_TXNID" bigint NOT NULL,
+ "CTC_DATABASE" varchar(128) NOT NULL,
+ "CTC_TABLE" varchar(256),
+ "CTC_PARTITION" varchar(767),
+ "CTC_TIMESTAMP" timestamp DEFAULT CURRENT_TIMESTAMP NOT NULL,
+ "CTC_WRITEID" bigint,
+ "CTC_UPDATE_DELETE" char(1) NOT NULL
+);
+
+CREATE INDEX COMPLETED_TXN_COMPONENTS_INDEX ON "COMPLETED_TXN_COMPONENTS" USING btree ("CTC_DATABASE", "CTC_TABLE", "CTC_PARTITION");
+
+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 NOT NULL,
+ "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_TBLPROPERTIES" varchar(2048),
+ "CQ_WORKER_ID" varchar(128),
+ "CQ_START" bigint,
+ "CQ_RUN_AS" varchar(128),
+ "CQ_HIGHEST_WRITE_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_TBLPROPERTIES" varchar(2048),
+ "CC_WORKER_ID" varchar(128),
+ "CC_START" bigint,
+ "CC_END" bigint,
+ "CC_RUN_AS" varchar(128),
+ "CC_HIGHEST_WRITE_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")
);
-
-CREATE TABLE WRITE_SET (
- WS_DATABASE varchar(128) NOT NULL,
- WS_TABLE varchar(128) NOT NULL,
- WS_PARTITION varchar(767),
- WS_TXNID bigint NOT NULL,
- WS_COMMIT_ID bigint NOT NULL,
- WS_OPERATION_TYPE char(1) NOT NULL
+
+CREATE TABLE "WRITE_SET" (
+ "WS_DATABASE" varchar(128) NOT NULL,
+ "WS_TABLE" varchar(128) NOT NULL,
+ "WS_PARTITION" varchar(767),
+ "WS_TXNID" bigint NOT NULL,
+ "WS_COMMIT_ID" bigint NOT NULL,
+ "WS_OPERATION_TYPE" char(1) NOT NULL
);
-CREATE TABLE TXN_TO_WRITE_ID (
- T2W_TXNID bigint NOT NULL,
- T2W_DATABASE varchar(128) NOT NULL,
- T2W_TABLE varchar(256) NOT NULL,
- T2W_WRITEID bigint NOT NULL
-);
-
-CREATE UNIQUE INDEX TBL_TO_TXN_ID_IDX ON TXN_TO_WRITE_ID (T2W_DATABASE, T2W_TABLE, T2W_TXNID);
-CREATE UNIQUE INDEX TBL_TO_WRITE_ID_IDX ON TXN_TO_WRITE_ID (T2W_DATABASE, T2W_TABLE, T2W_WRITEID);
+CREATE TABLE "TXN_TO_WRITE_ID" (
+ "T2W_TXNID" bigint NOT NULL,
+ "T2W_DATABASE" varchar(128) NOT NULL,
+ "T2W_TABLE" varchar(256) NOT NULL,
+ "T2W_WRITEID" bigint NOT NULL
+);
+
+CREATE UNIQUE INDEX "TBL_TO_TXN_ID_IDX" ON "TXN_TO_WRITE_ID" ("T2W_DATABASE", "T2W_TABLE", "T2W_TXNID");
+CREATE UNIQUE INDEX "TBL_TO_WRITE_ID_IDX" ON "TXN_TO_WRITE_ID" ("T2W_DATABASE", "T2W_TABLE", "T2W_WRITEID");
-CREATE TABLE NEXT_WRITE_ID (
- NWI_DATABASE varchar(128) NOT NULL,
- NWI_TABLE varchar(256) NOT NULL,
- NWI_NEXT bigint NOT NULL
-);
-
-CREATE UNIQUE INDEX NEXT_WRITE_ID_IDX ON NEXT_WRITE_ID (NWI_DATABASE, NWI_TABLE);
-
-CREATE TABLE MIN_HISTORY_LEVEL (
- MHL_TXNID bigint NOT NULL,
- MHL_MIN_OPEN_TXNID bigint NOT NULL,
- PRIMARY KEY(MHL_TXNID)
-);
-
-CREATE INDEX MIN_HISTORY_LEVEL_IDX ON MIN_HISTORY_LEVEL (MHL_MIN_OPEN_TXNID);
-
-CREATE TABLE MATERIALIZATION_REBUILD_LOCKS (
- MRL_TXN_ID bigint NOT NULL,
- MRL_DB_NAME varchar(128) NOT NULL,
- MRL_TBL_NAME varchar(256) NOT NULL,
- MRL_LAST_HEARTBEAT bigint NOT NULL,
- PRIMARY KEY(MRL_TXN_ID)
+CREATE TABLE "NEXT_WRITE_ID" (
+ "NWI_DATABASE" varchar(128) NOT NULL,
+ "NWI_TABLE" varchar(256) NOT NULL,
+ "NWI_NEXT" bigint NOT NULL
+);
+
+CREATE UNIQUE INDEX "NEXT_WRITE_ID_IDX" ON "NEXT_WRITE_ID" ("NWI_DATABASE", "NWI_TABLE");
+
+CREATE TABLE "MIN_HISTORY_LEVEL" (
+ "MHL_TXNID" bigint NOT NULL,
+ "MHL_MIN_OPEN_TXNID" bigint NOT NULL,
+ PRIMARY KEY("MHL_TXNID")
+);
+
+CREATE INDEX "MIN_HISTORY_LEVEL_IDX" ON "MIN_HISTORY_LEVEL" ("MHL_MIN_OPEN_TXNID");
+
+CREATE TABLE "MATERIALIZATION_REBUILD_LOCKS" (
+ "MRL_TXN_ID" bigint NOT NULL,
+ "MRL_DB_NAME" varchar(128) NOT NULL,
+ "MRL_TBL_NAME" varchar(256) NOT NULL,
+ "MRL_LAST_HEARTBEAT" bigint NOT NULL,
+ PRIMARY KEY("MRL_TXN_ID")
);
CREATE TABLE "I_SCHEMA" (
@@ -1829,32 +1829,32 @@ CREATE TABLE "SCHEMA_VERSION" (
"SCHEMA_ID" bigint references "I_SCHEMA" ("SCHEMA_ID"),
"VERSION" integer not null,
"CREATED_AT" bigint not null,
- "CD_ID" bigint references "CDS" ("CD_ID"),
+ "CD_ID" bigint references "CDS" ("CD_ID"),
"STATE" integer not null,
"DESCRIPTION" varchar(4000),
"SCHEMA_TEXT" text,
"FINGERPRINT" varchar(256),
"SCHEMA_VERSION_NAME" varchar(256),
- "SERDE_ID" bigint references "SERDES" ("SERDE_ID"),
+ "SERDE_ID" bigint references "SERDES" ("SERDE_ID"),
unique ("SCHEMA_ID", "VERSION")
);
-CREATE TABLE REPL_TXN_MAP (
- RTM_REPL_POLICY varchar(256) NOT NULL,
- RTM_SRC_TXN_ID bigint NOT NULL,
- RTM_TARGET_TXN_ID bigint NOT NULL,
- PRIMARY KEY (RTM_REPL_POLICY, RTM_SRC_TXN_ID)
+CREATE TABLE "REPL_TXN_MAP" (
+ "RTM_REPL_POLICY" varchar(256) NOT NULL,
+ "RTM_SRC_TXN_ID" bigint NOT NULL,
+ "RTM_TARGET_TXN_ID" bigint NOT NULL,
+ PRIMARY KEY ("RTM_REPL_POLICY", "RTM_SRC_TXN_ID")
);
-CREATE TABLE RUNTIME_STATS (
- RS_ID bigint primary key,
- CREATE_TIME bigint NOT NULL,
- WEIGHT bigint NOT NULL,
- PAYLOAD bytea
+CREATE TABLE "RUNTIME_STATS" (
+ "RS_ID" bigint primary key,
+ "CREATE_TIME" bigint NOT NULL,
+ "WEIGHT" bigint NOT NULL,
+ "PAYLOAD" bytea
);
-CREATE INDEX IDX_RUNTIME_STATS_CREATE_TIME ON RUNTIME_STATS(CREATE_TIME);
+CREATE INDEX "IDX_RUNTIME_STATS_CREATE_TIME" ON "RUNTIME_STATS" ("CREATE_TIME");
@@ -1875,28 +1875,28 @@ CREATE TABLE "TXN_WRITE_NOTIFICATION_LOG" (
INSERT INTO "SEQUENCE_TABLE" ("SEQUENCE_NAME", "NEXT_VAL") VALUES ('org.apache.hadoop.hive.metastore.model.MTxnWriteNotificationLog', 1);
CREATE TABLE "SCHEDULED_QUERIES" (
- "SCHEDULED_QUERY_ID" BIGINT NOT NULL,
- "CLUSTER_NAMESPACE" VARCHAR(256),
- "ENABLED" boolean NOT NULL,
- "NEXT_EXECUTION" INTEGER,
- "QUERY" VARCHAR(4000),
- "SCHEDULE" VARCHAR(256),
- "SCHEDULE_NAME" VARCHAR(256),
- "USER" VARCHAR(256),
- CONSTRAINT SCHEDULED_QUERIES_PK PRIMARY KEY ("SCHEDULED_QUERY_ID")
+ "SCHEDULED_QUERY_ID" BIGINT NOT NULL,
+ "CLUSTER_NAMESPACE" VARCHAR(256),
+ "ENABLED" boolean NOT NULL,
+ "NEXT_EXECUTION" INTEGER,
+ "QUERY" VARCHAR(4000),
+ "SCHEDULE" VARCHAR(256),
+ "SCHEDULE_NAME" VARCHAR(256),
+ "USER" VARCHAR(256),
+ CONSTRAINT "SCHEDULED_QUERIES_PK" PRIMARY KEY ("SCHEDULED_QUERY_ID")
);
CREATE TABLE "SCHEDULED_EXECUTIONS" (
- "SCHEDULED_EXECUTION_ID" BIGINT NOT NULL,
- "END_TIME" INTEGER,
- "ERROR_MESSAGE" VARCHAR(2000),
- "EXECUTOR_QUERY_ID" VARCHAR(256),
- "LAST_UPDATE_TIME" INTEGER,
- "SCHEDULED_QUERY_ID" BIGINT,
- "START_TIME" INTEGER,
- "STATE" VARCHAR(256),
- CONSTRAINT SCHEDULED_EXECUTIONS_PK PRIMARY KEY ("SCHEDULED_EXECUTION_ID"),
- CONSTRAINT SCHEDULED_EXECUTIONS_SCHQ_FK FOREIGN KEY ("SCHEDULED_QUERY_ID") REFERENCES "SCHEDULED_QUERIES"("SCHEDULED_QUERY_ID") ON DELETE CASCADE
+ "SCHEDULED_EXECUTION_ID" BIGINT NOT NULL,
+ "END_TIME" INTEGER,
+ "ERROR_MESSAGE" VARCHAR(2000),
+ "EXECUTOR_QUERY_ID" VARCHAR(256),
+ "LAST_UPDATE_TIME" INTEGER,
+ "SCHEDULED_QUERY_ID" BIGINT,
+ "START_TIME" INTEGER,
+ "STATE" VARCHAR(256),
+ CONSTRAINT "SCHEDULED_EXECUTIONS_PK" PRIMARY KEY ("SCHEDULED_EXECUTION_ID"),
+ CONSTRAINT "SCHEDULED_EXECUTIONS_SCHQ_FK" FOREIGN KEY ("SCHEDULED_QUERY_ID") REFERENCES "SCHEDULED_QUERIES"("SCHEDULED_QUERY_ID") ON DELETE CASCADE
);
CREATE INDEX IDX_SCHEDULED_EXECUTIONS_LAST_UPDATE_TIME ON "SCHEDULED_EXECUTIONS" ("LAST_UPDATE_TIME");
diff --git standalone-metastore/metastore-server/src/main/sql/postgres/upgrade-3.2.0-to-4.0.0.postgres.sql standalone-metastore/metastore-server/src/main/sql/postgres/upgrade-3.2.0-to-4.0.0.postgres.sql
index 919fab0988..5c39b0d9f4 100644
--- standalone-metastore/metastore-server/src/main/sql/postgres/upgrade-3.2.0-to-4.0.0.postgres.sql
+++ standalone-metastore/metastore-server/src/main/sql/postgres/upgrade-3.2.0-to-4.0.0.postgres.sql
@@ -49,7 +49,142 @@ CREATE INDEX IDX_SCHEDULED_EXECUTIONS_LAST_UPDATE_TIME ON "SCHEDULED_EXECUTIONS"
CREATE INDEX IDX_SCHEDULED_EXECUTIONS_SCHEDULED_QUERY_ID ON "SCHEDULED_EXECUTIONS" ("SCHEDULED_QUERY_ID");
CREATE UNIQUE INDEX UNIQUE_SCHEDULED_EXECUTIONS_ID ON "SCHEDULED_EXECUTIONS" ("SCHEDULED_EXECUTION_ID");
--- These lines need to be last. Insert any changes above.
+-- HIVE-22546
+
+ALTER TABLE aux_table RENAME TO "AUX_TABLE";
+ALTER TABLE "AUX_TABLE" RENAME COLUMN mt_key1 TO "MT_KEY1";
+ALTER TABLE "AUX_TABLE" RENAME COLUMN mt_key2 TO "MT_KEY2";
+ALTER TABLE "AUX_TABLE" RENAME COLUMN mt_comment TO "MT_COMMENT";
+
+ALTER TABLE compaction_queue RENAME TO "COMPACTION_QUEUE";
+ALTER TABLE "COMPACTION_QUEUE" RENAME COLUMN cq_id TO "CQ_ID";
+ALTER TABLE "COMPACTION_QUEUE" RENAME COLUMN cq_database TO "CQ_DATABASE";
+ALTER TABLE "COMPACTION_QUEUE" RENAME COLUMN cq_table TO "CQ_TABLE";
+ALTER TABLE "COMPACTION_QUEUE" RENAME COLUMN cq_partition TO "CQ_PARTITION";
+ALTER TABLE "COMPACTION_QUEUE" RENAME COLUMN cq_state TO "CQ_STATE";
+ALTER TABLE "COMPACTION_QUEUE" RENAME COLUMN cq_type TO "CQ_TYPE";
+ALTER TABLE "COMPACTION_QUEUE" RENAME COLUMN cq_tblproperties TO "CQ_TBLPROPERTIES";
+ALTER TABLE "COMPACTION_QUEUE" RENAME COLUMN cq_worker_id TO "CQ_WORKER_ID";
+ALTER TABLE "COMPACTION_QUEUE" RENAME COLUMN cq_start TO "CQ_START";
+ALTER TABLE "COMPACTION_QUEUE" RENAME COLUMN cq_run_as TO "CQ_RUN_AS";
+ALTER TABLE "COMPACTION_QUEUE" RENAME COLUMN cq_highest_write_id TO "CQ_HIGHEST_WRITE_ID";
+ALTER TABLE "COMPACTION_QUEUE" RENAME COLUMN cq_meta_info TO "CQ_META_INFO";
+ALTER TABLE "COMPACTION_QUEUE" RENAME COLUMN cq_hadoop_job_id TO "CQ_HADOOP_JOB_ID";
+
+ALTER TABLE completed_compactions RENAME TO "COMPLETED_COMPACTIONS";
+ALTER TABLE "COMPLETED_COMPACTIONS" RENAME COLUMN cc_id TO "CC_ID";
+ALTER TABLE "COMPLETED_COMPACTIONS" RENAME COLUMN cc_database TO "CC_DATABASE";
+ALTER TABLE "COMPLETED_COMPACTIONS" RENAME COLUMN cc_table TO "CC_TABLE";
+ALTER TABLE "COMPLETED_COMPACTIONS" RENAME COLUMN cc_partition TO "CC_PARTITION";
+ALTER TABLE "COMPLETED_COMPACTIONS" RENAME COLUMN cc_state TO "CC_STATE";
+ALTER TABLE "COMPLETED_COMPACTIONS" RENAME COLUMN cc_type TO "CC_TYPE";
+ALTER TABLE "COMPLETED_COMPACTIONS" RENAME COLUMN cc_tblproperties TO "CC_TBLPROPERTIES";
+ALTER TABLE "COMPLETED_COMPACTIONS" RENAME COLUMN cc_worker_id TO "CC_WORKER_ID";
+ALTER TABLE "COMPLETED_COMPACTIONS" RENAME COLUMN cc_start TO "CC_START";
+ALTER TABLE "COMPLETED_COMPACTIONS" RENAME COLUMN cc_end TO "CC_END";
+ALTER TABLE "COMPLETED_COMPACTIONS" RENAME COLUMN cc_run_as TO "CC_RUN_AS";
+ALTER TABLE "COMPLETED_COMPACTIONS" RENAME COLUMN cc_highest_write_id TO "CC_HIGHEST_WRITE_ID";
+ALTER TABLE "COMPLETED_COMPACTIONS" RENAME COLUMN cc_meta_info TO "CC_META_INFO";
+ALTER TABLE "COMPLETED_COMPACTIONS" RENAME COLUMN cc_hadoop_job_id TO "CC_HADOOP_JOB_ID";
+
+ALTER TABLE completed_txn_components RENAME TO "COMPLETED_TXN_COMPONENTS";
+ALTER TABLE "COMPLETED_TXN_COMPONENTS" RENAME COLUMN ctc_txnid TO "CTC_TXNID";
+ALTER TABLE "COMPLETED_TXN_COMPONENTS" RENAME COLUMN ctc_database TO "CTC_DATABASE";
+ALTER TABLE "COMPLETED_TXN_COMPONENTS" RENAME COLUMN ctc_table TO "CTC_TABLE";
+ALTER TABLE "COMPLETED_TXN_COMPONENTS" RENAME COLUMN ctc_partition TO "CTC_PARTITION";
+ALTER TABLE "COMPLETED_TXN_COMPONENTS" RENAME COLUMN ctc_timestamp TO "CTC_TIMESTAMP";
+ALTER TABLE "COMPLETED_TXN_COMPONENTS" RENAME COLUMN ctc_writeid TO "CTC_WRITEID";
+ALTER TABLE "COMPLETED_TXN_COMPONENTS" RENAME COLUMN ctc_update_delete TO "CTC_UPDATE_DELETE";
+
+ALTER TABLE hive_locks RENAME TO "HIVE_LOCKS";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_lock_ext_id TO "HL_LOCK_EXT_ID";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_lock_int_id TO "HL_LOCK_INT_ID";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_txnid TO "HL_TXNID";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_db TO "HL_DB";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_table TO "HL_TABLE";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_partition TO "HL_PARTITION";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_lock_state TO "HL_LOCK_STATE";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_lock_type TO "HL_LOCK_TYPE";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_last_heartbeat TO "HL_LAST_HEARTBEAT";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_acquired_at TO "HL_ACQUIRED_AT";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_user TO "HL_USER";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_host TO "HL_HOST";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_heartbeat_count TO "HL_HEARTBEAT_COUNT";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_agent_info TO "HL_AGENT_INFO";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_blockedby_ext_id TO "HL_BLOCKEDBY_EXT_ID";
+ALTER TABLE "HIVE_LOCKS" RENAME COLUMN hl_blockedby_int_id TO "HL_BLOCKEDBY_INT_ID";
+
+ALTER TABLE materialization_rebuild_locks RENAME TO "MATERIALIZATION_REBUILD_LOCKS";
+ALTER TABLE "MATERIALIZATION_REBUILD_LOCKS" RENAME COLUMN mrl_txn_id TO "MRL_TXN_ID";
+ALTER TABLE "MATERIALIZATION_REBUILD_LOCKS" RENAME COLUMN mrl_db_name TO "MRL_DB_NAME";
+ALTER TABLE "MATERIALIZATION_REBUILD_LOCKS" RENAME COLUMN mrl_tbl_name TO "MRL_TBL_NAME";
+ALTER TABLE "MATERIALIZATION_REBUILD_LOCKS" RENAME COLUMN mrl_last_heartbeat TO "MRL_LAST_HEARTBEAT";
+
+ALTER TABLE min_history_level RENAME TO "MIN_HISTORY_LEVEL";
+ALTER TABLE "MIN_HISTORY_LEVEL" RENAME COLUMN mhl_txnid TO "MHL_TXNID";
+ALTER TABLE "MIN_HISTORY_LEVEL" RENAME COLUMN mhl_min_open_txnid TO "MHL_MIN_OPEN_TXNID";
+
+ALTER TABLE next_compaction_queue_id RENAME TO "NEXT_COMPACTION_QUEUE_ID";
+ALTER TABLE "NEXT_COMPACTION_QUEUE_ID" RENAME COLUMN ncq_next TO "NCQ_NEXT";
+
+ALTER TABLE next_lock_id RENAME TO "NEXT_LOCK_ID";
+ALTER TABLE "NEXT_LOCK_ID" RENAME COLUMN nl_next TO "NL_NEXT";
+
+ALTER TABLE next_txn_id RENAME TO "NEXT_TXN_ID";
+ALTER TABLE "NEXT_TXN_ID" RENAME COLUMN ntxn_next TO "NTXN_NEXT";
+
+ALTER TABLE next_write_id RENAME TO "NEXT_WRITE_ID";
+ALTER TABLE "NEXT_WRITE_ID" RENAME COLUMN nwi_database TO "NWI_DATABASE";
+ALTER TABLE "NEXT_WRITE_ID" RENAME COLUMN nwi_table TO "NWI_TABLE";
+ALTER TABLE "NEXT_WRITE_ID" RENAME COLUMN nwi_next TO "NWI_NEXT";
+
+ALTER TABLE repl_txn_map RENAME TO "REPL_TXN_MAP";
+ALTER TABLE "REPL_TXN_MAP" RENAME COLUMN rtm_repl_policy TO "RTM_REPL_POLICY";
+ALTER TABLE "REPL_TXN_MAP" RENAME COLUMN rtm_src_txn_id TO "RTM_SRC_TXN_ID";
+ALTER TABLE "REPL_TXN_MAP" RENAME COLUMN rtm_target_txn_id TO "RTM_TARGET_TXN_ID";
+
+ALTER TABLE runtime_stats RENAME TO "RUNTIME_STATS";
+ALTER TABLE "RUNTIME_STATS" RENAME COLUMN rs_id TO "RS_ID";
+ALTER TABLE "RUNTIME_STATS" RENAME COLUMN create_time TO "CREATE_TIME";
+ALTER TABLE "RUNTIME_STATS" RENAME COLUMN weight TO "WEIGHT";
+ALTER TABLE "RUNTIME_STATS" RENAME COLUMN payload TO "PAYLOAD";
+
+ALTER TABLE txn_components RENAME TO "TXN_COMPONENTS";
+ALTER TABLE "TXN_COMPONENTS" RENAME COLUMN tc_txnid TO "TC_TXNID";
+ALTER TABLE "TXN_COMPONENTS" RENAME COLUMN tc_database TO "TC_DATABASE";
+ALTER TABLE "TXN_COMPONENTS" RENAME COLUMN tc_table TO "TC_TABLE";
+ALTER TABLE "TXN_COMPONENTS" RENAME COLUMN tc_partition TO "TC_PARTITION";
+ALTER TABLE "TXN_COMPONENTS" RENAME COLUMN tc_operation_type TO "TC_OPERATION_TYPE";
+ALTER TABLE "TXN_COMPONENTS" RENAME COLUMN tc_writeid TO "TC_WRITEID";
+
+ALTER TABLE txn_to_write_id RENAME TO "TXN_TO_WRITE_ID";
+ALTER TABLE "TXN_TO_WRITE_ID" RENAME COLUMN t2w_txnid TO "T2W_TXNID";
+ALTER TABLE "TXN_TO_WRITE_ID" RENAME COLUMN t2w_database TO "T2W_DATABASE";
+ALTER TABLE "TXN_TO_WRITE_ID" RENAME COLUMN t2w_table TO "T2W_TABLE";
+ALTER TABLE "TXN_TO_WRITE_ID" RENAME COLUMN t2w_writeid TO "T2W_WRITEID";
+
+ALTER TABLE txns RENAME TO "TXNS";
+ALTER TABLE "TXNS" RENAME COLUMN txn_id TO "TXN_ID";
+ALTER TABLE "TXNS" RENAME COLUMN txn_state TO "TXN_STATE";
+ALTER TABLE "TXNS" RENAME COLUMN txn_started TO "TXN_STARTED";
+ALTER TABLE "TXNS" RENAME COLUMN txn_last_heartbeat TO "TXN_LAST_HEARTBEAT";
+ALTER TABLE "TXNS" RENAME COLUMN txn_user TO "TXN_USER";
+ALTER TABLE "TXNS" RENAME COLUMN txn_host TO "TXN_HOST";
+ALTER TABLE "TXNS" RENAME COLUMN txn_agent_info TO "TXN_AGENT_INFO";
+ALTER TABLE "TXNS" RENAME COLUMN txn_meta_info TO "TXN_META_INFO";
+ALTER TABLE "TXNS" RENAME COLUMN txn_heartbeat_count TO "TXN_HEARTBEAT_COUNT";
+ALTER TABLE "TXNS" RENAME COLUMN txn_type TO "TXN_TYPE";
+
+ALTER TABLE write_set RENAME TO "WRITE_SET";
+ALTER TABLE "WRITE_SET" RENAME COLUMN ws_database TO "WS_DATABASE";
+ALTER TABLE "WRITE_SET" RENAME COLUMN ws_table TO "WS_TABLE";
+ALTER TABLE "WRITE_SET" RENAME COLUMN ws_partition TO "WS_PARTITION";
+ALTER TABLE "WRITE_SET" RENAME COLUMN ws_txnid TO "WS_TXNID";
+ALTER TABLE "WRITE_SET" RENAME COLUMN ws_commit_id TO "WS_COMMIT_ID";
+ALTER TABLE "WRITE_SET" RENAME COLUMN ws_operation_type TO "WS_OPERATION_TYPE";
+
+
+-- These lines need to be last. Insert any changes above.
UPDATE "VERSION" SET "SCHEMA_VERSION"='4.0.0', "VERSION_COMMENT"='Hive release version 4.0.0' where "VER_ID"=1;
SELECT 'Finished upgrading MetaStore schema from 3.2.0 to 4.0.0';