The default value of store engine for location table is not convenient for a big number of users, as MyISAM locks whole table when executing updates; It would be more convenient to use InnoDB for this table, as it uses locking at row level; InnoDB is by default avaiable in MySQL 5.0.X, and it can be enabled at compilation time in MySQL 5.1.X.
Changes in schema to enable InnoDB type for MySQL tables, and change engine for location table.