Commit 74da2454 authored by Rich Prohaska's avatar Rich Prohaska Committed by Yoni Fogel

merge -r 10283:10284 tokudb.1559 tokudb. closes #1559

git-svn-id: file:///svn/toku/tokudb@10293 c7de825b-a66e-492c-adef-691d508d4ae1
parent 9f9f3ffa
...@@ -771,9 +771,9 @@ brtleaf_split (BRT t, BRTNODE node, BRTNODE *nodea, BRTNODE *nodeb, DBT *splitk) ...@@ -771,9 +771,9 @@ brtleaf_split (BRT t, BRTNODE node, BRTNODE *nodea, BRTNODE *nodeb, DBT *splitk)
for (i=0; i<n_leafentries; i++) sumlesizes += leafentry_disksize(leafentries[i]); for (i=0; i<n_leafentries; i++) sumlesizes += leafentry_disksize(leafentries[i]);
u_int32_t sumsofar=0; u_int32_t sumsofar=0;
// split in half if not sequentially inserted // split in half if not sequentially inserted
// otherwise put 1/4 in the new node (current minimum size given the node fusing algorithm) // otherwise put 1/128th in the new node
u_int32_t f = 2; // 1/2 u_int32_t f = 2; // 1/2
if (node->u.l.seqinsert*2 >= n_leafentries) f = 4; // 1/4 if (node->u.l.seqinsert*2 >= n_leafentries) f = 128; // 1/128
node->u.l.seqinsert = 0; node->u.l.seqinsert = 0;
for (i=n_leafentries-1; i>0; i--) { for (i=n_leafentries-1; i>0; i--) {
assert(toku_mempool_inrange(&node->u.l.buffer_mempool, leafentries[i], leafentry_memsize(leafentries[i]))); assert(toku_mempool_inrange(&node->u.l.buffer_mempool, leafentries[i], leafentry_memsize(leafentries[i])));
...@@ -1619,6 +1619,8 @@ brt_leaf_put_cmd (BRT t, BRTNODE node, BRT_CMD cmd, ...@@ -1619,6 +1619,8 @@ brt_leaf_put_cmd (BRT t, BRTNODE node, BRT_CMD cmd,
// toku_pma_verify_fingerprint(node->u.l.buffer, node->rand4fingerprint, node->subtree_fingerprint); // toku_pma_verify_fingerprint(node->u.l.buffer, node->rand4fingerprint, node->subtree_fingerprint);
*re = get_leaf_reactivity(node); *re = get_leaf_reactivity(node);
if (cmd->type == BRT_INSERT && *re == RE_FUSIBLE)
*re = RE_STABLE;
VERIFY_NODE(t, node); VERIFY_NODE(t, node);
return 0; return 0;
} }
......
...@@ -256,7 +256,7 @@ main (int argc, const char *argv[]) { ...@@ -256,7 +256,7 @@ main (int argc, const char *argv[]) {
while (argc>0) { while (argc>0) {
if (strcmp(argv[0], "--nodata") == 0) { if (strcmp(argv[0], "--nodata") == 0) {
dump_data = 0; dump_data = 0;
} else if (strcmp(argv[0], "--interactive") == 0) { } else if (strcmp(argv[0], "--interactive") == 0 || strcmp(argv[0], "--i") == 0) {
interactive = 1; interactive = 1;
} else if (strcmp(argv[0], "--help") == 0) { } else if (strcmp(argv[0], "--help") == 0) {
return usage(arg0); return usage(arg0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment