On Mon, Jan 17, 2022 at 5:41 PM Peter Geoghegan <p...@bowt.ie> wrote: > That just seems like semantics to me. The very next sentence after the > one you quoted in your reply was "And so it's highly unlikely that any > given VACUUM will ever *completely* fail to advance relfrozenxid". > It's continuous *within* each VACUUM. As far as I can tell there is > pretty much no way that the patch series will ever fail to advance > relfrozenxid *by at least a little bit*, barring pathological cases > with cursors and whatnot.
I mean this boils down to saying that VACUUM will advance relfrozenxid except when it doesn't. > Actually, I think that even the people in the first category might > well have about the same improved experience. Not just because of this > patch series, mind you. It would also have a lot to do with the > autovacuum_vacuum_insert_scale_factor stuff in Postgres 13. Not to > mention the freeze map. What version are these users on? I think it varies. I expect the increase in the default cost limit to have had a much more salutary effect than autovacuum_vacuum_insert_scale_factor, but I don't know for sure. At any rate, if you make the database big enough and generate dirty data fast enough, it doesn't matter what the default limits are. > I never said that anti-wraparound vacuums just won't happen anymore. I > said that they'll be limited to cases like the stock table or > customers table case. I was very clear on that point. I don't know how I'm supposed to sensibly respond to a statement like this. If you were very clear, then I'm being deliberately obtuse if I fail to understand. If I say you weren't very clear, then we're just contradicting each other. > It isn't that hard to see that the cases where we continue to get any > anti-wraparound VACUUMs with the patch seem to be limited to cases > like the stock/customers table, or cases like the pathological idle > cursor cases we've been discussing. Pretty narrow cases, overall. > Don't take my word for it - see for yourself. I don't think that's really possible. Words like "narrow" and "pathological" are value judgments, not factual statements. If I do an experiment where no wraparound autovacuums happen, as I'm sure I can, then those are the normal cases where the patch helps. If I do an experiment where they do happen, as I'm sure that I also can, you'll probably say either that the case in question is like the stock/customers table, or that it's pathological. What will any of this prove? I think we're reaching the point of diminishing returns in this conversation. What I want to know is that users aren't going to be harmed - even in cases where they have behavior that is like the stock/customers table, or that you consider pathological, or whatever other words we want to use to describe the weird things that happen to people. And I think we've made perhaps a bit of modest progress in exploring that issue, but certainly less than I'd like. I don't want to spend the next several days going around in circles about it though. That does not seem likely to make anyone happy. -- Robert Haas EDB: http://www.enterprisedb.com