lmdb: Omit scanning DUPSORT sub-DB leaves in mdb_drop0().

Change-Id: Icc670a81210a9160e6cb90b9442994c008f599bd
This commit is contained in:
Hallvard Furuseth 2015-07-04 13:48:02 +02:00 committed by Leo Yuriev
parent b13d850bd7
commit b3a3dc4c6b

6
mdb.c
View File

@ -9277,8 +9277,10 @@ mdb_drop0(MDB_cursor *mc, int subs)
MDB_cursor mx;
unsigned i;
/* LEAF2 pages have no nodes, cannot have sub-DBs */
if (IS_LEAF2(mc->mc_pg[mc->mc_top]))
/* DUPSORT sub-DBs have no ovpages/DBs. Omit scanning leaves.
* This also avoids any P_LEAF2 pages, which have no nodes.
*/
if (mc->mc_flags & C_SUB)
mdb_cursor_pop(mc);
mdb_cursor_copy(mc, &mx);