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/#HConfigurationsoptions).
So I propose that for now we downgrade to Oracle 11 in
https://dev.xwiki.org/xwiki/bin/view/Community/SupportStrategy/DatabaseSupportStrategy
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 <[email protected]> wrote:
On 14 Nov 2018, at 15:58, Eduard Moraru <[email protected]> wrote:
On Tue, Nov 13, 2018 at 3:21 PM Vincent Massol <[email protected]> wrote:
On 13 Nov 2018, at 11:58, Vincent Massol <[email protected]> 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/mariadb).
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 <
[email protected]> 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 <
[email protected]> 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 <[email protected]>
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.html#mariadb-replaces-mysql
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 <[email protected]>
wrote:
On 12 Nov 2018, at 16:52, Vincent Massol <[email protected]>
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&exact=1
(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 <[email protected]>
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/index.html
)
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 ([email protected])
Research & Development Engineer at XWiki SAS
Committer on the XWiki.org project
--
Simon Urli
Software Engineer at XWiki SAS
[email protected]
More about us at http://www.xwiki.com