? ?
avatar mbabker
mbabker
1 May 2018

Otherwise known as the much simpler alternative to joomla-framework/database#112

Our PostgreSQL support uses the native ext/pgsql PHP extension versus the PDO library support. The native extension forces us to add extra complexity to our API (i.e. for prepared statement support it mandates an extra parsing middleware). In the context of Joomla, PostgreSQL support is an extreme niche use case, with less than 0.1% of sites reporting stats in the last 90 days reporting using PostgreSQL as their driver, so devoting resources to this niche use case doesn't make much sense.

We can get consistent prepared statement support by switching the PostgreSQL support in the CMS to require PDO only and drop the native extension driver from our API. The PDO variant of the driver already exists in the Framework (and inherently 4.0). My proposal:

  • In 3.9 and next minor Framework Database package release deprecate the ext/pgsql driver support
  • In 3.9 backport the PDO PostgreSQL driver from the Framework to CMS (not required but it lets sites running PostgreSQL update their server configuration before attempting a 4.0 upgrade so it's one less thing that has to be changed during the upgrade)
  • In Framework 2.0 Database package remove the ext/pgsql driver support
avatar mbabker mbabker - open - 1 May 2018
avatar joomla-cms-bot joomla-cms-bot - change - 1 May 2018
Labels Added: ? ?
avatar joomla-cms-bot joomla-cms-bot - labeled - 1 May 2018
avatar joomla-cms-bot joomla-cms-bot - labeled - 1 May 2018
avatar brianteeman
brianteeman - comment - 1 May 2018

Seems sensible to me - pdo is the way to go and for pgsql its an easy decision

avatar nibra
nibra - comment - 1 May 2018

+1
Absolutely makes sense for me.

avatar zero-24
zero-24 - comment - 1 May 2018

If there is a decision on that point lets please official announce that (maybe with an update of all the other things in 4.0) so we can extend the Joomla 4.0 checks and point to an official resource for that question: https://github.com/joomla/joomla-cms/blob/staging/administrator/components/com_admin/postinstall/joomla40checks.php

avatar mbabker
mbabker - comment - 1 May 2018

Absolutely not, we're just going to blindly make this change with zero user communication ? (of course we'd put out user communication, I'm not big on doing things without keeping impacted people informed).

avatar rdeutz
rdeutz - comment - 1 May 2018

+1 let's do it

avatar franz-wohlkoenig franz-wohlkoenig - change - 1 May 2018
Status New Discussion
avatar franz-wohlkoenig franz-wohlkoenig - change - 1 May 2018
Category Postgresql SQL
avatar tonypartridge
tonypartridge - comment - 2 May 2018

+1 makes complete sense

avatar mbabker
mbabker - comment - 13 May 2018

See #20386

avatar mbabker mbabker - change - 13 May 2018
Status Discussion Closed
Closed_Date 0000-00-00 00:00:00 2018-05-13 21:48:39
Closed_By mbabker
avatar mbabker mbabker - close - 13 May 2018

Add a Comment

Login with GitHub to post a comment