• Tom Lane's avatar
    Minor cleanup for access/transam/parallel.c. · a5fe473a
    Tom Lane authored
    ParallelMessagePending *must* be marked volatile, because it's set
    by a signal handler.  On the other hand, it's pointless for
    HandleParallelMessageInterrupt to save/restore errno; that must be,
    and is, done at the outer level of the SIGUSR1 signal handler.
    
    Calling CHECK_FOR_INTERRUPTS() inside HandleParallelMessages, which itself
    is called from CHECK_FOR_INTERRUPTS(), seems both useless and hazardous.
    The comment claiming that this is needed to handle the error queue going
    away is certainly misguided, in any case.
    
    Improve a couple of error message texts, and use
    ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE to report loss of parallel worker
    connection, since that's what's used in e.g. tqueue.c.  (Maybe it would be
    worth inventing a dedicated ERRCODE for this type of failure?  But I do not
    think ERRCODE_INTERNAL_ERROR is appropriate.)
    
    Minor stylistic cleanups.
    a5fe473a
parallel.h 2.2 KB