mirror of
https://github.com/isar/libmdbx.git
synced 2025-01-02 00:44:12 +08:00
mdbx: backport - ITS#8310 fix mdb_rebalance cursor fixup.
When collapsing root, must adjust entire cursor stack Change-Id: If62c42f556311e785aa414954a3d7fddc077cf62
This commit is contained in:
parent
01f5b5e209
commit
380c61bcf7
1
CHANGES
1
CHANGES
@ -8,6 +8,7 @@ LMDB 0.9.17 Release Engineering
|
||||
Fix ITS#8258 rebalance/split assert
|
||||
Fix ITS#8263 cursor_put cursor tracking
|
||||
Fix ITS#8264 cursor_del cursor tracking
|
||||
Fix ITS#8310 cursor_del cursor tracking
|
||||
Fix ITS#8299 mdb_del cursor tracking
|
||||
Fix ITS#8300 mdb_del cursor tracking
|
||||
Fix ITS#8304 mdb_del cursor tracking
|
||||
|
4
mdb.c
4
mdb.c
@ -8103,9 +8103,9 @@ mdb_rebalance(MDB_cursor *mc)
|
||||
m3 = &m2->mc_xcursor->mx_cursor;
|
||||
else
|
||||
m3 = m2;
|
||||
if (m3 == mc || m3->mc_snum < mc->mc_snum) continue;
|
||||
if (m3 == mc) continue;
|
||||
if (m3->mc_pg[0] == mp) {
|
||||
for (i=0; i<m3->mc_snum; i++) {
|
||||
for (i=0; i<mc->mc_db->md_depth; i++) {
|
||||
m3->mc_pg[i] = m3->mc_pg[i+1];
|
||||
m3->mc_ki[i] = m3->mc_ki[i+1];
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user