public <T> T fetchProperties(String key, java.util.function.Function<MMetastoreDBProperties, T> transform) {
    boolean success = false;
    T properties = null;
    try {
      if (openTransaction()) {
        properties = doFetchProperties(key, transform);
        success = commitTransaction();
      }
    } finally {
      rollbackAndCleanup(success, null);
    }
    return properties;
  }
Called right before an action that would drop a storage descriptor.
This function makes the SD's reference to a CD null, and then deletes the CD
if it no longer is referenced in the table.
@param msd the storage descriptor to drop
standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/ObjectStore.java