Hi

> > +static const char *const OldestXminBlockerNames[] = {
> > + [OLDEST_XMIN_BLOCKER_NONE] = "none",
> > + [OLDEST_XMIN_BLOCKER_RUNNING_XACT] = "running transaction",
> > + [OLDEST_XMIN_BLOCKER_PREPARED_XACT] = "prepared transaction",
> > + [OLDEST_XMIN_BLOCKER_STANDBY_FEEDBACK] = "standby feedback",
> > + [OLDEST_XMIN_BLOCKER_REPLICATION_SLOT] = "replication slot",
> > + [OLDEST_XMIN_BLOCKER_LOGICAL_SLOT] = "logical replication slot",
>

 No distinction was made between idle transactions and long-running
transactions.It is very important to distinguish between them, as this is
extremely helpful in guiding DBAs to identify the source of a
OldestXminBlocker.
Thanks

Reply via email to