Don't limit retries when coalescing freelist

Try to use whatever's available.
vmware
Howard Chu 12 years ago
parent 00d7a96bd5
commit 890f1da3ee
  1. 5
      libraries/liblmdb/mdb.c

@ -1361,7 +1361,7 @@ none:
pgno_t *mop = txn->mt_env->me_pghead; pgno_t *mop = txn->mt_env->me_pghead;
if (num > 1) { if (num > 1) {
MDB_cursor m2; MDB_cursor m2;
int retry = 500, readit = 0, n2 = num-1; int retry = 1, readit = 0, n2 = num-1;
unsigned int i, j, k; unsigned int i, j, k;
/* If current list is too short, must fetch more and coalesce */ /* If current list is too short, must fetch more and coalesce */
@ -1448,11 +1448,10 @@ none:
} }
} }
/* Stop if we succeeded, or no more retries */ /* Stop if we succeeded, or no retries */
if (!retry || pgno != P_INVALID) if (!retry || pgno != P_INVALID)
break; break;
readit = 1; readit = 1;
retry--;
} while (1); } while (1);
} else { } else {

Loading…
Cancel
Save