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).
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