Tom Lane wrote: > Alvaro Herrera <[EMAIL PROTECTED]> writes: > > Tom Lane wrote: > >> Uh, why? > > > Because it's used to determine the Xmin that our vacuum will use. If > > there is a transaction whose Xmin calculation included the Xid of a > > transaction running vacuum, we have gained nothing from directly > > excluding said vacuum's Xid, because it will affect us anyway indirectly > > via that transaction's Xmin. > > But the patch changes things so that *everyone* excludes the vacuum from > their xmin. Or at least I thought that was the plan.
We shouldn't do that, because that Xmin is also used to truncate SUBTRANS. Unless we are prepared to say that vacuum does not use subtransactions so it doesn't matter. This is true currently, so we could go ahead and do it (unless I'm missing something) -- but it means lazy vacuum will never be able to use subtransactions. -- Alvaro Herrera http://www.CommandPrompt.com/ The PostgreSQL Company - Command Prompt, Inc. ---------------------------(end of broadcast)--------------------------- TIP 2: Don't 'kill -9' the postmaster