From aff2693fc0721df4ccb6ceb357f80501c413ed38 Mon Sep 17 00:00:00 2001
From: Howard Chu <hyc@symas.com>
Date: Mon, 10 Dec 2012 12:16:50 -0800
Subject: [PATCH] ITS#7455 simplify

Don't try to reclaim overflow pages while operating on
the freelist (for now). The circular dependencies are much like
the single-page case, but worse. Maybe look into this in the
future, but it's not absolutely necessary now.
---
 libraries/liblmdb/mdb.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/libraries/liblmdb/mdb.c b/libraries/liblmdb/mdb.c
index 81470d9fe7..7f6af70721 100644
--- a/libraries/liblmdb/mdb.c
+++ b/libraries/liblmdb/mdb.c
@@ -1347,6 +1347,11 @@ none:
 
 				mdb_cursor_init(&m2, txn, FREE_DBI, NULL);
 				do {
+					/* bail out if we're operating on the freelist.
+					 * TODO: get all of this working. Many circular dependencies...
+					 */
+					if (mc->mc_dbi == FREE_DBI)
+						break;
 					if (readit) {
 						MDB_val key, data;
 						MDB_oldpages *mop2;
-- 
GitLab