Hi everyone, I reactivate this thread because of some issues with Oracle 12. We announced in November 2018 that we supported Oracle 12 and at that time we said that we needed to test properly XWiki with Oracle 12. Apparently we didn't really perform such test and we obtained a first major issue with it in April 2019: https://jira.xwiki.org/browse/XWIKI-16327 From what I understand and what Ilie said on the chat this issue basically prevents from using XWiki with Oracle 12 right now. FTR even if we announced supporting Oracle 12, for now we only perform some automated docker test with Oracle 11 (see: https://dev.xwiki.org/xwiki/bin/view/Community/Testing/DockerTesting/#HConfi...). So I propose that for now we downgrade to Oracle 11 in https://dev.xwiki.org/xwiki/bin/view/Community/SupportStrategy/DatabaseSuppo... until we prove that XWiki can indeed be used with Oracle 12. This involves at least to fix XWIKI-16327 and to perform a manual testing of XWiki with Oracle 12. WDYT? Simon On 15/11/2018 08:27, Vincent Massol wrote:
On 14 Nov 2018, at 16:08, Vincent Massol <vincent@massol.net> wrote:
On 14 Nov 2018, at 15:58, Eduard Moraru <enygma2002@gmail.com> wrote:
On Tue, Nov 13, 2018 at 3:21 PM Vincent Massol <vincent@massol.net> wrote:
On 13 Nov 2018, at 11:58, Vincent Massol <vincent@massol.net> wrote:
There are 2 questions here: * Should we add support for MariaDB? And if so which versions. Just found that there’s an official docker image for it so it should be relatively easy to support MariaDB in our docker-based testing framework: https://hub.docker.com/_/mariadb/ (TestContainers also has a wrapper now for MariaDB: https://github.com/testcontainers/testcontainers-java/tree/master/modules/ma...). Note that the MariaDB versions don’t match the MySQL versions.
FTR, I’ve tried adding support for MariaDB and it’s currently not working, because of https://github.com/testcontainers/testcontainers-java/issues/949. But we could provide a PR to them with not so big efforts or using a GenericContainer (less nice).
Maybe I'm misunderstanding, but it looks like we're mixing XWiki's support of the MariaDB database itself with XWiki's test infrastructure's capability to support a MariaDB database container, which looks a bit off-topic to me. I get that we need it integrated in our tests to detect anomalies, but I don't really see it as an eliminatory criterion.
I agree. Some comments:
1) This thread was not about deciding which DB to support. It was to define a strategy to be more explicit in the versions that we support for the various already supported DBs. 2) I also started this thread because the goal is to automate the tests. If the idea is to add more work for manual tests then the answer is no, we don’t want to increase the # of DBs we support since we don’t have the manpower to do that. At least I would be against it simply because we can’t do it for practical purposes. 3) MariaDB support in TC is not a big deal, as I mentioned already (there are several ways to fix it).
BTW on this point, the issue I had was fixed in https://github.com/testcontainers/testcontainers-java/pull/950 (just need to wait for the next release to get it now, shouldn’t be too long).
Thanks -Vincent
4) As I said on this thread, there are only 2 questions to answer from my POV: * Should we add support for MariaDB? And if so which versions. * Should we drop support for MySQL?
Thanks -Vincent
Thanks, Eduard
Thanks -Vincent
* Should we drop support for MySQL?
Thanks -Vincent
On 13 Nov 2018, at 11:50, Guillaume Delhumeau < guillaume.delhumeau@xwiki.com> wrote:
Hello,
We are in a weird situation where we don't say we support MariaDB but "the latest MySQL version of stable Debian repository", which is currently... MariaDB [1]
So we need to update our strategy about this fact. I am currently setting up a server with debian 9 (stable) and I don't know if I should install MySQL from the Oracle repository our continue with the standard debian package (MariaDB).
On my side, I am not against aligning ourself to debian. Basically, all users installing XWiki with our Debian packages are using MariaDB for a year now [2], and we never encounter any problem so far.
Thanks,
[1] https://packages.debian.org/stretch/default-mysql-server (dep: mariadb-server-10.1) [2] https://www.debian.org/News/2017/20170617.en.html
Le lun. 12 nov. 2018 à 18:54, Thomas Mortagne < thomas.mortagne@xwiki.com> a écrit :
> Indeed mysql-server package (version 5.5.9999) leads to > mariadb-server-10.1 in current stretch repository. > > What is surprising is that this is not the case for sid which is more > or less supposed to be the future. It's also not the case in Ubuntu > which is doing the same thing as sid. > On Mon, Nov 12, 2018 at 6:22 PM Eduard Moraru <enygma2002@gmail.com> > wrote: >> >> I am not up to date on the topic, but I would like to add the fact that >> Debian 9 ("stretch") has actually dropped MySQL and moved officially to >> MariaDB, forcefully migrating existing MySQL installed versions to > MariaDB. >> >> > https://www.debian.org/releases/stable/amd64/release-notes/ch-whats-new.en.h... >> >> The default mysql-server package now redirects to MariaDB instead. >> >> If we are going to follow Debian's lead, we might want to at least > consider >> this move. >> >> Thanks, >> Eduard >> >> On Mon, Nov 12, 2018 at 6:38 PM Vincent Massol <vincent@massol.net> > wrote: >> >>> >>> >>>> On 12 Nov 2018, at 16:52, Vincent Massol <vincent@massol.net> wrote: >>>> >>>> So we need to conclude on this thread. I’m proposing to update the > page >>> with: >>>> >>>> * HSQLDB - Latest only >>>> * MySQL - latest of oldstable/stable/unstable from >>> > https://packages.debian.org/search?keywords=mysql-server&searchon=names&exac... >>> (i.e. latest of 5.5.x and 5.7.x today) >>>> * PostgreSQL - latest of oldstable/stable/unstable fromhttps:// >>> packages.debian.org/search?keywords=postgresql&searchon=names&exact=1 >>> (i.e. latest of 9.4.x, 9.6.x and 11.x today) >>>> * Oracle - latest of 12.x (we currently test on 11.x AFAIK so we > need to >>> start testing on 12.x from now on) >>>> >>>> Note that by “support" we mean test on. And it’s not because a > version >>> is not supported that it doesn’t work nor that we won’t fix it if a > problem >>> happens. >>>> >>>> I hesitated a long time for the mysql/pgsql versions since I wanted > only >>> a single version supported, but since we provide a debian packaging it >>> makes sense to test the versions defined by the debian repos, and now > that >>> we have automated functional tests on various configurations, we can > test >>> on them. BTW I suggest we run all tests on the latest version only > (i.e. >>> 5.7.x for mysql and 11.x for postgresql, and move to mysql 8.x when we > fix >>> the bug on it) and then we do smoke tests on the other versions. >>>> >>>> Let me know quickly if you have a problem with this strategy since > I’d >>> like to update the page + add the configs in our CI tests. >>> >>> FYI, I’ve now updated the page at >>> https://dev.xwiki.org/xwiki/bin/view/Community/DatabaseSupportStrategy >>> (but I can update/revert if need be). >>> >>> Thanks >>> -Vincent >>> >>>> >>>> Thanks >>>> -Vincent >>>> >>>> >>>>> On 31 Oct 2018, at 09:06, Vincent Massol <vincent@massol.net> > wrote: >>>>> >>>>> Hi devs, >>>>> >>>>> We currently have >>> https://dev.xwiki.org/xwiki/bin/view/Community/DatabaseSupportStrategy >>>>> >>>>> However, it doesn’t say explicitly which versions we officially > support: >>>>> * For HSQLDB it says 2.3.3 which is wrong since the latest version > is >>> 2.4.1 >>>>> * For MySQL it says 5.x but doesn’t specify which specific > version(s) >>>>> * Same for other DBs >>>>> >>>>> We cannot really support every versions since supporting means > testing >>> too. >>>>> >>>>> So what I propose: >>>>> >>>>> Question 1: definition >>>>> >>>>> * We say we support the latest stable version of the databases for a >>> given version cycle >>>>> ** For MySQL, it’s the latest of the 5.x cycle, which is 5.7.24 as > of >>> today (see https://hub.docker.com/_/mysql/) >>>>> ** For PostgreSQL, it’s the latest of the 9.x cycle, which is > 9.6.10 >>> as of today (see https://hub.docker.com/_/postgres/) >>>>> ** For Oracle, it’s the latest of the 11.x cycle, which is > 11.2.0.4.0 >>> as of today (see >>> > https://www.oracle.com/technetwork/database/enterprise-edition/downloads/ind... >>> ) >>>>> >>>>> Question 2: review what we support >>>>> >>>>> * For MySQL I think we could also start supporting MySQL 8.x (ie the >>> latest version of that cycle). We have an issue open for it currently: >>> https://jira.xwiki.org/browse/XWIKI-15215 >>>>> * For PostgreSQL we could also start supporting versions 11.x (ie > the >>> latest version of that cycle) >>>>> * For Oracle, we could also start supporting versions 12.x (ie the >>> latest version of that cycle) >>>>> >>>>> Question 3: decide if we drop some support >>>>> >>>>> * Is there any cycle that we should support for? Right now I think > that >>> MySQL 5.x is still heavily used, same for postgreSQL 9.x I guess. Don’t >>> know for Oracle. >>>>> * Any idea? >>>>> >>>>> So WDYT about the 3 questions? >>>>> >>>>> Thanks >>>>> -Vincent >>>> >>> >>> > > > > -- > Thomas Mortagne >
-- Guillaume Delhumeau (guillaume.delhumeau@xwiki.com) Research & Development Engineer at XWiki SAS Committer on the XWiki.org project
-- Simon Urli Software Engineer at XWiki SAS simon.urli@xwiki.com More about us at http://www.xwiki.com