summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Haas2012-07-04 19:39:33 +0000
committerRobert Haas2012-07-04 19:39:33 +0000
commit17676c785a95b2598c5735c0025f7dc7727a96bc (patch)
tree823314131c30a4bcfd52076338ad54d65e94aee1
parent10e0dd8f91364635b73103c5e207b48b811da5b5 (diff)
Make oid2name, pgbench, and vacuumlo set fallback_application_name.
Amit Kapila, reviewed by Shigeru Hanada and Peter Eisentraut, with some modifications by me.
-rw-r--r--contrib/oid2name/oid2name.c31
-rw-r--r--contrib/pgbench/pgbench.c33
-rw-r--r--contrib/vacuumlo/vacuumlo.c31
3 files changed, 72 insertions, 23 deletions
diff --git a/contrib/oid2name/oid2name.c b/contrib/oid2name/oid2name.c
index e8a389e49e7..754eac5f8a2 100644
--- a/contrib/oid2name/oid2name.c
+++ b/contrib/oid2name/oid2name.c
@@ -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",
diff --git a/contrib/pgbench/pgbench.c b/contrib/pgbench/pgbench.c
index d3f6b515890..a744f5fedb5 100644
--- a/contrib/pgbench/pgbench.c
+++ b/contrib/pgbench/pgbench.c
@@ -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)
diff --git a/contrib/vacuumlo/vacuumlo.c b/contrib/vacuumlo/vacuumlo.c
index 7f5287c27ae..86c0962526d 100644
--- a/contrib/vacuumlo/vacuumlo.c
+++ b/contrib/vacuumlo/vacuumlo.c
@@ -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;