]> granicus.if.org Git - postgresql/commitdiff
Make oid2name, pgbench, and vacuumlo set fallback_application_name.
authorRobert Haas <rhaas@postgresql.org>
Wed, 4 Jul 2012 19:39:33 +0000 (15:39 -0400)
committerRobert Haas <rhaas@postgresql.org>
Wed, 4 Jul 2012 19:39:33 +0000 (15:39 -0400)
Amit Kapila, reviewed by Shigeru Hanada and Peter Eisentraut,
with some modifications by me.

contrib/oid2name/oid2name.c
contrib/pgbench/pgbench.c
contrib/vacuumlo/vacuumlo.c

index e8a389e49e796ca8d492641a08da63ae433bba41..754eac5f8a26fedd4b4d5e76416ef7546dc048f9 100644 (file)
@@ -44,6 +44,7 @@ struct options
        char       *hostname;
        char       *port;
        char       *username;
+       const char *progname;
 };
 
 /* function prototypes */
@@ -80,6 +81,7 @@ get_opts(int argc, char **argv, struct options * my_opts)
        my_opts->hostname = NULL;
        my_opts->port = NULL;
        my_opts->username = NULL;
+       my_opts->progname = progname;
 
        if (argc > 1)
        {
@@ -308,14 +310,29 @@ sql_conn(struct options * my_opts)
         */
        do
        {
+#define PARAMS_ARRAY_SIZE      7
+
+               const char *keywords[PARAMS_ARRAY_SIZE];
+               const char *values[PARAMS_ARRAY_SIZE];
+
+               keywords[0] = "host";
+               values[0] = my_opts->hostname;
+               keywords[1] = "port";
+               values[1] = my_opts->port;
+               keywords[2] = "user";
+               values[2] = my_opts->username;
+               keywords[3] = "password";
+               values[3] = password;
+               keywords[4] = "dbname";
+               values[4] = my_opts->dbname;
+               keywords[5] = "fallback_application_name";
+               values[5] = my_opts->progname;
+               keywords[6] = NULL;
+               values[6] = NULL;
+
                new_pass = false;
-               conn = PQsetdbLogin(my_opts->hostname,
-                                                       my_opts->port,
-                                                       NULL,           /* options */
-                                                       NULL,           /* tty */
-                                                       my_opts->dbname,
-                                                       my_opts->username,
-                                                       password);
+               conn = PQconnectdbParams(keywords, values, true);
+
                if (!conn)
                {
                        fprintf(stderr, "%s: could not connect to database %s\n",
index d3f6b515890c894befe5223b970dd5a343f75480..a744f5fedb570e0b377a9c70ac856aff5bad980c 100644 (file)
@@ -151,10 +151,9 @@ int                        main_pid;                       /* main process id used in log filename */
 
 char      *pghost = "";
 char      *pgport = "";
-char      *pgoptions = NULL;
-char      *pgtty = NULL;
 char      *login = NULL;
 char      *dbName;
+const char *progname;
 
 volatile bool timer_exceeded = false;  /* flag from signal handler */
 
@@ -339,7 +338,7 @@ xstrdup(const char *s)
 
 
 static void
-usage(const char *progname)
+usage(void)
 {
        printf("%s is a benchmarking tool for PostgreSQL.\n\n"
                   "Usage:\n"
@@ -431,10 +430,30 @@ doConnect(void)
         */
        do
        {
+#define PARAMS_ARRAY_SIZE      7
+
+               const char *keywords[PARAMS_ARRAY_SIZE];
+               const char *values[PARAMS_ARRAY_SIZE];
+
+               keywords[0] = "host";
+               values[0] = pghost;
+               keywords[1] = "port";
+               values[1] = pgport;
+               keywords[2] = "user";
+               values[2] = login;
+               keywords[3] = "password";
+               values[3] = password;
+               keywords[4] = "dbname";
+               values[4] = dbName;
+               keywords[5] = "fallback_application_name";
+               values[5] = progname;
+               keywords[6] = NULL;
+               values[6] = NULL;
+
                new_pass = false;
 
-               conn = PQsetdbLogin(pghost, pgport, pgoptions, pgtty, dbName,
-                                                       login, password);
+               conn = PQconnectdbParams(keywords, values, true);
+
                if (!conn)
                {
                        fprintf(stderr, "Connection to database \"%s\" failed\n",
@@ -1907,15 +1926,13 @@ main(int argc, char **argv)
 
        char            val[64];
 
-       const char *progname;
-
        progname = get_progname(argv[0]);
 
        if (argc > 1)
        {
                if (strcmp(argv[1], "--help") == 0 || strcmp(argv[1], "-?") == 0)
                {
-                       usage(progname);
+                       usage();
                        exit(0);
                }
                if (strcmp(argv[1], "--version") == 0 || strcmp(argv[1], "-V") == 0)
index 7f5287c27aea3ffade4340f408ea37e3776353bd..86c0962526db14132086b7f096066e5ab76c5008 100644 (file)
@@ -44,6 +44,7 @@ struct _param
        enum trivalue pg_prompt;
        char       *pg_port;
        char       *pg_host;
+       const char *progname;
        int                     verbose;
        int                     dry_run;
        long            transaction_limit;
@@ -81,15 +82,28 @@ vacuumlo(const char *database, const struct _param * param)
         */
        do
        {
-               new_pass = false;
+#define PARAMS_ARRAY_SIZE      7
+
+               const char *keywords[PARAMS_ARRAY_SIZE];
+               const char *values[PARAMS_ARRAY_SIZE];
+
+               keywords[0] = "host";
+               values[0] = param->pg_host;
+               keywords[1] = "port";
+               values[1] = param->pg_port;
+               keywords[2] = "user";
+               values[2] = param->pg_user;
+               keywords[3] = "password";
+               values[3] = password;
+               keywords[4] = "dbname";
+               values[4] = database;
+               keywords[5] = "fallback_application_name";
+               values[5] = param->progname;
+               keywords[6] = NULL;
+               values[6] = NULL;
 
-               conn = PQsetdbLogin(param->pg_host,
-                                                       param->pg_port,
-                                                       NULL,
-                                                       NULL,
-                                                       database,
-                                                       param->pg_user,
-                                                       password);
+               new_pass = false;
+               conn = PQconnectdbParams(keywords, values, true);
                if (!conn)
                {
                        fprintf(stderr, "Connection to database \"%s\" failed\n",
@@ -416,6 +430,7 @@ main(int argc, char **argv)
        param.pg_prompt = TRI_DEFAULT;
        param.pg_host = NULL;
        param.pg_port = NULL;
+       param.progname = progname;
        param.verbose = 0;
        param.dry_run = 0;
        param.transaction_limit = 1000;