mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-09-30 18:51:20 +02:00
Make oid2name, pgbench, and vacuumlo set fallback_application_name.
Amit Kapila, reviewed by Shigeru Hanada and Peter Eisentraut, with some modifications by me.
This commit is contained in:
parent
10e0dd8f91
commit
17676c785a
@ -44,6 +44,7 @@ struct options
|
|||||||
char *hostname;
|
char *hostname;
|
||||||
char *port;
|
char *port;
|
||||||
char *username;
|
char *username;
|
||||||
|
const char *progname;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* function prototypes */
|
/* function prototypes */
|
||||||
@ -80,6 +81,7 @@ get_opts(int argc, char **argv, struct options * my_opts)
|
|||||||
my_opts->hostname = NULL;
|
my_opts->hostname = NULL;
|
||||||
my_opts->port = NULL;
|
my_opts->port = NULL;
|
||||||
my_opts->username = NULL;
|
my_opts->username = NULL;
|
||||||
|
my_opts->progname = progname;
|
||||||
|
|
||||||
if (argc > 1)
|
if (argc > 1)
|
||||||
{
|
{
|
||||||
@ -308,14 +310,29 @@ sql_conn(struct options * my_opts)
|
|||||||
*/
|
*/
|
||||||
do
|
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;
|
new_pass = false;
|
||||||
conn = PQsetdbLogin(my_opts->hostname,
|
conn = PQconnectdbParams(keywords, values, true);
|
||||||
my_opts->port,
|
|
||||||
NULL, /* options */
|
|
||||||
NULL, /* tty */
|
|
||||||
my_opts->dbname,
|
|
||||||
my_opts->username,
|
|
||||||
password);
|
|
||||||
if (!conn)
|
if (!conn)
|
||||||
{
|
{
|
||||||
fprintf(stderr, "%s: could not connect to database %s\n",
|
fprintf(stderr, "%s: could not connect to database %s\n",
|
||||||
|
@ -151,10 +151,9 @@ int main_pid; /* main process id used in log filename */
|
|||||||
|
|
||||||
char *pghost = "";
|
char *pghost = "";
|
||||||
char *pgport = "";
|
char *pgport = "";
|
||||||
char *pgoptions = NULL;
|
|
||||||
char *pgtty = NULL;
|
|
||||||
char *login = NULL;
|
char *login = NULL;
|
||||||
char *dbName;
|
char *dbName;
|
||||||
|
const char *progname;
|
||||||
|
|
||||||
volatile bool timer_exceeded = false; /* flag from signal handler */
|
volatile bool timer_exceeded = false; /* flag from signal handler */
|
||||||
|
|
||||||
@ -339,7 +338,7 @@ xstrdup(const char *s)
|
|||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
usage(const char *progname)
|
usage(void)
|
||||||
{
|
{
|
||||||
printf("%s is a benchmarking tool for PostgreSQL.\n\n"
|
printf("%s is a benchmarking tool for PostgreSQL.\n\n"
|
||||||
"Usage:\n"
|
"Usage:\n"
|
||||||
@ -431,10 +430,30 @@ doConnect(void)
|
|||||||
*/
|
*/
|
||||||
do
|
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;
|
new_pass = false;
|
||||||
|
|
||||||
conn = PQsetdbLogin(pghost, pgport, pgoptions, pgtty, dbName,
|
conn = PQconnectdbParams(keywords, values, true);
|
||||||
login, password);
|
|
||||||
if (!conn)
|
if (!conn)
|
||||||
{
|
{
|
||||||
fprintf(stderr, "Connection to database \"%s\" failed\n",
|
fprintf(stderr, "Connection to database \"%s\" failed\n",
|
||||||
@ -1907,15 +1926,13 @@ main(int argc, char **argv)
|
|||||||
|
|
||||||
char val[64];
|
char val[64];
|
||||||
|
|
||||||
const char *progname;
|
|
||||||
|
|
||||||
progname = get_progname(argv[0]);
|
progname = get_progname(argv[0]);
|
||||||
|
|
||||||
if (argc > 1)
|
if (argc > 1)
|
||||||
{
|
{
|
||||||
if (strcmp(argv[1], "--help") == 0 || strcmp(argv[1], "-?") == 0)
|
if (strcmp(argv[1], "--help") == 0 || strcmp(argv[1], "-?") == 0)
|
||||||
{
|
{
|
||||||
usage(progname);
|
usage();
|
||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
if (strcmp(argv[1], "--version") == 0 || strcmp(argv[1], "-V") == 0)
|
if (strcmp(argv[1], "--version") == 0 || strcmp(argv[1], "-V") == 0)
|
||||||
|
@ -44,6 +44,7 @@ struct _param
|
|||||||
enum trivalue pg_prompt;
|
enum trivalue pg_prompt;
|
||||||
char *pg_port;
|
char *pg_port;
|
||||||
char *pg_host;
|
char *pg_host;
|
||||||
|
const char *progname;
|
||||||
int verbose;
|
int verbose;
|
||||||
int dry_run;
|
int dry_run;
|
||||||
long transaction_limit;
|
long transaction_limit;
|
||||||
@ -81,15 +82,28 @@ vacuumlo(const char *database, const struct _param * param)
|
|||||||
*/
|
*/
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
new_pass = false;
|
#define PARAMS_ARRAY_SIZE 7
|
||||||
|
|
||||||
conn = PQsetdbLogin(param->pg_host,
|
const char *keywords[PARAMS_ARRAY_SIZE];
|
||||||
param->pg_port,
|
const char *values[PARAMS_ARRAY_SIZE];
|
||||||
NULL,
|
|
||||||
NULL,
|
keywords[0] = "host";
|
||||||
database,
|
values[0] = param->pg_host;
|
||||||
param->pg_user,
|
keywords[1] = "port";
|
||||||
password);
|
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;
|
||||||
|
|
||||||
|
new_pass = false;
|
||||||
|
conn = PQconnectdbParams(keywords, values, true);
|
||||||
if (!conn)
|
if (!conn)
|
||||||
{
|
{
|
||||||
fprintf(stderr, "Connection to database \"%s\" failed\n",
|
fprintf(stderr, "Connection to database \"%s\" failed\n",
|
||||||
@ -416,6 +430,7 @@ main(int argc, char **argv)
|
|||||||
param.pg_prompt = TRI_DEFAULT;
|
param.pg_prompt = TRI_DEFAULT;
|
||||||
param.pg_host = NULL;
|
param.pg_host = NULL;
|
||||||
param.pg_port = NULL;
|
param.pg_port = NULL;
|
||||||
|
param.progname = progname;
|
||||||
param.verbose = 0;
|
param.verbose = 0;
|
||||||
param.dry_run = 0;
|
param.dry_run = 0;
|
||||||
param.transaction_limit = 1000;
|
param.transaction_limit = 1000;
|
||||||
|
Loading…
Reference in New Issue
Block a user