Ich habe es nicht ganz begriffen. Hier ein Beispiel:
table_len = 754'106'368
tuple_count = 9'674'509
tuple_len = 541'772'504
tuple_percent = 71.84
dead_tuple_count = 1'543
dead_tuple_len = 86'408
dead_tuple_percent = 0.01
free_space = 133'036'776
free_percent = 17.64
Diese Tabelle hat knapp 10 Millionen Datensätze und braucht 754MB Speicher. Soweit ist mir klar.
Ich lösche jetzt ein Datensatz, dann wäre tuple_count eins kleiner, dead_tuple_count eins grösser oder?
Dann mache ich ein VACUUM. Bei den Indices werden 1119 Zeilenversionen entfernt. Und für die Tabelle habe ich folgende Meldung
INFO: »rankingclub«: 305 entfernbare, 484652 nicht entfernbare Zeilenversionen in 4554 von 92054 Seiten gefunden
DETAIL: 1543 tote Zeilenversionen können noch nicht entfernt werden, ältestes xmin: 115307780
Es gab 528144 unbenutzte Itemzeiger.
0 Seiten wegen Buffer-Pins übersprungen, 4490 eingefrorene Seiten.
0 Seiten sind vollkommen leer.
Wenn ich dann wieder ein pgstattuple() mache, sind die obigen Werte unverändert. Also free_space bleibt.
Christian