Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-43502

Problems upgrading for sites having es_es or es_ar as default language

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Won't Fix
    • Affects Version/s: 2.3.10, 2.4.8, 2.5.3, 2.6, 2.7
    • Fix Version/s: None
    • Component/s: Installation
    • Labels:
    • Workaround:
      Hide

      Any of these should be enough if this problem is happening in your site:

      1) add "&lang=es" to the admin/index.php notification page.
      2) change the admin user language to "es".
      3) set "$CFG->skiplangupgrade = true;" in config.php

      Once done it's highly advisable to change both the default site lang and the admin lang to "es". Those are the 2 really important to be set for general operations and upgrade.

      Show
      Any of these should be enough if this problem is happening in your site: 1) add "&lang=es" to the admin/index.php notification page. 2) change the admin user language to "es". 3) set "$CFG->skiplangupgrade = true;" in config.php Once done it's highly advisable to change both the default site lang and the admin lang to "es". Those are the 2 really important to be set for general operations and upgrade.
    • Affected Branches:
      MOODLE_23_STABLE, MOODLE_24_STABLE, MOODLE_25_STABLE, MOODLE_26_STABLE, MOODLE_27_STABLE

      Description

      Some days ago both es_es and es_ar were deleted completely from both AMOS and downloads (see MDLSITE-2668).

      It always was assumed that any user/course having such languages selected were not going to be affected because the older (now deleted) would exist forever in the dataroot/lang area and, in case of deletion from the UI, uses would be converted or default to the site lang.

      But it seems that there are sites out there having any of them as default site language. And those sites are becoming sort of "locked" in the upgrade process with error:

      Debug info: es_es
      Error code: cannotfindcomponent
       
      Stack trace:
          line 785 of /lib/componentlib.class.php: lang_installer_exception thrown
          line 640 of /lib/componentlib.class.php: call to lang_installer->install_language_pack()
          line 45 of /admin/tool/langimport/lib.php: call to lang_installer->run()
          line 1451 of /lib/upgradelib.php: call to tool_langimport_preupgrade_update()
          line 1527 of /lib/upgradelib.php: call to upgrade_language_pack()
          line 338 of /admin/index.php: call to upgrade_core()
      

      At the same time, it's impossible (not easy) for them to go to the admin interface and change their default language, because the upgrade process is invoked continuously.

      So, this is about:

      1) Look for some workaround and inform about it in the forums.

      2) stables: Provide some exception on upgrade for those (child) languages. Nasty, but it's the only way to allow the upgrade to continue, unless we decide to change it and allow to continue on error in general (don't think it's a good idea right now).

      3) master only: Provide a proper upgrade step so any site/course/user use of the deleted langs is moved to "es". And it's documented in the release notes.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              stronk7 Eloy Lafuente (stronk7)
              Reporter:
              stronk7 Eloy Lafuente (stronk7)
              Participants:
              Component watchers:
              Matteo Scaramuccia, Andrew Nicols, Jun Pataleta, Michael Hawkins, Shamim Rezaie, Simey Lameze
              Votes:
              3 Vote for this issue
              Watchers:
              5 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: