You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by bl...@apache.org on 2019/05/15 22:37:31 UTC
[flink] branch master updated: [FLINK-12436][hive] Differentiate
Flink database properties from Hive database properties
This is an automated email from the ASF dual-hosted git repository.
bli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git
The following commit(s) were added to refs/heads/master by this push:
new 83324ec [FLINK-12436][hive] Differentiate Flink database properties from Hive database properties
83324ec is described below
commit 83324ec7df34f87dd95309a82da470ea7a35d1da
Author: bowen.li <bo...@gmail.com>
AuthorDate: Wed May 15 11:32:53 2019 -0700
[FLINK-12436][hive] Differentiate Flink database properties from Hive database properties
This PR adds support to differentiate Flink database properties from Hive database properties by using a Flink specific prefix for each property key, similar to how we differentiate Flink table properties from Hive table properties.
This closes #8456.
---
.../catalog/hive/GenericHiveMetastoreCatalog.java | 4 ++--
.../apache/flink/table/catalog/CatalogTestBase.java | 20 +++++++++++---------
.../apache/flink/table/catalog/CatalogTestUtil.java | 1 +
3 files changed, 14 insertions(+), 11 deletions(-)
diff --git a/flink-connectors/flink-connector-hive/src/main/java/org/apache/flink/table/catalog/hive/GenericHiveMetastoreCatalog.java b/flink-connectors/flink-connector-hive/src/main/java/org/apache/flink/table/catalog/hive/GenericHiveMetastoreCatalog.java
index b5dfb9c..b906e5c 100644
--- a/flink-connectors/flink-connector-hive/src/main/java/org/apache/flink/table/catalog/hive/GenericHiveMetastoreCatalog.java
+++ b/flink-connectors/flink-connector-hive/src/main/java/org/apache/flink/table/catalog/hive/GenericHiveMetastoreCatalog.java
@@ -90,7 +90,7 @@ public class GenericHiveMetastoreCatalog extends HiveCatalogBase {
@Override
protected CatalogDatabase createCatalogDatabase(Database hiveDatabase) {
return new GenericCatalogDatabase(
- hiveDatabase.getParameters(),
+ retrieveFlinkProperties(hiveDatabase.getParameters()),
hiveDatabase.getDescription()
);
}
@@ -102,7 +102,7 @@ public class GenericHiveMetastoreCatalog extends HiveCatalogBase {
catalogDatabase.getComment(),
// HDFS location URI which GenericCatalogDatabase shouldn't care
null,
- catalogDatabase.getProperties());
+ maskFlinkProperties(catalogDatabase.getProperties()));
}
// ------ tables and views------
diff --git a/flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestBase.java b/flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestBase.java
index 5cd91ce..780251c 100644
--- a/flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestBase.java
+++ b/flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestBase.java
@@ -105,9 +105,13 @@ public abstract class CatalogTestBase {
@Test
public void testCreateDb() throws Exception {
- catalog.createDatabase(db2, createDb(), false);
+ assertFalse(catalog.databaseExists(db1));
+
+ CatalogDatabase cd = createDb();
+ catalog.createDatabase(db1, cd, false);
- assertEquals(2, catalog.listDatabases().size());
+ assertTrue(catalog.databaseExists(db1));
+ CatalogTestUtil.checkEquals(cd, catalog.getDatabase(db1));
}
@Test
@@ -125,13 +129,13 @@ public abstract class CatalogTestBase {
catalog.createDatabase(db1, cd1, false);
List<String> dbs = catalog.listDatabases();
- assertTrue(catalog.getDatabase(db1).getProperties().entrySet().containsAll(cd1.getProperties().entrySet()));
+ CatalogTestUtil.checkEquals(cd1, catalog.getDatabase(db1));
assertEquals(2, dbs.size());
assertEquals(new HashSet<>(Arrays.asList(db1, catalog.getDefaultDatabase())), new HashSet<>(dbs));
catalog.createDatabase(db1, createAnotherDb(), true);
- assertTrue(catalog.getDatabase(db1).getProperties().entrySet().containsAll(cd1.getProperties().entrySet()));
+ CatalogTestUtil.checkEquals(cd1, catalog.getDatabase(db1));
assertEquals(2, dbs.size());
assertEquals(new HashSet<>(Arrays.asList(db1, catalog.getDefaultDatabase())), new HashSet<>(dbs));
}
@@ -147,11 +151,11 @@ public abstract class CatalogTestBase {
public void testDropDb() throws Exception {
catalog.createDatabase(db1, createDb(), false);
- assertTrue(catalog.listDatabases().contains(db1));
+ assertTrue(catalog.databaseExists(db1));
catalog.dropDatabase(db1, false);
- assertFalse(catalog.listDatabases().contains(db1));
+ assertFalse(catalog.databaseExists(db1));
}
@Test
@@ -181,13 +185,11 @@ public abstract class CatalogTestBase {
CatalogDatabase db = createDb();
catalog.createDatabase(db1, db, false);
- assertTrue(catalog.getDatabase(db1).getProperties().entrySet().containsAll(db.getProperties().entrySet()));
-
CatalogDatabase newDb = createAnotherDb();
catalog.alterDatabase(db1, newDb, false);
assertFalse(catalog.getDatabase(db1).getProperties().entrySet().containsAll(db.getProperties().entrySet()));
- assertTrue(catalog.getDatabase(db1).getProperties().entrySet().containsAll(newDb.getProperties().entrySet()));
+ CatalogTestUtil.checkEquals(newDb, catalog.getDatabase(db1));
}
@Test
diff --git a/flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestUtil.java b/flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestUtil.java
index 4a66e3f..f080bdb 100644
--- a/flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestUtil.java
+++ b/flink-table/flink-table-common/src/test/java/org/apache/flink/table/catalog/CatalogTestUtil.java
@@ -46,6 +46,7 @@ public class CatalogTestUtil {
}
public static void checkEquals(CatalogDatabase d1, CatalogDatabase d2) {
+ assertEquals(d1.getComment(), d2.getComment());
assertEquals(d1.getProperties(), d2.getProperties());
}