> Stephan Szabo <[EMAIL PROTECTED]> writes: >> Right, but since the how to resolve it currently involves executing a >> query, simply stopping dead won't allow you to resolve it. Also, if we >> stop at the exact wraparound point, can we run into problems actually >> trying to do the vacuum if that's still the resolution technique? > > We'd have to do something with a fair amount of slop. The idea I was > toying with just now involved a forcible shutdown once we get within > say 100,000 transactions of a wrap failure; but apply this check only > when in interactive operation. This would allow the DBA to perform > the needed VACUUMing manually in a standalone backend. > > The real question here is exactly how large a cluestick do you want to > hit the DBA with. I don't think we can "guarantee" no data loss with > anything less than forced shutdown, but that's not so much a cluestick > as a clue howitzer.
I think a DBA or accidental DBA would prefer stating in a meeting: "Yea, the database shut down because I didn't perform normal maintenence, its fixed now and we have a script in place so it won't happen again" Over "Yea, the database lost all its data and we have to restore from our last backup because I didn't perform normal maintenence." One gets a "boy are you lucky" over a "you're fired." > > Maybe > > (a) within 200,000 transactions of wrap, every transaction start > delivers a WARNING message; > > (b) within 100,000 transactions, forced shutdown as above. I agree. ---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend