@@ -138,7 +138,6 @@ static bool am_autovacuum_launcher = false;
138
138
static bool am_autovacuum_worker = false;
139
139
140
140
/* Flags set by signal handlers */
141
- static volatile sig_atomic_t got_SIGHUP = false;
142
141
static volatile sig_atomic_t got_SIGUSR2 = false;
143
142
static volatile sig_atomic_t got_SIGTERM = false;
144
143
@@ -344,7 +343,6 @@ static void perform_work_item(AutoVacuumWorkItem *workitem);
344
343
static void autovac_report_activity (autovac_table * tab );
345
344
static void autovac_report_workitem (AutoVacuumWorkItem * workitem ,
346
345
const char * nspname , const char * relname );
347
- static void av_sighup_handler (SIGNAL_ARGS );
348
346
static void avl_sigusr2_handler (SIGNAL_ARGS );
349
347
static void avl_sigterm_handler (SIGNAL_ARGS );
350
348
static void autovac_refresh_stats (void );
@@ -452,7 +450,7 @@ AutoVacLauncherMain(int argc, char *argv[])
452
450
* backend, so we use the same signal handling. See equivalent code in
453
451
* tcop/postgres.c.
454
452
*/
455
- pqsignal (SIGHUP , av_sighup_handler );
453
+ pqsignal (SIGHUP , PostgresSigHupHandler );
456
454
pqsignal (SIGINT , StatementCancelHandler );
457
455
pqsignal (SIGTERM , avl_sigterm_handler );
458
456
@@ -805,9 +803,9 @@ HandleAutoVacLauncherInterrupts(void)
805
803
if (got_SIGTERM )
806
804
AutoVacLauncherShutdown ();
807
805
808
- if (got_SIGHUP )
806
+ if (ConfigReloadPending )
809
807
{
810
- got_SIGHUP = false;
808
+ ConfigReloadPending = false;
811
809
ProcessConfigFile (PGC_SIGHUP );
812
810
813
811
/* shutdown requested in config file? */
@@ -1405,18 +1403,6 @@ AutoVacWorkerFailed(void)
1405
1403
AutoVacuumShmem -> av_signal [AutoVacForkFailed ] = true;
1406
1404
}
1407
1405
1408
- /* SIGHUP: set flag to re-read config file at next convenient time */
1409
- static void
1410
- av_sighup_handler (SIGNAL_ARGS )
1411
- {
1412
- int save_errno = errno ;
1413
-
1414
- got_SIGHUP = true;
1415
- SetLatch (MyLatch );
1416
-
1417
- errno = save_errno ;
1418
- }
1419
-
1420
1406
/* SIGUSR2: a worker is up and running, or just finished, or failed to fork */
1421
1407
static void
1422
1408
avl_sigusr2_handler (SIGNAL_ARGS )
@@ -1539,7 +1525,7 @@ AutoVacWorkerMain(int argc, char *argv[])
1539
1525
* backend, so we use the same signal handling. See equivalent code in
1540
1526
* tcop/postgres.c.
1541
1527
*/
1542
- pqsignal (SIGHUP , av_sighup_handler );
1528
+ pqsignal (SIGHUP , PostgresSigHupHandler );
1543
1529
1544
1530
/*
1545
1531
* SIGINT is used to signal canceling the current table's vacuum; SIGTERM
@@ -2332,9 +2318,9 @@ do_autovacuum(void)
2332
2318
/*
2333
2319
* Check for config changes before processing each collected table.
2334
2320
*/
2335
- if (got_SIGHUP )
2321
+ if (ConfigReloadPending )
2336
2322
{
2337
- got_SIGHUP = false;
2323
+ ConfigReloadPending = false;
2338
2324
ProcessConfigFile (PGC_SIGHUP );
2339
2325
2340
2326
/*
@@ -2580,9 +2566,9 @@ do_autovacuum(void)
2580
2566
* Check for config changes before acquiring lock for further jobs.
2581
2567
*/
2582
2568
CHECK_FOR_INTERRUPTS ();
2583
- if (got_SIGHUP )
2569
+ if (ConfigReloadPending )
2584
2570
{
2585
- got_SIGHUP = false;
2571
+ ConfigReloadPending = false;
2586
2572
ProcessConfigFile (PGC_SIGHUP );
2587
2573
}
2588
2574
0 commit comments