dengzhhu653 commented on code in PR #3599:
URL: https://github.com/apache/hive/pull/3599#discussion_r1024839579
##########
standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/HMSHandler.java:
##########
@@ -1363,18 +1363,66 @@ private void create_database_core(RawStore ms, final
Database db)
}
@Override
+ @Deprecated
public void create_database(final Database db)
throws AlreadyExistsException, InvalidObjectException, MetaException {
- startFunction("create_database", ": " + db.toString());
+ CreateDatabaseRequest req = new CreateDatabaseRequest();
+ req.setDatabaseName(db.getName());
+ if (db.isSetDescription()) {
+ req.setDescription(db.getDescription());
+ }
+ if (db.isSetLocationUri()) {
+ req.setLocationUri(db.getLocationUri());
+ }
+ if (db.isSetParameters()) {
+ req.setParameters(db.getParameters());
+ }
+ if (db.isSetPrivileges()) {
+ req.setPrivileges(db.getPrivileges());
+ }
+ if (db.isSetOwnerName()) {
+ req.setOwnerName(db.getOwnerName());
+ }
+ if (db.isSetOwnerType()) {
+ req.setOwnerType(db.getOwnerType());
+ }
+ if (db.isSetCatalogName()) {
+ req.setCatalogName(db.getCatalogName());
+ }
+ if (db.isSetCreateTime()) {
+ req.setCreateTime(db.getCreateTime());
+ }
+ if (db.isSetManagedLocationUri()) {
+ req.setManagedLocationUri(db.getManagedLocationUri());
+ }
+ if (db.isSetType()) {
+ req.setType(db.getType());
+ }
+ if (db.isSetConnector_name()) {
+ req.setDataConnectorName(db.getConnector_name());
+ }
+ if (db.isSetRemote_dbname()) {
+ req.setRemote_dbname(db.getRemote_dbname());
+ }
+ create_database_req(req);
Review Comment:
Maybe it better to construct the database from `CreateDatabaseRequest` then
call `create_database(Database)`. From my point of view, in
`create_database_req(req)`, we must retrieve the attributes again from `req`,
it's kinds of duplicate, and `CreateDatabaseRequest` is meant to convey
messages over wire, if we have already reached the HMS side, there is no need
to create it again.
Another benefit is that we can make the new changes less intervened with the
elder implements and better for review, what do you think?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]