Esempio n. 1
0
} else {
    echo "* Registering new schema\n";
    $is_default_schema = $config['is_default_schema'];
    unset($config['is_default_schema']);
    if (!$is_default_schema) {
        $sql = "select count(*) from schemata where is_default_schema = 1;";
        $stmt = $mapper->conn->my_query($sql);
        if (!$stmt) {
            die('SETUP FAILED: could not determine if there were any default schema set: ' . $mapper->conn->my_error());
        }
        list($cnt) = $mapper->conn->my_fetch_array();
        if ($cnt == 0) {
            $is_default_schema = 1;
        }
    }
    $mapper->add_schema($config['schema_name'], $is_default_schema);
    $schema_id = $mapper->conn->my_insert_id();
}
$mapper->conn->my_query('DELETE IGNORE cs.* from column_sequences cs join schemata on cs.schema_id = schemata.id where schema_name = "' . $config['schema_name'] . '" and sequence_type = "shard_column"') or die($mapper->conn->my_error());
echo "* Adding or updating shard column (will not redistribute data!): {$column}\n";
$mapper->add_column($column, $config['schema_name'], $datatype, 1);
if (!empty($config['coord_shard'])) {
    $coord_shard_name = $config['coord_shard'];
    unset($config['coord_shard']);
} else {
    $coord_shard_name = null;
}
if (isset($config['is_default_schema'])) {
    $is_default_schema = $config['is_default_schema'];
}
unset($config['is_default_schema']);