You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by sp...@apache.org on 2018/05/06 13:34:58 UTC
[5/5] hive git commit: HIVE-19372: Add table ownerType to JDO/SQL and
ObjectStore (Sergio Pena, reviewed by Vihang Karajgaonkar)
HIVE-19372: Add table ownerType to JDO/SQL and ObjectStore (Sergio Pena, reviewed by Vihang Karajgaonkar)
Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/3738e1b6
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/3738e1b6
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/3738e1b6
Branch: refs/heads/branch-3
Commit: 3738e1b60e1c074ac722421a10297ca4e7c59881
Parents: 6d5005b
Author: Sergio Pena <se...@cloudera.com>
Authored: Sun May 6 08:26:21 2018 -0500
Committer: Sergio Pena <se...@cloudera.com>
Committed: Sun May 6 08:31:10 2018 -0500
----------------------------------------------------------------------
.../hadoop/hive/metastore/ObjectStore.java | 16 +++++++++++++++-
.../hadoop/hive/metastore/model/MTable.java | 19 ++++++++++++++++++-
.../src/main/resources/package.jdo | 3 +++
.../main/sql/derby/hive-schema-3.0.0.derby.sql | 2 +-
.../sql/derby/upgrade-2.3.0-to-3.0.0.derby.sql | 2 ++
.../main/sql/mssql/hive-schema-3.0.0.mssql.sql | 1 +
.../sql/mssql/upgrade-2.3.0-to-3.0.0.mssql.sql | 2 ++
.../main/sql/mysql/hive-schema-3.0.0.mysql.sql | 1 +
.../sql/mysql/upgrade-2.3.0-to-3.0.0.mysql.sql | 1 +
.../main/sql/oracle/hive-schema-3.0.0.oracle.sql | 1 +
.../sql/oracle/upgrade-2.3.0-to-3.0.0.oracle.sql | 1 +
.../sql/postgres/hive-schema-3.0.0.postgres.sql | 1 +
.../postgres/upgrade-2.3.0-to-3.0.0.postgres.sql | 2 ++
.../hadoop/hive/metastore/TestObjectStore.java | 10 ++++++++++
.../hive/metastore/cache/TestCachedStore.java | 6 +++++-
15 files changed, 64 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/ObjectStore.java
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/ObjectStore.java b/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/ObjectStore.java
index 09efcd8..90b9e0f 100644
--- a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/ObjectStore.java
+++ b/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/ObjectStore.java
@@ -69,6 +69,7 @@ import javax.jdo.datastore.JDOConnection;
import javax.jdo.identity.IntIdentity;
import javax.sql.DataSource;
+import com.google.common.base.Strings;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang.ArrayUtils;
import org.apache.commons.lang.StringUtils;
@@ -1900,6 +1901,15 @@ public class ObjectStore implements RawStore, Configurable {
.getRetention(), convertToStorageDescriptor(mtbl.getSd()),
convertToFieldSchemas(mtbl.getPartitionKeys()), convertMap(mtbl.getParameters()),
mtbl.getViewOriginalText(), mtbl.getViewExpandedText(), tableType);
+
+ if (Strings.isNullOrEmpty(mtbl.getOwnerType())) {
+ // Before the ownerType exists in an old Hive schema, USER was the default type for owner.
+ // Let's set the default to USER to keep backward compatibility.
+ t.setOwnerType(PrincipalType.USER);
+ } else {
+ t.setOwnerType(PrincipalType.valueOf(mtbl.getOwnerType()));
+ }
+
t.setRewriteEnabled(mtbl.isRewriteEnabled());
t.setCatName(mtbl.getDatabase().getCatalogName());
return t;
@@ -1935,9 +1945,12 @@ public class ObjectStore implements RawStore, Configurable {
}
}
+ PrincipalType ownerPrincipalType = tbl.getOwnerType();
+ String ownerType = (ownerPrincipalType == null) ? PrincipalType.USER.name() : ownerPrincipalType.name();
+
// A new table is always created with a new column descriptor
return new MTable(normalizeIdentifier(tbl.getTableName()), mdb,
- convertToMStorageDescriptor(tbl.getSd()), tbl.getOwner(), tbl
+ convertToMStorageDescriptor(tbl.getSd()), tbl.getOwner(), ownerType, tbl
.getCreateTime(), tbl.getLastAccessTime(), tbl.getRetention(),
convertToMFieldSchemas(tbl.getPartitionKeys()), tbl.getParameters(),
tbl.getViewOriginalText(), tbl.getViewExpandedText(), tbl.isRewriteEnabled(),
@@ -3923,6 +3936,7 @@ public class ObjectStore implements RawStore, Configurable {
oldt.setTableName(normalizeIdentifier(newt.getTableName()));
oldt.setParameters(newt.getParameters());
oldt.setOwner(newt.getOwner());
+ oldt.setOwnerType(newt.getOwnerType());
// Fully copy over the contents of the new SD into the old SD,
// so we don't create an extra SD in the metastore db that has no references.
MColumnDescriptor oldCD = null;
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/model/MTable.java
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/model/MTable.java b/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/model/MTable.java
index a38a125..38ad479 100644
--- a/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/model/MTable.java
+++ b/standalone-metastore/src/main/java/org/apache/hadoop/hive/metastore/model/MTable.java
@@ -27,6 +27,7 @@ public class MTable {
private MDatabase database;
private MStorageDescriptor sd;
private String owner;
+ private String ownerType;
private int createTime;
private int lastAccessTime;
private int retention;
@@ -44,6 +45,7 @@ public class MTable {
* @param database
* @param sd
* @param owner
+ * @param ownerType
* @param createTime
* @param lastAccessTime
* @param retention
@@ -53,7 +55,7 @@ public class MTable {
* @param viewExpandedText
* @param tableType
*/
- public MTable(String tableName, MDatabase database, MStorageDescriptor sd, String owner,
+ public MTable(String tableName, MDatabase database, MStorageDescriptor sd, String owner, String ownerType,
int createTime, int lastAccessTime, int retention, List<MFieldSchema> partitionKeys,
Map<String, String> parameters, String viewOriginalText, String viewExpandedText,
boolean rewriteEnabled, String tableType) {
@@ -61,6 +63,7 @@ public class MTable {
this.database = database;
this.sd = sd;
this.owner = owner;
+ this.ownerType = ownerType;
this.createTime = createTime;
this.setLastAccessTime(lastAccessTime);
this.retention = retention;
@@ -185,6 +188,20 @@ public class MTable {
}
/**
+ * @return the owner type
+ */
+ public String getOwnerType() {
+ return ownerType;
+ }
+
+ /**
+ * @param ownerType the owner type to set
+ */
+ public void setOwnerType(String ownerType) {
+ this.ownerType = ownerType;
+ }
+
+ /**
* @return the createTime
*/
public int getCreateTime() {
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/main/resources/package.jdo
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/main/resources/package.jdo b/standalone-metastore/src/main/resources/package.jdo
index 221192e..2d2cb19 100644
--- a/standalone-metastore/src/main/resources/package.jdo
+++ b/standalone-metastore/src/main/resources/package.jdo
@@ -174,6 +174,9 @@
<field name="owner">
<column name="OWNER" length="767" jdbc-type="VARCHAR"/>
</field>
+ <field name="ownerType">
+ <column name="OWNER_TYPE" length="10" jdbc-type="VARCHAR" allows-null="true"/>
+ </field>
<field name="createTime">
<column name="CREATE_TIME" jdbc-type="integer"/>
</field>
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/main/sql/derby/hive-schema-3.0.0.derby.sql
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/main/sql/derby/hive-schema-3.0.0.derby.sql b/standalone-metastore/src/main/sql/derby/hive-schema-3.0.0.derby.sql
index 48d28cb..8e09755 100644
--- a/standalone-metastore/src/main/sql/derby/hive-schema-3.0.0.derby.sql
+++ b/standalone-metastore/src/main/sql/derby/hive-schema-3.0.0.derby.sql
@@ -75,7 +75,7 @@ CREATE TABLE "APP"."COLUMNS" ("SD_ID" BIGINT NOT NULL, "COMMENT" VARCHAR(256), "
CREATE TABLE "APP"."ROLES" ("ROLE_ID" BIGINT NOT NULL, "CREATE_TIME" INTEGER NOT NULL, "OWNER_NAME" VARCHAR(128), "ROLE_NAME" VARCHAR(128));
-CREATE TABLE "APP"."TBLS" ("TBL_ID" BIGINT NOT NULL, "CREATE_TIME" INTEGER NOT NULL, "DB_ID" BIGINT, "LAST_ACCESS_TIME" INTEGER NOT NULL, "OWNER" VARCHAR(767), "RETENTION" INTEGER NOT NULL, "SD_ID" BIGINT, "TBL_NAME" VARCHAR(256), "TBL_TYPE" VARCHAR(128), "VIEW_EXPANDED_TEXT" LONG VARCHAR, "VIEW_ORIGINAL_TEXT" LONG VARCHAR, "IS_REWRITE_ENABLED" CHAR(1) NOT NULL DEFAULT 'N');
+CREATE TABLE "APP"."TBLS" ("TBL_ID" BIGINT NOT NULL, "CREATE_TIME" INTEGER NOT NULL, "DB_ID" BIGINT, "LAST_ACCESS_TIME" INTEGER NOT NULL, "OWNER" VARCHAR(767), "OWNER_TYPE" VARCHAR(10), "RETENTION" INTEGER NOT NULL, "SD_ID" BIGINT, "TBL_NAME" VARCHAR(256), "TBL_TYPE" VARCHAR(128), "VIEW_EXPANDED_TEXT" LONG VARCHAR, "VIEW_ORIGINAL_TEXT" LONG VARCHAR, "IS_REWRITE_ENABLED" CHAR(1) NOT NULL DEFAULT 'N');
CREATE TABLE "APP"."PARTITION_KEYS" ("TBL_ID" BIGINT NOT NULL, "PKEY_COMMENT" VARCHAR(4000), "PKEY_NAME" VARCHAR(128) NOT NULL, "PKEY_TYPE" VARCHAR(767) NOT NULL, "INTEGER_IDX" INTEGER NOT NULL);
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/main/sql/derby/upgrade-2.3.0-to-3.0.0.derby.sql
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/main/sql/derby/upgrade-2.3.0-to-3.0.0.derby.sql b/standalone-metastore/src/main/sql/derby/upgrade-2.3.0-to-3.0.0.derby.sql
index b4c46cd..73bef36 100644
--- a/standalone-metastore/src/main/sql/derby/upgrade-2.3.0-to-3.0.0.derby.sql
+++ b/standalone-metastore/src/main/sql/derby/upgrade-2.3.0-to-3.0.0.derby.sql
@@ -105,6 +105,8 @@ ALTER TABLE "APP"."COMPLETED_TXN_COMPONENTS" ADD "CTC_TIMESTAMP" timestamp;
UPDATE "APP"."TBLS" SET "IS_REWRITE_ENABLED" = CURRENT_TIMESTAMP;
+ALTER TABLE "APP"."TBLS" ADD COLUMN "OWNER_TYPE" VARCHAR(10);
+
ALTER TABLE "APP"."COMPLETED_TXN_COMPONENTS" ALTER COLUMN "CTC_TIMESTAMP" SET DEFAULT CURRENT_TIMESTAMP;
ALTER TABLE "APP"."COMPLETED_TXN_COMPONENTS" ALTER COLUMN "CTC_TIMESTAMP" NOT NULL;
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/main/sql/mssql/hive-schema-3.0.0.mssql.sql
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/main/sql/mssql/hive-schema-3.0.0.mssql.sql b/standalone-metastore/src/main/sql/mssql/hive-schema-3.0.0.mssql.sql
index 4c5739f..51df92c 100644
--- a/standalone-metastore/src/main/sql/mssql/hive-schema-3.0.0.mssql.sql
+++ b/standalone-metastore/src/main/sql/mssql/hive-schema-3.0.0.mssql.sql
@@ -362,6 +362,7 @@ CREATE TABLE TBLS
DB_ID bigint NULL,
LAST_ACCESS_TIME int NOT NULL,
OWNER nvarchar(767) NULL,
+ OWNER_TYPE nvarchar(10) NULL,
RETENTION int NOT NULL,
SD_ID bigint NULL,
TBL_NAME nvarchar(256) NULL,
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/main/sql/mssql/upgrade-2.3.0-to-3.0.0.mssql.sql
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/main/sql/mssql/upgrade-2.3.0-to-3.0.0.mssql.sql b/standalone-metastore/src/main/sql/mssql/upgrade-2.3.0-to-3.0.0.mssql.sql
index b338f0d..a7232dd 100644
--- a/standalone-metastore/src/main/sql/mssql/upgrade-2.3.0-to-3.0.0.mssql.sql
+++ b/standalone-metastore/src/main/sql/mssql/upgrade-2.3.0-to-3.0.0.mssql.sql
@@ -160,6 +160,8 @@ ALTER TABLE MV_TABLES_USED ADD FOREIGN KEY(MV_CREATION_METADATA_ID) REFERENCES M
ALTER TABLE MV_TABLES_USED ADD FOREIGN KEY(TBL_ID) REFERENCES TBLS (TBL_ID);
+ALTER TABLE TBLS ADD OWNER_TYPE nvarchar(10) NULL;
+
ALTER TABLE COMPLETED_TXN_COMPONENTS ADD CTC_TIMESTAMP datetime2 NOT NULL DEFAULT(CURRENT_TIMESTAMP);
CREATE INDEX COMPLETED_TXN_COMPONENTS_IDX ON COMPLETED_TXN_COMPONENTS (CTC_DATABASE, CTC_TABLE, CTC_PARTITION);
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/main/sql/mysql/hive-schema-3.0.0.mysql.sql
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/main/sql/mysql/hive-schema-3.0.0.mysql.sql b/standalone-metastore/src/main/sql/mysql/hive-schema-3.0.0.mysql.sql
index fd71a1d..8e55e94 100644
--- a/standalone-metastore/src/main/sql/mysql/hive-schema-3.0.0.mysql.sql
+++ b/standalone-metastore/src/main/sql/mysql/hive-schema-3.0.0.mysql.sql
@@ -617,6 +617,7 @@ CREATE TABLE IF NOT EXISTS `TBLS` (
`DB_ID` bigint(20) DEFAULT NULL,
`LAST_ACCESS_TIME` int(11) NOT NULL,
`OWNER` varchar(767) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
+ `OWNER_TYPE` varchar(10) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
`RETENTION` int(11) NOT NULL,
`SD_ID` bigint(20) DEFAULT NULL,
`TBL_NAME` varchar(256) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/main/sql/mysql/upgrade-2.3.0-to-3.0.0.mysql.sql
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/main/sql/mysql/upgrade-2.3.0-to-3.0.0.mysql.sql b/standalone-metastore/src/main/sql/mysql/upgrade-2.3.0-to-3.0.0.mysql.sql
index b0d1927..9a48346 100644
--- a/standalone-metastore/src/main/sql/mysql/upgrade-2.3.0-to-3.0.0.mysql.sql
+++ b/standalone-metastore/src/main/sql/mysql/upgrade-2.3.0-to-3.0.0.mysql.sql
@@ -296,3 +296,4 @@ CREATE INDEX IDX_RUNTIME_STATS_CREATE_TIME ON RUNTIME_STATS(CREATE_TIME);
UPDATE VERSION SET SCHEMA_VERSION='3.0.0', VERSION_COMMENT='Hive release version 3.0.0' where VER_ID=1;
SELECT 'Finished upgrading MetaStore schema from 2.3.0 to 3.0.0' AS ' ';
+ALTER TABLE `TBLS` ADD COLUMN `OWNER_TYPE` VARCHAR(10) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/main/sql/oracle/hive-schema-3.0.0.oracle.sql
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/main/sql/oracle/hive-schema-3.0.0.oracle.sql b/standalone-metastore/src/main/sql/oracle/hive-schema-3.0.0.oracle.sql
index a45c7bb..3a12e08 100644
--- a/standalone-metastore/src/main/sql/oracle/hive-schema-3.0.0.oracle.sql
+++ b/standalone-metastore/src/main/sql/oracle/hive-schema-3.0.0.oracle.sql
@@ -385,6 +385,7 @@ CREATE TABLE TBLS
DB_ID NUMBER NULL,
LAST_ACCESS_TIME NUMBER (10) NOT NULL,
OWNER VARCHAR2(767) NULL,
+ OWNER_TYPE VARCHAR2(10) NULL,
RETENTION NUMBER (10) NOT NULL,
SD_ID NUMBER NULL,
TBL_NAME VARCHAR2(256) NULL,
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/main/sql/oracle/upgrade-2.3.0-to-3.0.0.oracle.sql
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/main/sql/oracle/upgrade-2.3.0-to-3.0.0.oracle.sql b/standalone-metastore/src/main/sql/oracle/upgrade-2.3.0-to-3.0.0.oracle.sql
index 0b7c793..3be7e65 100644
--- a/standalone-metastore/src/main/sql/oracle/upgrade-2.3.0-to-3.0.0.oracle.sql
+++ b/standalone-metastore/src/main/sql/oracle/upgrade-2.3.0-to-3.0.0.oracle.sql
@@ -314,3 +314,4 @@ CREATE INDEX IDX_RUNTIME_STATS_CREATE_TIME ON RUNTIME_STATS(CREATE_TIME);
UPDATE VERSION SET SCHEMA_VERSION='3.0.0', VERSION_COMMENT='Hive release version 3.0.0' where VER_ID=1;
SELECT 'Finished upgrading MetaStore schema from 2.3.0 to 3.0.0' AS Status from dual;
+ALTER TABLE TBLS ADD OWNER_TYPE VARCHAR2(10) NULL;
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/main/sql/postgres/hive-schema-3.0.0.postgres.sql
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/main/sql/postgres/hive-schema-3.0.0.postgres.sql b/standalone-metastore/src/main/sql/postgres/hive-schema-3.0.0.postgres.sql
index 93afeaf..0152f48 100644
--- a/standalone-metastore/src/main/sql/postgres/hive-schema-3.0.0.postgres.sql
+++ b/standalone-metastore/src/main/sql/postgres/hive-schema-3.0.0.postgres.sql
@@ -381,6 +381,7 @@ CREATE TABLE "TBLS" (
"DB_ID" bigint,
"LAST_ACCESS_TIME" bigint NOT NULL,
"OWNER" character varying(767) DEFAULT NULL::character varying,
+ "OWNER_TYPE" character varying(10) DEFAULT NULL::character varying,
"RETENTION" bigint NOT NULL,
"SD_ID" bigint,
"TBL_NAME" character varying(256) DEFAULT NULL::character varying,
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/main/sql/postgres/upgrade-2.3.0-to-3.0.0.postgres.sql
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/main/sql/postgres/upgrade-2.3.0-to-3.0.0.postgres.sql b/standalone-metastore/src/main/sql/postgres/upgrade-2.3.0-to-3.0.0.postgres.sql
index aa9a34f..fed8a93 100644
--- a/standalone-metastore/src/main/sql/postgres/upgrade-2.3.0-to-3.0.0.postgres.sql
+++ b/standalone-metastore/src/main/sql/postgres/upgrade-2.3.0-to-3.0.0.postgres.sql
@@ -180,6 +180,8 @@ ALTER TABLE ONLY "MV_TABLES_USED"
ALTER TABLE COMPLETED_TXN_COMPONENTS ADD COLUMN CTC_TIMESTAMP timestamp NULL;
+ALTER TABLE "TBLS" ADD COLUMN "OWNER_TYPE" character varying(10) DEFAULT NULL::character varying;
+
UPDATE COMPLETED_TXN_COMPONENTS SET CTC_TIMESTAMP = CURRENT_TIMESTAMP;
ALTER TABLE COMPLETED_TXN_COMPONENTS ALTER COLUMN CTC_TIMESTAMP SET NOT NULL;
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/TestObjectStore.java
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/TestObjectStore.java b/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/TestObjectStore.java
index 9490586..9912213 100644
--- a/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/TestObjectStore.java
+++ b/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/TestObjectStore.java
@@ -219,11 +219,21 @@ public class TestObjectStore {
null, null, null);
Table newTbl1 = new Table("new" + TABLE1, DB1, "owner", 1, 2, 3, sd2, null, params, null, null,
"MANAGED_TABLE");
+
+ // Change different fields and verify they were altered
+ newTbl1.setOwner("role1");
+ newTbl1.setOwnerType(PrincipalType.ROLE);
+
objectStore.alterTable(DEFAULT_CATALOG_NAME, DB1, TABLE1, newTbl1);
tables = objectStore.getTables(DEFAULT_CATALOG_NAME, DB1, "new*");
Assert.assertEquals(1, tables.size());
Assert.assertEquals("new" + TABLE1, tables.get(0));
+ // Verify fields were altered during the alterTable operation
+ Table alteredTable = objectStore.getTable(DEFAULT_CATALOG_NAME, DB1, "new" + TABLE1);
+ Assert.assertEquals("Owner of table was not altered", newTbl1.getOwner(), alteredTable.getOwner());
+ Assert.assertEquals("Owner type of table was not altered", newTbl1.getOwnerType(), alteredTable.getOwnerType());
+
objectStore.createTable(tbl1);
tables = objectStore.getAllTables(DEFAULT_CATALOG_NAME, DB1);
Assert.assertEquals(2, tables.size());
http://git-wip-us.apache.org/repos/asf/hive/blob/3738e1b6/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/cache/TestCachedStore.java
----------------------------------------------------------------------
diff --git a/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/cache/TestCachedStore.java b/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/cache/TestCachedStore.java
index bdc387e..62ed380 100644
--- a/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/cache/TestCachedStore.java
+++ b/standalone-metastore/src/test/java/org/apache/hadoop/hive/metastore/cache/TestCachedStore.java
@@ -229,11 +229,15 @@ public class TestCachedStore {
tbl2 = objectStore.getTable(DEFAULT_CATALOG_NAME, dbName, tblName2);
// Alter table "tbl" via ObjectStore
- tblOwner = "user2";
+ tblOwner = "role1";
tbl.setOwner(tblOwner);
+ tbl.setOwnerType(PrincipalType.ROLE);
objectStore.alterTable(DEFAULT_CATALOG_NAME, dbName, tblName, tbl);
tbl = objectStore.getTable(DEFAULT_CATALOG_NAME, dbName, tblName);
+ Assert.assertEquals("Owner of the table did not change.", tblOwner, tbl.getOwner());
+ Assert.assertEquals("Owner type of the table did not change", PrincipalType.ROLE, tbl.getOwnerType());
+
// Drop table "tbl1" via ObjectStore
objectStore.dropTable(DEFAULT_CATALOG_NAME, dbName, tblName1);