diff --git standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java index 662a0989ce..de3c44b965 100644 --- standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java +++ standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/HiveMetaStore.java @@ -2040,9 +2040,9 @@ private void create_table_core(final RawStore ms, final CreateTableRequest req) } } if (tbl.isSetId()) { - throw new InvalidObjectException("Id shouldn't be set but table " - + tbl.getDbName() + "." + tbl.getTableName() + " has the Id set to " - + tbl.getId() + ". It's a read-only option"); + LOG.debug("Id shouldn't be set but table {}.{} has the Id set to {}. Id is ignored.", tbl.getDbName(), + tbl.getTableName(), tbl.getId()); + tbl.unsetId(); } SkewedInfo skew = tbl.getSd().getSkewedInfo(); if (skew != null) { diff --git standalone-metastore/metastore-server/src/test/java/org/apache/hadoop/hive/metastore/TestHiveMetaStore.java standalone-metastore/metastore-server/src/test/java/org/apache/hadoop/hive/metastore/TestHiveMetaStore.java index 40a4ef6820..5f85165d03 100644 --- standalone-metastore/metastore-server/src/test/java/org/apache/hadoop/hive/metastore/TestHiveMetaStore.java +++ standalone-metastore/metastore-server/src/test/java/org/apache/hadoop/hive/metastore/TestHiveMetaStore.java @@ -1850,14 +1850,7 @@ public void testCreateTableSettingId() throws Exception { .addCol("bar", "string") .build(conf); table.setId(1); - try { - client.createTable(table); - Assert.fail("An error should happen when setting the id" - + " to create a table"); - } catch (InvalidObjectException e) { - Assert.assertTrue(e.getMessage().contains("Id shouldn't be set")); - Assert.assertTrue(e.getMessage().contains(tblName)); - } + client.createTable(table); } @Test