Forcing InnoDB over MyISAM

More
1 year 5 days ago - 1 year 5 days ago #156072 by blocka
blocka created the topic: Forcing InnoDB over MyISAM
I'm implementing data encryption at rest with mariaDB, and thus I require that all tables be created as InnoDB, instead of myISAM.

When I activate a survey, the response table is created as myISAM. I can see in MysqlSchema.php that the option for myISAM is hard coded into the createTable function.

While I can hack this of course, it won't persist across a future ComfortUpdate. While I could chattr the file to protect it from updates, it would be preferable if there was a config option to determine which database engine should be used.

The function looks like it could accept options:
public function createTable($table, $columns, $options = null) {
        if(empty($options))
        {
            $options='ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci';
        }


But I don't see where I could set this.

Any ideas?
Last Edit: 1 year 5 days ago by blocka.

Please Log in or Create an account to join the conversation.

More
11 months 4 weeks ago #156320 by olle
olle replied the topic: Forcing InnoDB over MyISAM
Feel free to construct a pull request with this feature.

Please Log in or Create an account to join the conversation.

More
2 months 3 days ago #167649 by TonisOrmisson
TonisOrmisson replied the topic: Forcing InnoDB over MyISAM

Please Log in or Create an account to join the conversation.

Start now!

Just create your account and start using Limesurvey today.

Register now
Join our Newsletter!