[development] PostgreSQL 8.3 change

Ken Rickard agentrickard at gmail.com
Sat Feb 16 03:45:23 UTC 2008


All-

This is ------NOT------- intended to open the database wars.

However, please take note of http://drupal.org/node/220064.

Drupaler drupallfm <http://drupal.org/user/194425> discovered a nasty (to
us) little change from pgSQL 8.2 (which I test on) to 8.3.

It only seems to affect one core query, but could bite any developer who
uses JOINS where data types are not identical.

>From the Postgres website:

"Upgrade Warning...in version 8.3 we have cleaned up some of the data type
conversions ("casts"). This refactoring may cause problems for some
users..."

What does it mean?  It means that you cannot do a JOIN across different data
types without casting your data.

In older versions of pgSQL (and in MySQL) the database handled the
conversion for you.  pgSQL 8.3 does not, and throws an error.

In D6, the only query that seems to be affected is
http://api.drupal.org/api/function/block_box_get/6.  pgSQL used to turn the
interger and varchar into text strings for comparison.  It no longer does,
so an explict CAST is necessary.

However, lets keep that in mind for D7 work on the db layer.

--
Ken Rickard
agentrickard
-- 
--------------------------------------------------------------
DON'T MISS EARTH'S LARGEST GATHERING OF DRUPAL PROFESSIONALS!
Drupalcon Boston 2008 · March 3-6, 2008
Learn more at http://boston2008.drupalcon.org
Affordable sponsorship packages available
--------------------------------------------------------------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.drupal.org/pipermail/development/attachments/20080215/ad662dba/attachment.htm 


More information about the development mailing list