Hi Tom,
thanks for taking a look.

> hmm ... is this a reasonably up-to-date v10?
>
> PostgreSQL 10.18
The latest packaged with Ubuntu 18.04.


> Delete by ctid.
>
> select ctid, oid, * from pg_largeobject_metadata where oid=665238;
> delete from pg_largeobject_metadata where ctid = 'pick one';
>
> OK, that worked, but it seems there is more than one...

so I did
select ctid as tid,oid,lomowner into temp table temp_pgmeta from
pg_largeobject_metadata;
select * from ( select count(tid) as cnt,max(tid), min(tid), oid from
temp_pgmeta group by oid) x where cnt > 1;

and that gave me 2951857 rows


I admit we have quite a few of LOs in there, around 32 million, where
vacuumlo had already cleaned 47 million in a first run.

And I know this is bad practise, but we forgot to unlink when deleting
things - it's why we needed vacuumlo to begin with.


Any ideas what might have happened?


Kind regards, Tobias

Reply via email to