-
Marc Alff authored
Problem The server crashes while allocating an index stat, after 2^20 indexes. This happens when the index buffer, of size 1024*1024, is full. The crash happens in PFS_buffer_scalable_container::allocate(), while using pages beyond the end of the m_pages[PFS_PAGE_COUNT] array. The root cause is PFS_buffer_scalable_container::init(), which can compute a value of m_max_page_count that exceeds PFS_PAGE_COUNT. Solution When PFS_buffer_scalable_container::init() is called for a max size that exceeds the buffer total capacity, trim down m_max_page_count to PFS_PAGE_COUNT, as this is the effective max number of pages that can be used.
Marc Alff authoredProblem The server crashes while allocating an index stat, after 2^20 indexes. This happens when the index buffer, of size 1024*1024, is full. The crash happens in PFS_buffer_scalable_container::allocate(), while using pages beyond the end of the m_pages[PFS_PAGE_COUNT] array. The root cause is PFS_buffer_scalable_container::init(), which can compute a value of m_max_page_count that exceeds PFS_PAGE_COUNT. Solution When PFS_buffer_scalable_container::init() is called for a max size that exceeds the buffer total capacity, trim down m_max_page_count to PFS_PAGE_COUNT, as this is the effective max number of pages that can be used.
Loading