I was looking at src/backend/nodes/readfuncs.c READ_NODE_FIELD(relationOids); + READ_NODE_FIELD(partitionOids);
READ_NODE_FIELD would call nodeRead() for partitionOids. However, such field may not exist. Since there is no 'if (strncmp(":partitionOids", token, length) == 0) {' check, I was curious whether CATALOG_VERSION_NO should be bumped. Cheers On Sat, Mar 6, 2021 at 6:31 PM Amit Kapila <amit.kapil...@gmail.com> wrote: > On Sat, Mar 6, 2021 at 9:13 PM Zhihong Yu <z...@yugabyte.com> wrote: > > > > Hi, > > Does CATALOG_VERSION_NO need to be bumped (introduction of partitionOids > field) ? > > > > Good question. I usually update CATALOG_VERSION_NO when the patch > changes any of the system catalogs. This is what is also mentioned in > catversion.h. See the following text in that file: "The catalog > version number is used to flag incompatible changes in the PostgreSQL > system catalogs. Whenever anyone changes the format of a system > catalog relation, or adds, deletes, or modifies standard > catalog entries in such a way that an updated backend wouldn't work > with an old database (or vice versa), the catalog version number > should be changed.". > > I might be missing something here but why you think that due to > partitionOids field (in plannedstmt or at another place) we need to > update CATALOG_VERSION_NO? > > Anyway, thanks for bringing this up. > > -- > With Regards, > Amit Kapila. >