Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commita576a60

Browse files
committed
Show backend status on ps command line. Remove unused args from
pg_exec_query().
1 parent99d21d5 commita576a60

File tree

12 files changed

+141
-92
lines changed

12 files changed

+141
-92
lines changed

‎src/backend/commands/_deadcode/version.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
*
1111
*
1212
* IDENTIFICATION
13-
* $Header: /cvsroot/pgsql/src/backend/commands/_deadcode/Attic/version.c,v 1.11 1998/01/05 16:39:07 momjian Exp $
13+
* $Header: /cvsroot/pgsql/src/backend/commands/_deadcode/Attic/version.c,v 1.12 1998/06/04 17:26:38 momjian Exp $
1414
*
1515
* NOTES
1616
* At the point the version is defined, 2 physical relations are created
@@ -95,7 +95,7 @@ eval_as_new_xact(char *query)
9595
* CommitTransactionCommand(); StartTransactionCommand();
9696
*/
9797
CommandCounterIncrement();
98-
pg_exec_query(query, (char**)NULL, (Oid*)NULL,0);
98+
pg_exec_query(query);
9999
}
100100

101101
#endif
@@ -157,7 +157,7 @@ VersionCreate(char *vname, char *bname)
157157
sprintf(query_buf,"SELECT * INTO TABLE %s from %s where 1 =2",
158158
vname,bname);
159159

160-
pg_exec_query(query_buf, (char**)NULL, (Oid*)NULL,0);
160+
pg_exec_query(query_buf);
161161

162162
/*
163163
* Creating the ``v_added'' relation

‎src/backend/commands/dbcommands.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
*
88
*
99
* IDENTIFICATION
10-
* $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.13 1998/04/27 04:05:11 momjian Exp $
10+
* $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.14 1998/06/04 17:26:38 momjian Exp $
1111
*
1212
*-------------------------------------------------------------------------
1313
*/
@@ -95,7 +95,7 @@ createdb(char *dbname, char *dbpath)
9595
sprintf(buf,"insert into pg_database (datname, datdba, datpath)"
9696
" values (\'%s\', \'%d\', \'%s\');",dbname,user_id,loc);
9797

98-
pg_exec_query(buf, (char**)NULL, (Oid*)NULL,0);
98+
pg_exec_query(buf);
9999
}
100100

101101
void
@@ -133,7 +133,7 @@ destroydb(char *dbname)
133133
*/
134134
sprintf(buf,"delete from pg_database where pg_database.oid = \'%d\'::oid",
135135
db_id);
136-
pg_exec_query(buf, (char**)NULL, (Oid*)NULL,0);
136+
pg_exec_query(buf);
137137

138138
/*
139139
* remove the data directory. If the DELETE above failed, this will

‎src/backend/commands/user.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ UpdatePgPwdFile(char *sql)
6565
* file to its final name.
6666
*/
6767
sprintf(sql,"copy %s to '%s' using delimiters %s",ShadowRelationName,tempname,CRYPT_PWD_FILE_SEPCHAR);
68-
pg_exec_query(sql, (char**)NULL, (Oid*)NULL,0);
68+
pg_exec_query(sql);
6969
rename(tempname,filename);
7070
free((void*)tempname);
7171

@@ -196,7 +196,7 @@ DefineUser(CreateUserStmt *stmt)
196196
}
197197
strcat(sql_end,")");
198198

199-
pg_exec_query(sql, (char**)NULL, (Oid*)NULL,0);
199+
pg_exec_query(sql);
200200

201201
/*
202202
* Add the stuff here for groups.
@@ -328,7 +328,7 @@ AlterUser(AlterUserStmt *stmt)
328328
{
329329
sql_end+=strlen(sql_end);
330330
sprintf(sql_end," where usename = '%s'",stmt->user);
331-
pg_exec_query(sql, (char**)NULL, (Oid*)NULL,0);
331+
pg_exec_query(sql);
332332
}
333333

334334
/* do the pg_group stuff here */
@@ -450,7 +450,7 @@ RemoveUser(char *user)
450450
elog(NOTICE,"Dropping database %s",dbase[ndbase]);
451451
sprintf(sql,"drop database %s",dbase[ndbase]);
452452
free((void*)dbase[ndbase]);
453-
pg_exec_query(sql, (char**)NULL, (Oid*)NULL,0);
453+
pg_exec_query(sql);
454454
}
455455
if (dbase)
456456
free((void*)dbase);
@@ -477,7 +477,7 @@ RemoveUser(char *user)
477477
* Remove the user from the pg_shadow table
478478
*/
479479
sprintf(sql,"delete from %s where usename = '%s'",ShadowRelationName,user);
480-
pg_exec_query(sql, (char**)NULL, (Oid*)NULL,0);
480+
pg_exec_query(sql);
481481

482482
UpdatePgPwdFile(sql);
483483

‎src/backend/libpq/be-pqexec.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
*
99
*
1010
* IDENTIFICATION
11-
* $Header: /cvsroot/pgsql/src/backend/libpq/Attic/be-pqexec.c,v 1.15 1998/02/26 04:31:45 momjian Exp $
11+
* $Header: /cvsroot/pgsql/src/backend/libpq/Attic/be-pqexec.c,v 1.16 1998/06/04 17:26:39 momjian Exp $
1212
*
1313
*-------------------------------------------------------------------------
1414
*/
@@ -147,7 +147,7 @@ PQexec(char *query)
147147
*end up on the top of the portal stack.
148148
* ----------------
149149
*/
150-
pg_exec_query_dest(query,(char**)NULL, (Oid*)NULL,0,Local);
150+
pg_exec_query_dest(query,Local);
151151

152152
/* ----------------
153153
*pop the portal off the portal stack and return the

‎src/backend/main/main.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
*
88
*
99
* IDENTIFICATION
10-
* $Header: /cvsroot/pgsql/src/backend/main/main.c,v 1.19 1998/05/12 21:43:59 momjian Exp $
10+
* $Header: /cvsroot/pgsql/src/backend/main/main.c,v 1.20 1998/06/04 17:26:40 momjian Exp $
1111
*
1212
*-------------------------------------------------------------------------
1313
*/
@@ -102,5 +102,5 @@ main(int argc, char *argv[])
102102
exit(BootstrapMain(argc-1,argv+1));/* remove the -boot arg
103103
* from the command line */
104104
else
105-
exit(PostgresMain(argc,argv));
105+
exit(PostgresMain(argc,argv,argc,argv));
106106
}

‎src/backend/postmaster/postmaster.c

Lines changed: 38 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
*
1111
*
1212
* IDENTIFICATION
13-
* $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.79 1998/05/29 17:10:07 momjian Exp $
13+
* $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.80 1998/06/04 17:26:41 momjian Exp $
1414
*
1515
* NOTES
1616
*
@@ -157,7 +157,8 @@ static IpcMemoryKey ipc_key;
157157

158158
staticintNextBackendId=MAXINT;/* XXX why? */
159159
staticchar*progname= (char*)NULL;
160-
staticchar**argv_name;
160+
staticchar**real_argv;
161+
staticintreal_argc;
161162

162163
/*
163164
* Default Values
@@ -296,10 +297,38 @@ PostmasterMain(int argc, char *argv[])
296297
intsilentflag=0;
297298
boolDataDirOK;/* We have a usable PGDATA value */
298299
charhostbuf[MAXHOSTNAMELEN];
299-
300-
progname=argv[0];
301-
argv_name=&argv[0];
300+
intnonblank_argc;
302301

302+
/*
303+
*We need three params so we can display status. If we don't
304+
*get them from the user, let's make them ourselves.
305+
*/
306+
if (argc<4)
307+
{
308+
inti;
309+
char*new_argv[5];
310+
311+
for (i=0;i<argc;i++)
312+
new_argv[i]=argv[i];
313+
for (;i<4;i++)
314+
new_argv[i]="";
315+
new_argv[4]=NULL;
316+
execv(new_argv[0],new_argv);
317+
perror("");
318+
/* How did we get here, error! */
319+
fprintf(stderr,"PostmasterMain execv failed on %s\n",argv[0]);
320+
exit(1);
321+
}
322+
323+
progname=argv[0];
324+
real_argv=argv;
325+
real_argc=argc;
326+
327+
/* don't process any dummy args we placed at the end for status display */
328+
for (nonblank_argc=argc;argc>0;nonblank_argc--)
329+
if (argv[argc-1]!=NULL&&argv[argc-1][0]!='\0')
330+
break;
331+
303332
/*
304333
* for security, no dir or file created can be group or other
305334
* accessible
@@ -316,7 +345,7 @@ PostmasterMain(int argc, char *argv[])
316345
DataDir=getenv("PGDATA");/* default value */
317346

318347
opterr=0;
319-
while ((opt=getopt(argc,argv,"a:B:b:D:dim:Mno:p:Ss"))!=EOF)
348+
while ((opt=getopt(nonblank_argc,argv,"a:B:b:D:dim:Mno:p:Ss"))!=EOF)
320349
{
321350
switch (opt)
322351
{
@@ -355,7 +384,7 @@ PostmasterMain(int argc, char *argv[])
355384
* Turn on debugging for the postmaster and the backend
356385
* servers descended from it.
357386
*/
358-
if ((optind<argc)&&*argv[optind]!='-')
387+
if ((optind<nonblank_argc)&&*argv[optind]!='-')
359388
{
360389
DebugLvl=atoi(argv[optind]);
361390
optind++;
@@ -1195,7 +1224,7 @@ DoBackend(Port *port)
11951224
*a big win.
11961225
*/
11971226

1198-
*argv_name=Execfile;
1227+
real_argv[0]=Execfile;
11991228

12001229
/* Tell the backend it is being called from the postmaster */
12011230
av[ac++]="-p";
@@ -1252,7 +1281,7 @@ DoBackend(Port *port)
12521281
fprintf(stderr,")\n");
12531282
}
12541283

1255-
return(PostgresMain(ac,av));
1284+
return(PostgresMain(ac,av,real_argc,real_argv));
12561285
}
12571286

12581287
/*

‎src/backend/rewrite/rewriteDefine.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
*
88
*
99
* IDENTIFICATION
10-
* $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteDefine.c,v 1.14 1998/01/13 04:04:12 scrappy Exp $
10+
* $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteDefine.c,v 1.15 1998/06/04 17:26:44 momjian Exp $
1111
*
1212
*-------------------------------------------------------------------------
1313
*/
@@ -135,7 +135,7 @@ InsertRule(char *rulname,
135135
rulname,evtype,eventrel_oid,evslot_index,actionbuf,
136136
qualbuf,is_instead);
137137

138-
pg_exec_query(rulebuf, (char**)NULL, (Oid*)NULL,0);
138+
pg_exec_query(rulebuf);
139139

140140
return (LastOidProcessed);
141141
}

‎src/backend/tcop/postgres.c

Lines changed: 31 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
*
88
*
99
* IDENTIFICATION
10-
* $Header: /cvsroot/pgsql/src/backend/tcop/postgres.c,v 1.72 1998/05/29 17:00:15 momjian Exp $
10+
* $Header: /cvsroot/pgsql/src/backend/tcop/postgres.c,v 1.73 1998/06/04 17:26:45 momjian Exp $
1111
*
1212
* NOTES
1313
* this is the "main" module of the postgres backend and
@@ -94,6 +94,7 @@ static bool DebugPrintRewrittenParsetree = false;
9494

9595
/*static boolEnableRewrite = true; , never changes why have it*/
9696
CommandDestwhereToSendOutput;
97+
constchar**ps_status;/* this is our 'ps' status, argv[3] */
9798

9899
#ifdefLOCK_MGR_DEBUG
99100
externintlockDebug;
@@ -594,16 +595,13 @@ pg_parse_and_plan(char *query_string,/* string to execute */
594595
*/
595596

596597
void
597-
pg_exec_query(char*query_string,char**argv,Oid*typev,intnargs)
598+
pg_exec_query(char*query_string)
598599
{
599-
pg_exec_query_dest(query_string,argv,typev,nargs,whereToSendOutput);
600+
pg_exec_query_dest(query_string,whereToSendOutput);
600601
}
601602

602603
void
603604
pg_exec_query_dest(char*query_string,/* string to execute */
604-
char**argv,/* arguments */
605-
Oid*typev,/* argument types */
606-
intnargs,/* number of arguments */
607605
CommandDestdest)/* where results should go */
608606
{
609607
List*plan_list;
@@ -614,7 +612,7 @@ pg_exec_query_dest(char *query_string,/* string to execute */
614612
QueryTreeList*querytree_list;
615613

616614
/* plan the queries */
617-
plan_list=pg_parse_and_plan(query_string,typev,nargs,&querytree_list,dest);
615+
plan_list=pg_parse_and_plan(query_string,NULL,0,&querytree_list,dest);
618616

619617
if (QueryCancel)
620618
CancelQuery();
@@ -697,7 +695,7 @@ pg_exec_query_dest(char *query_string,/* string to execute */
697695
time(&tim);
698696
printf("\tProcessQuery() at %s\n",ctime(&tim));
699697
}
700-
ProcessQuery(querytree,plan,argv,typev,nargs,dest);
698+
ProcessQuery(querytree,plan,dest);
701699
}
702700

703701
if (ShowExecutorStats)
@@ -827,7 +825,7 @@ usage(char *progname)
827825
* ----------------------------------------------------------------
828826
*/
829827
int
830-
PostgresMain(intargc,char*argv[])
828+
PostgresMain(intargc,char*argv[],intreal_argc,char*real_argv[])
831829
{
832830
boolflagC= false,
833831
flagQ= false,
@@ -1230,6 +1228,25 @@ PostgresMain(int argc, char *argv[])
12301228
puts("\t----------------\n");
12311229
}
12321230

1231+
/* ----------------
1232+
*set process params for ps
1233+
* ----------------
1234+
*/
1235+
if (IsUnderPostmaster)
1236+
{
1237+
inti;
1238+
1239+
Assert(real_argc >=4);
1240+
real_argv[1]=userName;
1241+
real_argv[2]=DBName;
1242+
ps_status= (constchar**)&real_argv[3];
1243+
*ps_status="idle";
1244+
for (i=4;i<real_argc;i++)
1245+
real_argv[i]="";/* blank them */
1246+
}
1247+
/* we just put a dummy here so we don't have to test everywhere */
1248+
elseps_status=malloc(sizeof(char*));
1249+
12331250
/* ----------------
12341251
*initialize portal file descriptors
12351252
* ----------------
@@ -1297,7 +1314,7 @@ PostgresMain(int argc, char *argv[])
12971314
if (!IsUnderPostmaster)
12981315
{
12991316
puts("\nPOSTGRES backend interactive interface");
1300-
puts("$Revision: 1.72 $ $Date: 1998/05/29 17:00:15 $");
1317+
puts("$Revision: 1.73 $ $Date: 1998/06/04 17:26:45 $");
13011318
}
13021319

13031320
/* ----------------
@@ -1347,6 +1364,7 @@ PostgresMain(int argc, char *argv[])
13471364

13481365
StartTransactionCommand();
13491366
HandleFunctionRequest();
1367+
*ps_status="idle";
13501368
break;
13511369

13521370
/* ----------------
@@ -1383,7 +1401,9 @@ PostgresMain(int argc, char *argv[])
13831401
}
13841402
StartTransactionCommand();
13851403

1386-
pg_exec_query(parser_input, (char**)NULL, (Oid*)NULL,0);
1404+
pg_exec_query(parser_input);
1405+
1406+
*ps_status="idle";
13871407

13881408
if (ShowStats)
13891409
ShowUsage();

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp