Increase size of bgw_library_name.
This commit increases the size of the bgw_library_name member of the BackgroundWorker struct from BGW_MAXLEN (96) bytes to MAXPGPATH (default of 1024) bytes so that it can store longer file names (e.g., absolute paths). Author: Yurii Rashkovskii Reviewed-by: Daniel Gustafsson, Aleksander Alekseev Discussion: https://postgr.es/m/CA%2BRLCQyjFV5Y8tG5QgUb6gjteL4S3p%2B1gcyqWTqigyM93WZ9Pg%40mail.gmail.com
This commit is contained in:
parent
126552c85c
commit
957845789b
|
@ -59,7 +59,7 @@ typedef struct BackgroundWorker
|
||||||
int bgw_flags;
|
int bgw_flags;
|
||||||
BgWorkerStartTime bgw_start_time;
|
BgWorkerStartTime bgw_start_time;
|
||||||
int bgw_restart_time; /* in seconds, or BGW_NEVER_RESTART */
|
int bgw_restart_time; /* in seconds, or BGW_NEVER_RESTART */
|
||||||
char bgw_library_name[BGW_MAXLEN];
|
char bgw_library_name[MAXPGPATH];
|
||||||
char bgw_function_name[BGW_MAXLEN];
|
char bgw_function_name[BGW_MAXLEN];
|
||||||
Datum bgw_main_arg;
|
Datum bgw_main_arg;
|
||||||
char bgw_extra[BGW_EXTRALEN];
|
char bgw_extra[BGW_EXTRALEN];
|
||||||
|
|
|
@ -362,7 +362,7 @@ BackgroundWorkerStateChange(bool allow_new_workers)
|
||||||
ascii_safe_strlcpy(rw->rw_worker.bgw_type,
|
ascii_safe_strlcpy(rw->rw_worker.bgw_type,
|
||||||
slot->worker.bgw_type, BGW_MAXLEN);
|
slot->worker.bgw_type, BGW_MAXLEN);
|
||||||
ascii_safe_strlcpy(rw->rw_worker.bgw_library_name,
|
ascii_safe_strlcpy(rw->rw_worker.bgw_library_name,
|
||||||
slot->worker.bgw_library_name, BGW_MAXLEN);
|
slot->worker.bgw_library_name, MAXPGPATH);
|
||||||
ascii_safe_strlcpy(rw->rw_worker.bgw_function_name,
|
ascii_safe_strlcpy(rw->rw_worker.bgw_function_name,
|
||||||
slot->worker.bgw_function_name, BGW_MAXLEN);
|
slot->worker.bgw_function_name, BGW_MAXLEN);
|
||||||
|
|
||||||
|
|
|
@ -456,7 +456,7 @@ retry:
|
||||||
bgw.bgw_flags = BGWORKER_SHMEM_ACCESS |
|
bgw.bgw_flags = BGWORKER_SHMEM_ACCESS |
|
||||||
BGWORKER_BACKEND_DATABASE_CONNECTION;
|
BGWORKER_BACKEND_DATABASE_CONNECTION;
|
||||||
bgw.bgw_start_time = BgWorkerStart_RecoveryFinished;
|
bgw.bgw_start_time = BgWorkerStart_RecoveryFinished;
|
||||||
snprintf(bgw.bgw_library_name, BGW_MAXLEN, "postgres");
|
snprintf(bgw.bgw_library_name, MAXPGPATH, "postgres");
|
||||||
|
|
||||||
if (is_parallel_apply_worker)
|
if (is_parallel_apply_worker)
|
||||||
snprintf(bgw.bgw_function_name, BGW_MAXLEN, "ParallelApplyWorkerMain");
|
snprintf(bgw.bgw_function_name, BGW_MAXLEN, "ParallelApplyWorkerMain");
|
||||||
|
@ -910,7 +910,7 @@ ApplyLauncherRegister(void)
|
||||||
bgw.bgw_flags = BGWORKER_SHMEM_ACCESS |
|
bgw.bgw_flags = BGWORKER_SHMEM_ACCESS |
|
||||||
BGWORKER_BACKEND_DATABASE_CONNECTION;
|
BGWORKER_BACKEND_DATABASE_CONNECTION;
|
||||||
bgw.bgw_start_time = BgWorkerStart_RecoveryFinished;
|
bgw.bgw_start_time = BgWorkerStart_RecoveryFinished;
|
||||||
snprintf(bgw.bgw_library_name, BGW_MAXLEN, "postgres");
|
snprintf(bgw.bgw_library_name, MAXPGPATH, "postgres");
|
||||||
snprintf(bgw.bgw_function_name, BGW_MAXLEN, "ApplyLauncherMain");
|
snprintf(bgw.bgw_function_name, BGW_MAXLEN, "ApplyLauncherMain");
|
||||||
snprintf(bgw.bgw_name, BGW_MAXLEN,
|
snprintf(bgw.bgw_name, BGW_MAXLEN,
|
||||||
"logical replication launcher");
|
"logical replication launcher");
|
||||||
|
|
|
@ -93,7 +93,7 @@ typedef struct BackgroundWorker
|
||||||
int bgw_flags;
|
int bgw_flags;
|
||||||
BgWorkerStartTime bgw_start_time;
|
BgWorkerStartTime bgw_start_time;
|
||||||
int bgw_restart_time; /* in seconds, or BGW_NEVER_RESTART */
|
int bgw_restart_time; /* in seconds, or BGW_NEVER_RESTART */
|
||||||
char bgw_library_name[BGW_MAXLEN];
|
char bgw_library_name[MAXPGPATH];
|
||||||
char bgw_function_name[BGW_MAXLEN];
|
char bgw_function_name[BGW_MAXLEN];
|
||||||
Datum bgw_main_arg;
|
Datum bgw_main_arg;
|
||||||
char bgw_extra[BGW_EXTRALEN];
|
char bgw_extra[BGW_EXTRALEN];
|
||||||
|
|
Loading…
Reference in New Issue