Hi hackers, I found that \d+ shows "Replica Identity: ???" for a table with REPLICA IDENTITY NOTHING:
```
CREATE TABLE t (a int);
ALTER TABLE t REPLICA IDENTITY NOTHING;
\d+ t
Table "public.t"
Column | Type | Collation | Nullable | Default | Storage |
Compression | Stats target | Description
--------+---------+-----------+----------+---------+---------+-------------+--------------+-------------
a | integer | | | | plain |
| |
Replica Identity: ???
Access method: heap
```
Commit 18954ce7f69 replaced the hard-coded relreplident characters in
describe.c with REPLICA_IDENTITY_* macros, but wrote
REPLICA_IDENTITY_DEFAULT where REPLICA_IDENTITY_NOTHING was intended,
so the NOTHING case falls through to "???". This is a regression in
v18.
The attached patch fixes the comparison and adds regression test
coverage, which only existed for FULL. I think this should be
back-patched to v18.
Thoughts?
--
Shinya Kato
NTT OSS Center
v1-0001-psql-Fix-d-display-of-REPLICA-IDENTITY-NOTHING.patch
Description: Binary data
