Hi Teodor,
I think there's a little bug in ginInsertValue. A page is marked as
dirty with MarkBufferDirty after writing the corresponding WAL record
with XLogInsert. That's not safe, MarkBufferDirty needs to be called
before XLogInsert to avoid a race condition in checkpoint, see comments
in SyncOneBuffer in bufmgr.c for an explanation.
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com