Hello. This may be just my personal preference, but I'd rather see information about xid horizon retention exposed through a SQL-visible interface than added to the VACUUM log.
VACUUM VERBOSE already reports the removable cutoff and how old it was when the operation ended. That seems sufficient as a signal that the xid horizon is being held back. What I would want to investigate after seeing such a signal is not necessarily what happened to be blocking that particular VACUUM operation at some earlier point, but what is holding the xid horizon back now. For that purpose, a view exposing the current xid/xmin holders seems more useful and less misleading than adding a best-effort blocker guess to the VACUUM log. Also, VACUUM output has traditionally reported facts observed during the operation. Since the blocker information is reconstructed afterwards and is explicitly best-effort, it feels somewhat different in nature from the rest of the information reported there. Regards, -- Kyotaro Horiguchi NTT Open Source Software Center
