mdbx: backport - ITS#8238 fix DUPFIXED page_split.

Parent mc_ki wasn't adjusted if new_indx was > split point

Change-Id: I45548e378e53bad5ce7a3a7c2b8236d592f3c412
This commit is contained in:
Howard Chu 2015-11-04 18:11:12 +00:00 committed by Leo Yuriev
parent f35fb03f86
commit 7890eb8a8e
2 changed files with 2 additions and 0 deletions

View File

@ -3,6 +3,7 @@ LMDB 0.9 Change Log
LMDB 0.9.17 Release Engineering
Fix ITS#7377 catch calloc failure
Fix ITS#8237 regression from ITS#7589
Fix ITS#8238 page_split for DUPFIXED pages
Fix ITS#8221 MDB_PAGE_FULL on delete/rebalance
Fix ITS#8258 rebalance/split assert
Fix ITS#8263 cursor_put cursor tracking

1
mdb.c
View File

@ -8446,6 +8446,7 @@ mdb_page_split(MDB_cursor *mc, MDB_val *newkey, MDB_val *newdata, pgno_t newpgno
rp->mp_upper -= ksize - sizeof(indx_t);
mc->mc_ki[mc->mc_top] = x;
mc->mc_pg[mc->mc_top] = rp;
mc->mc_ki[ptop]++;
}
} else {
int psize, nsize, k;