-----BEGIN PGP SIGNED MESSAGE-----
On Nov 18, 2005, at 7:14 PM, Carl Y. wrote:
Wow. I’m surprised to find that it is so difficult. Thanks for the
info. This makes me wonder… Back in the early days of mysql they
recommended using LOCK/UNLOCK TABLES to achieve transaction-like
functionality. Monty’s argument was that myisam is about 3 times
faster than fully ACID-compliant tables and the act of locking tables
is really low overhead. Also, you only need to lock the tables that
are needed for the transaction.
It’s fast for one writer but very slow for many. InnoDB often
outperforms MyISAM due to writer concurrency alone (it has row locks
whereas MyISAM has table locks only.)
How hard would it be to add support for MyISAM tables in ActiveRecord
by locking the tables needed for a query instead of using InnoDB
transactions? I think this would be a useful alternative to InnoDB,
not just because it would allow people to use FULLTEXT but also
because it might actually be faster in some cases.
Table locking cannot emulate transactions. Otherwise, MyISAM would
have them. It gives you a small portion of ACID (isolation only) and
no rollback capability.
I think the best option is for MySQL to implement fulltext indexes on
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (Darwin)
-----END PGP SIGNATURE-----