#include "transaction.h"
/* for testing only */
-int next_key(int i, int max_key) {
+static int next_key(int i, int max_key) {
return rand() % max_key;
// return i;
}
struct btrfs_root *root;
struct btrfs_trans_handle *trans;
- buf = malloc(512);
- memset(buf, 0, 512);
+ buf = calloc(1, 512);
radix_tree_init();
- root = open_ctree(av[1], BTRFS_SUPER_INFO_OFFSET, O_RDWR);
+ root = open_ctree(av[1], BTRFS_SUPER_INFO_OFFSET, OPEN_CTREE_WRITES);
if (!root) {
fprintf(stderr, "Open ctree failed\n");
exit(1);
}
trans = btrfs_start_transaction(root, 1);
+ BUG_ON(IS_ERR(trans));
srand(55);
- btrfs_set_key_type(&ins, BTRFS_STRING_ITEM_KEY);
+ ins.type = BTRFS_STRING_ITEM_KEY;
for (i = 0; i < run_size; i++) {
num = next_key(i, max_key);
// num = i;
if (i == run_size - 5) {
btrfs_commit_transaction(trans, root);
trans = btrfs_start_transaction(root, 1);
+ BUG_ON(IS_ERR(trans));
}
}
btrfs_commit_transaction(trans, root);
close_ctree(root);
exit(1);
- root = open_ctree(av[1], BTRFS_SUPER_INFO_OFFSET, O_RDWR);
+ root = open_ctree(av[1], BTRFS_SUPER_INFO_OFFSET, OPEN_CTREE_WRITES);
if (!root) {
fprintf(stderr, "Open ctree failed\n");
exit(1);
printf("unable to find %d\n", num);
exit(1);
}
- btrfs_release_path(root, &path);
+ btrfs_release_path(&path);
}
close_ctree(root);
- root = open_ctree(av[1], BTRFS_SUPER_INFO_OFFSET, O_RDWR);
+ root = open_ctree(av[1], BTRFS_SUPER_INFO_OFFSET, OPEN_CTREE_WRITES);
if (!root) {
fprintf(stderr, "Open ctree failed\n");
exit(1);
i = 0;
srand(55);
trans = btrfs_start_transaction(root, 1);
+ BUG_ON(IS_ERR(trans));
for (i = 0 ; i < run_size/4; i++) {
num = next_key(i, max_key);
ins.objectid = num;
BUG();
tree_size--;
}
- btrfs_release_path(root, &path);
+ btrfs_release_path(&path);
}
btrfs_commit_transaction(trans, root);
close_ctree(root);
- root = open_ctree(av[1], BTRFS_SUPER_INFO_OFFSET, O_RDWR);
+ root = open_ctree(av[1], BTRFS_SUPER_INFO_OFFSET, OPEN_CTREE_WRITES);
if (!root) {
fprintf(stderr, "Open ctree failed\n");
exit(1);
}
trans = btrfs_start_transaction(root, 1);
+ BUG_ON(IS_ERR(trans));
srand(128);
for (i = 0; i < run_size; i++) {
num = next_key(i, max_key);
btrfs_commit_transaction(trans, root);
close_ctree(root);
- root = open_ctree(av[1], BTRFS_SUPER_INFO_OFFSET, O_RDWR);
+ root = open_ctree(av[1], BTRFS_SUPER_INFO_OFFSET, OPEN_CTREE_WRITES);
if (!root) {
fprintf(stderr, "Open ctree failed\n");
exit(1);
printf("unable to find %d\n", num);
exit(1);
}
- btrfs_release_path(root, &path);
+ btrfs_release_path(&path);
}
printf("starting big long delete run\n");
trans = btrfs_start_transaction(root, 1);
+ BUG_ON(IS_ERR(trans));
while(root->node && btrfs_header_nritems(root->node) > 0) {
struct extent_buffer *leaf;
int slot;
}
tree_size--;
}
- btrfs_release_path(root, &path);
+ btrfs_release_path(&path);
}
/*
printf("previous tree:\n");