private VersionException checkForLanguageChange(LanguageNotFoundException e)
			throws LanguageNotFoundException {

		languageUpgradeTranslator = LanguageTranslatorFactory.getLanguageTranslatorFactory()
				.getLanguageTranslator(languageID, languageVersion);
		if (languageUpgradeTranslator == null) {
			throw e;
		}

		language = languageUpgradeTranslator.getOldLanguage();
		languageID = language.getLanguageID();

		VersionException ve = new VersionException(true);
		LanguageID oldLangName = languageUpgradeTranslator.getOldLanguage().getLanguageID();
		LanguageID newLangName = languageUpgradeTranslator.getNewLanguage().getLanguageID();
		String message;
		if (oldLangName.equals(newLangName)) {
			message = "Program User Data requires a processor language version change";
		}
		else {
			message = "Program User Data requires a processor language change to:\n" + newLangName;
		}
		ve.setDetailMessage(message);
		return ve;
	}
Language specified by languageName was not found.  Check for
valid language translation/migration.  Old language version specified by
languageVersion.
@param e language not found exception
@return true if language upgrade required
@throws LanguageNotFoundException if a suitable replacement language not found
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/database/ProgramUserDataDB.java