On 20 Jan 2007, at 12:56, Victor Kane wrote:
Referential integrity is good. No doubt about it. But the purchase of InnoDB by Oracle last year is worrying, if Drupal is going to have any kind of dependence on that storage engine.
I wasn't suggesting we'd make Drupal core use InnoDB tables. If we start caring about referential integrity, MyISAM would continue to work -- and would probably continue to be the default table engine. The MyISAM storage engine simply ignores all statements that have to do with referential integrity. However, referential integrity could be a good reason to use InnoDB tables or PostgreSQL. Being sure that my data is in a consistent/correct state, matters a great deal for me.
Of course Drupal should support all databases, but I would think twice about creating dependencies upon commercial-only software (if InnoDB became some kind of "standard" for modules...).
The versions of InnoDB that are released as open source will continue to be available. MySQL, the company, might stop supporting it, but MySQL, the community, might maintain the InnoDB storage engine. It's unclear how the cards will be played at this time. The one thing that is clear is that MySQL, the company, is investing heavily in Falcon, a new storage engine that might replace InnoDB. Plus, you could also look at this from a different perspective. It could mean that -- all of a sudden -- Drupal works with Oracle (assuming they add InnoDB support to Oracle). You'll find that many serious DBAs (often Oracle users) care a lot about referential integrity. -- Dries Buytaert :: http://www.buytaert.net/