函数xdes_calc_descriptor_page

时间:2023-03-09 17:17:12
函数xdes_calc_descriptor_page

根据偏移量计算出第几个xdes page

0 %16328 = 0

64% 16328 = 64

128 % 16328 = 128

192 % 16328 = 192

/********************************************************************//**
Calculates the page where the descriptor of a page resides.
@return    descriptor page offset */
UNIV_INLINE
ulint
xdes_calc_descriptor_page(
/*======================*/
    ulint    zip_size,    /*!< in: compressed page size in bytes;
                0 for uncompressed pages */
    ulint    offset)        /*!< in: page offset */
{
if (!zip_size) {
        return(ut_2pow_round(offset, UNIV_PAGE_SIZE));
    } else {
        ut_ad(zip_size > XDES_ARR_OFFSET
              + (zip_size / FSP_EXTENT_SIZE) * XDES_SIZE);
        return(ut_2pow_round(offset, zip_size));
    }
}