• Robert Haas's avatar
    hash: Fix write-ahead logging bugs related to init forks. · 09c2e7cd
    Robert Haas authored
    One, logging for CREATE INDEX was oblivious to the fact that when
    an unlogged table is created, *only* operations on the init fork
    should be logged.
    
    Two, init fork buffers need to be flushed after they are written;
    otherwise, a filesystem-level copy following recovery may do the
    wrong thing.  (There may be a better fix for this issue than the
    one used here, but this is transposed from the similar logic already
    present in XLogReadBufferForRedoExtended, and a broader refactoring
    after beta2 seems inadvisable.)
    
    Amit Kapila, reviewed by Ashutosh Sharma, Kyotaro Horiguchi,
    and Michael Paquier
    
    Discussion: http://postgr.es/m/CAA4eK1JpcMsEtOL_J7WODumeEfyrPi7FPYHeVdS7fyyrCrgp4w@mail.gmail.com
    09c2e7cd
hashpage.c 46.9 KB