diff --git a/src/common/backend/utils/init/postinit.cpp b/src/common/backend/utils/init/postinit.cpp index 0491eee36f0864c0e50044bc70512c0ed8f3fe0d..590d4ff63d20c8941d4a881a9b0342bf9526dac9 100644 --- a/src/common/backend/utils/init/postinit.cpp +++ b/src/common/backend/utils/init/postinit.cpp @@ -1685,6 +1685,8 @@ void PostgresInitializer::InitAutoVacWorker() InitSettings(); + InitExtensionVariable(); + FinishInit(); } diff --git a/src/gausskernel/process/postmaster/autovacuum.cpp b/src/gausskernel/process/postmaster/autovacuum.cpp index 9ee08e521c5245b68f000049d9da01a53a218667..c0e79b2632b220c569424ef4f8569ae8149fb385 100755 --- a/src/gausskernel/process/postmaster/autovacuum.cpp +++ b/src/gausskernel/process/postmaster/autovacuum.cpp @@ -1363,6 +1363,10 @@ NON_EXEC_STATIC void AutoVacWorkerMain() pgstat_report_appname("AutoVacWorker"); pgstat_report_activity(STATE_IDLE, NULL); +#if (!defined(ENABLE_MULTIPLE_NODES)) && (!defined(ENABLE_PRIVATEGAUSS)) + LoadSqlPlugin(); +#endif + set_ps_display(dbname, false); ereport(GetVacuumLogLevel(), (errmsg("start autovacuum on database \"%s\"", dbname))); diff --git a/src/include/utils/fmgrtab.h b/src/include/utils/fmgrtab.h index d535e19c1c5560b525c9685702a23a1d0ae412b7..06568a8e73fba0e2ed2e0588f7a1c650cc5882bf 100644 --- a/src/include/utils/fmgrtab.h +++ b/src/include/utils/fmgrtab.h @@ -212,7 +212,7 @@ static_assert(sizeof(NULL) == sizeof(void*), "NULL must be a 8 byte-length point #define CUR_THR_IS_WORKER() (t_thrd.role == WORKER || t_thrd.role == THREADPOOL_WORKER ||\ t_thrd.role == STREAM_WORKER || t_thrd.role == THREADPOOL_STREAM || t_thrd.role == WAL_DB_SENDER||\ - t_thrd.role == PARALLEL_DECODE || t_thrd.role == JOB_WORKER) + t_thrd.role == PARALLEL_DECODE || t_thrd.role == JOB_WORKER || t_thrd.role == AUTOVACUUM_WORKER) #if (!defined(ENABLE_MULTIPLE_NODES)) && (!defined(ENABLE_PRIVATEGAUSS)) /* for dolphin and whale plugin */