diff options
Diffstat (limited to 'db/pdfile.cpp')
-rw-r--r-- | db/pdfile.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/db/pdfile.cpp b/db/pdfile.cpp index ac7731a..60914d9 100644 --- a/db/pdfile.cpp +++ b/db/pdfile.cpp @@ -434,6 +434,7 @@ namespace mongo { } Extent* MongoDataFile::createExtent(const char *ns, int approxSize, bool newCapped, int loops) { + assert( approxSize <= Extent::maxSize() ); { // make sizes align with VM page size int newSize = (approxSize + 0xfff) & 0xfffff000; @@ -491,6 +492,10 @@ namespace mongo { // overflowed high = max(approxSize, Extent::maxSize()); } + if ( high <= Extent::minSize() ) { + // the minimum extent size is 4097 + high = Extent::minSize() + 1; + } int n = 0; Extent *best = 0; int bestDiff = 0x7fffffff; |