Hi Sasha
On 2021-Jul-14, Sasha Aliashkevich wrote:
> lp | ctid | xmin | xmax | xmax_is_lock | xmax_committed | xmax_rolled_back | xmax_multixact
> ----+---------+-----------+------+--------------+----------------+------------------+----------------
> 19 | (75,21) | 571 | 572 | f | f | t | f
> 21 | (75,21) | 572 | 0 | f | f | t | f
Yeah, row 19 here is dead and should have been removed by vacuum (same
with the ones in pg_depend). I don't know why it wasn't. If you query
the tables
SELECT * FROM pg_proc WHERE ctid = '(75,19)'
are they visible? They shouldn't. If they are visible, maybe try to
UPDATE them, again by ctid; perhaps that will kill them for good. But
since the txid_status() returns committed, that likely won't work.
Maybe if you try to VACUUM by setting vacuum_freeze_min_age to a high
value (so that it doesn't try to freeze, but only remove them) they are
removed?
(I didn't verify that the values you &-mask the infomask with are
correct.)
--
Álvaro Herrera Valdivia, Chile — https://www.EnterpriseDB.com/