
Tom,
Thanks for the detailed explanation. I can start mapping your explanation with the source code I've been reading :)
We are in the process of tuning our autovacuum settings (on some tables) and stop relying on crontabs that are performing manual vacuums.
By performing this changes we are going to start relying more heavily on the autovacuum work and the concern of "lost work" caused by autovacuum canceling itself when locking contention happen showed up. I'm guessing that we might be over thinking this and the canceling is not going to happen as frequently as we think it will.