Re: stupid patch of pg_dumplo - Mailing list pgsql-patches
From | Bruce Momjian |
---|---|
Subject | Re: stupid patch of pg_dumplo |
Date | |
Msg-id | 200111121744.fACHiES07580@candle.pha.pa.us Whole thread Raw |
In response to | Re: stupid patch of pg_dumplo (andrea gelmini <bungle@linux.it>) |
List | pgsql-patches |
Patch applied. Thanks. --------------------------------------------------------------------------- > On gio, nov 08, 2001 at 02:32:27 +0100, Karel Zak wrote: > > It's good idea, maybe you can try add other values usable in > > PQsetdbLogin. > > yes, maybe in the future... now two problems: a) relation 'option' -> > 'letter' is a little mess (but i don't see solution), b) i'm a son of shell > programming... and so... read the "how to lost one day on a stupid > problem" in the bottom... > also, now i don't figure out what other useful PQsetdbLogin values can be > good for this util (give me the light!) > > > Please use other code in pg_dumplo/main.c as inspiration. > it was my first try... but i failed... > so i tried with the ugly way (i've seen it also in other *.c file in contrib, > maybe i'll fix them)... > ehm... now i retry... > > > Please correct your patch and I mean will no problem add it to > > official code. > ok, tell me if this is good. > > thanks for your time, > andrea > > ----- > how to lost one day on a stupid problem > > i try to change my fully functional patch in the way suggested... > but it core dumps... > thinking, thinking, thinking... > everything is same but the line: > > pgLO->port = strdup(optarg); > > makes a core dump... > gdb says 'that line is evil'... > and i go crazy... > ask to one friend, > ask to two friends... > nothing... > core dump... > core dump... > and... > the light... > > getopt_long(argc, argv, "?aehou:p:qd:l:t:irs:w" > > i put 'o' without ':' > > argh! > > ----- > > Common subdirectories: pg_dumplo.orig/CVS and pg_dumplo/CVS > diff -c pg_dumplo.orig/main.c pg_dumplo/main.c > *** pg_dumplo.orig/main.c Thu Oct 25 16:23:33 2001 > --- pg_dumplo/main.c Mon Nov 12 16:25:56 2001 > *************** > *** 56,61 **** > --- 56,62 ---- > pgLO->user = NULL; > pgLO->db = NULL; > pgLO->host = NULL; > + pgLO->port = NULL; > pgLO->space = NULL; > pgLO->index = NULL; > pgLO->remove = FALSE; > *************** > *** 81,86 **** > --- 82,88 ---- > {"pwd", required_argument, 0, 'p'}, > {"db", required_argument, 0, 'd'}, > {"host", required_argument, 0, 'h'}, > + {"port", required_argument, 0, 'o'}, > {"space", required_argument, 0, 's'}, > {"import", no_argument, 0, 'i'}, > {"export", no_argument, 0, 'e'}, > *************** > *** 91,100 **** > {NULL, 0, 0, 0} > }; > > ! while ((arg = getopt_long(argc, argv, "?aehu:p:qd:l:t:irs:w", l_opt, &l_index)) != -1) > { > #else > ! while ((arg = getopt(argc, argv, "?aehu:p:qd:l:t:irs:w")) != -1) > { > #endif > switch (arg) > --- 93,102 ---- > {NULL, 0, 0, 0} > }; > > ! while ((arg = getopt_long(argc, argv, "?aeho:u:p:qd:l:t:irs:w", l_opt, &l_index)) != -1) > { > #else > ! while ((arg = getopt(argc, argv, "?aeho:u:p:qd:l:t:irs:w")) != -1) > { > #endif > switch (arg) > *************** > *** 109,114 **** > --- 111,119 ---- > case 't': > pgLO->host = strdup(optarg); > break; > + case 'o': > + pgLO->port = strdup(optarg); > + break; > case 'p': > pwd = strdup(optarg); > break; > *************** > *** 173,179 **** > /* > * Make connection > */ > ! pgLO->conn = PQsetdbLogin(pgLO->host, NULL, NULL, NULL, pgLO->db, > pgLO->user, pwd); > > if (PQstatus(pgLO->conn) == CONNECTION_BAD) > --- 178,184 ---- > /* > * Make connection > */ > ! pgLO->conn = PQsetdbLogin(pgLO->host, pgLO->port, NULL, NULL, pgLO->db, > pgLO->user, pwd); > > if (PQstatus(pgLO->conn) == CONNECTION_BAD) > *************** > *** 279,284 **** > --- 284,290 ---- > "-p --password=<password> password for connection to server\n" > "-d --db=<database> database name\n" > "-t --host=<hostname> server hostname\n" > + "-o --port=<port> database server port (default: 5432)\n" > "-s --space=<dir> directory with dump tree (for export/import)\n" > "-i --import import large obj dump tree to DB\n" > "-e --export export (dump) large obj to dump tree\n" > *************** > *** 295,300 **** > --- 301,307 ---- > "-p <password> password for connection to server\n" > "-d <database> database name\n" > "-t <hostname> server hostname\n" > + "-o <port> database server port (default: 5432)\n" > "-s <dir> directory with dump tree (for export/import)\n" > "-i import large obj dump tree to DB\n" > "-e export (dump) large obj to dump tree\n" > diff -c pg_dumplo.orig/pg_dumplo.h pg_dumplo/pg_dumplo.h > *** pg_dumplo.orig/pg_dumplo.h Tue Nov 6 13:17:39 2001 > --- pg_dumplo/pg_dumplo.h Mon Nov 12 14:04:48 2001 > *************** > *** 51,56 **** > --- 51,57 ---- > *user, > *db, > *host, > + *port, > *space; > FILE *index; > int counter, > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Don't 'kill -9' the postmaster > -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026
pgsql-patches by date: