You are viewing a plain text version of this content. The canonical link for it is here.
Posted to gitbox@hive.apache.org by GitBox <gi...@apache.org> on 2021/03/24 19:31:07 UTC

[GitHub] [hive] nrg4878 commented on a change in pull request #2094: HIVE-24175: getDatabase() should only return managedlocation if set (…

nrg4878 commented on a change in pull request #2094:
URL: https://github.com/apache/hive/pull/2094#discussion_r600816065



##########
File path: standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetastoreDefaultTransformer.java
##########
@@ -695,7 +695,8 @@ public Database transformDatabase(Database db, List<String> processorCapabilitie
     if (!isTenantBasedStorage) {
       Path locationPath = Path.getPathWithoutSchemeAndAuthority(new Path(db.getLocationUri()));
       Path whRootPath = Path.getPathWithoutSchemeAndAuthority(hmsHandler.getWh().getWhRoot());
-      if (FileUtils.isSubdirectory(whRootPath.toString(), locationPath.toString())) { // legacy path
+      LOG.debug("Comparing DB and warehouse paths warehouse={} db.getLocationUri={}", whRootPath.toString(), locationPath.toString());
+      if (FileUtils.isSubdirectory(whRootPath.toString(), locationPath.toString()) || locationPath.equals(whRootPath)) { // legacy path

Review comment:
       so prior to the introduction of managedlocation for db, while the exact semantics are unclear, the location was meant to be for managed tables. Although there is no code that enforces this strictly. So a legacy db object could have a location that could point anywhere. 
   This fix it for backward compatibility. When a location is set to a managed location, we are ensuring that that location now becomes the managedlocation.




-- 
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: gitbox-unsubscribe@hive.apache.org
For additional commands, e-mail: gitbox-help@hive.apache.org