> Even stranger, is that if you do an update of exactly the threshold, wait, and then do a *SINGLE* row update:
I realise this isn't a top priority, but it does seem to allow a violation of the "autovacuum_vacuum_threshold" parameter. In practice it doesn't seem to be serious, but finding the issue would reduce autovacuuming of tables that make exactly (rows * autovacuum_vacuum_threshold + autovacuum_vacuum_threshold) changes.
I presume it's that simple, but I worry it has wider implications.
Cheers,
Greg.