Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Gpdb
提交
a576a60e
G
Gpdb
项目概览
Greenplum
/
Gpdb
通知
7
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Gpdb
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
a576a60e
编写于
6月 04, 1998
作者:
B
Bruce Momjian
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Show backend status on ps command line. Remove unused args from
pg_exec_query().
上级
99d21d5b
变更
12
隐藏空白更改
内联
并排
Showing
12 changed file
with
141 addition
and
92 deletion
+141
-92
src/backend/commands/_deadcode/version.c
src/backend/commands/_deadcode/version.c
+3
-3
src/backend/commands/dbcommands.c
src/backend/commands/dbcommands.c
+3
-3
src/backend/commands/user.c
src/backend/commands/user.c
+5
-5
src/backend/libpq/be-pqexec.c
src/backend/libpq/be-pqexec.c
+2
-2
src/backend/main/main.c
src/backend/main/main.c
+2
-2
src/backend/postmaster/postmaster.c
src/backend/postmaster/postmaster.c
+38
-9
src/backend/rewrite/rewriteDefine.c
src/backend/rewrite/rewriteDefine.c
+2
-2
src/backend/tcop/postgres.c
src/backend/tcop/postgres.c
+31
-11
src/backend/tcop/pquery.c
src/backend/tcop/pquery.c
+4
-5
src/backend/tcop/utility.c
src/backend/tcop/utility.c
+44
-42
src/include/tcop/pquery.h
src/include/tcop/pquery.h
+2
-3
src/include/tcop/tcopprot.h
src/include/tcop/tcopprot.h
+5
-5
未找到文件。
src/backend/commands/_deadcode/version.c
浏览文件 @
a576a60e
...
...
@@ -10,7 +10,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/commands/_deadcode/Attic/version.c,v 1.1
1 1998/01/05 16:39:07
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/commands/_deadcode/Attic/version.c,v 1.1
2 1998/06/04 17:26:38
momjian Exp $
*
* NOTES
* At the point the version is defined, 2 physical relations are created
...
...
@@ -95,7 +95,7 @@ eval_as_new_xact(char *query)
* CommitTransactionCommand(); StartTransactionCommand();
*/
CommandCounterIncrement
();
pg_exec_query
(
query
,
(
char
**
)
NULL
,
(
Oid
*
)
NULL
,
0
);
pg_exec_query
(
query
);
}
#endif
...
...
@@ -157,7 +157,7 @@ VersionCreate(char *vname, char *bname)
sprintf
(
query_buf
,
"SELECT * INTO TABLE %s from %s where 1 =2"
,
vname
,
bname
);
pg_exec_query
(
query_buf
,
(
char
**
)
NULL
,
(
Oid
*
)
NULL
,
0
);
pg_exec_query
(
query_buf
);
/*
* Creating the ``v_added'' relation
...
...
src/backend/commands/dbcommands.c
浏览文件 @
a576a60e
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.1
3 1998/04/27 04:05:11
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/commands/dbcommands.c,v 1.1
4 1998/06/04 17:26:38
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -95,7 +95,7 @@ createdb(char *dbname, char *dbpath)
sprintf
(
buf
,
"insert into pg_database (datname, datdba, datpath)"
" values (
\'
%s
\'
,
\'
%d
\'
,
\'
%s
\'
);"
,
dbname
,
user_id
,
loc
);
pg_exec_query
(
buf
,
(
char
**
)
NULL
,
(
Oid
*
)
NULL
,
0
);
pg_exec_query
(
buf
);
}
void
...
...
@@ -133,7 +133,7 @@ destroydb(char *dbname)
*/
sprintf
(
buf
,
"delete from pg_database where pg_database.oid =
\'
%d
\'
::oid"
,
db_id
);
pg_exec_query
(
buf
,
(
char
**
)
NULL
,
(
Oid
*
)
NULL
,
0
);
pg_exec_query
(
buf
);
/*
* remove the data directory. If the DELETE above failed, this will
...
...
src/backend/commands/user.c
浏览文件 @
a576a60e
...
...
@@ -65,7 +65,7 @@ UpdatePgPwdFile(char *sql)
* file to its final name.
*/
sprintf
(
sql
,
"copy %s to '%s' using delimiters %s"
,
ShadowRelationName
,
tempname
,
CRYPT_PWD_FILE_SEPCHAR
);
pg_exec_query
(
sql
,
(
char
**
)
NULL
,
(
Oid
*
)
NULL
,
0
);
pg_exec_query
(
sql
);
rename
(
tempname
,
filename
);
free
((
void
*
)
tempname
);
...
...
@@ -196,7 +196,7 @@ DefineUser(CreateUserStmt *stmt)
}
strcat
(
sql_end
,
")"
);
pg_exec_query
(
sql
,
(
char
**
)
NULL
,
(
Oid
*
)
NULL
,
0
);
pg_exec_query
(
sql
);
/*
* Add the stuff here for groups.
...
...
@@ -328,7 +328,7 @@ AlterUser(AlterUserStmt *stmt)
{
sql_end
+=
strlen
(
sql_end
);
sprintf
(
sql_end
,
" where usename = '%s'"
,
stmt
->
user
);
pg_exec_query
(
sql
,
(
char
**
)
NULL
,
(
Oid
*
)
NULL
,
0
);
pg_exec_query
(
sql
);
}
/* do the pg_group stuff here */
...
...
@@ -450,7 +450,7 @@ RemoveUser(char *user)
elog
(
NOTICE
,
"Dropping database %s"
,
dbase
[
ndbase
]);
sprintf
(
sql
,
"drop database %s"
,
dbase
[
ndbase
]);
free
((
void
*
)
dbase
[
ndbase
]);
pg_exec_query
(
sql
,
(
char
**
)
NULL
,
(
Oid
*
)
NULL
,
0
);
pg_exec_query
(
sql
);
}
if
(
dbase
)
free
((
void
*
)
dbase
);
...
...
@@ -477,7 +477,7 @@ RemoveUser(char *user)
* Remove the user from the pg_shadow table
*/
sprintf
(
sql
,
"delete from %s where usename = '%s'"
,
ShadowRelationName
,
user
);
pg_exec_query
(
sql
,
(
char
**
)
NULL
,
(
Oid
*
)
NULL
,
0
);
pg_exec_query
(
sql
);
UpdatePgPwdFile
(
sql
);
...
...
src/backend/libpq/be-pqexec.c
浏览文件 @
a576a60e
...
...
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/libpq/Attic/be-pqexec.c,v 1.1
5 1998/02/26 04:31:45
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/libpq/Attic/be-pqexec.c,v 1.1
6 1998/06/04 17:26:39
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -147,7 +147,7 @@ PQexec(char *query)
* end up on the top of the portal stack.
* ----------------
*/
pg_exec_query_dest
(
query
,
(
char
**
)
NULL
,
(
Oid
*
)
NULL
,
0
,
Local
);
pg_exec_query_dest
(
query
,
Local
);
/* ----------------
* pop the portal off the portal stack and return the
...
...
src/backend/main/main.c
浏览文件 @
a576a60e
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/main/main.c,v 1.
19 1998/05/12 21:43:59
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/main/main.c,v 1.
20 1998/06/04 17:26:40
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -102,5 +102,5 @@ main(int argc, char *argv[])
exit
(
BootstrapMain
(
argc
-
1
,
argv
+
1
));
/* remove the -boot arg
* from the command line */
else
exit
(
PostgresMain
(
argc
,
argv
));
exit
(
PostgresMain
(
argc
,
argv
,
argc
,
argv
));
}
src/backend/postmaster/postmaster.c
浏览文件 @
a576a60e
...
...
@@ -10,7 +10,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.
79 1998/05/29 17:10:07
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.
80 1998/06/04 17:26:41
momjian Exp $
*
* NOTES
*
...
...
@@ -157,7 +157,8 @@ static IpcMemoryKey ipc_key;
static
int
NextBackendId
=
MAXINT
;
/* XXX why? */
static
char
*
progname
=
(
char
*
)
NULL
;
static
char
**
argv_name
;
static
char
**
real_argv
;
static
int
real_argc
;
/*
* Default Values
...
...
@@ -296,10 +297,38 @@ PostmasterMain(int argc, char *argv[])
int
silentflag
=
0
;
bool
DataDirOK
;
/* We have a usable PGDATA value */
char
hostbuf
[
MAXHOSTNAMELEN
];
progname
=
argv
[
0
];
argv_name
=
&
argv
[
0
];
int
nonblank_argc
;
/*
* We need three params so we can display status. If we don't
* get them from the user, let's make them ourselves.
*/
if
(
argc
<
4
)
{
int
i
;
char
*
new_argv
[
5
];
for
(
i
=
0
;
i
<
argc
;
i
++
)
new_argv
[
i
]
=
argv
[
i
];
for
(;
i
<
4
;
i
++
)
new_argv
[
i
]
=
""
;
new_argv
[
4
]
=
NULL
;
execv
(
new_argv
[
0
],
new_argv
);
perror
(
""
);
/* How did we get here, error! */
fprintf
(
stderr
,
"PostmasterMain execv failed on %s
\n
"
,
argv
[
0
]);
exit
(
1
);
}
progname
=
argv
[
0
];
real_argv
=
argv
;
real_argc
=
argc
;
/* don't process any dummy args we placed at the end for status display */
for
(
nonblank_argc
=
argc
;
argc
>
0
;
nonblank_argc
--
)
if
(
argv
[
argc
-
1
]
!=
NULL
&&
argv
[
argc
-
1
][
0
]
!=
'\0'
)
break
;
/*
* for security, no dir or file created can be group or other
* accessible
...
...
@@ -316,7 +345,7 @@ PostmasterMain(int argc, char *argv[])
DataDir
=
getenv
(
"PGDATA"
);
/* default value */
opterr
=
0
;
while
((
opt
=
getopt
(
argc
,
argv
,
"a:B:b:D:dim:Mno:p:Ss"
))
!=
EOF
)
while
((
opt
=
getopt
(
nonblank_
argc
,
argv
,
"a:B:b:D:dim:Mno:p:Ss"
))
!=
EOF
)
{
switch
(
opt
)
{
...
...
@@ -355,7 +384,7 @@ PostmasterMain(int argc, char *argv[])
* Turn on debugging for the postmaster and the backend
* servers descended from it.
*/
if
((
optind
<
argc
)
&&
*
argv
[
optind
]
!=
'-'
)
if
((
optind
<
nonblank_
argc
)
&&
*
argv
[
optind
]
!=
'-'
)
{
DebugLvl
=
atoi
(
argv
[
optind
]);
optind
++
;
...
...
@@ -1195,7 +1224,7 @@ DoBackend(Port *port)
* a big win.
*/
*
argv_name
=
Execfile
;
real_argv
[
0
]
=
Execfile
;
/* Tell the backend it is being called from the postmaster */
av
[
ac
++
]
=
"-p"
;
...
...
@@ -1252,7 +1281,7 @@ DoBackend(Port *port)
fprintf
(
stderr
,
")
\n
"
);
}
return
(
PostgresMain
(
ac
,
av
));
return
(
PostgresMain
(
ac
,
av
,
real_argc
,
real_argv
));
}
/*
...
...
src/backend/rewrite/rewriteDefine.c
浏览文件 @
a576a60e
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteDefine.c,v 1.1
4 1998/01/13 04:04:12 scrappy
Exp $
* $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteDefine.c,v 1.1
5 1998/06/04 17:26:44 momjian
Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -135,7 +135,7 @@ InsertRule(char *rulname,
rulname
,
evtype
,
eventrel_oid
,
evslot_index
,
actionbuf
,
qualbuf
,
is_instead
);
pg_exec_query
(
rulebuf
,
(
char
**
)
NULL
,
(
Oid
*
)
NULL
,
0
);
pg_exec_query
(
rulebuf
);
return
(
LastOidProcessed
);
}
...
...
src/backend/tcop/postgres.c
浏览文件 @
a576a60e
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/tcop/postgres.c,v 1.7
2 1998/05/29 17:00:1
5 momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/tcop/postgres.c,v 1.7
3 1998/06/04 17:26:4
5 momjian Exp $
*
* NOTES
* this is the "main" module of the postgres backend and
...
...
@@ -94,6 +94,7 @@ static bool DebugPrintRewrittenParsetree = false;
/*static bool EnableRewrite = true; , never changes why have it*/
CommandDest
whereToSendOutput
;
const
char
**
ps_status
;
/* this is our 'ps' status, argv[3] */
#ifdef LOCK_MGR_DEBUG
extern
int
lockDebug
;
...
...
@@ -594,16 +595,13 @@ pg_parse_and_plan(char *query_string, /* string to execute */
*/
void
pg_exec_query
(
char
*
query_string
,
char
**
argv
,
Oid
*
typev
,
int
nargs
)
pg_exec_query
(
char
*
query_string
)
{
pg_exec_query_dest
(
query_string
,
argv
,
typev
,
nargs
,
whereToSendOutput
);
pg_exec_query_dest
(
query_string
,
whereToSendOutput
);
}
void
pg_exec_query_dest
(
char
*
query_string
,
/* string to execute */
char
**
argv
,
/* arguments */
Oid
*
typev
,
/* argument types */
int
nargs
,
/* number of arguments */
CommandDest
dest
)
/* where results should go */
{
List
*
plan_list
;
...
...
@@ -614,7 +612,7 @@ pg_exec_query_dest(char *query_string, /* string to execute */
QueryTreeList
*
querytree_list
;
/* plan the queries */
plan_list
=
pg_parse_and_plan
(
query_string
,
typev
,
nargs
,
&
querytree_list
,
dest
);
plan_list
=
pg_parse_and_plan
(
query_string
,
NULL
,
0
,
&
querytree_list
,
dest
);
if
(
QueryCancel
)
CancelQuery
();
...
...
@@ -697,7 +695,7 @@ pg_exec_query_dest(char *query_string, /* string to execute */
time
(
&
tim
);
printf
(
"
\t
ProcessQuery() at %s
\n
"
,
ctime
(
&
tim
));
}
ProcessQuery
(
querytree
,
plan
,
argv
,
typev
,
nargs
,
dest
);
ProcessQuery
(
querytree
,
plan
,
dest
);
}
if
(
ShowExecutorStats
)
...
...
@@ -827,7 +825,7 @@ usage(char *progname)
* ----------------------------------------------------------------
*/
int
PostgresMain
(
int
argc
,
char
*
argv
[])
PostgresMain
(
int
argc
,
char
*
argv
[]
,
int
real_argc
,
char
*
real_argv
[]
)
{
bool
flagC
=
false
,
flagQ
=
false
,
...
...
@@ -1230,6 +1228,25 @@ PostgresMain(int argc, char *argv[])
puts
(
"
\t
----------------
\n
"
);
}
/* ----------------
* set process params for ps
* ----------------
*/
if
(
IsUnderPostmaster
)
{
int
i
;
Assert
(
real_argc
>=
4
);
real_argv
[
1
]
=
userName
;
real_argv
[
2
]
=
DBName
;
ps_status
=
(
const
char
**
)
&
real_argv
[
3
];
*
ps_status
=
"idle"
;
for
(
i
=
4
;
i
<
real_argc
;
i
++
)
real_argv
[
i
]
=
""
;
/* blank them */
}
/* we just put a dummy here so we don't have to test everywhere */
else
ps_status
=
malloc
(
sizeof
(
char
*
));
/* ----------------
* initialize portal file descriptors
* ----------------
...
...
@@ -1297,7 +1314,7 @@ PostgresMain(int argc, char *argv[])
if
(
!
IsUnderPostmaster
)
{
puts
(
"
\n
POSTGRES backend interactive interface"
);
puts
(
"$Revision: 1.7
2 $ $Date: 1998/05/29 17:00:1
5 $"
);
puts
(
"$Revision: 1.7
3 $ $Date: 1998/06/04 17:26:4
5 $"
);
}
/* ----------------
...
...
@@ -1347,6 +1364,7 @@ PostgresMain(int argc, char *argv[])
StartTransactionCommand
();
HandleFunctionRequest
();
*
ps_status
=
"idle"
;
break
;
/* ----------------
...
...
@@ -1383,7 +1401,9 @@ PostgresMain(int argc, char *argv[])
}
StartTransactionCommand
();
pg_exec_query
(
parser_input
,
(
char
**
)
NULL
,
(
Oid
*
)
NULL
,
0
);
pg_exec_query
(
parser_input
);
*
ps_status
=
"idle"
;
if
(
ShowStats
)
ShowUsage
();
...
...
src/backend/tcop/pquery.c
浏览文件 @
a576a60e
...
...
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/tcop/pquery.c,v 1.1
5 1998/02/26 04:36:32
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/tcop/pquery.c,v 1.1
6 1998/06/04 17:26:47
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -41,6 +41,8 @@
static
char
*
CreateOperationTag
(
int
operationType
);
static
void
ProcessQueryDesc
(
QueryDesc
*
queryDesc
);
extern
const
char
**
ps_status
;
/* from postgres.c */
/* ----------------------------------------------------------------
* CreateQueryDesc
...
...
@@ -226,7 +228,7 @@ ProcessQueryDesc(QueryDesc *queryDesc)
plan
=
queryDesc
->
plantree
;
operation
=
queryDesc
->
operation
;
tag
=
CreateOperationTag
(
operation
);
*
ps_status
=
tag
=
CreateOperationTag
(
operation
);
dest
=
queryDesc
->
dest
;
/* ----------------
...
...
@@ -358,9 +360,6 @@ ProcessQueryDesc(QueryDesc *queryDesc)
void
ProcessQuery
(
Query
*
parsetree
,
Plan
*
plan
,
char
*
argv
[],
Oid
*
typev
,
int
nargs
,
CommandDest
dest
)
{
QueryDesc
*
queryDesc
;
...
...
src/backend/tcop/utility.c
浏览文件 @
a576a60e
...
...
@@ -9,7 +9,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/tcop/utility.c,v 1.3
8 1998/02/26 04:36:36
momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/tcop/utility.c,v 1.3
9 1998/06/04 17:26:48
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -60,6 +60,8 @@ void DefineUser(CreateUserStmt *stmt);
void
AlterUser
(
AlterUserStmt
*
stmt
);
void
RemoveUser
(
char
*
username
);
extern
const
char
**
ps_status
;
/* from postgres.c */
/* ----------------
* CHECK_IF_ABORTED() is used to avoid doing unnecessary
* processing within an aborted transaction block.
...
...
@@ -102,18 +104,18 @@ ProcessUtility(Node *parsetree,
switch
(
stmt
->
command
)
{
case
BEGIN_TRANS
:
commandTag
=
"BEGIN"
;
*
ps_status
=
commandTag
=
"BEGIN"
;
CHECK_IF_ABORTED
();
BeginTransactionBlock
();
break
;
case
END_TRANS
:
commandTag
=
"END"
;
*
ps_status
=
commandTag
=
"END"
;
EndTransactionBlock
();
break
;
case
ABORT_TRANS
:
commandTag
=
"ABORT"
;
*
ps_status
=
commandTag
=
"ABORT"
;
UserAbortTransactionBlock
();
break
;
}
...
...
@@ -128,7 +130,7 @@ ProcessUtility(Node *parsetree,
{
ClosePortalStmt
*
stmt
=
(
ClosePortalStmt
*
)
parsetree
;
commandTag
=
"CLOSE"
;
*
ps_status
=
commandTag
=
"CLOSE"
;
CHECK_IF_ABORTED
();
PerformPortalClose
(
stmt
->
portalname
,
dest
);
...
...
@@ -142,7 +144,7 @@ ProcessUtility(Node *parsetree,
bool
forward
;
int
count
;
commandTag
=
(
stmt
->
ismove
)
?
"MOVE"
:
"FETCH"
;
*
ps_status
=
commandTag
=
(
stmt
->
ismove
)
?
"MOVE"
:
"FETCH"
;
CHECK_IF_ABORTED
();
forward
=
(
bool
)
(
stmt
->
direction
==
FORWARD
);
...
...
@@ -163,7 +165,7 @@ ProcessUtility(Node *parsetree,
*
*/
case
T_CreateStmt
:
commandTag
=
"CREATE"
;
*
ps_status
=
commandTag
=
"CREATE"
;
CHECK_IF_ABORTED
();
DefineRelation
((
CreateStmt
*
)
parsetree
);
...
...
@@ -176,7 +178,7 @@ ProcessUtility(Node *parsetree,
List
*
args
=
stmt
->
relNames
;
Relation
rel
;
commandTag
=
"DROP"
;
*
ps_status
=
commandTag
=
"DROP"
;
CHECK_IF_ABORTED
();
foreach
(
arg
,
args
)
...
...
@@ -216,7 +218,7 @@ ProcessUtility(Node *parsetree,
{
CopyStmt
*
stmt
=
(
CopyStmt
*
)
parsetree
;
commandTag
=
"COPY"
;
*
ps_status
=
commandTag
=
"COPY"
;
CHECK_IF_ABORTED
();
DoCopy
(
stmt
->
relname
,
...
...
@@ -238,7 +240,7 @@ ProcessUtility(Node *parsetree,
{
AddAttrStmt
*
stmt
=
(
AddAttrStmt
*
)
parsetree
;
commandTag
=
"ADD"
;
*
ps_status
=
commandTag
=
"ADD"
;
CHECK_IF_ABORTED
();
/*
...
...
@@ -259,7 +261,7 @@ ProcessUtility(Node *parsetree,
{
RenameStmt
*
stmt
=
(
RenameStmt
*
)
parsetree
;
commandTag
=
"RENAME"
;
*
ps_status
=
commandTag
=
"RENAME"
;
CHECK_IF_ABORTED
();
relname
=
stmt
->
relname
;
...
...
@@ -317,7 +319,7 @@ ProcessUtility(Node *parsetree,
AclItem
*
aip
;
unsigned
modechg
;
commandTag
=
"CHANGE"
;
*
ps_status
=
commandTag
=
"CHANGE"
;
CHECK_IF_ABORTED
();
aip
=
stmt
->
aclitem
;
...
...
@@ -350,7 +352,7 @@ ProcessUtility(Node *parsetree,
{
DefineStmt
*
stmt
=
(
DefineStmt
*
)
parsetree
;
commandTag
=
"CREATE"
;
*
ps_status
=
commandTag
=
"CREATE"
;
CHECK_IF_ABORTED
();
switch
(
stmt
->
defType
)
...
...
@@ -376,14 +378,14 @@ ProcessUtility(Node *parsetree,
{
ViewStmt
*
stmt
=
(
ViewStmt
*
)
parsetree
;
commandTag
=
"CREATE"
;
*
ps_status
=
commandTag
=
"CREATE"
;
CHECK_IF_ABORTED
();
DefineView
(
stmt
->
viewname
,
stmt
->
query
);
/* retrieve parsetree */
}
break
;
case
T_ProcedureStmt
:
/* CREATE FUNCTION */
commandTag
=
"CREATE"
;
*
ps_status
=
commandTag
=
"CREATE"
;
CHECK_IF_ABORTED
();
CreateFunction
((
ProcedureStmt
*
)
parsetree
,
dest
);
/* everything */
break
;
...
...
@@ -392,7 +394,7 @@ ProcessUtility(Node *parsetree,
{
IndexStmt
*
stmt
=
(
IndexStmt
*
)
parsetree
;
commandTag
=
"CREATE"
;
*
ps_status
=
commandTag
=
"CREATE"
;
CHECK_IF_ABORTED
();
DefineIndex
(
stmt
->
relname
,
/* relation name */
stmt
->
idxname
,
/* index name */
...
...
@@ -416,14 +418,14 @@ ProcessUtility(Node *parsetree,
if
(
aclcheck_result
!=
ACLCHECK_OK
)
elog
(
ERROR
,
"%s: %s"
,
relname
,
aclcheck_error_strings
[
aclcheck_result
]);
#endif
commandTag
=
"CREATE"
;
*
ps_status
=
commandTag
=
"CREATE"
;
CHECK_IF_ABORTED
();
DefineQueryRewrite
(
stmt
);
}
break
;
case
T_CreateSeqStmt
:
commandTag
=
"CREATE"
;
*
ps_status
=
commandTag
=
"CREATE"
;
CHECK_IF_ABORTED
();
DefineSequence
((
CreateSeqStmt
*
)
parsetree
);
...
...
@@ -433,7 +435,7 @@ ProcessUtility(Node *parsetree,
{
ExtendStmt
*
stmt
=
(
ExtendStmt
*
)
parsetree
;
commandTag
=
"EXTEND"
;
*
ps_status
=
commandTag
=
"EXTEND"
;
CHECK_IF_ABORTED
();
ExtendIndex
(
stmt
->
idxname
,
/* index name */
...
...
@@ -446,7 +448,7 @@ ProcessUtility(Node *parsetree,
{
RemoveStmt
*
stmt
=
(
RemoveStmt
*
)
parsetree
;
commandTag
=
"DROP"
;
*
ps_status
=
commandTag
=
"DROP"
;
CHECK_IF_ABORTED
();
switch
(
stmt
->
removeType
)
...
...
@@ -510,7 +512,7 @@ ProcessUtility(Node *parsetree,
{
RemoveAggrStmt
*
stmt
=
(
RemoveAggrStmt
*
)
parsetree
;
commandTag
=
"DROP"
;
*
ps_status
=
commandTag
=
"DROP"
;
CHECK_IF_ABORTED
();
RemoveAggregate
(
stmt
->
aggname
,
stmt
->
aggtype
);
}
...
...
@@ -520,7 +522,7 @@ ProcessUtility(Node *parsetree,
{
RemoveFuncStmt
*
stmt
=
(
RemoveFuncStmt
*
)
parsetree
;
commandTag
=
"DROP"
;
*
ps_status
=
commandTag
=
"DROP"
;
CHECK_IF_ABORTED
();
RemoveFunction
(
stmt
->
funcname
,
length
(
stmt
->
args
),
...
...
@@ -534,7 +536,7 @@ ProcessUtility(Node *parsetree,
char
*
type1
=
(
char
*
)
NULL
;
char
*
type2
=
(
char
*
)
NULL
;
commandTag
=
"DROP"
;
*
ps_status
=
commandTag
=
"DROP"
;
CHECK_IF_ABORTED
();
if
(
lfirst
(
stmt
->
args
)
!=
NULL
)
...
...
@@ -555,7 +557,7 @@ ProcessUtility(Node *parsetree,
{
CreatedbStmt
*
stmt
=
(
CreatedbStmt
*
)
parsetree
;
commandTag
=
"CREATEDB"
;
*
ps_status
=
commandTag
=
"CREATEDB"
;
CHECK_IF_ABORTED
();
createdb
(
stmt
->
dbname
,
stmt
->
dbpath
);
}
...
...
@@ -565,7 +567,7 @@ ProcessUtility(Node *parsetree,
{
DestroydbStmt
*
stmt
=
(
DestroydbStmt
*
)
parsetree
;
commandTag
=
"DESTROYDB"
;
*
ps_status
=
commandTag
=
"DESTROYDB"
;
CHECK_IF_ABORTED
();
destroydb
(
stmt
->
dbname
);
}
...
...
@@ -576,7 +578,7 @@ ProcessUtility(Node *parsetree,
{
NotifyStmt
*
stmt
=
(
NotifyStmt
*
)
parsetree
;
commandTag
=
"NOTIFY"
;
*
ps_status
=
commandTag
=
"NOTIFY"
;
CHECK_IF_ABORTED
();
Async_Notify
(
stmt
->
relname
);
...
...
@@ -587,7 +589,7 @@ ProcessUtility(Node *parsetree,
{
ListenStmt
*
stmt
=
(
ListenStmt
*
)
parsetree
;
commandTag
=
"LISTEN"
;
*
ps_status
=
commandTag
=
"LISTEN"
;
CHECK_IF_ABORTED
();
Async_Listen
(
stmt
->
relname
,
MyProcPid
);
...
...
@@ -604,7 +606,7 @@ ProcessUtility(Node *parsetree,
FILE
*
fp
;
char
*
filename
;
commandTag
=
"LOAD"
;
*
ps_status
=
commandTag
=
"LOAD"
;
CHECK_IF_ABORTED
();
filename
=
stmt
->
filename
;
...
...
@@ -620,7 +622,7 @@ ProcessUtility(Node *parsetree,
{
ClusterStmt
*
stmt
=
(
ClusterStmt
*
)
parsetree
;
commandTag
=
"CLUSTER"
;
*
ps_status
=
commandTag
=
"CLUSTER"
;
CHECK_IF_ABORTED
();
cluster
(
stmt
->
relname
,
stmt
->
indexname
);
...
...
@@ -628,7 +630,7 @@ ProcessUtility(Node *parsetree,
break
;
case
T_VacuumStmt
:
commandTag
=
"VACUUM"
;
*
ps_status
=
commandTag
=
"VACUUM"
;
CHECK_IF_ABORTED
();
vacuum
(((
VacuumStmt
*
)
parsetree
)
->
vacrel
,
((
VacuumStmt
*
)
parsetree
)
->
verbose
,
...
...
@@ -640,7 +642,7 @@ ProcessUtility(Node *parsetree,
{
ExplainStmt
*
stmt
=
(
ExplainStmt
*
)
parsetree
;
commandTag
=
"EXPLAIN"
;
*
ps_status
=
commandTag
=
"EXPLAIN"
;
CHECK_IF_ABORTED
();
ExplainQuery
(
stmt
->
query
,
stmt
->
verbose
,
dest
);
...
...
@@ -654,7 +656,7 @@ ProcessUtility(Node *parsetree,
{
RecipeStmt
*
stmt
=
(
RecipeStmt
*
)
parsetree
;
commandTag
=
"EXECUTE RECIPE"
;
*
ps_status
=
commandTag
=
"EXECUTE RECIPE"
;
CHECK_IF_ABORTED
();
beginRecipe
(
stmt
);
}
...
...
@@ -668,7 +670,7 @@ ProcessUtility(Node *parsetree,
VariableSetStmt
*
n
=
(
VariableSetStmt
*
)
parsetree
;
SetPGVariable
(
n
->
name
,
n
->
value
);
commandTag
=
"SET VARIABLE"
;
*
ps_status
=
commandTag
=
"SET VARIABLE"
;
}
break
;
...
...
@@ -677,7 +679,7 @@ ProcessUtility(Node *parsetree,
VariableShowStmt
*
n
=
(
VariableShowStmt
*
)
parsetree
;
GetPGVariable
(
n
->
name
);
commandTag
=
"SHOW VARIABLE"
;
*
ps_status
=
commandTag
=
"SHOW VARIABLE"
;
}
break
;
...
...
@@ -686,7 +688,7 @@ ProcessUtility(Node *parsetree,
VariableResetStmt
*
n
=
(
VariableResetStmt
*
)
parsetree
;
ResetPGVariable
(
n
->
name
);
commandTag
=
"RESET VARIABLE"
;
*
ps_status
=
commandTag
=
"RESET VARIABLE"
;
}
break
;
...
...
@@ -694,14 +696,14 @@ ProcessUtility(Node *parsetree,
* ******************************** TRIGGER statements *******************************
*/
case
T_CreateTrigStmt
:
commandTag
=
"CREATE"
;
*
ps_status
=
commandTag
=
"CREATE"
;
CHECK_IF_ABORTED
();
CreateTrigger
((
CreateTrigStmt
*
)
parsetree
);
break
;
case
T_DropTrigStmt
:
commandTag
=
"DROP"
;
*
ps_status
=
commandTag
=
"DROP"
;
CHECK_IF_ABORTED
();
DropTrigger
((
DropTrigStmt
*
)
parsetree
);
...
...
@@ -711,14 +713,14 @@ ProcessUtility(Node *parsetree,
* ************* PROCEDURAL LANGUAGE statements *****************
*/
case
T_CreatePLangStmt
:
commandTag
=
"CREATE"
;
*
ps_status
=
commandTag
=
"CREATE"
;
CHECK_IF_ABORTED
();
CreateProceduralLanguage
((
CreatePLangStmt
*
)
parsetree
);
break
;
case
T_DropPLangStmt
:
commandTag
=
"DROP"
;
*
ps_status
=
commandTag
=
"DROP"
;
CHECK_IF_ABORTED
();
DropProceduralLanguage
((
DropPLangStmt
*
)
parsetree
);
...
...
@@ -729,21 +731,21 @@ ProcessUtility(Node *parsetree,
*
*/
case
T_CreateUserStmt
:
commandTag
=
"CREATE USER"
;
*
ps_status
=
commandTag
=
"CREATE USER"
;
CHECK_IF_ABORTED
();
DefineUser
((
CreateUserStmt
*
)
parsetree
);
break
;
case
T_AlterUserStmt
:
commandTag
=
"ALTER USER"
;
*
ps_status
=
commandTag
=
"ALTER USER"
;
CHECK_IF_ABORTED
();
AlterUser
((
AlterUserStmt
*
)
parsetree
);
break
;
case
T_DropUserStmt
:
commandTag
=
"DROP USER"
;
*
ps_status
=
commandTag
=
"DROP USER"
;
CHECK_IF_ABORTED
();
RemoveUser
(((
DropUserStmt
*
)
parsetree
)
->
user
);
...
...
src/include/tcop/pquery.h
浏览文件 @
a576a60e
...
...
@@ -6,7 +6,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
* $Id: pquery.h,v 1.
9 1998/02/26 04:43:40
momjian Exp $
* $Id: pquery.h,v 1.
10 1998/06/04 17:26:49
momjian Exp $
*
*-------------------------------------------------------------------------
*/
...
...
@@ -29,7 +29,6 @@ ProcessPortal(char *portalName, Query *parseTree,
CommandDest
dest
);
extern
void
ProcessQuery
(
Query
*
parsetree
,
Plan
*
plan
,
char
*
argv
[],
Oid
*
typev
,
int
nargs
,
CommandDest
dest
);
ProcessQuery
(
Query
*
parsetree
,
Plan
*
plan
,
CommandDest
dest
);
#endif
/* pqueryIncluded */
src/include/tcop/tcopprot.h
浏览文件 @
a576a60e
...
...
@@ -6,7 +6,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
* $Id: tcopprot.h,v 1.1
3 1998/05/29 17:00:28
momjian Exp $
* $Id: tcopprot.h,v 1.1
4 1998/06/04 17:26:49
momjian Exp $
*
* OLD COMMENTS
* This file was created so that other c files could get the two
...
...
@@ -25,10 +25,9 @@
extern
List
*
pg_parse_and_plan
(
char
*
query_string
,
Oid
*
typev
,
int
nargs
,
QueryTreeList
**
queryListP
,
CommandDest
dest
);
extern
void
pg_exec_query
(
char
*
query_string
,
char
**
argv
,
Oid
*
typev
,
int
nargs
);
extern
void
pg_exec_query
(
char
*
query_string
);
extern
void
pg_exec_query_dest
(
char
*
query_string
,
char
**
argv
,
Oid
*
typev
,
int
nargs
,
CommandDest
dest
);
pg_exec_query_dest
(
char
*
query_string
,
CommandDest
dest
);
#endif
/* BOOTSTRAP_HEADER */
...
...
@@ -37,7 +36,8 @@ extern void quickdie(SIGNAL_ARGS);
extern
void
die
(
SIGNAL_ARGS
);
extern
void
FloatExceptionHandler
(
SIGNAL_ARGS
);
extern
void
CancelQuery
(
void
);
extern
int
PostgresMain
(
int
argc
,
char
*
argv
[]);
extern
int
PostgresMain
(
int
argc
,
char
*
argv
[],
int
real_argc
,
char
*
real_argv
[]);
extern
void
ResetUsage
(
void
);
extern
void
ShowUsage
(
void
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录