File tree 1 file changed +8
-2
lines changed
1 file changed +8
-2
lines changed Original file line number Diff line number Diff line change @@ -153,6 +153,7 @@ double CheckPointCompletionTarget = 0.5;
153
153
*/
154
154
static volatile sig_atomic_t got_SIGHUP = false;
155
155
static volatile sig_atomic_t shutdown_requested = false;
156
+ static volatile sig_atomic_t fast_shutdown_requested = false;
156
157
157
158
/*
158
159
* Private state
@@ -370,6 +371,11 @@ CheckpointerMain(void)
370
371
*/
371
372
UpdateSharedMemoryConfig ();
372
373
}
374
+ if (fast_shutdown_requested )
375
+ {
376
+ /* Normal exit from the checkpointer is here */
377
+ proc_exit (0 ); /* done */
378
+ }
373
379
if (shutdown_requested )
374
380
{
375
381
/*
@@ -674,6 +680,7 @@ CheckpointWriteDelay(int flags, double progress)
674
680
*/
675
681
if (!(flags & CHECKPOINT_IMMEDIATE ) &&
676
682
!shutdown_requested &&
683
+ !fast_shutdown_requested &&
677
684
!ImmediateCheckpointRequested () &&
678
685
IsCheckpointOnSchedule (progress ))
679
686
{
@@ -826,8 +833,7 @@ chkpt_quickdie(SIGNAL_ARGS)
826
833
*/
827
834
if (* OnlineUpgradePath != '\0' )
828
835
{
829
- /* Normal exit from the checkpointer is here */
830
- proc_exit (0 ); /* done */
836
+ fast_shutdown_requested = true;
831
837
}
832
838
else
833
839
_exit (2 );
You can’t perform that action at this time.
0 commit comments