[development] drupal on postgresql benchmark

Larry Garfield larry at garfieldtech.com
Tue Nov 27 00:39:12 UTC 2007

On Tue, 27 Nov 2007 00:05:29 +0000, "John Handelaar" <john at userfrenzy.com> wrote:
> On Nov 26, 2007 7:09 PM, Khalid Baheyeldin <kb at 2bits.com> wrote:
>> What I normally do (not for this benchmark, but for tuning) is:
>> Add skip-innodb, which saves some 100MB of RAM for the MySQL.
> That's a borderline-reckless thing to say around here.
> Not using InnoDB is one thing -- and good luck with that when you've
> got lots of users, lots of comments, and some forums -- but actually
> removing the option at the server strikes me as more than a little
> foolish.
> Incidentally, there are lots of places where Drupal could use
> transactions when they're available.  user_add and node_save would
> both be a lot more DB-crash-resistant, for starters.
> jh

The problem is that transaction support is not universal.  In MySQL, for example, if you roll back a transaction it will roll back but throw a warning on any MyISAM tables that were affected, so unless you're using no MyISAM tables the rollback is not actually complete or atomic.  If you're on shared hosting, 95% chance you're on MyISAM.

David Strauss has been working on a transaction abstraction that should degrade gracefully, and I'm hoping to get that into the D7 database overhaul in some form or another.  We need to first figure out how we're going to handle MySQL's multi-engine weirdness, though.

--Larry Garfield

More information about the development mailing list