diff options
author | Keith Bostic <keith@wiredtiger.com> | 2015-01-19 14:15:19 -0500 |
---|---|---|
committer | Keith Bostic <keith@wiredtiger.com> | 2015-01-19 14:15:19 -0500 |
commit | 5ec9c2a04e62de02a87d4a2a60b1a62064d92093 (patch) | |
tree | 16ab313a6808157ee9d54aa55085642f92063aa6 | |
parent | 6f3c5a933ef8ce79efc03a22a8c03526ffb2197b (diff) | |
download | mongo-5ec9c2a04e62de02a87d4a2a60b1a62064d92093.tar.gz |
The by-offset list is sorted by offset, quit looking for slots past the
limit.
-rw-r--r-- | src/block/block_compact.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/block/block_compact.c b/src/block/block_compact.c index 79494a274a9..24fd45da47f 100644 --- a/src/block/block_compact.c +++ b/src/block/block_compact.c @@ -148,11 +148,14 @@ __wt_block_compact_page_skip(WT_SESSION_IMPL *session, ninety = fh->size - fh->size / 10; if (offset > ninety) { el = &block->live.avail; - WT_EXT_FOREACH(ext, el->off) - if (ext->off < ninety && ext->size >= size) { + WT_EXT_FOREACH(ext, el->off) { + if (ext->off >= ninety) + break; + if (ext->size >= size) { *skipp = 0; break; } + } } __wt_spin_unlock(session, &block->live_lock); |