[development] Do not let postgresql hold back great patches

Barry Jaspan barry at jaspan.org
Sun Nov 18 05:12:33 UTC 2007


Karoly,

> "In my opinion, any patch should be committable to core once it
> works on mysql and has a decent hope (use common sense) to work on
> postgresql."
> 
> How can people read "Let's drop postgresql!" into my words?

Because:

1.  You posted on your blog that you want to drop support for pgsql:
"I want Drupal core to work with MySQL and that's it."
(http://www.drupal4hu.com/node/64)

2.  In conversations on IRC and elsewhere, you have expressed great
frustration at being bothered with pgsql.

3.  You've specifically asked me why I think it is important that the
mysql and pgsql databases have consistent schemas, expressing that you
think it is not important.

So, when you say "any patch should be committable to core once it
works on mysql," it sounds an awful lot like "because I don't think
support for other databases is important at all and I'd be happy to
see it go."  You are correct that the particular message I replied to
did not call for de-supporting pgsql but I think it is reasonable to
assume your previous statements apply to your current statements,
unless you disclaim them.

Honestly, I have no real opinion about pgsql support per se.  I've
never used it except for D6 development and testing.  The decision to
support it in Drupal was made before I arrived in the project and I
don't know why.  However, I believe the discipline of supporting more
than mysql is healthy and necessary for the project.

I do think Larry has a point, though: This situation will only get
harder and we cannot hold up all patches until they work on every
conceivable platform.  If we have consensus on what platforms we
support and lack of hostility to re-opening closed issues due to
portability issues that come up later, and sometimes "mysql-only
developers" even having to rewrite code that works on mysql in order
to make it portable, then a process that includes commits before
patches are tested on all supported platforms is probably sensible.

HOWEVER, I still think the mandatory works-before-commit set of
platforms should include more than just mysql; including at least two
DBMS's makes it much more likely that the code will be portable for
additional DBMS's later *without* requiring rewriting.

One more thing.  I use XAMPP on Windows for development.  Here is my
process for using PostgreSQL 8.3:

1.  Download and run the installer.
2.  Uncomment the "extension=php_pgsql.dll" line in Apache's php.ini.
3.  Re-start Apache.
4.  Change $db_url in settings.php.

Not very hard.  If a handful of core developers did this and just used
pgsql for all core development, we'd have a better product and
process.

Barry



More information about the development mailing list