diff options
Diffstat (limited to 'src/backend/replication')
| -rw-r--r-- | src/backend/replication/slot.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/backend/replication/slot.c b/src/backend/replication/slot.c index 4d0421c5ed..cc79d6713b 100644 --- a/src/backend/replication/slot.c +++ b/src/backend/replication/slot.c @@ -1442,7 +1442,13 @@ InvalidatePossiblyObsoleteSlot(ReplicationSlotInvalidationCause cause, slotname, restart_lsn, oldestLSN, snapshotConflictHorizon); - (void) kill(active_pid, SIGTERM); + if (MyBackendType == B_STARTUP) + (void) SendProcSignal(active_pid, + PROCSIG_RECOVERY_CONFLICT_LOGICALSLOT, + InvalidBackendId); + else + (void) kill(active_pid, SIGTERM); + last_signaled_pid = active_pid; } |
