"Hiroshi Inoue" <Inoue@tpf.co.jp> writes:
> What I've never understood until recently is that even normal aborts(not
> in the middle of b-tree splitting) and normal shutdown could cause an
> inconsistency between heap and indices.
Yes. Since WAL will provide the real solution in 7.1, I think we need
only look for a simple stopgap answer for 7.0.x. Perhaps we could just
tweak bufmgr.c so that dirty buffers are flushed out on both transaction
commit and abort. That doesn't solve the consistency-after-crash issue,
but at least you can do an orderly shutdown of a postmaster without
fear. Is it worth trying to do more now, rather than working on WAL?
regards, tom lane