private Object fetchPropertyValue(String[] keys, boolean format) {
    final String mapKey = mapKey(keys);
    PropertyMap map;
    final Map<String, PropertyMap> dirtyMaps = this.dirtyMaps;
    synchronized(dirtyMaps) {
      map = dirtyMaps.get(mapKey);
    }
    PropertySchema schema = schemaOf(keys);
    if (map == null) {
      map = store.fetchProperties(mapKey, s->schema);
    }
    String propertyName = propertyName(keys);
    Object value = null;
    if (map != null) {
      value = map.getPropertyValue(propertyName);
    } else if (schema != null) {
      value = schema.getDefaultValue(propertyName);
    }
    if (format && value != null && schema != null) {
      PropertyType<?> type = schema.getPropertyType(propertyName);
      if (type != null) {
        return type.format(value);
      }
    }
    return value;
  }
Gets a property value.
@param keys the key fragments
@return the value or the default schema value if not assigned
standalone-metastore/metastore-common/src/main/java/org/apache/hadoop/hive/metastore/properties/PropertyManager.java