How to fix duplicate English language options in General System Settings after upgradeIssue <!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: #000000; } span { font-size: 12pt; font-family: Lato; color: #000000; } h2 { font-size: 24pt; font-family: Lato; color: black; } h3 { font-size: 18pt; font-family: Lato; color: black; } h4 { font-size: 14pt; font-family: Lato; color: black; } a { font-size: 12pt; font-family: Lato; color: #00718F; } a:hover { font-size: 12pt; color: #024F69; } a:target { font-size: 12pt; color: #032D42; } a:visited { font-size: 12pt; color: #00718f; } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } After upgrading your instance, you may see duplicate English language options in General System Settings as shown in the following image. You may also notice a duplicate record in the sys_user.preferred_language choice table with an empty value as shown in the next image. Release<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: #000000; } span { font-size: 12pt; font-family: Lato; color: #000000; } h2 { font-size: 24pt; font-family: Lato; color: black; } h3 { font-size: 18pt; font-family: Lato; color: black; } h4 { font-size: 14pt; font-family: Lato; color: black; } a { font-size: 12pt; font-family: Lato; color: #00718F; } a:hover { font-size: 12pt; color: #024F69; } a:target { font-size: 12pt; color: #032D42; } a:visited { font-size: 12pt; color: #00718f; } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } All supported releases Cause<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: #000000; } span { font-size: 12pt; font-family: Lato; color: #000000; } h2 { font-size: 24pt; font-family: Lato; color: black; } h3 { font-size: 18pt; font-family: Lato; color: black; } h4 { font-size: 14pt; font-family: Lato; color: black; } a { font-size: 12pt; font-family: Lato; color: #00718F; } a:hover { font-size: 12pt; color: #024F69; } a:target { font-size: 12pt; color: #032D42; } a:visited { font-size: 12pt; color: #00718f; } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } The issue occurs when the following three conditions are met: A Translation Plugin is installed on the instance (Plugin with ID starting with com.snc.i18n such as I18N: French - Canada Translations [com.snc.i18n.french-canada] or I18N: Finnish Translations).New translations are being loaded for that plugin as part of the upgrade.The name of the installed language has been customized in the Languages [sys_language] table. For example, the record with name French - Canada is changed to French (Canada) or the record with name Finnish is changed to Suomi. Technical informationWhen the upgrade loads with new translations for a language, there is code in the Script Include named 'TranslationLoader' [/sys_script_include.do?sys_id=2c52b4fcc0a801655a172610b6b8d4c5 ] that looks for the Language record in the sys_language table based on the installed Language plugin. With the [com.snc.i18n.french-canada] Plugin for example, the code is looking for the Language record with Name = 'french - canada'. If that Name has been customized, the below code returns 'undefined': this.languageName = pluginID.split('.')[3];var lName = this.languageName.replaceAll('_', ' ');lName = lName.replace(/-/g, ' - ');var scpl = new GlideRecord('sys_language');scpl.addQuery('name', lName);scpl.query();scpl.next();this.logger("Translation Log - getLanguageAbbreviation: " + scpl.id);return scpl.id; As a result, the script include named I18nUtils [/sys_script_include.do?sys_id=2cb39e4f0a0a0b0c0095bcfb0942bbdf ] is not able to find a related record in the Choice [sys_choice] table for [sys_user.preferred_language], the 'en' Language, and an empty (undefined) Value and ends up creating a record. The following can be seen observed in the upgrade app server logs: 2020-11-20 17:05:39 (725) worker.7 worker.7 txid=ea8d11a61b20 *** Script: Translation Log - getLanguageAbbreviation: undefined2020-11-20 17:05:39 (761) worker.7 worker.7 txid=ea8d11a61b20 *** Script: No preferred_language for undefined in English. Creating one. Resolution<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: #000000; } span { font-size: 12pt; font-family: Lato; color: #000000; } h2 { font-size: 24pt; font-family: Lato; color: black; } h3 { font-size: 18pt; font-family: Lato; color: black; } h4 { font-size: 14pt; font-family: Lato; color: black; } a { font-size: 12pt; font-family: Lato; color: #00718F; } a:hover { font-size: 12pt; color: #024F69; } a:target { font-size: 12pt; color: #032D42; } a:visited { font-size: 12pt; color: #00718f; } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Review your customization in the sys_language table and assess if it is necessary. If you want to keep the customization, do one of the following: Delete the choice record for sys_user.preferred_language with the en language and an empty valueMark the record as inactive. If the customization is not necessary, revert to the base system version, and then do one of the following: Delete the choice record for sys_user.preferred_language with the en language and an empty valueMark the record as inactive.