hi. I think I found a bug. PostgreSQL 18devel_debug_build_45188c2ea2 on x86_64-linux, compiled by gcc-14.1.0, 64-bit commit at 45188c2ea2. Ubuntu 22.04.4 LTS
setup: drop table t cascade; create table t(a int PRIMARY key); IN session1: step "change data type" {begin; alter table t alter column a set data type int4;} step "s1" {commit;} IN session2: step "psql_another_session" {\d t} permutation "change data type" "psql_another_session" "s1" \set ECHO_HIDDEN on /******** QUERY *********/ SELECT c2.relname, i.indisprimary, i.indisunique, i.indisclustered, i.indisvalid, pg_catalog.pg_get_indexdef(i.indexrelid, 0, true), pg_catalog.pg_get_constraintdef(con.oid, true), contype, condeferrable, condeferred, i.indisreplident, c2.reltablespace, con.conperiod FROM pg_catalog.pg_class c, pg_catalog.pg_class c2, pg_catalog.pg_index i LEFT JOIN pg_catalog.pg_constraint con ON (conrelid = i.indrelid AND conindid = i.indexrelid AND contype IN ('p','u','x')) WHERE c.oid = '34405' AND c.oid = i.indrelid AND i.indexrelid = c2.oid ORDER BY i.indisprimary DESC, c2.relname; /************************/ ERROR: cache lookup failed for attribute 1 of relation 34418