Re: [Admin] Deleting Orphan Relfilenode

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Rahul Saha <rahul.blooming@xxxxxxxxx> writes:
> We have a scenario where we ran Vacuum Full (2 TB Table)but due to some reason Vacuum Full failed. 
> These have let almost 1 TB orphan Relfilenodes inside base directory under the concern database which does not map with pg_class. 

Hm, by "fail" do you mean a database crash?  Ordinary errors should have
rolled back the file creation successfully.

> For example - Select * from pg_class where relfilenode = 123456. It does not return any row but those relfilenode exist inside base. 

I would not trust that query if I were you --- it will not find mapped
system catalogs.  Maybe you are certain that this orphaned file wasn't
for a system catalog, but I'd still recommend using

select * from pg_class where pg_relation_filenode(oid) = 123456;

to be sure.  (See also contrib/oid2name.)

> It would be great if you can suggest how to remove those orphan files. I know definitely manually deleting is not suggested so thought to know your suggestions. 

If they're really orphaned, as proven by a pg_relation_filenode() check,
then manual "rm" is the thing to do.  Postgres doesn't know they are
there and will not remove them.

			regards, tom lane





[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux