On 14 Nov 2018, at 16:08, Vincent Massol
<vincent(a)massol.net> wrote:
On 14 Nov 2018, at 15:58, Eduard Moraru
<enygma2002(a)gmail.com> wrote:
On Tue, Nov 13, 2018 at 3:21 PM Vincent Massol <vincent(a)massol.net> wrote:
On 13 Nov 2018, at 11:58, Vincent Massol
<vincent(a)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/m…).
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).
(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(a)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(a)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(a)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.…
>>>>>>
>>>>>> 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(a)massol.net>
>>>>> wrote:
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> On 12 Nov 2018, at 16:52, Vincent Massol
<vincent(a)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…
>>>>>>> (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…
>>>>>>> (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(a)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/in…
>>>>>>> )
>>>>>>>>>
>>>>>>>>> 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(a)xwiki.com)
>>>> Research & Development Engineer at XWiki SAS
>>>> Committer on the
XWiki.org project