Re: Add sub-transaction overflow status in pg_stat_activity - Mailing list pgsql-hackers

From Justin Pryzby
Subject Re: Add sub-transaction overflow status in pg_stat_activity
Date
Msg-id 20211207054124.GN17618@telsasoft.com
Whole thread Raw
In response to Add sub-transaction overflow status in pg_stat_activity  (Dilip Kumar <dilipbalaut@gmail.com>)
Responses Re: Add sub-transaction overflow status in pg_stat_activity
Re: Add sub-transaction overflow status in pg_stat_activity
List pgsql-hackers
> +      <entry role="catalog_table_entry"><para role="column_definition">
> +       <structfield>subxact_count</structfield> <type>xid</type>
> +      </para>
> +      <para>
> +       The current backend's active subtransactions count.

subtransaction (no s)

> +       Set to true if current backend's subtransaction cache is overflowed.

Say "has overflowed"

> +        if (local_beentry->subxact_count > 0)
> +        {
> +            values[30] = local_beentry->subxact_count;
> +            values[31] = local_beentry->subxact_overflowed;
> +        }
> +        else
> +        {
> +            nulls[30] = true;
> +            nulls[31] = true;
> +        }

Why is the subxact count set to NULL instead of zero ?

You added this to pg_stat_activity, which already has a lot of fields.
We talked a few months ago about not adding more fields that weren't commonly
used.

https://www.postgresql.org/message-id/flat/20210426191811.sp3o77doinphyjhu%40alap3.anarazel.de#d96d0a116f0344301eead2676ea65b2e

Since I think this field is usually not interesting to most users of
pg_stat_activity, maybe this should instead be implemented as a function like
pg_backend_get_subxact_status(pid).

People who want to could use it like:
SELECT * FROM pg_stat_activity psa, pg_backend_get_subxact_status(pid) sub;

-- 
Justin



pgsql-hackers by date:

Previous
From: Amit Langote
Date:
Subject: Re: pg_get_publication_tables() output duplicate relid
Next
From: Masahiko Sawada
Date:
Subject: Re: parallel vacuum comments