private void updateConfigGroupNativePaths(String configGroupName, Set<String> configsToChange,
                                            String replaceFrom, String replaceTo, Cluster cluster) throws AmbariException {
    Config targetConfig = cluster.getDesiredConfigByType(configGroupName);

    if (targetConfig != null) {
      Map<String, String> newProperty = new HashMap<>();

      for (String configName : configsToChange) {
        String configValue = targetConfig.getProperties().get(configName);
        if (configValue != null && configValue.contains(replaceFrom)) {
          String newConfigValue = configValue.replace(replaceFrom, replaceTo);
          LOG.info("Native path will be updated for '{}' property of '{}' config type, from '{}' to '{}'",
              configName, configGroupName, configValue, newConfigValue);
          newProperty.put(configName, newConfigValue);
        }
      }

      if (!newProperty.isEmpty()) {
        updateConfigurationPropertiesForCluster(cluster, configGroupName, newProperty, true, false);
      }
    }
  }
Performs normal data upgrade

@throws AmbariException
@throws SQLException
ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog276.java