• Andres Freund's avatar
    Don't skip SQL backends in logical decoding for visibility computation. · 0fd38e13
    Andres Freund authored
    The logical decoding patchset introduced PROC_IN_LOGICAL_DECODING flag
    PGXACT flag, that allows such backends to be skipped when computing
    the xmin horizon/snapshots. That's fine and sensible for walsenders
    streaming out logical changes, but not at all fine for SQL backends
    doing logical decoding. If the latter set that flag any change they
    have performed outside of logical decoding will not be regarded as
    visible - which e.g. can lead to that change being vacuumed away.
    
    Note that not setting the flag for SQL backends isn't particularly
    bothersome - the SQL backend doesn't do streaming, so it only runs for
    a limited amount of time.
    
    Per buildfarm member 'tick' and Alvaro.
    
    Backpatch to 9.4, where logical decoding was introduced.
    0fd38e13
decoding_into_rel.out 4.5 KB