Program: 35320
Project: 35320
Buggy source:
private void migrateSearching(OldConfig oldConfig){
  SearchingConfig searchingConfig=configProvider.getBaseConfig().getSearching();
  Searching oldSearching=oldConfig.getSearching();
  searchingConfig.setAlwaysShowDuplicates(oldSearching.isAlwaysShowDuplicates());
  try {
    searchingConfig.setApplyRestrictions(SearchSourceRestriction.valueOf(oldSearching.getApplyRestrictions().toUpperCase()));
  }
 catch (  IllegalArgumentException e) {
  }
  searchingConfig.setDuplicateAgeThreshold(oldSearching.getDuplicateAgeThreshold());
  searchingConfig.setDuplicateSizeThresholdInPercent(oldSearching.getDuplicateSizeThresholdInPercent());
  if (oldSearching.isIdFallbackToTitlePerIndexer()) {
    searchingConfig.setIdFallbackToTitle(SearchSourceRestriction.BOTH);
  }
 else {
    searchingConfig.setIdFallbackToTitle(SearchSourceRestriction.NONE);
  }
  if (oldSearching.getGenerateQueries().size() == 2) {
    searchingConfig.setGenerateQueries(SearchSourceRestriction.BOTH);
  }
 else   if (oldSearching.getGenerateQueries().contains("String_Node_Str")) {
    searchingConfig.setGenerateQueries(SearchSourceRestriction.INTERNAL);
  }
 else   if (oldSearching.getGenerateQueries().contains("String_Node_Str")) {
    searchingConfig.setGenerateQueries(SearchSourceRestriction.API);
  }
  searchingConfig.setIgnorePassworded(oldSearching.isIgnorePassworded());
  searchingConfig.setIgnoreTemporarilyDisabled(oldSearching.isIgnoreTemporarilyDisabled());
  searchingConfig.setForbiddenWords(Arrays.asList(oldSearching.getForbiddenWords().split("String_Node_Str")));
  searchingConfig.setMaxAge(oldSearching.getMaxAge());
  if (oldSearching.getNzbAccessType().equals("String_Node_Str")) {
    searchingConfig.setNzbAccessType(NzbAccessType.PROXY);
  }
 else {
    searchingConfig.setNzbAccessType(NzbAccessType.REDIRECT);
  }
  searchingConfig.setRemoveLanguage(oldSearching.isRemoveLanguage());
  searchingConfig.setRemoveObfuscated(oldSearching.isRemoveObfuscated());
  searchingConfig.setRequiredWords(Arrays.asList(oldSearching.getRequiredWords().split("String_Node_Str")));
  searchingConfig.setTimeout(oldSearching.getTimeout());
  searchingConfig.setUserAgent(oldSearching.getUserAgent());
  searchingConfig.setRequiredRegex(oldSearching.getRequiredRegex());
  searchingConfig.setForbiddenRegex(oldSearching.getUserAgent());
  searchingConfig.setForbiddenGroups(Arrays.asList(oldSearching.getForbiddenGroups().split("String_Node_Str")));
  searchingConfig.setForbiddenPosters(Arrays.asList(oldSearching.getForbiddenPosters().split("String_Node_Str")));
}

Fixed version (ground truth):
private List<String> migrateSearching(OldConfig oldConfig,BaseConfig newConfig){
  logger.info("String_Node_Str");
  List<String> messages=new ArrayList<>();
  SearchingConfig searchingConfig=newConfig.getSearching();
  Searching oldSearching=oldConfig.getSearching();
  searchingConfig.setAlwaysShowDuplicates(oldSearching.isAlwaysShowDuplicates());
  try {
    searchingConfig.setApplyRestrictions(SearchSourceRestriction.valueOf(oldSearching.getApplyRestrictions().toUpperCase()));
  }
 catch (  IllegalArgumentException e) {
    searchingConfig.setApplyRestrictions(SearchSourceRestriction.BOTH);
    logAsWarningAndAdd(messages,"String_Node_Str");
  }
  searchingConfig.setDuplicateAgeThreshold(oldSearching.getDuplicateAgeThreshold());
  searchingConfig.setDuplicateSizeThresholdInPercent(oldSearching.getDuplicateSizeThresholdInPercent());
  searchingConfig.setIdFallbackToTitlePerIndexer(oldSearching.isIdFallbackToTitlePerIndexer());
  if (oldSearching.getIdFallbackToTitle().contains("String_Node_Str") && oldSearching.getIdFallbackToTitle().contains("String_Node_Str")) {
    searchingConfig.setIdFallbackToTitle(SearchSourceRestriction.BOTH);
  }
 else   if (oldSearching.getIdFallbackToTitle().contains("String_Node_Str")) {
    searchingConfig.setIdFallbackToTitle(SearchSourceRestriction.API);
  }
 else   if (oldSearching.getIdFallbackToTitle().contains("String_Node_Str")) {
    searchingConfig.setIdFallbackToTitle(SearchSourceRestriction.INTERNAL);
  }
 else {
    searchingConfig.setIdFallbackToTitle(SearchSourceRestriction.NONE);
  }
  if (oldSearching.getGenerateQueries().size() == 2) {
    searchingConfig.setGenerateQueries(SearchSourceRestriction.BOTH);
  }
 else   if (oldSearching.getGenerateQueries().contains("String_Node_Str")) {
    searchingConfig.setGenerateQueries(SearchSourceRestriction.INTERNAL);
  }
 else   if (oldSearching.getGenerateQueries().contains("String_Node_Str")) {
    searchingConfig.setGenerateQueries(SearchSourceRestriction.API);
  }
 else {
    searchingConfig.setGenerateQueries(SearchSourceRestriction.NONE);
  }
  searchingConfig.setIgnorePassworded(oldSearching.isIgnorePassworded());
  searchingConfig.setIgnoreTemporarilyDisabled(oldSearching.isIgnoreTemporarilyDisabled());
  searchingConfig.setForbiddenWords(Strings.isNullOrEmpty(oldSearching.getForbiddenWords()) ? Collections.emptyList() : Arrays.asList(oldSearching.getForbiddenWords().replace("String_Node_Str","String_Node_Str").split("String_Node_Str")));
  searchingConfig.setMaxAge(oldSearching.getMaxAge());
  if (oldSearching.getNzbAccessType().equals("String_Node_Str")) {
    searchingConfig.setNzbAccessType(NzbAccessType.PROXY);
  }
 else {
    searchingConfig.setNzbAccessType(NzbAccessType.REDIRECT);
  }
  searchingConfig.setRemoveLanguage(oldSearching.isRemoveLanguage());
  searchingConfig.setRemoveObfuscated(oldSearching.isRemoveObfuscated());
  searchingConfig.setRequiredWords(Strings.isNullOrEmpty(oldSearching.getRequiredWords()) ? Collections.emptyList() : Arrays.asList(oldSearching.getRequiredWords().replace("String_Node_Str","String_Node_Str").split("String_Node_Str")));
  searchingConfig.setTimeout(oldSearching.getTimeout());
  searchingConfig.setUserAgent(oldSearching.getUserAgent());
  searchingConfig.setRequiredRegex(oldSearching.getRequiredRegex());
  searchingConfig.setForbiddenRegex(oldSearching.getForbiddenRegex());
  searchingConfig.setForbiddenGroups(Strings.isNullOrEmpty(oldSearching.getForbiddenGroups()) ? Collections.emptyList() : Arrays.asList(oldSearching.getForbiddenGroups().replace("String_Node_Str","String_Node_Str").split("String_Node_Str")));
  searchingConfig.setForbiddenPosters(Strings.isNullOrEmpty(oldSearching.getForbiddenPosters()) ? Collections.emptyList() : Arrays.asList(oldSearching.getForbiddenPosters().replace("String_Node_Str","String_Node_Str").split("String_Node_Str")));
  searchingConfig.setKeepSearchResultsForDays(oldConfig.getMain().getKeepSearchResultsForDays());
  return messages;
}