> -----Original Message-----
> From: Tom Lane [mailto:tgl@sss.pgh.pa.us]
>
> "Hiroshi Inoue" <Inoue@tpf.co.jp> writes:
> >> Now VACUUM comes along, finds no live tuples, and decides to truncate
> >> the relation to zero blocks. During the truncation,
> >> FlushRelationBuffers sees that the buffer it's flushing is still marked
> >> dirty, and hence emits the above notice.
>
> > This means vacuum doesn't necessarily flush all dirty buffers of
> > the target table. Doesn't this break the assumption of pg_upgrade ?
>
> No, because it does still flush the buffer.
Yes FlushRelationBuffers notices and flushes dirty buffers >=
the specified block. But doesn't it notice dirty buffers < the
specified block ? Or does vacuum flush all pages < the
specified block while processing ?
Regards.
Hiroshi Inoue
Inoue@tpf.co.jp