Magento-lts: Thoughts on updating minimum MySQL version supported?

Created on 29 Sep 2016  Â·  21Comments  Â·  Source: OpenMage/magento-lts

MySQL versions older than 5.5 are no longer supported by Oracle. Newer versions add features like fulltext index support on InnoDB tables, ALTER TABLE ALGORITHM=INPLACE, generated columns, etc. Too many new features to name. Also to support things like Galera cluster it is necessary to drop support for MyISAM tables. However, to drop MyISAM support we need to require at least MySQL 5.6 to support fulltext index for catalogsearch module. Before I start creating PRs I'd like to establish what the new minimum MySQL version should be. My suggestion would be 5.6.

Question help wanted

Most helpful comment

as much as I would like that, as long as M1 is not out of official support, I would see this as a BC break, as people could not "simply" switch over

All 21 comments

as much as I would like that, as long as M1 is not out of official support, I would see this as a BC break, as people could not "simply" switch over

Right, but my thoughts are that the people switching over to magento-lts would have a pretty good overlap with the people already using 5.6+ or that are capable of upgrading. This would open the door for officially supporting Galera cluster which would be pretty awesome. Or... we can keep supporting MySQL 4 just in case anyone out there is using it and wants to switch over. :-D

+1 to what @colinmollenhour said. Guess we might have to wait until M1 is out of official support period.

With the focus of this project to be a Lts version of m1 I would recommend staying with the requirements of mainline. While I agree that maintaining MySQL 4.1+ is a little ludicrous it would be my vote to be 100â„… compatible with mainline for that drop in support.

Another option would be to add MySQL 5.6 or postgresql support as a separate db adapter.. but imho leave mysql4.

@alexkirsch The db adapter already supports 5.6 so no new code is necessary, it is just a project goal decision. The difference dropping old versions of MySQL is being able to get out of the 2000s and use useful new features that I already mentioned and support Galera cluster.

I would like to drop MySQL 4 support. Maybe we can create a new features branch / repo? And keep lts fixes in sync with the features branch /repo?

I wouldn't agree with fragmenting the project into multiple branches since resources are so limited. That is, I personally wouldn't bother committing improvements to anything but the master branch and I wouldn't expect others too either.

Agreed - especially since we're already using branches to support multiple minor versions. However, there might be room for creating a new minor version for BC breaks like this, which would follow whatever version "master" is in case Magento _does_ at some point come out with another minor version for 1.*

+1 to what @colinmollenhour said

+1 for dropping old MySQL support.

If you want to contribute it, I created the https://github.com/OpenMage/magento-ff repo as a branch which accepts BC breaking changes.

So I see now 3 choices.

  • you contribute it to this new repo
  • you wait till official magento support has ended, and there will not be a new magento version.
  • one of the other maintainers accepts it as part of this repository

Why I am so hard with this:
people changing to LTS are most probably people who are not able to upgrade to Magento2 in less then 3 years. they are maybe also with other things more then 3 years behind. And especially MySql is one of the things people dont always update as long as it works, I have rarely seen Shops with one which was not at least 3 years old. Dropping Support for older then 5.5 may be ok, but also for 5.5 is an absolutely no

Thanks, but I already stated that I won't be contributing patches to more than one branch/repo/project. I understand the reasoning between having an LTS and a FF project separately, but I have very little time as it is and don't expect two separate such projects to be able to survive until Magento Inc lets go of M1, which I don't expect will happen for a long long time.

+1 for 5.6

Stay with the minimum requirements of M1? Take a look here: http://docs.magento.com/m1/ce/user_guide/magento/system-requirements.html

It says MySQL 5.6 and PHP 5.4. So no reason to maintain PHP <5.4 array-syntax for example anymore and start using MySQL 5.6 features. Colin, you have my +1.

+1 for MySQL 5.6

@Flyingmana and others, do you have customers still running on MySQL 5.5? Which are not willing to upgrade?

If Magento is officially stating that MySQL 5.6 is a requirement I personally would go for it.

But maybe we should start doing it in steps. First raise the requirement to 5.5 and adapt the code.
Then see what benefit do we have in moving to 5.6 ?

+1 for MySQL 5.6

Addressed in PR #507 (PHP 5.6-7.1 and MySQL 5.6+). PHP 7.2 should be supported after mcrypt issue addressed (different PR).

Time did fly, and I think smaller BC breaks are not an Issue anymore.
Also running something lower then MySQL 5.6 in times of general usage of SSDs is not recommended anyway.

So full support from me now to do this.

Maybe we can add this info to the readme (minimum requirements)

And in parallel list the maximum requirements (what is the latest version that is supported)

See #515

For instance I would not know right now what the latest mysql version is that I can use

Was this page helpful?
0 / 5 - 0 ratings