Details

    Description

      We should support enforce_storage_engine, like Percona Server 5.5/5.6 has. Description: http://www.percona.com/doc/percona-server/5.6/management/enforce_engine.html

      Use case: To improve management – eg. enforce_storage_engine=InnoDB – this ensures that people don't create MyISAM tables by accident.

      Customer requests: There have been no customer requests for this yet from MariaDB Corporation.

      1. It is however likely used in HPCloud, DBaaS – see: https://github.com/saurabhsurana/trove-installer/blob/f7cf7824fb7536b16da073ba7fdb0e717da26fb1/saltstack/states/trove/taskmanager/mysql.config.template

      2. We have had a migration from MariaDB 10 to Percona Server 5.6 at a bank in Germany performed by FromDual for this very reason – http://www.fromdual.ch/de/node/1074

      Attachments

        Issue Links

          Activity

            colin Colin Charles created issue -
            elenst Elena Stepanova made changes -
            Field Original Value New Value
            Affects Version/s 10.0.14 [ 17101 ]
            Issue Type Bug [ 1 ] Task [ 3 ]

            Setting the target version to 10.0 because Colin initially specified 10.0.14 as an affected version (it's gone now after moving from bug to task).

            elenst Elena Stepanova added a comment - Setting the target version to 10.0 because Colin initially specified 10.0.14 as an affected version (it's gone now after moving from bug to task).
            elenst Elena Stepanova made changes -
            Fix Version/s 10.0 [ 16000 ]
            jplindst Jan Lindström (Inactive) made changes -
            Assignee Jan Lindström [ jplindst ]

            Colin, is this important for current customers? I will merge this to 10.x only if there is clear use case for this on customer environment(s).

            R: Jan

            jplindst Jan Lindström (Inactive) added a comment - Colin, is this important for current customers? I will merge this to 10.x only if there is clear use case for this on customer environment(s). R: Jan
            jplindst Jan Lindström (Inactive) made changes -
            Status Open [ 1 ] In Progress [ 3 ]

            revno: 4565
            committer: Jan Lindström <jplindst@mariadb.org>
            branch nick: 10.0-innodb
            timestamp: Mon 2015-01-19 13:33:46 +0200
            message:
            MDEV-6858: enforce_storage_engine option

            Merge from Percona Server enforced use of a specific storage engine
            authored by Stewart Smith.

            See patch attached.

            jplindst Jan Lindström (Inactive) added a comment - revno: 4565 committer: Jan Lindström <jplindst@mariadb.org> branch nick: 10.0-innodb timestamp: Mon 2015-01-19 13:33:46 +0200 message: MDEV-6858 : enforce_storage_engine option Merge from Percona Server enforced use of a specific storage engine authored by Stewart Smith. See patch attached.
            jplindst Jan Lindström (Inactive) made changes -
            Attachment enforce.diff [ 36800 ]

            Patch attached on MDEV.

            jplindst Jan Lindström (Inactive) added a comment - Patch attached on MDEV.
            jplindst Jan Lindström (Inactive) made changes -
            Assignee Jan Lindström [ jplindst ] Sergei Golubchik [ serg ]
            Status In Progress [ 3 ] In Review [ 10002 ]
            serg Sergei Golubchik made changes -
            Fix Version/s 10.1 [ 16100 ]
            Fix Version/s 10.0 [ 16000 ]
            colin Colin Charles made changes -
            Description We should support enforce_storage_engine, like Percona Server 5.5/5.6 has. Description: http://www.percona.com/doc/percona-server/5.6/management/enforce_engine.html We should support enforce_storage_engine, like Percona Server 5.5/5.6 has. Description: http://www.percona.com/doc/percona-server/5.6/management/enforce_engine.html

            Use case: To improve management -- eg. enforce_storage_engine=InnoDB -- this ensures that people don't create MyISAM tables by accident.

            Customer requests: There have been no customer requests for this yet from MariaDB Corporation.

            1. It is however likely used in HPCloud, DBaaS -- see: https://github.com/saurabhsurana/trove-installer/blob/f7cf7824fb7536b16da073ba7fdb0e717da26fb1/saltstack/states/trove/taskmanager/mysql.config.template

            2. We have had a migration from MariaDB 10 to Percona Server 5.6 at a bank in Germany performed by FromDual for this very reason -- http://www.fromdual.ch/de/node/1074
            colin Colin Charles added a comment -

            and assuming we want to improve upon it, some feedback:
            14:14 < shinguz> I really love that feature
            14:14 < shinguz> but percona implemented it too strcit
            14:14 < shinguz> you should be capable to enforce (e.g. with super)
            14:16 < shinguz> bytee: enforcing for "normal" users is good. to get away from
            myisam to [innodb|tokudb|...]
            14:16 < shinguz> but sometimes you have to overrule it. e.g. mysql.user table
            14:17 < shinguz> so I think:
            14:17 < shinguz> enforce_default_storage engine should count for all but you
            can disable it on session level for user with super.
            14:17 < shinguz> so you do not have to restart the database
            14:17 < shinguz> that is the way I think it make most sense...?

            colin Colin Charles added a comment - and assuming we want to improve upon it, some feedback: 14:14 < shinguz> I really love that feature 14:14 < shinguz> but percona implemented it too strcit 14:14 < shinguz> you should be capable to enforce (e.g. with super) 14:16 < shinguz> bytee: enforcing for "normal" users is good. to get away from myisam to [innodb|tokudb|...] 14:16 < shinguz> but sometimes you have to overrule it. e.g. mysql.user table 14:17 < shinguz> so I think: 14:17 < shinguz> enforce_default_storage engine should count for all but you can disable it on session level for user with super. 14:17 < shinguz> so you do not have to restart the database 14:17 < shinguz> that is the way I think it make most sense...?
            serg Sergei Golubchik made changes -
            Assignee Sergei Golubchik [ serg ] Jan Lindström [ jplindst ]
            Status In Review [ 10002 ] Stalled [ 10000 ]
            jplindst Jan Lindström (Inactive) made changes -
            Status Stalled [ 10000 ] In Progress [ 3 ]

            Hi Serg,

            Better to review this again as implementation is totally different, I tried to follow default_storage_engine implementation.

            http://lists.askmonty.org/pipermail/commits/2015-March/007538.html

            jplindst Jan Lindström (Inactive) added a comment - Hi Serg, Better to review this again as implementation is totally different, I tried to follow default_storage_engine implementation. http://lists.askmonty.org/pipermail/commits/2015-March/007538.html
            jplindst Jan Lindström (Inactive) made changes -
            Assignee Jan Lindström [ jplindst ] Sergei Golubchik [ serg ]
            Status In Progress [ 3 ] In Review [ 10002 ]
            serg Sergei Golubchik made changes -
            Assignee Sergei Golubchik [ serg ] Jan Lindström [ jplindst ]
            Status In Review [ 10002 ] Stalled [ 10000 ]
            jplindst Jan Lindström (Inactive) made changes -
            Status Stalled [ 10000 ] In Progress [ 3 ]
            jplindst Jan Lindström (Inactive) added a comment - http://lists.askmonty.org/pipermail/commits/2015-March/007550.html
            jplindst Jan Lindström (Inactive) made changes -
            Assignee Jan Lindström [ jplindst ] Sergei Golubchik [ serg ]
            Status In Progress [ 3 ] In Review [ 10002 ]
            serg Sergei Golubchik made changes -
            Assignee Sergei Golubchik [ serg ] Jan Lindström [ jplindst ]
            Status In Review [ 10002 ] Stalled [ 10000 ]

            commit 8249dcaaebf8cd1944bd4ab7ccaa8b199e76d6f9
            Author: Jan Lindström <jan.lindstrom@mariadb.com>
            Date: Tue Mar 10 08:28:51 2015 +0200

            MDEV-6858: enforce_storage_engine option

            Merge from Percona Server enforced use of a specific storage engine
            authored by Stewart Smith.

            Modified to be session variable and modifiable only by SUPER. Use
            similar implementation as default_storage_engine.

            jplindst Jan Lindström (Inactive) added a comment - commit 8249dcaaebf8cd1944bd4ab7ccaa8b199e76d6f9 Author: Jan Lindström <jan.lindstrom@mariadb.com> Date: Tue Mar 10 08:28:51 2015 +0200 MDEV-6858 : enforce_storage_engine option Merge from Percona Server enforced use of a specific storage engine authored by Stewart Smith. Modified to be session variable and modifiable only by SUPER. Use similar implementation as default_storage_engine.
            jplindst Jan Lindström (Inactive) made changes -
            Component/s OTHER [ 10125 ]
            Fix Version/s 10.1.4 [ 18400 ]
            Fix Version/s 10.1 [ 16100 ]
            Resolution Fixed [ 1 ]
            Status Stalled [ 10000 ] Closed [ 6 ]
            ratzpo Rasmus Johansson (Inactive) made changes -
            Workflow MariaDB v2 [ 55519 ] MariaDB v3 [ 66513 ]
            elenst Elena Stepanova made changes -
            elenst Elena Stepanova made changes -

            Is this backported to 10.0.x or really only in 10.1.4 as the "Fix version" says?

            otto Otto Kekäläinen added a comment - Is this backported to 10.0.x or really only in 10.1.4 as the "Fix version" says?

            At least MariaDB 10.0.20 complains ```[ERROR] /usr/sbin/mysqld: unknown variable 'enforce_storage_engine=InnoDB'``` so it is not backported to 10.0 series.

            otto Otto Kekäläinen added a comment - At least MariaDB 10.0.20 complains ``` [ERROR] /usr/sbin/mysqld: unknown variable 'enforce_storage_engine=InnoDB'``` so it is not backported to 10.0 series.

            As the Fix version/s field states, it's 10.1 only. I don't know if such a thing can be backported into a long-after-GA version.

            elenst Elena Stepanova added a comment - As the Fix version/s field states, it's 10.1 only. I don't know if such a thing can be backported into a long-after-GA version.
            elenst Elena Stepanova made changes -
            elenst Elena Stepanova made changes -
            elenst Elena Stepanova made changes -
            serg Sergei Golubchik made changes -
            Workflow MariaDB v3 [ 66513 ] MariaDB v4 [ 132426 ]
            Roel Roel Van de Paar made changes -
            Roel Roel Van de Paar made changes -
            Roel Roel Van de Paar made changes -
            Roel Roel Van de Paar made changes -
            Labels enforce_storage_engine
            Roel Roel Van de Paar made changes -

            People

              jplindst Jan Lindström (Inactive)
              colin Colin Charles
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.