View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|16429||Development||Other||public||2020-06-25 19:30||2020-06-26 08:52|
|Summary||16429: Add config variable to force MyISAM engine in CREATE TABLE statements in MySQL|
When using MySQL replication on a LimeSurvey MySQL database, the default storage engine variable is ignored. This makes it so that the replication could use InnoDB (if that is the replication's default) engine when creating lime_survey_xxx tables. If these have lots of columns (see https://dev.mysql.com/doc/refman/8.0/en/column-count-limit.html), this causes replication to error and halt.
|Tags||No tags attached.|
I don't check a lot but : if mysqlEngine is set to InnoDB : we must use InnoDB.
If there are reason to force InnoDB or MyISAM in create table statement (token and survey) : why not force it always ?
I mean : why adding a config var ?
@DenisChenu: you have a point there. However, since this is kind of an edge case (only if you are using MySQL replication with the replication's default engine on InnoDB), I thought adding a new config variable would be the least intrusive and has 0% chance of breaking things.
In 3.X :
In 4.X :
Then you broke less things with