innodb_file_per_table should be set to ON for all mysql installations

Bug #1660722 reported by Mike Bayer
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
tripleo
Fix Released
High
Alex Schultz

Bug Description

MySQL and MariaDB have until very recently defaulted innodb_file_per_table to OFF, which means that all innodb tables get built into a monolithic ibdata datafile, which is unshrinkable. That means no matter how little data is in the database, if the DB was once lots of rows, that file will be in the tens or hundreds of gigs and it is then forever, until the database is completely dumped/restored to a new data directory. In particular RHEL still releases Mariadb 5.5.x which is still defaulting this to OFF. Tripleo should be ensuring this flag is ON for both vanilla mysql/mariadb and galera variants.

Changed in tripleo:
assignee: nobody → Mike Bayer (zzzeek)
status: New → In Progress
Revision history for this message
Mike Bayer (zzzeek) wrote :
Ben Nemec (bnemec)
Changed in tripleo:
milestone: none → ocata-rc1
importance: Undecided → High
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to puppet-tripleo (master)

Reviewed: https://review.openstack.org/427310
Committed: https://git.openstack.org/cgit/openstack/puppet-tripleo/commit/?id=621ea892a299d2029348db2b56fea1338bd41c48
Submitter: Jenkins
Branch: master

commit 621ea892a299d2029348db2b56fea1338bd41c48
Author: Mike Bayer <email address hidden>
Date: Tue Jan 31 12:13:29 2017 -0500

    set innodb_file_per_table to ON for MySQL / Galera

    InnoDB uses a single file by default which can grow to be
    tens/hundreds of gigabytes, and is not shrinkable even
    if data is deleted from the database.

    Best practices are that innodb_file_per_table is set to ON
    which instead stores each database table in its own file, each of
    which is also shrinkable by the InnoDB engine.

    Closes-Bug: #1660722
    Change-Id: I59ee53f6462a2eeddad72b1d75c77a69322d5de4

Changed in tripleo:
status: In Progress → Fix Released
Changed in tripleo:
status: Fix Released → Confirmed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to puppet-tripleo (master)

Reviewed: https://review.openstack.org/428435
Committed: https://git.openstack.org/cgit/openstack/puppet-tripleo/commit/?id=3f7e74ab24bb43f9ad7e24e0efd4206ac6a3dd4e
Submitter: Jenkins
Branch: master

commit 3f7e74ab24bb43f9ad7e24e0efd4206ac6a3dd4e
Author: Alex Schultz <email address hidden>
Date: Thu Feb 2 21:29:32 2017 +0000

    Revert "set innodb_file_per_table to ON for MySQL / Galera"

    This reverts commit 621ea892a299d2029348db2b56fea1338bd41c48.

    We're getting performance problems on SATA disks.

    Change-Id: I30312fd5ca3405694d57e6a4ff98b490de388b92
    Closes-Bug: #1661396
    Related-Bug: #1660722

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to instack-undercloud (master)

Related fix proposed to branch: master
Review: https://review.openstack.org/428843

Changed in tripleo:
assignee: Mike Bayer (zzzeek) → Alex Schultz (alex-schultz)
status: Confirmed → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to instack-undercloud (master)

Reviewed: https://review.openstack.org/428843
Committed: https://git.openstack.org/cgit/openstack/instack-undercloud/commit/?id=578599f2eed3611b66ed96031a8e6260716b4b79
Submitter: Jenkins
Branch: master

commit 578599f2eed3611b66ed96031a8e6260716b4b79
Author: Alex Schultz <email address hidden>
Date: Fri Feb 3 11:09:34 2017 -0700

    Increase sync timeout for nova db syncs

    We have seen on lower quality hardware that the nova db syncs can take
    an excessive amount of time. In order to still support deploying on this
    hardware, let's increase the timeout from the default 300 seconds to 900
    seconds to allow for this less performant gear. It is not recommended to
    increase this past 900 as if we start hitting this then we need to be
    understanding what is occuring in these db syncs. 300 seconds should be
    enough time to setup a database especially on install. But there are
    cases for upgrades or slower disks where it can exceed 300 seconds.

    Change-Id: I77507c638237072e38d9888aff3da884aeff0b59
    Related-Bug: #1660722
    Related-Bug: #1661396

Changed in tripleo:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to puppet-tripleo (master)

Reviewed: https://review.openstack.org/428846
Committed: https://git.openstack.org/cgit/openstack/puppet-tripleo/commit/?id=a0983a4ed743e9d0ca152c29303cce73a1ca5113
Submitter: Jenkins
Branch: master

commit a0983a4ed743e9d0ca152c29303cce73a1ca5113
Author: Alex Schultz <email address hidden>
Date: Fri Feb 3 18:18:42 2017 +0000

    Revert "Revert "set innodb_file_per_table to ON for MySQL / Galera""

    This reverts commit 3f7e74ab24bb43f9ad7e24e0efd4206ac6a3dd4e.

    After identifying how to workaround the performance issues on the
    undercloud, let's put this back in. Enabling innodb_file_per_table is
    important for operators to be able to better manage their databases.

    Change-Id: I435de381a0f0e3ef221e498f442335cdce3fb818
    Depends-On: I77507c638237072e38d9888aff3da884aeff0b59
    Closes-Bug: #1660722

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/puppet-tripleo 6.2.0

This issue was fixed in the openstack/puppet-tripleo 6.2.0 release.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.