From 3661d1d6e0342332c98c7a7ad5849e7e963f9615 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Mon, 24 May 2004 02:47:47 +0000 Subject: [PATCH] This patch fixes the find_my_exec code for pgstat backends. Required for TZ stuff (and possibly others) to work in the pgstat backends. Magnus Hagander --- src/backend/main/main.c | 12 +++++------- src/backend/postmaster/pgstat.c | 14 +++++++++++--- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/backend/main/main.c b/src/backend/main/main.c index 535da36b91..9216c2c4be 100644 --- a/src/backend/main/main.c +++ b/src/backend/main/main.c @@ -13,7 +13,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/main/main.c,v 1.80 2004/05/19 18:58:44 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/main/main.c,v 1.81 2004/05/24 02:47:44 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -278,22 +278,20 @@ main(int argc, char *argv[]) } /* - * If the first argument is "-statBuf", then invoke pgstat_main. Note - * we remove "-statBuf" from the arguments passed on to pgstat_main. + * If the first argument is "-statBuf", then invoke pgstat_main. */ if (argc > 1 && strcmp(argv[1], "-statBuf") == 0) { - pgstat_main(argc - 2, argv + 2); + pgstat_main(argc , argv); exit(0); } /* - * If the first argument is "-statCol", then invoke pgstat_mainChild. Note - * we remove "-statCol" from the arguments passed on to pgstat_mainChild. + * If the first argument is "-statCol", then invoke pgstat_mainChild. */ if (argc > 1 && strcmp(argv[1], "-statCol") == 0) { - pgstat_mainChild(argc - 2, argv + 2); + pgstat_mainChild(argc, argv); exit(0); } #endif diff --git a/src/backend/postmaster/pgstat.c b/src/backend/postmaster/pgstat.c index c102cdd7aa..70924eb676 100644 --- a/src/backend/postmaster/pgstat.c +++ b/src/backend/postmaster/pgstat.c @@ -13,7 +13,7 @@ * * Copyright (c) 2001-2003, PostgreSQL Global Development Group * - * $PostgreSQL: pgsql/src/backend/postmaster/pgstat.c,v 1.70 2004/05/18 03:36:30 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/postmaster/pgstat.c,v 1.71 2004/05/24 02:47:47 momjian Exp $ * ---------- */ #include "postgres.h" @@ -520,8 +520,16 @@ pgstat_forkexec(STATS_PROCESS_TYPE procType) static void pgstat_parseArgs(PGSTAT_FORK_ARGS) { - Assert(argc == 12); - argc = 0; + Assert(argc == 14); + + if (find_my_exec(argv[0], my_exec_path) < 0) + elog(FATAL, + gettext("%s: could not locate my own executable path"), + argv[0]); + + get_pkglib_path(my_exec_path, pkglib_path); + + argc = 2; pgStatSock = atoi(argv[argc++]); pgStatPmPipe[0] = atoi(argv[argc++]); pgStatPmPipe[1] = atoi(argv[argc++]); -- 2.40.0