[Proposal] Update database support strategy

classic Classic list List threaded Threaded
33 messages Options
12
Reply | Threaded
Open this post in threaded view
|

[Proposal] Update database support strategy

vmassol
Administrator
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
Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

Simon Urli
Hi,

On 31/10/2018 09:06, Vincent Massol 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)

+1

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

+0 I don't really know how much effort it involves to ensure the support
of the latest version of each database and to fix the bugs accordingly.

>
> 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?
>

What about the cycles that are bundled in major LTS distributions?

Simon

> So WDYT about the 3 questions?
>
> Thanks
> -Vincent
>

--
Simon Urli
Software Engineer at XWiki SAS
[hidden email]
More about us at http://www.xwiki.com
Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

Adel Atallah
In reply to this post by vmassol
Hello,

On Wed, Oct 31, 2018 at 9:07 AM Vincent Massol <[hidden email]> 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)
>

Does it also mean that we will have to add a step in the release
process to update these versions?

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

This will probably require more effort to support these versions but
it might be a good reason to update Hibernate :).

> 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?
>

I don't think we should drop support for older database versions as it
would require some users to upgrade their database.

> So WDYT about the 3 questions?
>
> Thanks
> -Vincent

Thanks,
Adel
Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

vmassol
Administrator
In reply to this post by Simon Urli


> On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]> wrote:
>
> Hi,
>
> On 31/10/2018 09:06, Vincent Massol 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)
>
> +1
>
>> 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)
>
> +0 I don't really know how much effort it involves to ensure the support of the latest version of each database and to fix the bugs accordingly.
>
>> 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?
>
> What about the cycles that are bundled in major LTS distributions?

You mean the versions from apt-get for ex (when using the default repos)?

Indeed the idea could to follow one of them. Any suggestion for which one to follow and where the info is?

Thanks
-Vinent

>
> Simon
>
>> So WDYT about the 3 questions?
>> Thanks
>> -Vincent
>
> --
> Simon Urli
> Software Engineer at XWiki SAS
> [hidden email]
> More about us at http://www.xwiki.com

Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

vmassol
Administrator
In reply to this post by Adel Atallah


> On 31 Oct 2018, at 10:28, Adel Atallah <[hidden email]> wrote:
>
> Hello,
>
> On Wed, Oct 31, 2018 at 9:07 AM Vincent Massol <[hidden email]> 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)
>>
>
> Does it also mean that we will have to add a step in the release
> process to update these versions?

Two things here:
* We already update the versions from time to time but yes we should monitor this better. Note sure it should be in the release process though.
* On the testing side, if we use the “latest” tag then we’ll use automatically the latest version from the official docker image.

>
>> 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)
>>
>
> This will probably require more effort to support these versions but
> it might be a good reason to update Hibernate :).

Note: The new automatic testing will make it simpler to support them (at least to test them).

>
>> 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?
>>
>
> I don't think we should drop support for older database versions as it
> would require some users to upgrade their database.

Sure but that’s normal ;) We can’t support all past versions so we need to draw the line somewhere… It doesn’t mean it’s not going to work with old versions, it means we don’t test for them and don’t do extra effort to make XWiki work on them (if contributors submit PRs we will apply them).

Thanks
-Vincent

>
>> So WDYT about the 3 questions?
>>
>> Thanks
>> -Vincent
>
> Thanks,
> Adel

Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

vmassol
Administrator
In reply to this post by vmassol


> On 31 Oct 2018, at 10:28, Vincent Massol <[hidden email]> wrote:
>
>
>
>> On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]> wrote:
>>
>> Hi,
>>
>> On 31/10/2018 09:06, Vincent Massol 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)
>>
>> +1
>>
>>> 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)
>>
>> +0 I don't really know how much effort it involves to ensure the support of the latest version of each database and to fix the bugs accordingly.
>>
>>> 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?
>>
>> What about the cycles that are bundled in major LTS distributions?
>
> You mean the versions from apt-get for ex (when using the default repos)?
>
> Indeed the idea could to follow one of them. Any suggestion for which one to follow and where the info is?

Actually what I did is try to follow the “latest” tag on the official docker images. Since we need some docker images anyway.

Sometime the “latest” tag is really recent though. For postgresql for ex, it’s 11.0, see https://hub.docker.com/_/postgres/

So I suggest as a general rule to follow the dockerhub official image “latest” tags. WDYT?

Thanks
-Vincent

>
> Thanks
> -Vinent
>
>>
>> Simon
>>
>>> So WDYT about the 3 questions?
>>> Thanks
>>> -Vincent
>>
>> --
>> Simon Urli
>> Software Engineer at XWiki SAS
>> [hidden email]
>> More about us at http://www.xwiki.com

Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

Thomas Mortagne
Administrator
In reply to this post by vmassol
On Wed, Oct 31, 2018 at 10:28 AM Vincent Massol <[hidden email]> wrote:

>
>
>
> > On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]> wrote:
> >
> > Hi,
> >
> > On 31/10/2018 09:06, Vincent Massol 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)
> >
> > +1
> >
> >> 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)
> >
> > +0 I don't really know how much effort it involves to ensure the support of the latest version of each database and to fix the bugs accordingly.
> >
> >> 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?
> >
> > What about the cycles that are bundled in major LTS distributions?
>
> You mean the versions from apt-get for ex (when using the default repos)?
>
> Indeed the idea could to follow one of them. Any suggestion for which one to follow and where the info is?

Since we provide Debian package one good reference to know which
version of MySQL to support IMO would be

https://packages.debian.org/search?keywords=mysql-server&searchon=names&exact=1

So it would be good to support 5.5 and 5.7

Here is the one for postgresql (since we also have a pgsql based Debian package)

https://packages.debian.org/search?keywords=postgresql&searchon=names&exact=1

So 9.4, 9.6 and 11

>
> Thanks
> -Vinent
>
> >
> > Simon
> >
> >> So WDYT about the 3 questions?
> >> Thanks
> >> -Vincent
> >
> > --
> > Simon Urli
> > Software Engineer at XWiki SAS
> > [hidden email]
> > More about us at http://www.xwiki.com
>


--
Thomas Mortagne
Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

Simon Urli


On 31/10/2018 10:52, Thomas Mortagne wrote:

> On Wed, Oct 31, 2018 at 10:28 AM Vincent Massol <[hidden email]> wrote:
>>
>>
>>
>>> On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]> wrote:
>>>
>>> Hi,
>>>
>>> On 31/10/2018 09:06, Vincent Massol 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)
>>>
>>> +1
>>>
>>>> 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)
>>>
>>> +0 I don't really know how much effort it involves to ensure the support of the latest version of each database and to fix the bugs accordingly.
>>>
>>>> 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?
>>>
>>> What about the cycles that are bundled in major LTS distributions?
>>
>> You mean the versions from apt-get for ex (when using the default repos)?
>>
>> Indeed the idea could to follow one of them. Any suggestion for which one to follow and where the info is?
>
> Since we provide Debian package one good reference to know which
> version of MySQL to support IMO would be
>
> https://packages.debian.org/search?keywords=mysql-server&searchon=names&exact=1
>
> So it would be good to support 5.5 and 5.7

Maybe it worth it to also look on Ubuntu packages for the LTS, as they
don't follow the same cycle:
https://packages.ubuntu.com/search?keywords=mysql-server

Apparently for now version are the same than for Debian.
>
> Here is the one for postgresql (since we also have a pgsql based Debian package)
>
> https://packages.debian.org/search?keywords=postgresql&searchon=names&exact=1

https://packages.ubuntu.com/search?suite=default&section=all&arch=any&keywords=postgresql&searchon=names

So here I see 9.3, 9.5, 10.5

>
> So 9.4, 9.6 and 11
>
>>
>> Thanks
>> -Vinent
>>
>>>
>>> Simon
>>>
>>>> So WDYT about the 3 questions?
>>>> Thanks
>>>> -Vincent
>>>
>>> --
>>> Simon Urli
>>> Software Engineer at XWiki SAS
>>> [hidden email]
>>> More about us at http://www.xwiki.com
>>
>
>

--
Simon Urli
Software Engineer at XWiki SAS
[hidden email]
More about us at http://www.xwiki.com
Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

Ecaterina Moraru (Valica)
IMO we should just write we support:
* HyperSQL 2.x Latest
* MySQL 5.x Latest
* PostgreSQL 9.x Latest
* Oracle 11.x Latest
not sure what help would do to have the explicit 2.4.1, 5.7.24, 9.6.10,
11.2.0.4.0 versions.

Also I'm sure we won't keep up with the versions, so they won't mean
latest.
When we do the tests we should always fix and test on the latest one.
And this 'latest' behavior is consistent with what we do for Browsers, with
the exception that we are a bit more descriptive by giving the DB cycle.

Thanks,
Caty


On Wed, Oct 31, 2018 at 12:11 PM Simon Urli <[hidden email]> wrote:

>
>
> On 31/10/2018 10:52, Thomas Mortagne wrote:
> > On Wed, Oct 31, 2018 at 10:28 AM Vincent Massol <[hidden email]>
> wrote:
> >>
> >>
> >>
> >>> On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]> wrote:
> >>>
> >>> Hi,
> >>>
> >>> On 31/10/2018 09:06, Vincent Massol 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
> )
> >>>
> >>> +1
> >>>
> >>>> 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)
> >>>
> >>> +0 I don't really know how much effort it involves to ensure the
> support of the latest version of each database and to fix the bugs
> accordingly.
> >>>
> >>>> 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?
> >>>
> >>> What about the cycles that are bundled in major LTS distributions?
> >>
> >> You mean the versions from apt-get for ex (when using the default
> repos)?
> >>
> >> Indeed the idea could to follow one of them. Any suggestion for which
> one to follow and where the info is?
> >
> > Since we provide Debian package one good reference to know which
> > version of MySQL to support IMO would be
> >
> >
> https://packages.debian.org/search?keywords=mysql-server&searchon=names&exact=1
> >
> > So it would be good to support 5.5 and 5.7
>
> Maybe it worth it to also look on Ubuntu packages for the LTS, as they
> don't follow the same cycle:
> https://packages.ubuntu.com/search?keywords=mysql-server
>
> Apparently for now version are the same than for Debian.
> >
> > Here is the one for postgresql (since we also have a pgsql based Debian
> package)
> >
> >
> https://packages.debian.org/search?keywords=postgresql&searchon=names&exact=1
>
>
> https://packages.ubuntu.com/search?suite=default&section=all&arch=any&keywords=postgresql&searchon=names
>
> So here I see 9.3, 9.5, 10.5
>
> >
> > So 9.4, 9.6 and 11
> >
> >>
> >> Thanks
> >> -Vinent
> >>
> >>>
> >>> Simon
> >>>
> >>>> So WDYT about the 3 questions?
> >>>> Thanks
> >>>> -Vincent
> >>>
> >>> --
> >>> Simon Urli
> >>> Software Engineer at XWiki SAS
> >>> [hidden email]
> >>> More about us at http://www.xwiki.com
> >>
> >
> >
>
> --
> Simon Urli
> Software Engineer at XWiki SAS
> [hidden email]
> More about us at http://www.xwiki.com
>
Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

vmassol
Administrator
Hi Caty,

> On 31 Oct 2018, at 14:43, Ecaterina Moraru (Valica) <[hidden email]> wrote:
>
> IMO we should just write we support:
> * HyperSQL 2.x Latest
> * MySQL 5.x Latest
> * PostgreSQL 9.x Latest
> * Oracle 11.x Latest
> not sure what help would do to have the explicit 2.4.1, 5.7.24, 9.6.10,
> 11.2.0.4.0 versions.

Yes, this is what I proposed.

>
> Also I'm sure we won't keep up with the versions, so they won't mean
> latest.
> When we do the tests we should always fix and test on the latest one.
> And this 'latest' behavior is consistent with what we do for Browsers, with
> the exception that we are a bit more descriptive by giving the DB cycle.

Sure. Note that there’s more in this thread, for example:

1) What does latest mean?
2) What about the other 2 questions I asked?

WDYT about that?

Thanks
-Vincent


>
> Thanks,
> Caty
>
>
> On Wed, Oct 31, 2018 at 12:11 PM Simon Urli <[hidden email]> wrote:
>
>>
>>
>> On 31/10/2018 10:52, Thomas Mortagne wrote:
>>> On Wed, Oct 31, 2018 at 10:28 AM Vincent Massol <[hidden email]>
>> wrote:
>>>>
>>>>
>>>>
>>>>> On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]> wrote:
>>>>>
>>>>> Hi,
>>>>>
>>>>> On 31/10/2018 09:06, Vincent Massol 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
>> )
>>>>>
>>>>> +1
>>>>>
>>>>>> 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)
>>>>>
>>>>> +0 I don't really know how much effort it involves to ensure the
>> support of the latest version of each database and to fix the bugs
>> accordingly.
>>>>>
>>>>>> 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?
>>>>>
>>>>> What about the cycles that are bundled in major LTS distributions?
>>>>
>>>> You mean the versions from apt-get for ex (when using the default
>> repos)?
>>>>
>>>> Indeed the idea could to follow one of them. Any suggestion for which
>> one to follow and where the info is?
>>>
>>> Since we provide Debian package one good reference to know which
>>> version of MySQL to support IMO would be
>>>
>>>
>> https://packages.debian.org/search?keywords=mysql-server&searchon=names&exact=1
>>>
>>> So it would be good to support 5.5 and 5.7
>>
>> Maybe it worth it to also look on Ubuntu packages for the LTS, as they
>> don't follow the same cycle:
>> https://packages.ubuntu.com/search?keywords=mysql-server
>>
>> Apparently for now version are the same than for Debian.
>>>
>>> Here is the one for postgresql (since we also have a pgsql based Debian
>> package)
>>>
>>>
>> https://packages.debian.org/search?keywords=postgresql&searchon=names&exact=1
>>
>>
>> https://packages.ubuntu.com/search?suite=default&section=all&arch=any&keywords=postgresql&searchon=names
>>
>> So here I see 9.3, 9.5, 10.5
>>
>>>
>>> So 9.4, 9.6 and 11
>>>
>>>>
>>>> Thanks
>>>> -Vinent
>>>>
>>>>>
>>>>> Simon
>>>>>
>>>>>> So WDYT about the 3 questions?
>>>>>> Thanks
>>>>>> -Vincent
>>>>>
>>>>> --
>>>>> Simon Urli
>>>>> Software Engineer at XWiki SAS
>>>>> [hidden email]
>>>>> More about us at http://www.xwiki.com
>>>>
>>>
>>>
>>
>> --
>> Simon Urli
>> Software Engineer at XWiki SAS
>> [hidden email]
>> More about us at http://www.xwiki.com
>>

Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

Ecaterina Moraru (Valica)
On Wed, Oct 31, 2018 at 3:53 PM Vincent Massol <[hidden email]> wrote:

> Hi Caty,
>
> > On 31 Oct 2018, at 14:43, Ecaterina Moraru (Valica) <[hidden email]>
> wrote:
> >
> > IMO we should just write we support:
> > * HyperSQL 2.x Latest
> > * MySQL 5.x Latest
> > * PostgreSQL 9.x Latest
> > * Oracle 11.x Latest
> > not sure what help would do to have the explicit 2.4.1, 5.7.24, 9.6.10,
> > 11.2.0.4.0 versions.
>
> Yes, this is what I proposed.
>
> >
> > Also I'm sure we won't keep up with the versions, so they won't mean
> > latest.
> > When we do the tests we should always fix and test on the latest one.
> > And this 'latest' behavior is consistent with what we do for Browsers,
> with
> > the exception that we are a bit more descriptive by giving the DB cycle.
>
> Sure. Note that there’s more in this thread, for example:
>
> 1) What does latest mean?
> 2) What about the other 2 questions I asked?
>

See
https://trends.google.com/trends/explore?cat=13&date=today%205-y&q=%2Fm%2F01vw9z,%2Fm%2F04y3k,%2Fm%2F0120vr,%2Fm%2F05ynw,Hyper%20SQL
and
https://www.statista.com/statistics/809750/worldwide-popularity-ranking-database-management-systems/

According to those pages my questions are:
* Why are we supporting "Hypersonic DB" ? - but hey, apparently it's in the
jetty thing. k :) Here we should just say latest, without any version to
it. This DB is anyway only recommended for the demo version.
* Why don't we support Microsoft SQL Server?

Another  reference:
https://db-engines.com/en/ranking

* MongoDB also is in the top 5 for 2018 in multiple resources. Should /
could we also support that? In the Relational Databases section, DB2 is
listed, see https://db-engines.com/en/ranking/relational+dbms

Anyway, I think it would be enough if we support the top 3 DB for the
latest versions. This would mean just MySQL 8.x instead of MySQL 5.x. Could
not find any relevant comparison for DB versions. Found a graph from 2015
in https://plumbr.io/blog/io/most-popular-relational-databases where MySQL
5.6 was most popular (long time ago), so not sure what we could use as a
reference. On the other hand MySQL 8.0 launched 6 month ago. So indeed, we
should support the latest 5.7.x (5.7.24) and also 8.0.x (8.0.13), see
https://en.wikipedia.org/wiki/MySQL#Release_history

Regarding PostgreSQL, IMO we should support (10.5 || 9.6.10) and 11.0, see
https://en.wikipedia.org/wiki/PostgreSQL#Release_history

Regarding Oracle Database, we should support 12.2.0.1 and 18.1.0, see
https://en.wikipedia.org/wiki/Oracle_Database#Releases_and_versions

Regarding Microsoft SQL Server it should be (in case we decide it) SQL
Server 2017, see
https://en.wikipedia.org/wiki/Microsoft_SQL_Server#Currently

My rule was: latest/latest + the latest stable/previous version.

Thanks,
Caty


>
> WDYT about that?
>
> Thanks
> -Vincent
>
>
> >
> > Thanks,
> > Caty
> >
> >
> > On Wed, Oct 31, 2018 at 12:11 PM Simon Urli <[hidden email]>
> wrote:
> >
> >>
> >>
> >> On 31/10/2018 10:52, Thomas Mortagne wrote:
> >>> On Wed, Oct 31, 2018 at 10:28 AM Vincent Massol <[hidden email]>
> >> wrote:
> >>>>
> >>>>
> >>>>
> >>>>> On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]> wrote:
> >>>>>
> >>>>> Hi,
> >>>>>
> >>>>> On 31/10/2018 09:06, Vincent Massol 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
> >> )
> >>>>>
> >>>>> +1
> >>>>>
> >>>>>> 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)
> >>>>>
> >>>>> +0 I don't really know how much effort it involves to ensure the
> >> support of the latest version of each database and to fix the bugs
> >> accordingly.
> >>>>>
> >>>>>> 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?
> >>>>>
> >>>>> What about the cycles that are bundled in major LTS distributions?
> >>>>
> >>>> You mean the versions from apt-get for ex (when using the default
> >> repos)?
> >>>>
> >>>> Indeed the idea could to follow one of them. Any suggestion for which
> >> one to follow and where the info is?
> >>>
> >>> Since we provide Debian package one good reference to know which
> >>> version of MySQL to support IMO would be
> >>>
> >>>
> >>
> https://packages.debian.org/search?keywords=mysql-server&searchon=names&exact=1
> >>>
> >>> So it would be good to support 5.5 and 5.7
> >>
> >> Maybe it worth it to also look on Ubuntu packages for the LTS, as they
> >> don't follow the same cycle:
> >> https://packages.ubuntu.com/search?keywords=mysql-server
> >>
> >> Apparently for now version are the same than for Debian.
> >>>
> >>> Here is the one for postgresql (since we also have a pgsql based Debian
> >> package)
> >>>
> >>>
> >>
> https://packages.debian.org/search?keywords=postgresql&searchon=names&exact=1
> >>
> >>
> >>
> https://packages.ubuntu.com/search?suite=default&section=all&arch=any&keywords=postgresql&searchon=names
> >>
> >> So here I see 9.3, 9.5, 10.5
> >>
> >>>
> >>> So 9.4, 9.6 and 11
> >>>
> >>>>
> >>>> Thanks
> >>>> -Vinent
> >>>>
> >>>>>
> >>>>> Simon
> >>>>>
> >>>>>> So WDYT about the 3 questions?
> >>>>>> Thanks
> >>>>>> -Vincent
> >>>>>
> >>>>> --
> >>>>> Simon Urli
> >>>>> Software Engineer at XWiki SAS
> >>>>> [hidden email]
> >>>>> More about us at http://www.xwiki.com
> >>>>
> >>>
> >>>
> >>
> >> --
> >> Simon Urli
> >> Software Engineer at XWiki SAS
> >> [hidden email]
> >> More about us at http://www.xwiki.com
> >>
>
>
Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

Ecaterina Moraru (Valica)
Another top
https://www.eversql.com/most-popular-databases-in-2018-according-to-stackoverflow-survey/

On Wed, Oct 31, 2018 at 4:45 PM Ecaterina Moraru (Valica) <[hidden email]>
wrote:

>
>
> On Wed, Oct 31, 2018 at 3:53 PM Vincent Massol <[hidden email]> wrote:
>
>> Hi Caty,
>>
>> > On 31 Oct 2018, at 14:43, Ecaterina Moraru (Valica) <[hidden email]>
>> wrote:
>> >
>> > IMO we should just write we support:
>> > * HyperSQL 2.x Latest
>> > * MySQL 5.x Latest
>> > * PostgreSQL 9.x Latest
>> > * Oracle 11.x Latest
>> > not sure what help would do to have the explicit 2.4.1, 5.7.24, 9.6.10,
>> > 11.2.0.4.0 versions.
>>
>> Yes, this is what I proposed.
>>
>> >
>> > Also I'm sure we won't keep up with the versions, so they won't mean
>> > latest.
>> > When we do the tests we should always fix and test on the latest one.
>> > And this 'latest' behavior is consistent with what we do for Browsers,
>> with
>> > the exception that we are a bit more descriptive by giving the DB cycle.
>>
>> Sure. Note that there’s more in this thread, for example:
>>
>> 1) What does latest mean?
>> 2) What about the other 2 questions I asked?
>>
>
> See
>
> https://trends.google.com/trends/explore?cat=13&date=today%205-y&q=%2Fm%2F01vw9z,%2Fm%2F04y3k,%2Fm%2F0120vr,%2Fm%2F05ynw,Hyper%20SQL
> and
>
> https://www.statista.com/statistics/809750/worldwide-popularity-ranking-database-management-systems/
>
> According to those pages my questions are:
> * Why are we supporting "Hypersonic DB" ? - but hey, apparently it's in
> the jetty thing. k :) Here we should just say latest, without any version
> to it. This DB is anyway only recommended for the demo version.
> * Why don't we support Microsoft SQL Server?
>
> Another  reference:
> https://db-engines.com/en/ranking
>
> * MongoDB also is in the top 5 for 2018 in multiple resources. Should /
> could we also support that? In the Relational Databases section, DB2 is
> listed, see https://db-engines.com/en/ranking/relational+dbms
>
> Anyway, I think it would be enough if we support the top 3 DB for the
> latest versions. This would mean just MySQL 8.x instead of MySQL 5.x. Could
> not find any relevant comparison for DB versions. Found a graph from 2015
> in https://plumbr.io/blog/io/most-popular-relational-databases where
> MySQL 5.6 was most popular (long time ago), so not sure what we could use
> as a reference. On the other hand MySQL 8.0 launched 6 month ago. So
> indeed, we should support the latest 5.7.x (5.7.24) and also 8.0.x
> (8.0.13), see https://en.wikipedia.org/wiki/MySQL#Release_history
>
> Regarding PostgreSQL, IMO we should support (10.5 || 9.6.10) and 11.0, see
> https://en.wikipedia.org/wiki/PostgreSQL#Release_history
>
> Regarding Oracle Database, we should support 12.2.0.1 and 18.1.0, see
> https://en.wikipedia.org/wiki/Oracle_Database#Releases_and_versions
>
> Regarding Microsoft SQL Server it should be (in case we decide it) SQL
> Server 2017, see
> https://en.wikipedia.org/wiki/Microsoft_SQL_Server#Currently
>
> My rule was: latest/latest + the latest stable/previous version.
>
> Thanks,
> Caty
>
>
>>
>> WDYT about that?
>>
>> Thanks
>> -Vincent
>>
>>
>> >
>> > Thanks,
>> > Caty
>> >
>> >
>> > On Wed, Oct 31, 2018 at 12:11 PM Simon Urli <[hidden email]>
>> wrote:
>> >
>> >>
>> >>
>> >> On 31/10/2018 10:52, Thomas Mortagne wrote:
>> >>> On Wed, Oct 31, 2018 at 10:28 AM Vincent Massol <[hidden email]>
>> >> wrote:
>> >>>>
>> >>>>
>> >>>>
>> >>>>> On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]> wrote:
>> >>>>>
>> >>>>> Hi,
>> >>>>>
>> >>>>> On 31/10/2018 09:06, Vincent Massol 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
>> >> )
>> >>>>>
>> >>>>> +1
>> >>>>>
>> >>>>>> 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)
>> >>>>>
>> >>>>> +0 I don't really know how much effort it involves to ensure the
>> >> support of the latest version of each database and to fix the bugs
>> >> accordingly.
>> >>>>>
>> >>>>>> 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?
>> >>>>>
>> >>>>> What about the cycles that are bundled in major LTS distributions?
>> >>>>
>> >>>> You mean the versions from apt-get for ex (when using the default
>> >> repos)?
>> >>>>
>> >>>> Indeed the idea could to follow one of them. Any suggestion for which
>> >> one to follow and where the info is?
>> >>>
>> >>> Since we provide Debian package one good reference to know which
>> >>> version of MySQL to support IMO would be
>> >>>
>> >>>
>> >>
>> https://packages.debian.org/search?keywords=mysql-server&searchon=names&exact=1
>> >>>
>> >>> So it would be good to support 5.5 and 5.7
>> >>
>> >> Maybe it worth it to also look on Ubuntu packages for the LTS, as they
>> >> don't follow the same cycle:
>> >> https://packages.ubuntu.com/search?keywords=mysql-server
>> >>
>> >> Apparently for now version are the same than for Debian.
>> >>>
>> >>> Here is the one for postgresql (since we also have a pgsql based
>> Debian
>> >> package)
>> >>>
>> >>>
>> >>
>> https://packages.debian.org/search?keywords=postgresql&searchon=names&exact=1
>> >>
>> >>
>> >>
>> https://packages.ubuntu.com/search?suite=default&section=all&arch=any&keywords=postgresql&searchon=names
>> >>
>> >> So here I see 9.3, 9.5, 10.5
>> >>
>> >>>
>> >>> So 9.4, 9.6 and 11
>> >>>
>> >>>>
>> >>>> Thanks
>> >>>> -Vinent
>> >>>>
>> >>>>>
>> >>>>> Simon
>> >>>>>
>> >>>>>> So WDYT about the 3 questions?
>> >>>>>> Thanks
>> >>>>>> -Vincent
>> >>>>>
>> >>>>> --
>> >>>>> Simon Urli
>> >>>>> Software Engineer at XWiki SAS
>> >>>>> [hidden email]
>> >>>>> More about us at http://www.xwiki.com
>> >>>>
>> >>>
>> >>>
>> >>
>> >> --
>> >> Simon Urli
>> >> Software Engineer at XWiki SAS
>> >> [hidden email]
>> >> More about us at http://www.xwiki.com
>> >>
>>
>>
Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

vmassol
Administrator
Hi Caty,

Thanks but I think we should focus on the databases that our users use for XWiki. We have that info already with the active installs.

It’s already a lot of work :)

My goal with this thread was not fully review the list of supported databses, just to make it more clear the versions of them we want to support.

Thanks
-Vincent

> On 31 Oct 2018, at 15:57, Ecaterina Moraru (Valica) <[hidden email]> wrote:
>
> Another top
> https://www.eversql.com/most-popular-databases-in-2018-according-to-stackoverflow-survey/
>
> On Wed, Oct 31, 2018 at 4:45 PM Ecaterina Moraru (Valica) <[hidden email]>
> wrote:
>
>>
>>
>> On Wed, Oct 31, 2018 at 3:53 PM Vincent Massol <[hidden email]> wrote:
>>
>>> Hi Caty,
>>>
>>>> On 31 Oct 2018, at 14:43, Ecaterina Moraru (Valica) <[hidden email]>
>>> wrote:
>>>>
>>>> IMO we should just write we support:
>>>> * HyperSQL 2.x Latest
>>>> * MySQL 5.x Latest
>>>> * PostgreSQL 9.x Latest
>>>> * Oracle 11.x Latest
>>>> not sure what help would do to have the explicit 2.4.1, 5.7.24, 9.6.10,
>>>> 11.2.0.4.0 versions.
>>>
>>> Yes, this is what I proposed.
>>>
>>>>
>>>> Also I'm sure we won't keep up with the versions, so they won't mean
>>>> latest.
>>>> When we do the tests we should always fix and test on the latest one.
>>>> And this 'latest' behavior is consistent with what we do for Browsers,
>>> with
>>>> the exception that we are a bit more descriptive by giving the DB cycle.
>>>
>>> Sure. Note that there’s more in this thread, for example:
>>>
>>> 1) What does latest mean?
>>> 2) What about the other 2 questions I asked?
>>>
>>
>> See
>>
>> https://trends.google.com/trends/explore?cat=13&date=today%205-y&q=%2Fm%2F01vw9z,%2Fm%2F04y3k,%2Fm%2F0120vr,%2Fm%2F05ynw,Hyper%20SQL
>> and
>>
>> https://www.statista.com/statistics/809750/worldwide-popularity-ranking-database-management-systems/
>>
>> According to those pages my questions are:
>> * Why are we supporting "Hypersonic DB" ? - but hey, apparently it's in
>> the jetty thing. k :) Here we should just say latest, without any version
>> to it. This DB is anyway only recommended for the demo version.
>> * Why don't we support Microsoft SQL Server?
>>
>> Another  reference:
>> https://db-engines.com/en/ranking
>>
>> * MongoDB also is in the top 5 for 2018 in multiple resources. Should /
>> could we also support that? In the Relational Databases section, DB2 is
>> listed, see https://db-engines.com/en/ranking/relational+dbms
>>
>> Anyway, I think it would be enough if we support the top 3 DB for the
>> latest versions. This would mean just MySQL 8.x instead of MySQL 5.x. Could
>> not find any relevant comparison for DB versions. Found a graph from 2015
>> in https://plumbr.io/blog/io/most-popular-relational-databases where
>> MySQL 5.6 was most popular (long time ago), so not sure what we could use
>> as a reference. On the other hand MySQL 8.0 launched 6 month ago. So
>> indeed, we should support the latest 5.7.x (5.7.24) and also 8.0.x
>> (8.0.13), see https://en.wikipedia.org/wiki/MySQL#Release_history
>>
>> Regarding PostgreSQL, IMO we should support (10.5 || 9.6.10) and 11.0, see
>> https://en.wikipedia.org/wiki/PostgreSQL#Release_history
>>
>> Regarding Oracle Database, we should support 12.2.0.1 and 18.1.0, see
>> https://en.wikipedia.org/wiki/Oracle_Database#Releases_and_versions
>>
>> Regarding Microsoft SQL Server it should be (in case we decide it) SQL
>> Server 2017, see
>> https://en.wikipedia.org/wiki/Microsoft_SQL_Server#Currently
>>
>> My rule was: latest/latest + the latest stable/previous version.
>>
>> Thanks,
>> Caty
>>
>>
>>>
>>> WDYT about that?
>>>
>>> Thanks
>>> -Vincent
>>>
>>>
>>>>
>>>> Thanks,
>>>> Caty
>>>>
>>>>
>>>> On Wed, Oct 31, 2018 at 12:11 PM Simon Urli <[hidden email]>
>>> wrote:
>>>>
>>>>>
>>>>>
>>>>> On 31/10/2018 10:52, Thomas Mortagne wrote:
>>>>>> On Wed, Oct 31, 2018 at 10:28 AM Vincent Massol <[hidden email]>
>>>>> wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]> wrote:
>>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> On 31/10/2018 09:06, Vincent Massol 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
>>>>> )
>>>>>>>>
>>>>>>>> +1
>>>>>>>>
>>>>>>>>> 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)
>>>>>>>>
>>>>>>>> +0 I don't really know how much effort it involves to ensure the
>>>>> support of the latest version of each database and to fix the bugs
>>>>> accordingly.
>>>>>>>>
>>>>>>>>> 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?
>>>>>>>>
>>>>>>>> What about the cycles that are bundled in major LTS distributions?
>>>>>>>
>>>>>>> You mean the versions from apt-get for ex (when using the default
>>>>> repos)?
>>>>>>>
>>>>>>> Indeed the idea could to follow one of them. Any suggestion for which
>>>>> one to follow and where the info is?
>>>>>>
>>>>>> Since we provide Debian package one good reference to know which
>>>>>> version of MySQL to support IMO would be
>>>>>>
>>>>>>
>>>>>
>>> https://packages.debian.org/search?keywords=mysql-server&searchon=names&exact=1
>>>>>>
>>>>>> So it would be good to support 5.5 and 5.7
>>>>>
>>>>> Maybe it worth it to also look on Ubuntu packages for the LTS, as they
>>>>> don't follow the same cycle:
>>>>> https://packages.ubuntu.com/search?keywords=mysql-server
>>>>>
>>>>> Apparently for now version are the same than for Debian.
>>>>>>
>>>>>> Here is the one for postgresql (since we also have a pgsql based
>>> Debian
>>>>> package)
>>>>>>
>>>>>>
>>>>>
>>> https://packages.debian.org/search?keywords=postgresql&searchon=names&exact=1
>>>>>
>>>>>
>>>>>
>>> https://packages.ubuntu.com/search?suite=default&section=all&arch=any&keywords=postgresql&searchon=names
>>>>>
>>>>> So here I see 9.3, 9.5, 10.5
>>>>>
>>>>>>
>>>>>> So 9.4, 9.6 and 11
>>>>>>
>>>>>>>
>>>>>>> Thanks
>>>>>>> -Vinent
>>>>>>>
>>>>>>>>
>>>>>>>> Simon
>>>>>>>>
>>>>>>>>> So WDYT about the 3 questions?
>>>>>>>>> Thanks
>>>>>>>>> -Vincent
>>>>>>>>
>>>>>>>> --
>>>>>>>> Simon Urli
>>>>>>>> Software Engineer at XWiki SAS
>>>>>>>> [hidden email]
>>>>>>>> More about us at http://www.xwiki.com
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> Simon Urli
>>>>> Software Engineer at XWiki SAS
>>>>> [hidden email]
>>>>> More about us at http://www.xwiki.com
>>>>>
>>>
>>>

Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

Ecaterina Moraru (Valica)
On Wed, Oct 31, 2018 at 5:12 PM Vincent Massol <[hidden email]> wrote:

> Hi Caty,
>
> Thanks but I think we should focus on the databases that our users use for
> XWiki. We have that info already with the active installs.
>

https://www.xwiki.org/xwiki/bin/view/ActiveInstalls/
k, I understand, with the note that those graphs are influenced by what we
support.
In the case of Active Install, would be nice to display also the DB
versions.

Thanks,
Caty


>
> It’s already a lot of work :)
>
> My goal with this thread was not fully review the list of supported
> databses, just to make it more clear the versions of them we want to
> support.
>
> Thanks
> -Vincent
>
> > On 31 Oct 2018, at 15:57, Ecaterina Moraru (Valica) <[hidden email]>
> wrote:
> >
> > Another top
> >
> https://www.eversql.com/most-popular-databases-in-2018-according-to-stackoverflow-survey/
> >
> > On Wed, Oct 31, 2018 at 4:45 PM Ecaterina Moraru (Valica) <
> [hidden email]>
> > wrote:
> >
> >>
> >>
> >> On Wed, Oct 31, 2018 at 3:53 PM Vincent Massol <[hidden email]>
> wrote:
> >>
> >>> Hi Caty,
> >>>
> >>>> On 31 Oct 2018, at 14:43, Ecaterina Moraru (Valica) <
> [hidden email]>
> >>> wrote:
> >>>>
> >>>> IMO we should just write we support:
> >>>> * HyperSQL 2.x Latest
> >>>> * MySQL 5.x Latest
> >>>> * PostgreSQL 9.x Latest
> >>>> * Oracle 11.x Latest
> >>>> not sure what help would do to have the explicit 2.4.1, 5.7.24,
> 9.6.10,
> >>>> 11.2.0.4.0 versions.
> >>>
> >>> Yes, this is what I proposed.
> >>>
> >>>>
> >>>> Also I'm sure we won't keep up with the versions, so they won't mean
> >>>> latest.
> >>>> When we do the tests we should always fix and test on the latest one.
> >>>> And this 'latest' behavior is consistent with what we do for Browsers,
> >>> with
> >>>> the exception that we are a bit more descriptive by giving the DB
> cycle.
> >>>
> >>> Sure. Note that there’s more in this thread, for example:
> >>>
> >>> 1) What does latest mean?
> >>> 2) What about the other 2 questions I asked?
> >>>
> >>
> >> See
> >>
> >>
> https://trends.google.com/trends/explore?cat=13&date=today%205-y&q=%2Fm%2F01vw9z,%2Fm%2F04y3k,%2Fm%2F0120vr,%2Fm%2F05ynw,Hyper%20SQL
> >> and
> >>
> >>
> https://www.statista.com/statistics/809750/worldwide-popularity-ranking-database-management-systems/
> >>
> >> According to those pages my questions are:
> >> * Why are we supporting "Hypersonic DB" ? - but hey, apparently it's in
> >> the jetty thing. k :) Here we should just say latest, without any
> version
> >> to it. This DB is anyway only recommended for the demo version.
> >> * Why don't we support Microsoft SQL Server?
> >>
> >> Another  reference:
> >> https://db-engines.com/en/ranking
> >>
> >> * MongoDB also is in the top 5 for 2018 in multiple resources. Should /
> >> could we also support that? In the Relational Databases section, DB2 is
> >> listed, see https://db-engines.com/en/ranking/relational+dbms
> >>
> >> Anyway, I think it would be enough if we support the top 3 DB for the
> >> latest versions. This would mean just MySQL 8.x instead of MySQL 5.x.
> Could
> >> not find any relevant comparison for DB versions. Found a graph from
> 2015
> >> in https://plumbr.io/blog/io/most-popular-relational-databases where
> >> MySQL 5.6 was most popular (long time ago), so not sure what we could
> use
> >> as a reference. On the other hand MySQL 8.0 launched 6 month ago. So
> >> indeed, we should support the latest 5.7.x (5.7.24) and also 8.0.x
> >> (8.0.13), see https://en.wikipedia.org/wiki/MySQL#Release_history
> >>
> >> Regarding PostgreSQL, IMO we should support (10.5 || 9.6.10) and 11.0,
> see
> >> https://en.wikipedia.org/wiki/PostgreSQL#Release_history
> >>
> >> Regarding Oracle Database, we should support 12.2.0.1 and 18.1.0, see
> >> https://en.wikipedia.org/wiki/Oracle_Database#Releases_and_versions
> >>
> >> Regarding Microsoft SQL Server it should be (in case we decide it) SQL
> >> Server 2017, see
> >> https://en.wikipedia.org/wiki/Microsoft_SQL_Server#Currently
> >>
> >> My rule was: latest/latest + the latest stable/previous version.
> >>
> >> Thanks,
> >> Caty
> >>
> >>
> >>>
> >>> WDYT about that?
> >>>
> >>> Thanks
> >>> -Vincent
> >>>
> >>>
> >>>>
> >>>> Thanks,
> >>>> Caty
> >>>>
> >>>>
> >>>> On Wed, Oct 31, 2018 at 12:11 PM Simon Urli <[hidden email]>
> >>> wrote:
> >>>>
> >>>>>
> >>>>>
> >>>>> On 31/10/2018 10:52, Thomas Mortagne wrote:
> >>>>>> On Wed, Oct 31, 2018 at 10:28 AM Vincent Massol <[hidden email]
> >
> >>>>> wrote:
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>> On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]>
> wrote:
> >>>>>>>>
> >>>>>>>> Hi,
> >>>>>>>>
> >>>>>>>> On 31/10/2018 09:06, Vincent Massol 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
> >>>>> )
> >>>>>>>>
> >>>>>>>> +1
> >>>>>>>>
> >>>>>>>>> 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)
> >>>>>>>>
> >>>>>>>> +0 I don't really know how much effort it involves to ensure the
> >>>>> support of the latest version of each database and to fix the bugs
> >>>>> accordingly.
> >>>>>>>>
> >>>>>>>>> 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?
> >>>>>>>>
> >>>>>>>> What about the cycles that are bundled in major LTS distributions?
> >>>>>>>
> >>>>>>> You mean the versions from apt-get for ex (when using the default
> >>>>> repos)?
> >>>>>>>
> >>>>>>> Indeed the idea could to follow one of them. Any suggestion for
> which
> >>>>> one to follow and where the info is?
> >>>>>>
> >>>>>> Since we provide Debian package one good reference to know which
> >>>>>> version of MySQL to support IMO would be
> >>>>>>
> >>>>>>
> >>>>>
> >>>
> https://packages.debian.org/search?keywords=mysql-server&searchon=names&exact=1
> >>>>>>
> >>>>>> So it would be good to support 5.5 and 5.7
> >>>>>
> >>>>> Maybe it worth it to also look on Ubuntu packages for the LTS, as
> they
> >>>>> don't follow the same cycle:
> >>>>> https://packages.ubuntu.com/search?keywords=mysql-server
> >>>>>
> >>>>> Apparently for now version are the same than for Debian.
> >>>>>>
> >>>>>> Here is the one for postgresql (since we also have a pgsql based
> >>> Debian
> >>>>> package)
> >>>>>>
> >>>>>>
> >>>>>
> >>>
> https://packages.debian.org/search?keywords=postgresql&searchon=names&exact=1
> >>>>>
> >>>>>
> >>>>>
> >>>
> https://packages.ubuntu.com/search?suite=default&section=all&arch=any&keywords=postgresql&searchon=names
> >>>>>
> >>>>> So here I see 9.3, 9.5, 10.5
> >>>>>
> >>>>>>
> >>>>>> So 9.4, 9.6 and 11
> >>>>>>
> >>>>>>>
> >>>>>>> Thanks
> >>>>>>> -Vinent
> >>>>>>>
> >>>>>>>>
> >>>>>>>> Simon
> >>>>>>>>
> >>>>>>>>> So WDYT about the 3 questions?
> >>>>>>>>> Thanks
> >>>>>>>>> -Vincent
> >>>>>>>>
> >>>>>>>> --
> >>>>>>>> Simon Urli
> >>>>>>>> Software Engineer at XWiki SAS
> >>>>>>>> [hidden email]
> >>>>>>>> More about us at http://www.xwiki.com
> >>>>>>>
> >>>>>>
> >>>>>>
> >>>>>
> >>>>> --
> >>>>> Simon Urli
> >>>>> Software Engineer at XWiki SAS
> >>>>> [hidden email]
> >>>>> More about us at http://www.xwiki.com
> >>>>>
> >>>
> >>>
>
>
Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

vmassol
Administrator


> On 31 Oct 2018, at 16:19, Ecaterina Moraru (Valica) <[hidden email]> wrote:
>
> On Wed, Oct 31, 2018 at 5:12 PM Vincent Massol <[hidden email]> wrote:
>
>> Hi Caty,
>>
>> Thanks but I think we should focus on the databases that our users use for
>> XWiki. We have that info already with the active installs.
>>
>
> https://www.xwiki.org/xwiki/bin/view/ActiveInstalls/
> k, I understand, with the note that those graphs are influenced by what we
> support.
> In the case of Active Install, would be nice to display also the DB
> versions.

Yes. However we can’t support all versions and people usually lag behind. So I don’t think we should support more than the latest one. Already hard to do.

BTW we do have the versions, we just don’t display them.
See http://activeinstalls.xwiki.org/#/dashboard

I did a quick pie chart for mysql:
https://www.evernote.com/l/AHe-MYCE-09Nuoyau9jFQf45OgtIZKmaqk0

Thanks
-Vincent

>
> Thanks,
> Caty
>
>
>>
>> It’s already a lot of work :)
>>
>> My goal with this thread was not fully review the list of supported
>> databses, just to make it more clear the versions of them we want to
>> support.
>>
>> Thanks
>> -Vincent
>>
>>> On 31 Oct 2018, at 15:57, Ecaterina Moraru (Valica) <[hidden email]>
>> wrote:
>>>
>>> Another top
>>>
>> https://www.eversql.com/most-popular-databases-in-2018-according-to-stackoverflow-survey/
>>>
>>> On Wed, Oct 31, 2018 at 4:45 PM Ecaterina Moraru (Valica) <
>> [hidden email]>
>>> wrote:
>>>
>>>>
>>>>
>>>> On Wed, Oct 31, 2018 at 3:53 PM Vincent Massol <[hidden email]>
>> wrote:
>>>>
>>>>> Hi Caty,
>>>>>
>>>>>> On 31 Oct 2018, at 14:43, Ecaterina Moraru (Valica) <
>> [hidden email]>
>>>>> wrote:
>>>>>>
>>>>>> IMO we should just write we support:
>>>>>> * HyperSQL 2.x Latest
>>>>>> * MySQL 5.x Latest
>>>>>> * PostgreSQL 9.x Latest
>>>>>> * Oracle 11.x Latest
>>>>>> not sure what help would do to have the explicit 2.4.1, 5.7.24,
>> 9.6.10,
>>>>>> 11.2.0.4.0 versions.
>>>>>
>>>>> Yes, this is what I proposed.
>>>>>
>>>>>>
>>>>>> Also I'm sure we won't keep up with the versions, so they won't mean
>>>>>> latest.
>>>>>> When we do the tests we should always fix and test on the latest one.
>>>>>> And this 'latest' behavior is consistent with what we do for Browsers,
>>>>> with
>>>>>> the exception that we are a bit more descriptive by giving the DB
>> cycle.
>>>>>
>>>>> Sure. Note that there’s more in this thread, for example:
>>>>>
>>>>> 1) What does latest mean?
>>>>> 2) What about the other 2 questions I asked?
>>>>>
>>>>
>>>> See
>>>>
>>>>
>> https://trends.google.com/trends/explore?cat=13&date=today%205-y&q=%2Fm%2F01vw9z,%2Fm%2F04y3k,%2Fm%2F0120vr,%2Fm%2F05ynw,Hyper%20SQL
>>>> and
>>>>
>>>>
>> https://www.statista.com/statistics/809750/worldwide-popularity-ranking-database-management-systems/
>>>>
>>>> According to those pages my questions are:
>>>> * Why are we supporting "Hypersonic DB" ? - but hey, apparently it's in
>>>> the jetty thing. k :) Here we should just say latest, without any
>> version
>>>> to it. This DB is anyway only recommended for the demo version.
>>>> * Why don't we support Microsoft SQL Server?
>>>>
>>>> Another  reference:
>>>> https://db-engines.com/en/ranking
>>>>
>>>> * MongoDB also is in the top 5 for 2018 in multiple resources. Should /
>>>> could we also support that? In the Relational Databases section, DB2 is
>>>> listed, see https://db-engines.com/en/ranking/relational+dbms
>>>>
>>>> Anyway, I think it would be enough if we support the top 3 DB for the
>>>> latest versions. This would mean just MySQL 8.x instead of MySQL 5.x.
>> Could
>>>> not find any relevant comparison for DB versions. Found a graph from
>> 2015
>>>> in https://plumbr.io/blog/io/most-popular-relational-databases where
>>>> MySQL 5.6 was most popular (long time ago), so not sure what we could
>> use
>>>> as a reference. On the other hand MySQL 8.0 launched 6 month ago. So
>>>> indeed, we should support the latest 5.7.x (5.7.24) and also 8.0.x
>>>> (8.0.13), see https://en.wikipedia.org/wiki/MySQL#Release_history
>>>>
>>>> Regarding PostgreSQL, IMO we should support (10.5 || 9.6.10) and 11.0,
>> see
>>>> https://en.wikipedia.org/wiki/PostgreSQL#Release_history
>>>>
>>>> Regarding Oracle Database, we should support 12.2.0.1 and 18.1.0, see
>>>> https://en.wikipedia.org/wiki/Oracle_Database#Releases_and_versions
>>>>
>>>> Regarding Microsoft SQL Server it should be (in case we decide it) SQL
>>>> Server 2017, see
>>>> https://en.wikipedia.org/wiki/Microsoft_SQL_Server#Currently
>>>>
>>>> My rule was: latest/latest + the latest stable/previous version.
>>>>
>>>> Thanks,
>>>> Caty
>>>>
>>>>
>>>>>
>>>>> WDYT about that?
>>>>>
>>>>> Thanks
>>>>> -Vincent
>>>>>
>>>>>
>>>>>>
>>>>>> Thanks,
>>>>>> Caty
>>>>>>
>>>>>>
>>>>>> On Wed, Oct 31, 2018 at 12:11 PM Simon Urli <[hidden email]>
>>>>> wrote:
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On 31/10/2018 10:52, Thomas Mortagne wrote:
>>>>>>>> On Wed, Oct 31, 2018 at 10:28 AM Vincent Massol <[hidden email]
>>>
>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]>
>> wrote:
>>>>>>>>>>
>>>>>>>>>> Hi,
>>>>>>>>>>
>>>>>>>>>> On 31/10/2018 09:06, Vincent Massol 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
>>>>>>> )
>>>>>>>>>>
>>>>>>>>>> +1
>>>>>>>>>>
>>>>>>>>>>> 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)
>>>>>>>>>>
>>>>>>>>>> +0 I don't really know how much effort it involves to ensure the
>>>>>>> support of the latest version of each database and to fix the bugs
>>>>>>> accordingly.
>>>>>>>>>>
>>>>>>>>>>> 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?
>>>>>>>>>>
>>>>>>>>>> What about the cycles that are bundled in major LTS distributions?
>>>>>>>>>
>>>>>>>>> You mean the versions from apt-get for ex (when using the default
>>>>>>> repos)?
>>>>>>>>>
>>>>>>>>> Indeed the idea could to follow one of them. Any suggestion for
>> which
>>>>>>> one to follow and where the info is?
>>>>>>>>
>>>>>>>> Since we provide Debian package one good reference to know which
>>>>>>>> version of MySQL to support IMO would be
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>
>> https://packages.debian.org/search?keywords=mysql-server&searchon=names&exact=1
>>>>>>>>
>>>>>>>> So it would be good to support 5.5 and 5.7
>>>>>>>
>>>>>>> Maybe it worth it to also look on Ubuntu packages for the LTS, as
>> they
>>>>>>> don't follow the same cycle:
>>>>>>> https://packages.ubuntu.com/search?keywords=mysql-server
>>>>>>>
>>>>>>> Apparently for now version are the same than for Debian.
>>>>>>>>
>>>>>>>> Here is the one for postgresql (since we also have a pgsql based
>>>>> Debian
>>>>>>> package)
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>
>> https://packages.debian.org/search?keywords=postgresql&searchon=names&exact=1
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>
>> https://packages.ubuntu.com/search?suite=default&section=all&arch=any&keywords=postgresql&searchon=names
>>>>>>>
>>>>>>> So here I see 9.3, 9.5, 10.5
>>>>>>>
>>>>>>>>
>>>>>>>> So 9.4, 9.6 and 11
>>>>>>>>
>>>>>>>>>
>>>>>>>>> Thanks
>>>>>>>>> -Vinent
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Simon
>>>>>>>>>>
>>>>>>>>>>> So WDYT about the 3 questions?
>>>>>>>>>>> Thanks
>>>>>>>>>>> -Vincent
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Simon Urli
>>>>>>>>>> Software Engineer at XWiki SAS
>>>>>>>>>> [hidden email]
>>>>>>>>>> More about us at http://www.xwiki.com
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Simon Urli
>>>>>>> Software Engineer at XWiki SAS
>>>>>>> [hidden email]
>>>>>>> More about us at http://www.xwiki.com
>>>>>>>
>>>>>
>>>>>
>>
>>

Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

vmassol
Administrator


> On 31 Oct 2018, at 16:27, Vincent Massol <[hidden email]> wrote:
>
>
>
>> On 31 Oct 2018, at 16:19, Ecaterina Moraru (Valica) <[hidden email]> wrote:
>>
>> On Wed, Oct 31, 2018 at 5:12 PM Vincent Massol <[hidden email]> wrote:
>>
>>> Hi Caty,
>>>
>>> Thanks but I think we should focus on the databases that our users use for
>>> XWiki. We have that info already with the active installs.
>>>
>>
>> https://www.xwiki.org/xwiki/bin/view/ActiveInstalls/
>> k, I understand, with the note that those graphs are influenced by what we
>> support.
>> In the case of Active Install, would be nice to display also the DB
>> versions.
>
> Yes. However we can’t support all versions and people usually lag behind. So I don’t think we should support more than the latest one. Already hard to do.
>
> BTW we do have the versions, we just don’t display them.
> See http://activeinstalls.xwiki.org/#/dashboard
>
> I did a quick pie chart for mysql:
> https://www.evernote.com/l/AHe-MYCE-09Nuoyau9jFQf45OgtIZKmaqk0

What’s interesting is that version 8 is not used yet. So we could keep staying on 5.x for now probably.

Thanks
-Vincent

> Thanks
> -Vincent
>
>>
>> Thanks,
>> Caty
>>
>>
>>>
>>> It’s already a lot of work :)
>>>
>>> My goal with this thread was not fully review the list of supported
>>> databses, just to make it more clear the versions of them we want to
>>> support.
>>>
>>> Thanks
>>> -Vincent
>>>
>>>> On 31 Oct 2018, at 15:57, Ecaterina Moraru (Valica) <[hidden email]>
>>> wrote:
>>>>
>>>> Another top
>>>>
>>> https://www.eversql.com/most-popular-databases-in-2018-according-to-stackoverflow-survey/
>>>>
>>>> On Wed, Oct 31, 2018 at 4:45 PM Ecaterina Moraru (Valica) <
>>> [hidden email]>
>>>> wrote:
>>>>
>>>>>
>>>>>
>>>>> On Wed, Oct 31, 2018 at 3:53 PM Vincent Massol <[hidden email]>
>>> wrote:
>>>>>
>>>>>> Hi Caty,
>>>>>>
>>>>>>> On 31 Oct 2018, at 14:43, Ecaterina Moraru (Valica) <
>>> [hidden email]>
>>>>>> wrote:
>>>>>>>
>>>>>>> IMO we should just write we support:
>>>>>>> * HyperSQL 2.x Latest
>>>>>>> * MySQL 5.x Latest
>>>>>>> * PostgreSQL 9.x Latest
>>>>>>> * Oracle 11.x Latest
>>>>>>> not sure what help would do to have the explicit 2.4.1, 5.7.24,
>>> 9.6.10,
>>>>>>> 11.2.0.4.0 versions.
>>>>>>
>>>>>> Yes, this is what I proposed.
>>>>>>
>>>>>>>
>>>>>>> Also I'm sure we won't keep up with the versions, so they won't mean
>>>>>>> latest.
>>>>>>> When we do the tests we should always fix and test on the latest one.
>>>>>>> And this 'latest' behavior is consistent with what we do for Browsers,
>>>>>> with
>>>>>>> the exception that we are a bit more descriptive by giving the DB
>>> cycle.
>>>>>>
>>>>>> Sure. Note that there’s more in this thread, for example:
>>>>>>
>>>>>> 1) What does latest mean?
>>>>>> 2) What about the other 2 questions I asked?
>>>>>>
>>>>>
>>>>> See
>>>>>
>>>>>
>>> https://trends.google.com/trends/explore?cat=13&date=today%205-y&q=%2Fm%2F01vw9z,%2Fm%2F04y3k,%2Fm%2F0120vr,%2Fm%2F05ynw,Hyper%20SQL
>>>>> and
>>>>>
>>>>>
>>> https://www.statista.com/statistics/809750/worldwide-popularity-ranking-database-management-systems/
>>>>>
>>>>> According to those pages my questions are:
>>>>> * Why are we supporting "Hypersonic DB" ? - but hey, apparently it's in
>>>>> the jetty thing. k :) Here we should just say latest, without any
>>> version
>>>>> to it. This DB is anyway only recommended for the demo version.
>>>>> * Why don't we support Microsoft SQL Server?
>>>>>
>>>>> Another  reference:
>>>>> https://db-engines.com/en/ranking
>>>>>
>>>>> * MongoDB also is in the top 5 for 2018 in multiple resources. Should /
>>>>> could we also support that? In the Relational Databases section, DB2 is
>>>>> listed, see https://db-engines.com/en/ranking/relational+dbms
>>>>>
>>>>> Anyway, I think it would be enough if we support the top 3 DB for the
>>>>> latest versions. This would mean just MySQL 8.x instead of MySQL 5.x.
>>> Could
>>>>> not find any relevant comparison for DB versions. Found a graph from
>>> 2015
>>>>> in https://plumbr.io/blog/io/most-popular-relational-databases where
>>>>> MySQL 5.6 was most popular (long time ago), so not sure what we could
>>> use
>>>>> as a reference. On the other hand MySQL 8.0 launched 6 month ago. So
>>>>> indeed, we should support the latest 5.7.x (5.7.24) and also 8.0.x
>>>>> (8.0.13), see https://en.wikipedia.org/wiki/MySQL#Release_history
>>>>>
>>>>> Regarding PostgreSQL, IMO we should support (10.5 || 9.6.10) and 11.0,
>>> see
>>>>> https://en.wikipedia.org/wiki/PostgreSQL#Release_history
>>>>>
>>>>> Regarding Oracle Database, we should support 12.2.0.1 and 18.1.0, see
>>>>> https://en.wikipedia.org/wiki/Oracle_Database#Releases_and_versions
>>>>>
>>>>> Regarding Microsoft SQL Server it should be (in case we decide it) SQL
>>>>> Server 2017, see
>>>>> https://en.wikipedia.org/wiki/Microsoft_SQL_Server#Currently
>>>>>
>>>>> My rule was: latest/latest + the latest stable/previous version.
>>>>>
>>>>> Thanks,
>>>>> Caty
>>>>>
>>>>>
>>>>>>
>>>>>> WDYT about that?
>>>>>>
>>>>>> Thanks
>>>>>> -Vincent
>>>>>>
>>>>>>
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Caty
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Oct 31, 2018 at 12:11 PM Simon Urli <[hidden email]>
>>>>>> wrote:
>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On 31/10/2018 10:52, Thomas Mortagne wrote:
>>>>>>>>> On Wed, Oct 31, 2018 at 10:28 AM Vincent Massol <[hidden email]
>>>>
>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>> On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]>
>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>> Hi,
>>>>>>>>>>>
>>>>>>>>>>> On 31/10/2018 09:06, Vincent Massol 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
>>>>>>>> )
>>>>>>>>>>>
>>>>>>>>>>> +1
>>>>>>>>>>>
>>>>>>>>>>>> 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)
>>>>>>>>>>>
>>>>>>>>>>> +0 I don't really know how much effort it involves to ensure the
>>>>>>>> support of the latest version of each database and to fix the bugs
>>>>>>>> accordingly.
>>>>>>>>>>>
>>>>>>>>>>>> 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?
>>>>>>>>>>>
>>>>>>>>>>> What about the cycles that are bundled in major LTS distributions?
>>>>>>>>>>
>>>>>>>>>> You mean the versions from apt-get for ex (when using the default
>>>>>>>> repos)?
>>>>>>>>>>
>>>>>>>>>> Indeed the idea could to follow one of them. Any suggestion for
>>> which
>>>>>>>> one to follow and where the info is?
>>>>>>>>>
>>>>>>>>> Since we provide Debian package one good reference to know which
>>>>>>>>> version of MySQL to support IMO would be
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>
>>> https://packages.debian.org/search?keywords=mysql-server&searchon=names&exact=1
>>>>>>>>>
>>>>>>>>> So it would be good to support 5.5 and 5.7
>>>>>>>>
>>>>>>>> Maybe it worth it to also look on Ubuntu packages for the LTS, as
>>> they
>>>>>>>> don't follow the same cycle:
>>>>>>>> https://packages.ubuntu.com/search?keywords=mysql-server
>>>>>>>>
>>>>>>>> Apparently for now version are the same than for Debian.
>>>>>>>>>
>>>>>>>>> Here is the one for postgresql (since we also have a pgsql based
>>>>>> Debian
>>>>>>>> package)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>
>>> https://packages.debian.org/search?keywords=postgresql&searchon=names&exact=1
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>
>>> https://packages.ubuntu.com/search?suite=default&section=all&arch=any&keywords=postgresql&searchon=names
>>>>>>>>
>>>>>>>> So here I see 9.3, 9.5, 10.5
>>>>>>>>
>>>>>>>>>
>>>>>>>>> So 9.4, 9.6 and 11
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Thanks
>>>>>>>>>> -Vinent
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Simon
>>>>>>>>>>>
>>>>>>>>>>>> So WDYT about the 3 questions?
>>>>>>>>>>>> Thanks
>>>>>>>>>>>> -Vincent
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Simon Urli
>>>>>>>>>>> Software Engineer at XWiki SAS
>>>>>>>>>>> [hidden email]
>>>>>>>>>>> More about us at http://www.xwiki.com
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Simon Urli
>>>>>>>> Software Engineer at XWiki SAS
>>>>>>>> [hidden email]
>>>>>>>> More about us at http://www.xwiki.com

Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

Ecaterina Moraru (Valica)
In reply to this post by vmassol
On Wed, Oct 31, 2018 at 5:28 PM Vincent Massol <[hidden email]> wrote:

>
>
> > On 31 Oct 2018, at 16:19, Ecaterina Moraru (Valica) <[hidden email]>
> wrote:
> >
> > On Wed, Oct 31, 2018 at 5:12 PM Vincent Massol <[hidden email]>
> wrote:
> >
> >> Hi Caty,
> >>
> >> Thanks but I think we should focus on the databases that our users use
> for
> >> XWiki. We have that info already with the active installs.
> >>
> >
> > https://www.xwiki.org/xwiki/bin/view/ActiveInstalls/
> > k, I understand, with the note that those graphs are influenced by what
> we
> > support.
> > In the case of Active Install, would be nice to display also the DB
> > versions.
>
> Yes. However we can’t support all versions and people usually lag behind.
> So I don’t think we should support more than the latest one. Already hard
> to do.
>
> BTW we do have the versions, we just don’t display them.
> See http://activeinstalls.xwiki.org/#/dashboard
>
> I did a quick pie chart for mysql:
> https://www.evernote.com/l/AHe-MYCE-09Nuoyau9jFQf45OgtIZKmaqk0


Thanks


>
>
> Thanks
> -Vincent
>
> >
> > Thanks,
> > Caty
> >
> >
> >>
> >> It’s already a lot of work :)
> >>
> >> My goal with this thread was not fully review the list of supported
> >> databses, just to make it more clear the versions of them we want to
> >> support.
> >>
> >> Thanks
> >> -Vincent
> >>
> >>> On 31 Oct 2018, at 15:57, Ecaterina Moraru (Valica) <[hidden email]
> >
> >> wrote:
> >>>
> >>> Another top
> >>>
> >>
> https://www.eversql.com/most-popular-databases-in-2018-according-to-stackoverflow-survey/
> >>>
> >>> On Wed, Oct 31, 2018 at 4:45 PM Ecaterina Moraru (Valica) <
> >> [hidden email]>
> >>> wrote:
> >>>
> >>>>
> >>>>
> >>>> On Wed, Oct 31, 2018 at 3:53 PM Vincent Massol <[hidden email]>
> >> wrote:
> >>>>
> >>>>> Hi Caty,
> >>>>>
> >>>>>> On 31 Oct 2018, at 14:43, Ecaterina Moraru (Valica) <
> >> [hidden email]>
> >>>>> wrote:
> >>>>>>
> >>>>>> IMO we should just write we support:
> >>>>>> * HyperSQL 2.x Latest
> >>>>>> * MySQL 5.x Latest
> >>>>>> * PostgreSQL 9.x Latest
> >>>>>> * Oracle 11.x Latest
> >>>>>> not sure what help would do to have the explicit 2.4.1, 5.7.24,
> >> 9.6.10,
> >>>>>> 11.2.0.4.0 versions.
> >>>>>
> >>>>> Yes, this is what I proposed.
> >>>>>
> >>>>>>
> >>>>>> Also I'm sure we won't keep up with the versions, so they won't mean
> >>>>>> latest.
> >>>>>> When we do the tests we should always fix and test on the latest
> one.
> >>>>>> And this 'latest' behavior is consistent with what we do for
> Browsers,
> >>>>> with
> >>>>>> the exception that we are a bit more descriptive by giving the DB
> >> cycle.
> >>>>>
> >>>>> Sure. Note that there’s more in this thread, for example:
> >>>>>
> >>>>> 1) What does latest mean?
> >>>>> 2) What about the other 2 questions I asked?
> >>>>>
> >>>>
> >>>> See
> >>>>
> >>>>
> >>
> https://trends.google.com/trends/explore?cat=13&date=today%205-y&q=%2Fm%2F01vw9z,%2Fm%2F04y3k,%2Fm%2F0120vr,%2Fm%2F05ynw,Hyper%20SQL
> >>>> and
> >>>>
> >>>>
> >>
> https://www.statista.com/statistics/809750/worldwide-popularity-ranking-database-management-systems/
> >>>>
> >>>> According to those pages my questions are:
> >>>> * Why are we supporting "Hypersonic DB" ? - but hey, apparently it's
> in
> >>>> the jetty thing. k :) Here we should just say latest, without any
> >> version
> >>>> to it. This DB is anyway only recommended for the demo version.
> >>>> * Why don't we support Microsoft SQL Server?
> >>>>
> >>>> Another  reference:
> >>>> https://db-engines.com/en/ranking
> >>>>
> >>>> * MongoDB also is in the top 5 for 2018 in multiple resources. Should
> /
> >>>> could we also support that? In the Relational Databases section, DB2
> is
> >>>> listed, see https://db-engines.com/en/ranking/relational+dbms
> >>>>
> >>>> Anyway, I think it would be enough if we support the top 3 DB for the
> >>>> latest versions. This would mean just MySQL 8.x instead of MySQL 5.x.
> >> Could
> >>>> not find any relevant comparison for DB versions. Found a graph from
> >> 2015
> >>>> in https://plumbr.io/blog/io/most-popular-relational-databases where
> >>>> MySQL 5.6 was most popular (long time ago), so not sure what we could
> >> use
> >>>> as a reference. On the other hand MySQL 8.0 launched 6 month ago. So
> >>>> indeed, we should support the latest 5.7.x (5.7.24) and also 8.0.x
> >>>> (8.0.13), see https://en.wikipedia.org/wiki/MySQL#Release_history
> >>>>
> >>>> Regarding PostgreSQL, IMO we should support (10.5 || 9.6.10) and 11.0,
> >> see
> >>>> https://en.wikipedia.org/wiki/PostgreSQL#Release_history
> >>>>
> >>>> Regarding Oracle Database, we should support 12.2.0.1 and 18.1.0, see
> >>>> https://en.wikipedia.org/wiki/Oracle_Database#Releases_and_versions
> >>>>
> >>>> Regarding Microsoft SQL Server it should be (in case we decide it) SQL
> >>>> Server 2017, see
> >>>> https://en.wikipedia.org/wiki/Microsoft_SQL_Server#Currently
> >>>>
> >>>> My rule was: latest/latest + the latest stable/previous version.
> >>>>
> >>>> Thanks,
> >>>> Caty
> >>>>
> >>>>
> >>>>>
> >>>>> WDYT about that?
> >>>>>
> >>>>> Thanks
> >>>>> -Vincent
> >>>>>
> >>>>>
> >>>>>>
> >>>>>> Thanks,
> >>>>>> Caty
> >>>>>>
> >>>>>>
> >>>>>> On Wed, Oct 31, 2018 at 12:11 PM Simon Urli <[hidden email]>
> >>>>> wrote:
> >>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>> On 31/10/2018 10:52, Thomas Mortagne wrote:
> >>>>>>>> On Wed, Oct 31, 2018 at 10:28 AM Vincent Massol <
> [hidden email]
> >>>
> >>>>>>> wrote:
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>> On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]>
> >> wrote:
> >>>>>>>>>>
> >>>>>>>>>> Hi,
> >>>>>>>>>>
> >>>>>>>>>> On 31/10/2018 09:06, Vincent Massol 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
> >>>>>>> )
> >>>>>>>>>>
> >>>>>>>>>> +1
> >>>>>>>>>>
> >>>>>>>>>>> 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)
> >>>>>>>>>>
> >>>>>>>>>> +0 I don't really know how much effort it involves to ensure the
> >>>>>>> support of the latest version of each database and to fix the bugs
> >>>>>>> accordingly.
> >>>>>>>>>>
> >>>>>>>>>>> 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?
> >>>>>>>>>>
> >>>>>>>>>> What about the cycles that are bundled in major LTS
> distributions?
> >>>>>>>>>
> >>>>>>>>> You mean the versions from apt-get for ex (when using the default
> >>>>>>> repos)?
> >>>>>>>>>
> >>>>>>>>> Indeed the idea could to follow one of them. Any suggestion for
> >> which
> >>>>>>> one to follow and where the info is?
> >>>>>>>>
> >>>>>>>> Since we provide Debian package one good reference to know which
> >>>>>>>> version of MySQL to support IMO would be
> >>>>>>>>
> >>>>>>>>
> >>>>>>>
> >>>>>
> >>
> https://packages.debian.org/search?keywords=mysql-server&searchon=names&exact=1
> >>>>>>>>
> >>>>>>>> So it would be good to support 5.5 and 5.7
> >>>>>>>
> >>>>>>> Maybe it worth it to also look on Ubuntu packages for the LTS, as
> >> they
> >>>>>>> don't follow the same cycle:
> >>>>>>> https://packages.ubuntu.com/search?keywords=mysql-server
> >>>>>>>
> >>>>>>> Apparently for now version are the same than for Debian.
> >>>>>>>>
> >>>>>>>> Here is the one for postgresql (since we also have a pgsql based
> >>>>> Debian
> >>>>>>> package)
> >>>>>>>>
> >>>>>>>>
> >>>>>>>
> >>>>>
> >>
> https://packages.debian.org/search?keywords=postgresql&searchon=names&exact=1
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>
> >>
> https://packages.ubuntu.com/search?suite=default&section=all&arch=any&keywords=postgresql&searchon=names
> >>>>>>>
> >>>>>>> So here I see 9.3, 9.5, 10.5
> >>>>>>>
> >>>>>>>>
> >>>>>>>> So 9.4, 9.6 and 11
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>> Thanks
> >>>>>>>>> -Vinent
> >>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> Simon
> >>>>>>>>>>
> >>>>>>>>>>> So WDYT about the 3 questions?
> >>>>>>>>>>> Thanks
> >>>>>>>>>>> -Vincent
> >>>>>>>>>>
> >>>>>>>>>> --
> >>>>>>>>>> Simon Urli
> >>>>>>>>>> Software Engineer at XWiki SAS
> >>>>>>>>>> [hidden email]
> >>>>>>>>>> More about us at http://www.xwiki.com
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>
> >>>>>>> --
> >>>>>>> Simon Urli
> >>>>>>> Software Engineer at XWiki SAS
> >>>>>>> [hidden email]
> >>>>>>> More about us at http://www.xwiki.com
> >>>>>>>
> >>>>>
> >>>>>
> >>
> >>
>
>
Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

Thomas Mortagne
Administrator
In reply to this post by vmassol
On Wed, Oct 31, 2018 at 4:30 PM Vincent Massol <[hidden email]> wrote:

>
>
>
> > On 31 Oct 2018, at 16:27, Vincent Massol <[hidden email]> wrote:
> >
> >
> >
> >> On 31 Oct 2018, at 16:19, Ecaterina Moraru (Valica) <[hidden email]> wrote:
> >>
> >> On Wed, Oct 31, 2018 at 5:12 PM Vincent Massol <[hidden email]> wrote:
> >>
> >>> Hi Caty,
> >>>
> >>> Thanks but I think we should focus on the databases that our users use for
> >>> XWiki. We have that info already with the active installs.
> >>>
> >>
> >> https://www.xwiki.org/xwiki/bin/view/ActiveInstalls/
> >> k, I understand, with the note that those graphs are influenced by what we
> >> support.
> >> In the case of Active Install, would be nice to display also the DB
> >> versions.
> >
> > Yes. However we can’t support all versions and people usually lag behind. So I don’t think we should support more than the latest one. Already hard to do.
> >
> > BTW we do have the versions, we just don’t display them.
> > See http://activeinstalls.xwiki.org/#/dashboard
> >
> > I did a quick pie chart for mysql:
> > https://www.evernote.com/l/AHe-MYCE-09Nuoyau9jFQf45OgtIZKmaqk0
>
> What’s interesting is that version 8 is not used yet. So we could keep staying on 5.x for now probably.

XWiki does not start at all on MySQL 8 so not sure it's a good criteria :)

>
> Thanks
> -Vincent
>
> > Thanks
> > -Vincent
> >
> >>
> >> Thanks,
> >> Caty
> >>
> >>
> >>>
> >>> It’s already a lot of work :)
> >>>
> >>> My goal with this thread was not fully review the list of supported
> >>> databses, just to make it more clear the versions of them we want to
> >>> support.
> >>>
> >>> Thanks
> >>> -Vincent
> >>>
> >>>> On 31 Oct 2018, at 15:57, Ecaterina Moraru (Valica) <[hidden email]>
> >>> wrote:
> >>>>
> >>>> Another top
> >>>>
> >>> https://www.eversql.com/most-popular-databases-in-2018-according-to-stackoverflow-survey/
> >>>>
> >>>> On Wed, Oct 31, 2018 at 4:45 PM Ecaterina Moraru (Valica) <
> >>> [hidden email]>
> >>>> wrote:
> >>>>
> >>>>>
> >>>>>
> >>>>> On Wed, Oct 31, 2018 at 3:53 PM Vincent Massol <[hidden email]>
> >>> wrote:
> >>>>>
> >>>>>> Hi Caty,
> >>>>>>
> >>>>>>> On 31 Oct 2018, at 14:43, Ecaterina Moraru (Valica) <
> >>> [hidden email]>
> >>>>>> wrote:
> >>>>>>>
> >>>>>>> IMO we should just write we support:
> >>>>>>> * HyperSQL 2.x Latest
> >>>>>>> * MySQL 5.x Latest
> >>>>>>> * PostgreSQL 9.x Latest
> >>>>>>> * Oracle 11.x Latest
> >>>>>>> not sure what help would do to have the explicit 2.4.1, 5.7.24,
> >>> 9.6.10,
> >>>>>>> 11.2.0.4.0 versions.
> >>>>>>
> >>>>>> Yes, this is what I proposed.
> >>>>>>
> >>>>>>>
> >>>>>>> Also I'm sure we won't keep up with the versions, so they won't mean
> >>>>>>> latest.
> >>>>>>> When we do the tests we should always fix and test on the latest one.
> >>>>>>> And this 'latest' behavior is consistent with what we do for Browsers,
> >>>>>> with
> >>>>>>> the exception that we are a bit more descriptive by giving the DB
> >>> cycle.
> >>>>>>
> >>>>>> Sure. Note that there’s more in this thread, for example:
> >>>>>>
> >>>>>> 1) What does latest mean?
> >>>>>> 2) What about the other 2 questions I asked?
> >>>>>>
> >>>>>
> >>>>> See
> >>>>>
> >>>>>
> >>> https://trends.google.com/trends/explore?cat=13&date=today%205-y&q=%2Fm%2F01vw9z,%2Fm%2F04y3k,%2Fm%2F0120vr,%2Fm%2F05ynw,Hyper%20SQL
> >>>>> and
> >>>>>
> >>>>>
> >>> https://www.statista.com/statistics/809750/worldwide-popularity-ranking-database-management-systems/
> >>>>>
> >>>>> According to those pages my questions are:
> >>>>> * Why are we supporting "Hypersonic DB" ? - but hey, apparently it's in
> >>>>> the jetty thing. k :) Here we should just say latest, without any
> >>> version
> >>>>> to it. This DB is anyway only recommended for the demo version.
> >>>>> * Why don't we support Microsoft SQL Server?
> >>>>>
> >>>>> Another  reference:
> >>>>> https://db-engines.com/en/ranking
> >>>>>
> >>>>> * MongoDB also is in the top 5 for 2018 in multiple resources. Should /
> >>>>> could we also support that? In the Relational Databases section, DB2 is
> >>>>> listed, see https://db-engines.com/en/ranking/relational+dbms
> >>>>>
> >>>>> Anyway, I think it would be enough if we support the top 3 DB for the
> >>>>> latest versions. This would mean just MySQL 8.x instead of MySQL 5.x.
> >>> Could
> >>>>> not find any relevant comparison for DB versions. Found a graph from
> >>> 2015
> >>>>> in https://plumbr.io/blog/io/most-popular-relational-databases where
> >>>>> MySQL 5.6 was most popular (long time ago), so not sure what we could
> >>> use
> >>>>> as a reference. On the other hand MySQL 8.0 launched 6 month ago. So
> >>>>> indeed, we should support the latest 5.7.x (5.7.24) and also 8.0.x
> >>>>> (8.0.13), see https://en.wikipedia.org/wiki/MySQL#Release_history
> >>>>>
> >>>>> Regarding PostgreSQL, IMO we should support (10.5 || 9.6.10) and 11.0,
> >>> see
> >>>>> https://en.wikipedia.org/wiki/PostgreSQL#Release_history
> >>>>>
> >>>>> Regarding Oracle Database, we should support 12.2.0.1 and 18.1.0, see
> >>>>> https://en.wikipedia.org/wiki/Oracle_Database#Releases_and_versions
> >>>>>
> >>>>> Regarding Microsoft SQL Server it should be (in case we decide it) SQL
> >>>>> Server 2017, see
> >>>>> https://en.wikipedia.org/wiki/Microsoft_SQL_Server#Currently
> >>>>>
> >>>>> My rule was: latest/latest + the latest stable/previous version.
> >>>>>
> >>>>> Thanks,
> >>>>> Caty
> >>>>>
> >>>>>
> >>>>>>
> >>>>>> WDYT about that?
> >>>>>>
> >>>>>> Thanks
> >>>>>> -Vincent
> >>>>>>
> >>>>>>
> >>>>>>>
> >>>>>>> Thanks,
> >>>>>>> Caty
> >>>>>>>
> >>>>>>>
> >>>>>>> On Wed, Oct 31, 2018 at 12:11 PM Simon Urli <[hidden email]>
> >>>>>> wrote:
> >>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> On 31/10/2018 10:52, Thomas Mortagne wrote:
> >>>>>>>>> On Wed, Oct 31, 2018 at 10:28 AM Vincent Massol <[hidden email]
> >>>>
> >>>>>>>> wrote:
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>> On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]>
> >>> wrote:
> >>>>>>>>>>>
> >>>>>>>>>>> Hi,
> >>>>>>>>>>>
> >>>>>>>>>>> On 31/10/2018 09:06, Vincent Massol 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
> >>>>>>>> )
> >>>>>>>>>>>
> >>>>>>>>>>> +1
> >>>>>>>>>>>
> >>>>>>>>>>>> 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)
> >>>>>>>>>>>
> >>>>>>>>>>> +0 I don't really know how much effort it involves to ensure the
> >>>>>>>> support of the latest version of each database and to fix the bugs
> >>>>>>>> accordingly.
> >>>>>>>>>>>
> >>>>>>>>>>>> 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?
> >>>>>>>>>>>
> >>>>>>>>>>> What about the cycles that are bundled in major LTS distributions?
> >>>>>>>>>>
> >>>>>>>>>> You mean the versions from apt-get for ex (when using the default
> >>>>>>>> repos)?
> >>>>>>>>>>
> >>>>>>>>>> Indeed the idea could to follow one of them. Any suggestion for
> >>> which
> >>>>>>>> one to follow and where the info is?
> >>>>>>>>>
> >>>>>>>>> Since we provide Debian package one good reference to know which
> >>>>>>>>> version of MySQL to support IMO would be
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>
> >>>>>>
> >>> https://packages.debian.org/search?keywords=mysql-server&searchon=names&exact=1
> >>>>>>>>>
> >>>>>>>>> So it would be good to support 5.5 and 5.7
> >>>>>>>>
> >>>>>>>> Maybe it worth it to also look on Ubuntu packages for the LTS, as
> >>> they
> >>>>>>>> don't follow the same cycle:
> >>>>>>>> https://packages.ubuntu.com/search?keywords=mysql-server
> >>>>>>>>
> >>>>>>>> Apparently for now version are the same than for Debian.
> >>>>>>>>>
> >>>>>>>>> Here is the one for postgresql (since we also have a pgsql based
> >>>>>> Debian
> >>>>>>>> package)
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>
> >>>>>>
> >>> https://packages.debian.org/search?keywords=postgresql&searchon=names&exact=1
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>
> >>> https://packages.ubuntu.com/search?suite=default&section=all&arch=any&keywords=postgresql&searchon=names
> >>>>>>>>
> >>>>>>>> So here I see 9.3, 9.5, 10.5
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>> So 9.4, 9.6 and 11
> >>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> Thanks
> >>>>>>>>>> -Vinent
> >>>>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>>>> Simon
> >>>>>>>>>>>
> >>>>>>>>>>>> So WDYT about the 3 questions?
> >>>>>>>>>>>> Thanks
> >>>>>>>>>>>> -Vincent
> >>>>>>>>>>>
> >>>>>>>>>>> --
> >>>>>>>>>>> Simon Urli
> >>>>>>>>>>> Software Engineer at XWiki SAS
> >>>>>>>>>>> [hidden email]
> >>>>>>>>>>> More about us at http://www.xwiki.com
> >>>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>> --
> >>>>>>>> Simon Urli
> >>>>>>>> Software Engineer at XWiki SAS
> >>>>>>>> [hidden email]
> >>>>>>>> More about us at http://www.xwiki.com
>


--
Thomas Mortagne
Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

vmassol
Administrator


> On 6 Nov 2018, at 10:14, Thomas Mortagne <[hidden email]> wrote:
>
> On Wed, Oct 31, 2018 at 4:30 PM Vincent Massol <[hidden email]> wrote:
>>
>>
>>
>>> On 31 Oct 2018, at 16:27, Vincent Massol <[hidden email]> wrote:
>>>
>>>
>>>
>>>> On 31 Oct 2018, at 16:19, Ecaterina Moraru (Valica) <[hidden email]> wrote:
>>>>
>>>> On Wed, Oct 31, 2018 at 5:12 PM Vincent Massol <[hidden email]> wrote:
>>>>
>>>>> Hi Caty,
>>>>>
>>>>> Thanks but I think we should focus on the databases that our users use for
>>>>> XWiki. We have that info already with the active installs.
>>>>>
>>>>
>>>> https://www.xwiki.org/xwiki/bin/view/ActiveInstalls/
>>>> k, I understand, with the note that those graphs are influenced by what we
>>>> support.
>>>> In the case of Active Install, would be nice to display also the DB
>>>> versions.
>>>
>>> Yes. However we can’t support all versions and people usually lag behind. So I don’t think we should support more than the latest one. Already hard to do.
>>>
>>> BTW we do have the versions, we just don’t display them.
>>> See http://activeinstalls.xwiki.org/#/dashboard
>>>
>>> I did a quick pie chart for mysql:
>>> https://www.evernote.com/l/AHe-MYCE-09Nuoyau9jFQf45OgtIZKmaqk0
>>
>> What’s interesting is that version 8 is not used yet. So we could keep staying on 5.x for now probably.
>
> XWiki does not start at all on MySQL 8 so not sure it's a good criteria :)

Good point :)

Thanks
-Vincent

>
>>
>> Thanks
>> -Vincent
>>
>>> Thanks
>>> -Vincent
>>>
>>>>
>>>> Thanks,
>>>> Caty
>>>>
>>>>
>>>>>
>>>>> It’s already a lot of work :)
>>>>>
>>>>> My goal with this thread was not fully review the list of supported
>>>>> databses, just to make it more clear the versions of them we want to
>>>>> support.
>>>>>
>>>>> Thanks
>>>>> -Vincent
>>>>>
>>>>>> On 31 Oct 2018, at 15:57, Ecaterina Moraru (Valica) <[hidden email]>
>>>>> wrote:
>>>>>>
>>>>>> Another top
>>>>>>
>>>>> https://www.eversql.com/most-popular-databases-in-2018-according-to-stackoverflow-survey/
>>>>>>
>>>>>> On Wed, Oct 31, 2018 at 4:45 PM Ecaterina Moraru (Valica) <
>>>>> [hidden email]>
>>>>>> wrote:
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Oct 31, 2018 at 3:53 PM Vincent Massol <[hidden email]>
>>>>> wrote:
>>>>>>>
>>>>>>>> Hi Caty,
>>>>>>>>
>>>>>>>>> On 31 Oct 2018, at 14:43, Ecaterina Moraru (Valica) <
>>>>> [hidden email]>
>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>> IMO we should just write we support:
>>>>>>>>> * HyperSQL 2.x Latest
>>>>>>>>> * MySQL 5.x Latest
>>>>>>>>> * PostgreSQL 9.x Latest
>>>>>>>>> * Oracle 11.x Latest
>>>>>>>>> not sure what help would do to have the explicit 2.4.1, 5.7.24,
>>>>> 9.6.10,
>>>>>>>>> 11.2.0.4.0 versions.
>>>>>>>>
>>>>>>>> Yes, this is what I proposed.
>>>>>>>>
>>>>>>>>>
>>>>>>>>> Also I'm sure we won't keep up with the versions, so they won't mean
>>>>>>>>> latest.
>>>>>>>>> When we do the tests we should always fix and test on the latest one.
>>>>>>>>> And this 'latest' behavior is consistent with what we do for Browsers,
>>>>>>>> with
>>>>>>>>> the exception that we are a bit more descriptive by giving the DB
>>>>> cycle.
>>>>>>>>
>>>>>>>> Sure. Note that there’s more in this thread, for example:
>>>>>>>>
>>>>>>>> 1) What does latest mean?
>>>>>>>> 2) What about the other 2 questions I asked?
>>>>>>>>
>>>>>>>
>>>>>>> See
>>>>>>>
>>>>>>>
>>>>> https://trends.google.com/trends/explore?cat=13&date=today%205-y&q=%2Fm%2F01vw9z,%2Fm%2F04y3k,%2Fm%2F0120vr,%2Fm%2F05ynw,Hyper%20SQL
>>>>>>> and
>>>>>>>
>>>>>>>
>>>>> https://www.statista.com/statistics/809750/worldwide-popularity-ranking-database-management-systems/
>>>>>>>
>>>>>>> According to those pages my questions are:
>>>>>>> * Why are we supporting "Hypersonic DB" ? - but hey, apparently it's in
>>>>>>> the jetty thing. k :) Here we should just say latest, without any
>>>>> version
>>>>>>> to it. This DB is anyway only recommended for the demo version.
>>>>>>> * Why don't we support Microsoft SQL Server?
>>>>>>>
>>>>>>> Another  reference:
>>>>>>> https://db-engines.com/en/ranking
>>>>>>>
>>>>>>> * MongoDB also is in the top 5 for 2018 in multiple resources. Should /
>>>>>>> could we also support that? In the Relational Databases section, DB2 is
>>>>>>> listed, see https://db-engines.com/en/ranking/relational+dbms
>>>>>>>
>>>>>>> Anyway, I think it would be enough if we support the top 3 DB for the
>>>>>>> latest versions. This would mean just MySQL 8.x instead of MySQL 5.x.
>>>>> Could
>>>>>>> not find any relevant comparison for DB versions. Found a graph from
>>>>> 2015
>>>>>>> in https://plumbr.io/blog/io/most-popular-relational-databases where
>>>>>>> MySQL 5.6 was most popular (long time ago), so not sure what we could
>>>>> use
>>>>>>> as a reference. On the other hand MySQL 8.0 launched 6 month ago. So
>>>>>>> indeed, we should support the latest 5.7.x (5.7.24) and also 8.0.x
>>>>>>> (8.0.13), see https://en.wikipedia.org/wiki/MySQL#Release_history
>>>>>>>
>>>>>>> Regarding PostgreSQL, IMO we should support (10.5 || 9.6.10) and 11.0,
>>>>> see
>>>>>>> https://en.wikipedia.org/wiki/PostgreSQL#Release_history
>>>>>>>
>>>>>>> Regarding Oracle Database, we should support 12.2.0.1 and 18.1.0, see
>>>>>>> https://en.wikipedia.org/wiki/Oracle_Database#Releases_and_versions
>>>>>>>
>>>>>>> Regarding Microsoft SQL Server it should be (in case we decide it) SQL
>>>>>>> Server 2017, see
>>>>>>> https://en.wikipedia.org/wiki/Microsoft_SQL_Server#Currently
>>>>>>>
>>>>>>> My rule was: latest/latest + the latest stable/previous version.
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Caty
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> WDYT about that?
>>>>>>>>
>>>>>>>> Thanks
>>>>>>>> -Vincent
>>>>>>>>
>>>>>>>>
>>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>> Caty
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Wed, Oct 31, 2018 at 12:11 PM Simon Urli <[hidden email]>
>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 31/10/2018 10:52, Thomas Mortagne wrote:
>>>>>>>>>>> On Wed, Oct 31, 2018 at 10:28 AM Vincent Massol <[hidden email]
>>>>>>
>>>>>>>>>> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>> On 31 Oct 2018, at 10:15, Simon Urli <[hidden email]>
>>>>> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>> Hi,
>>>>>>>>>>>>>
>>>>>>>>>>>>> On 31/10/2018 09:06, Vincent Massol 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
>>>>>>>>>> )
>>>>>>>>>>>>>
>>>>>>>>>>>>> +1
>>>>>>>>>>>>>
>>>>>>>>>>>>>> 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)
>>>>>>>>>>>>>
>>>>>>>>>>>>> +0 I don't really know how much effort it involves to ensure the
>>>>>>>>>> support of the latest version of each database and to fix the bugs
>>>>>>>>>> accordingly.
>>>>>>>>>>>>>
>>>>>>>>>>>>>> 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?
>>>>>>>>>>>>>
>>>>>>>>>>>>> What about the cycles that are bundled in major LTS distributions?
>>>>>>>>>>>>
>>>>>>>>>>>> You mean the versions from apt-get for ex (when using the default
>>>>>>>>>> repos)?
>>>>>>>>>>>>
>>>>>>>>>>>> Indeed the idea could to follow one of them. Any suggestion for
>>>>> which
>>>>>>>>>> one to follow and where the info is?
>>>>>>>>>>>
>>>>>>>>>>> Since we provide Debian package one good reference to know which
>>>>>>>>>>> version of MySQL to support IMO would be
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>
>>>>> https://packages.debian.org/search?keywords=mysql-server&searchon=names&exact=1
>>>>>>>>>>>
>>>>>>>>>>> So it would be good to support 5.5 and 5.7
>>>>>>>>>>
>>>>>>>>>> Maybe it worth it to also look on Ubuntu packages for the LTS, as
>>>>> they
>>>>>>>>>> don't follow the same cycle:
>>>>>>>>>> https://packages.ubuntu.com/search?keywords=mysql-server
>>>>>>>>>>
>>>>>>>>>> Apparently for now version are the same than for Debian.
>>>>>>>>>>>
>>>>>>>>>>> Here is the one for postgresql (since we also have a pgsql based
>>>>>>>> Debian
>>>>>>>>>> package)
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>
>>>>> https://packages.debian.org/search?keywords=postgresql&searchon=names&exact=1
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>
>>>>> https://packages.ubuntu.com/search?suite=default&section=all&arch=any&keywords=postgresql&searchon=names
>>>>>>>>>>
>>>>>>>>>> So here I see 9.3, 9.5, 10.5
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> So 9.4, 9.6 and 11
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Thanks
>>>>>>>>>>>> -Vinent
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> Simon
>>>>>>>>>>>>>
>>>>>>>>>>>>>> So WDYT about the 3 questions?
>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>> -Vincent
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> Simon Urli
>>>>>>>>>>>>> Software Engineer at XWiki SAS
>>>>>>>>>>>>> [hidden email]
>>>>>>>>>>>>> More about us at http://www.xwiki.com
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Simon Urli
>>>>>>>>>> Software Engineer at XWiki SAS
>>>>>>>>>> [hidden email]
>>>>>>>>>> More about us at http://www.xwiki.com
>>
>
>
> --
> Thomas Mortagne

Reply | Threaded
Open this post in threaded view
|

Re: [Proposal] Update database support strategy

vmassol
Administrator
In reply to this post by vmassol
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.

Thanks
-Vincent


> On 31 Oct 2018, at 09:06, Vincent Massol <[hidden email]> 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

12