Commit d765c175 authored by unknown's avatar unknown
Browse files

ndb - bug#20892

  Correction of bug#19852 (that also revealed another bug)
  Do grow noOfPagesToGrow with more than was actually allocated


ndb/src/kernel/blocks/dbtup/DbtupPageMap.cpp:
  Dont grow "noOfPagesToGrow" with more than was actually allocated
    (as it will then grow indefinitly)
parent fe2b9a8f
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -397,12 +397,12 @@ void Dbtup::allocMoreFragPages(Fragrecord* const regFragPtr)
  Uint32 noAllocPages = regFragPtr->noOfPagesToGrow >> 3; // 12.5%
  noAllocPages += regFragPtr->noOfPagesToGrow >> 4; // 6.25%
  noAllocPages += 2;
  regFragPtr->noOfPagesToGrow += noAllocPages;
/* -----------------------------------------------------------------*/
// We will grow by 18.75% plus two more additional pages to grow
// a little bit quicker in the beginning.
/* -----------------------------------------------------------------*/
  allocFragPages(regFragPtr, noAllocPages);
  Uint32 allocated = allocFragPages(regFragPtr, noAllocPages);
  regFragPtr->noOfPagesToGrow += allocated;
}//Dbtup::allocMoreFragPages()

Uint32 Dbtup::leafPageRangeFull(Fragrecord*  const regFragPtr, PageRangePtr currPageRangePtr)