Fix datatype for number of heap tuples during last cleanup

Enterprise / PostgreSQL - Teodor Sigaev [sigaev.ru] - 19 April 2018 08:28 EDT

It appears that new fields introduced in 857f9c36 have inconsistent datatypes: BTMetaPageData.btm_last_cleanup_num_heap_tuples is of float4 type, while xl_btree_metadata.last_cleanup_num_heap_tuples is of double type. IndexVacuumInfo.num_heap_tuples, which is a source of values for both former fields is of double type. So, make both those fields in BTMetaPageData and xl_btree_metadata use float8 type in order to match the precision of the source. That shouldn't be double type, because we always use types with explicit width in WAL.

Patch introduces incompatibility of on-disk format since 857f9c36 commit, but that versions never was released, so just bump catalog version to avoid possible confusion.

Author: Alexander Korortkov

ff4943042f Fix datatype for number of heap tuples during last cleanup
src/include/access/nbtree.h | 2 +-
src/include/access/nbtxlog.h | 2 +-
src/include/catalog/catversion.h | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)

Upstream: git.postgresql.org


  • Share