コード例 #1
0
ファイル: test-b-tree.php プロジェクト: sibero/moosql
$b4 = microtime(true);
for ($i = DELETE_START; $i < DELETE_STOP; $i += STEP) {
    //echo 'Delete '.$i.'<br>';
    $btr->delete($fp, $meta, $i);
}
echo 'Deleted ' . floor((DELETE_STOP - DELETE_START) / STEP) . ' for ' . round(microtime(true) - $b4, 4) . ' sec<br>';
$ins_back = round((DELETE_START + (DELETE_STOP - DELETE_START) / 2) / STEP) * STEP - STEP;
define('INSERT_BACK', min(round(NUM / 2), 10));
for ($j = 0; $j < INSERT_BACK; $j += STEP) {
    $ins_back += STEP;
    echo 'Insert value back: ' . $ins_back . '<br>';
    $btr->insert($fp, $meta, $ins_back, NUM + $vals[$vals[$ins_back]]);
}
$b4 = microtime(true);
for ($i = 0; $i <= NUM; $i += STEP) {
    $res = $btr->fsearch($fp, $meta, $i);
    if (!$res && ($i < DELETE_START || $i >= DELETE_STOP)) {
        echo '<b>Error:</b> Key ' . $i . ' not found<br>';
        continue;
    } else {
        if ($res && ($i >= DELETE_START && $i < DELETE_STOP)) {
            echo '<b>Error:</b> Found a deleted entry ' . $i . '<br>';
            continue;
        } else {
            if (!$res) {
                continue;
            }
        }
    }
    list($value, $offset) = $res;
    if ($value != $i || $offset != NUM + $vals[$i]) {