On Tue, Apr 1, 2014 at 01:36:02PM -0400, Robert Haas wrote: > Although I agree with the general principle, I'm skeptical in this > case. There are a bunch of table-level options, and I don't think > it's very reasonable to expect that users are going to remember which > ones are going to be displayed under which conditions, especially if > we change it from release to release. If somebody doesn't see the > "has OIDs" line, are they going to conclude that the table doesn't > have OIDs, or are they going to conclude that psql doesn't ever > display that information and they need to query pg_class manually? > I'm sure at least some people will guess wrong. > > Now, admittedly, this is not the hill I want to die on. The future of > PostgreSQL doesn't rest on whatever ends up happening here. But I > think what's going on on this thread is a lot of tinkering with stuff > that's not really broken. I'm not saying "don't ever change psql > output". What I'm saying is that changing psql output that is > absolutely fine the way it is does not represent meaningful progress. > The "replica identity" and "has OIDs" lines are a negligible > percentage of what \d+ spits out - in a test I just did, 2 out of 37 > lines on \d+ pg_class. I can't accept that tinkering with that is > reducing clutter in any meaningful way; it's just change for the sake > of change.
I looked over the psql code and Robert is right that "Has OIDs" and "Identity Replica" are the only two cases where we are printing status, rather than unique strings like an index name. The only example I could find was where we print "Number of child tables" in \d when there are child tables. Of course, we print the child table names when they exist in \d+, but we don't print "No child tables" with \d or \d+, which seems logical. If we ignore backward compatibility, then "Has OIDs" and "Identity Replica" are similar. One thing that strongly (for me) supports not always printing them is that I expect more people will be confused by the mention of OIDs or "Identity Replica" than will actually care about these features. For example, if we always printed "Child tables: 0", more people would be confused than helped. I don't think there is enough other cases for \d++ to make sense. I am not sure where to go from here. One idea would be tally the people who have commented in this thread, but a more thorough approach would be to have a vote. -- Bruce Momjian <br...@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + Everyone has their own god. + -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers