Generic mod install bug under mariadb

Started by mt, July 16, 2015, 03:18:28 PM

Previous topic - Next topic

mt

After changing mysql to mariadb i experienced install bugs from at last 2 mods:

- custom actions
- treasury

It seems mariadb chokes when a mod tries to install & init a database with a a "default => '' " line.

That means it tries to install an "undefined/clear" default value. This is a questionable action at all,
because a non defined value is by definition undefined, so this action is redundant and virtually
the installer tells the db that the default is not a default but not defined.

It seems mariadb is here more strict (version 10.x).

I think there are more mods out who will fail to install because that.

It removed the bogus default and then it installs fine as it should and there should be no side effect.

I have no idea how to put this note/error report but because it seems to effect some mods i like to report it
as general advise and how to fix it.

Illori

i cant speak for the dev team on this but since SMF does not actually support mariadb and as far as i know has not been tested on it i dont know that they will look into fixing this.

margarett

Latest MySQL versions are also more strict with default values. You are trying very old mods which probably also have problems with MySQL. The fix is to really to update the mods to comply with newer server requirements...
It's not really a bug in SMF...
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

QuoteOver 90% of all computer problems can be traced back to the interface between the keyboard and the chair

mt

#3
Yes, i am aware its not a smf bug.

Perhaps this should be added as a note to the mod area.

I think it is even setting depending because i have it not on all installs.
Latest debian version ships now with mariadb as sql default, so more will run such problems.

Edit: The setting invoking the missing default value in mariadb are "STRICT_TRANS_TABLES" and "NO_ENGINE_SUBSTITUTION".
This can be a sneaky glitch when using for example 2 commits to setup a table and in the first one, creating the new entry, is and field missing without
a default value. The sql server then counts that under strict rules as an invalid query.

As php dev, that setting should be today on i think to avoid running in that problem but on the production server i have it disabled.

margarett

Quote from: mt on July 16, 2015, 07:21:23 PM
Yes, i am aware its not a smf bug.
Errrmmmm my linktree says:
Simple Machines Community Forum » SMF Development » Bug Reports » Topic:  Generic mod install bug under mariadb
;D ;D ;D joking

Quote from: mt on July 16, 2015, 07:21:23 PM
Latest debian version ships now with mariadb as sql default, so more will run such problems.
Again, it's not just mariadb. MySQL has exactly the same issues...
Unfortunately there's not really much we can do, except to help users when problems arise. Most of these old MODs don't even have a license which allows fork them. And even if they did, we simply don't have the manpower to keep these updated (heck, we can't even keep our own MODs updated :P let alone other user's MODs)
Se forem conduzir, não bebam. Se forem beber... CHAMEM-ME!!!! :D

QuoteOver 90% of all computer problems can be traced back to the interface between the keyboard and the chair

Advertisement: