ITS#7701 fix mdb_rebalance

Must copy tmp cursor back to real cursor when merging into tmp cursor.
This commit is contained in:
Howard Chu 2013-09-21 14:37:11 -07:00
parent 0f842a2710
commit 0144da6eab

View File

@ -7248,8 +7248,11 @@ mdb_rebalance(MDB_cursor *mc)
else {
if (mc->mc_ki[ptop] == 0)
rc = mdb_page_merge(&mn, mc);
else
else {
mn.mc_ki[mn.mc_top] += mc->mc_ki[mn.mc_top] + 1;
rc = mdb_page_merge(mc, &mn);
mdb_cursor_copy(&mn, mc);
}
mc->mc_flags &= ~(C_INITIALIZED|C_EOF);
}
return rc;