neha khatri <nehakhatri5@gmail.com> writes:
> I have recently started working on Postgresql and I was looking in the the
> pg_upgrade code. pg_upgrade checks index control data(max_index_keys) to be
> equal in the old and new version.
> I would like to understand why the number of index columns should be equal
> in new and old versions.
Because that changes the size of index tuple headers, see
src/include/access/itup.h
> Can the number of maximum index columns not be
> changed from one release to another release.
Sure, as long as you don't care about on-disk database compatibility.
The checks associated with pg_control are meant to ensure exactly
that, though.
regards, tom lane