Workaround for index setup on SubMirror until I'm done w/ arbitrary index support for Schema setup.

This commit is contained in:
Brion Vibber 2010-08-10 11:45:34 -07:00
parent 09dee24cbe
commit 6a2659ed67
3 changed files with 20 additions and 1 deletions

View File

@ -333,7 +333,7 @@ class MysqlSchema extends Schema
}
if (empty($name)) {
$name = "$table_".implode("_", $columnNames)."_idx";
$name = "{$table}_".implode("_", $columnNames)."_idx";
}
$res = $this->conn->query("ALTER TABLE $table ".

View File

@ -120,6 +120,9 @@ class SubMirrorPlugin extends Plugin
{
$schema = Schema::get();
$schema->ensureTable('submirror', SubMirror::schemaDef());
// @hack until key definition support is merged
SubMirror::fixIndexes($schema);
return true;
}

View File

@ -76,6 +76,22 @@ class SubMirror extends Memcached_DataObject
null, false));
}
/**
* Temporary hack to set up the compound index, since we can't do
* it yet through regular Schema interface. (Coming for 1.0...)
*
* @param Schema $schema
* @return void
*/
static function fixIndexes($schema)
{
try {
$schema->createIndex('submirror', array('subscribed', 'subscriber'));
} catch (Exception $e) {
common_log(LOG_ERR, __METHOD__ . ': ' . $e->getMessage());
}
}
/**
* return key definitions for DB_DataObject
*