mdb_drop0(): Omit scanning DUPSORT sub-DB leaves

mdb.RE/0.9
Hallvard Furuseth 10 years ago
parent 70788bfe45
commit cc2a50aca2
  1. 6
      libraries/liblmdb/mdb.c

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

Loading…
Cancel
Save