• Tom Lane's avatar
    Fix (some of the) breakage introduced into query-cancel processing by HS. · 82170c74
    Tom Lane authored
    It is absolutely not okay to throw an ereport(ERROR) in any random place in
    the code just because DoingCommandRead is set; interrupting, say, OpenSSL
    in the midst of its activities is guaranteed to result in heartache.
    
    Instead of that, undo the original optimizations that threw away
    QueryCancelPending anytime we were starting or finishing a command read, and
    instead discard the cancel request within ProcessInterrupts if we find that
    there is no HS reason for forcing a cancel and we are DoingCommandRead.
    
    In passing, may I once again condemn the practice of changing the code
    and not fixing the adjacent comment that you just turned into a lie?
    82170c74
postgres.c 106 KB