• Tom Lane's avatar
    Forbid ALTER TABLE and CLUSTER when there are pending AFTER-trigger events · 20e86215
    Tom Lane authored
    in the current backend for the target table.  These operations move tuples
    around and would thus invalidate the TIDs stored in the trigger event records.
    (We need not worry about events in other backends, since acquiring exclusive
    lock should be enough to ensure there aren't any.)  It might be sufficient
    to forbid only the table-rewriting variants of ALTER TABLE, but in the absence
    of any compelling use-case, let's just be safe and simple.  Per follow-on
    investigation of bug #3847, though this is not actually the same problem
    reported therein.
    
    Possibly this should be back-patched, but since the case has never been
    reported from the field, I didn't bother.
    20e86215
tablecmds.c 201 KB