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

Row format options removed

    XMLWordPrintable

    Details

    • Database:
      MySQL
    • Testing Instructions:
      Hide

      Requires --MDL-59100--.

      Run both DDL and DML tests:

      • vendor/bin/phpunit core_ddl_testcase lib/ddl/tests/ddl_test.php
      • vendor/bin/phpunit core_dml_testcase lib/dml/tests/dml_test.php

      For regression purposes too, it is wise to launch the tests above with the supported version of MariaDB and MySQL, including MySQL 8.

      To run a MySQL 8 env you can use https://github.com/moodlehq/moodle-docker with the following patch:

      # git diff db.mysql.yml
      diff --git a/db.mysql.yml b/db.mysql.yml
      index 368785f..d488b7c 100644
      --- a/db.mysql.yml
      +++ b/db.mysql.yml
      @@ -5,13 +5,11 @@ services:
             MOODLE_DOCKER_DBTYPE: mysqli
             MOODLE_DOCKER_DBCOLLATION: utf8mb4_bin
         db:
      -    image: mysql:5
      +    image: mysql:8.0.2
           command: >
                       --character-set-server=utf8mb4
                       --collation-server=utf8mb4_bin
      -                --innodb_file_format=barracuda
                       --innodb_file_per_table=On
      -                --innodb_large_prefix=On
           environment:
             MYSQL_ROOT_PASSWORD: "m@0dl3ing"
             MYSQL_USER: moodle
      

      Alternatively, you may run the MySQL 8 docker image directly:

      docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=moodle -d mysql:8.0.2 --character-set-server=utf8mb4 --collation-server=utf8mb4_bin --innodb_file_per_table=On
      

      Important: When testing on MySQL 8, test on 8.0.2 or lower. (See MDL-60793 for more info)

      Show
      Requires -- MDL-59100 --. Run both DDL and DML tests: vendor/bin/phpunit core_ddl_testcase lib/ddl/tests/ddl_test.php vendor/bin/phpunit core_dml_testcase lib/dml/tests/dml_test.php For regression purposes too, it is wise to launch the tests above with the supported version of MariaDB and MySQL, including MySQL 8. To run a MySQL 8 env you can use https://github.com/moodlehq/moodle-docker with the following patch: # git diff db.mysql.yml diff --git a/db.mysql.yml b/db.mysql.yml index 368785f..d488b7c 100644 --- a/db.mysql.yml +++ b/db.mysql.yml @@ -5,13 +5,11 @@ services: MOODLE_DOCKER_DBTYPE: mysqli MOODLE_DOCKER_DBCOLLATION: utf8mb4_bin db: - image: mysql:5 + image: mysql:8.0.2 command: > --character-set-server=utf8mb4 --collation-server=utf8mb4_bin - --innodb_file_format=barracuda --innodb_file_per_table=On - --innodb_large_prefix=On environment: MYSQL_ROOT_PASSWORD: "m@0dl3ing" MYSQL_USER: moodle Alternatively, you may run the MySQL 8 docker image directly: docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=moodle -d mysql:8.0.2 --character-set-server=utf8mb4 --collation-server=utf8mb4_bin --innodb_file_per_table=On Important: When testing on MySQL 8, test on 8.0.2 or lower. (See MDL-60793 for more info)
    • Affected Branches:
      MOODLE_34_STABLE
    • Fixed Branches:
      MOODLE_33_STABLE, MOODLE_34_STABLE
    • Epic Link:
    • Pull from Repository:
    • Pull Master Branch:
      m35_MDL-59099_MySQL8_InnoDB_Params_Removed

      Description

      In the MySQL 8.0 preview release:

      The following InnoDB file format configuration parameters were removed:

      innodb_file_format

      innodb_file_format_check

      innodb_file_format_max

      innodb_large_prefix

      File format configuration parameters were necessary for creating tables compatible with earlier versions of InnoDB in MySQL 5.1. Now that MySQL 5.1 has reached the end of its product lifecycle, the parameters are no longer required.

      The FILE_FORMAT column was removed from the INNODB_SYS_TABLES and INNODB_SYS_TABLESPACES Information Schema tables.

      https://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.html

      This breaks our environment tests which are looking for innodb_file_format being Barracuda

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Fix Release Date:
                  15/Jan/18