On Monday, June 24, 2024, Ayush Vatsa <ayushvatsa1...@gmail.com> wrote: > > I was recently exploring the pgstattuple code directory and found this > piece of code: https://github.com/postgres/postgres/blob/master/contrib/ > pgstattuple/pgstattuple.c#L255-L259. > > It indicates that pgstattuple supports relations, toast tables, > materialized views, and sequences. > However, when I executed a query with a sequence, I encountered the > following error: > > postgres=> CREATE SEQUENCE serial START 101; > CREATE SEQUENCE > postgres=> SELECT * FROM pgstattuple('serial'); > ERROR: only heap AM is supported > postgres=> > > It got stuck in this if condition - https://github.com/postgres/ > postgres/blob/master/contrib/pgstattuple/pgstattuple.c#L326-L329 > > > How can one use pgstattuple on sequences? >
As-is? Doesn’t look like you can. I agree it’s a documentation bug that this is the case with a brief explanation of why - sequences do not produce dead tuples and do not behave like real tables aside from being able to be selected from (i.e., no SQL update/delete command). The code should produce an explicit error for that relkind as well. David J.