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=nam…
(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.
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