Esempio n. 1
0
            break;
        default:
            echo "Wrong parameters to {$argv[$i]}\n{$usage}";
            exit;
    }
}
if (!$config->get('plugin', false)) {
    echo "You must supply --part argument\n{$usage}";
    exit;
}
if (!$config->get('connection', false)) {
    $config->set('connection', $config->get('plugin', ''));
}
if (!$config->get('class', false)) {
    $config->set('class', $config->get('connection', '') . '_' . $config->get('table', ''));
}
$class = $config->get('class', false);
$row = new $class();
$fields = array_fill_keys($row->getPrimaryKey(), 'md5');
foreach ($config->get('fields', array()) as $field => $hash) {
    if (isset($fields[$field])) {
        $fields[$field] = $hash;
    }
}
$config->set('fields', $fields);
try {
    echo 'Shards splitting script' . PHP_EOL;
    Db_Utils::split($config);
} catch (Exception $e) {
    die('[ERROR] ' . $e->getMessage() . PHP_EOL . (isset($trace) ? $e->getTraceAsString() . PHP_EOL : ''));
}