@mattab opened this Issue on November 19th 2013 Member

Mariadb is a fork of Mysql created when it was bought by Oracle. Oracle != !evil. MariaDB is an enhanced, drop-in replacement for MySQL.

Several users have reported in the forums and by email that Piwik runs under MariaDB. It would be great to setup Travis CI so it runs our Integration tests on MariaDB on latest PHP version.

Follow up of #4233

Task:

  • investigate if mariadb works on travis
  • enable build
  • make build green!
  • Maybe we should run both PDO and Mysqli on Mariadb

Other actions:

  • Update faq to mention mariadb compat.
  • update requirements page
  • blog official support, mention vision for other dbs

References

@halfdan commented on January 22nd 2014 Member

MariaDB is currently being discussed at Travis: https://github.com/travis-ci/travis-ci/issues/1081

Also: I vote against blowing up our build matrix to more builds. We're already using a lot of Travis' resources and should be more conservative. At some point we should drop MySQLi in favor of PDO.

@mattab commented on February 2nd 2014 Member

Great news, Travis CI supports MariaDB via apt!

See this comment: https://github.com/travis-ci/travis-ci/issues/1081#issuecomment-33871728

I suggest we setup Integration+Core+Plugins builds on MariaDB, using PDO only (let's not run mysqli as to save resources - but maybe we could check quickly whether it still works).

@mattab commented on July 22nd 2015 Member

Travis CI added support for MariaDB so we could enable it https://github.com/travis-ci/travis-ci/issues/1081

@quba commented on August 31st 2015 Contributor

@mattab: maybe we should consider enabling this build? We are using MariaDB + TokuDB on prod environments so would be nice to avoid regressions here. Cheers!

@gaumondp commented on August 31st 2015

Sorry to hijack the thread a bit but @quba , that would be very interesting to have something about your experience with TokuDB and Piwik !

@theyosh commented on November 28th 2015 Contributor

Hi,

Percona has bought TokuDB, and now you can install it through packages:
https://www.percona.com/doc/percona-server/5.6/installation/apt_repo.html

We use this at out work now, and it just works perfect.

Some settings that we have set for TokuDB are based on: http://code.openark.org/blog/mysql/tokudb-configuration-variables-of-interest

tokudb_commit_sync = 0
tokudb_fsync_log_period = 1000
tokudb_load_save_space = 1
default-storage-engine=TokuDB

Where tokudb_commit_sync = 0 makes it really fast, but also a bit unstable. If the mysql server crashes, you could loose some data that was still in memory.

@davidmarcus commented on December 1st 2020

@mattab Seems like this issue can be marked completed?

@tsteur commented on December 2nd 2020 Member

It's not completed because of continuous testing but I don't really think it's needed.

@sgiehl commented on December 2nd 2020 Member

@tsteur that would actually be quite simply to do. We only need to add the maria-db addon to the builds we want to run it with.
Should we run the all tests or the ui tests on maria db maybe?

@tsteur commented on December 2nd 2020 Member

@sgiehl personally I would not add yet another build job. They should be compatible with MySQL anyway and I reckon should there ever be an issue then we can still investigate that issue and fix it if needed etc. For sure lets not run UI tests on it as it's slow etc. When this becomes a priority we'd probably do integration and system tests.

@theyosh commented on December 2nd 2020 Contributor

For what it is worth: I would say that MariaDB is just a drop-in replacement, and should behave like normal MySQL. Therefore adding more build jobs it not that useful.

The same thing I did when I started using TokuDB in the past. They (TokuDB developers) stated that it was a drop-in replacement, which should be 100% compatible with MySQL. So I just start using TokuDB, and up till now, it still works.

So I agree with @tsteur .

@tsteur commented on December 2nd 2020 Member

Great to hear re TokuDB @theyosh by any chance do you have any comparison of performance or in general compared to standard MySQL or MariaDB? And if it's just a "very happy and things run smooth and fast " comment :)

@theyosh commented on December 2nd 2020 Contributor

I do not have any comparison. I had posted in the past in the forum about performances. But that was way back. I just did not switched back. As TokuDB is really a drop-in replacement, I use it for all my MySQL stuff. :) They stated about 4 times less space on disk (on the fly compression) and 20 times faster. I can confirm that the storage usage is about 3.5 times lower. And the speed is really fast. I can't say 20 times faster, but certain about 5 times. So cleaning a week becomes about 1 day.
But I am not sure how the state is right now, as Percona has purchased it. And I have not tried to upgrade my MySQL server to version 8 which is the latest. I am still on the 5.7 version.

And as far as I know, MySQL and MariaDB are not that different in speed. In the beginning MariaDB was a bit faster at certain points. But not really something that I would say it is superior.

But back on topic. I would stick to the policy, we test 'standaard' MySQL. And other party that claims to be a drop-in replacement, could be used at own risk. No active support.

@tsteur commented on December 2nd 2020 Member

Thanks for the feedback @theyosh very appreciated.

And yes agreed . I'll close the issue for now and should it ever become an issue we can always reopen.

This Issue was closed on December 2nd 2020
Powered by GitHub Issue Mirror