Coming back to this thread after a while.. we have to remove OID on a 6 TB (5 TB of indexes) table and ALTER TABLE is gonna block the table and is gonna take hours...
We operate on pretty much 0 outage.... we do have a passive site on which we will be doing the activity.. if not ALTER TABLE.. is there any other way to achieve this ? I think logical replication does not allow replicating from one table to another ? Regards, Ven On Sun, 16 May 2021 at 11:00 am, David G. Johnston < david.g.johns...@gmail.com> wrote: > On Saturday, May 15, 2021, Venkata B Nagothi <nag1...@gmail.com> wrote: > >> >> >> *ERROR: column c.relhaspkey does not exist at character 33* >> >> Below is the query generating the error : >> >> STATEMENT: SELECT c.relname AS table_name, c.relhaspkey AS >> has_primary_key FROM pg_catalog.pg_class c, pg_catalog.pg_namespace n WHERE >> c.relkind = 'r' AND c.relnamespace = n.oid AND n.nspname = $1 >> >> Any advice on how bad it is and how to get rid of it would be great. >> > > Figure out what is issuing the query and either fix it or upgrade to a > version that has been fixed. > Upon googling, I came to know that this error occurs when a connection to higher version Postgres using lower version binaries. So, might be some job/script in our environment is using 9.5 binaries against 11 version which is generating this error. Will check that out. >