Bruce Momjian wrote:
Looking at the patch I see:
+ /*
+ * Mark the page as clear of prunable tuples. If we find a tuple which
+ * may become prunable, we shall set the hint again.
+ */
+ PageClearPrunable(page);
I like the idea of the page hint bit, but my question is if there is a
long-running transaction, isn't each SELECT going to try to defragment a
page over and over again because there is still something prunable on
the page?
Maybe that risk could be lowered if instead of a flag, we stored the
minimal global xmin needed to prune at least one tuple.
greetings, Florian Pflug
---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster