vacuums and ctid - Mailing list pgsql-hackers

From Gaetano Mendola
Subject vacuums and ctid
Date
Msg-id cft22c$i1p$1@floppy.pyrenet.fr
Whole thread Raw
Responses Re: vacuums and ctid  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Hi all,
looking at how ctid is used is clear to me:


insert line (A) in a table;      ==> ctid = (0, 1);
rollback an update for the line (A);
insert a line (B) in the table;  ==> ctid = (0, 3);
vacuum full;
insert a line (C) in the table;  ==> ctid = (0, 2);

I was expecting this for a normal vacuum not for a vacuum full.

for a vacuum full I was expecting:

insert line (A) in a table;      ==> ctid = (0, 1);
rollback an update for the line (A);
insert a line (B) in the table;  ==> ctid = (0, 3);
vacuum full; ( line B moved in ctid ( 0, 2) )
insert a line (C) in the table;  ==> ctid = (0, 3);


could this due the fact that moving that tuple will not
save any storage space ?

If not, am I missing something ?



Regards
Gaetano Mendola

















pgsql-hackers by date:

Previous
From: Devrim GUNDUZ
Date:
Subject: Re: psql's \l
Next
From: Fabien COELHO
Date:
Subject: tablespace and sequences?