Open Viqsi opened 4 months ago
If it is dynamically conditional, then it's easy to check for and set a value to find out what we're dealing with. I'd prefer this so we don't have to uproot our dev environments. Especially the one for DMD, which would be a nightmare to redo. We should also show the SQL type/version along with the other on-page versions.
The differences between MariaDB 10.11 and MySQL 8 are pretty extensive: https://mariadb.com/kb/en/incompatibilities-and-feature-differences-between-mariadb-10-11-and-mysql-8/
Most notable concerns are:
Other than that it's mostly small subtle things to trip over, some of which we've made a point of avoiding previously (such as "CREATE OR REPLACE TABLE").
It is possible because of the above that we might have to insist on MariaDB. That would, of course, lead to all sorts of Politics fun.
It might be done. I have yet to get a working MySQL 8 server operating well enough to let me actually check that, though. What I do know is that the changes I made that should allow for MySQL 8 compatibility didn't break MariaDB. So there's that. It's implemented but untested.
Per discussion/agreement on Skype, @WValenti is working on setting up a MySQL 8 server on his own workstation to test this.
Bonus complication: MySQL 9 was released in July!
ISI last told us they were on MySQL 8 during a meeting in August, though, so maybe they haven't updated yet. Maybe. Possibly. We don't know for certain. (aargh)
ISI does not have MariaDB available, so we have to port our routines to MySQL 8.
The majority of the code should be fine. Should be. But we know there are subtle incompatibilities - especially in JSON handling - so this could get a little "interesting".
Related question - do we want to try to support both? I could see this leading to much wailing and gnashing of teeth and loss of hair and so I'm hesitant.