diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/pgxc/squeue/squeue.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/backend/pgxc/squeue/squeue.c b/src/backend/pgxc/squeue/squeue.c index 655cf32527..fbe20d4a23 100644 --- a/src/backend/pgxc/squeue/squeue.c +++ b/src/backend/pgxc/squeue/squeue.c @@ -948,6 +948,13 @@ SharedQueueReset(SharedQueue squeue, int consumerIdx) { SQueueSync *sqsync = squeue->sq_sync; + /* + * We may have already cleaned up, but then an abort signalled us to clean up. + * Avoid segmentation fault on abort + */ + if (!sqsync) + return; + if (consumerIdx == -1) { int i; |