Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Gpdb
提交
169051af
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,发现更多精彩内容 >>
提交
169051af
编写于
12月 06, 1999
作者:
T
Tatsuo Ishii
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix bugs regarding pid file.
上级
1891f0e9
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
30 addition
and
5 deletion
+30
-5
src/backend/postmaster/postmaster.c
src/backend/postmaster/postmaster.c
+30
-5
未找到文件。
src/backend/postmaster/postmaster.c
浏览文件 @
169051af
...
...
@@ -10,7 +10,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.1
29 1999/12/04 08:23:43
ishii Exp $
* $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.1
30 1999/12/06 07:21:12
ishii Exp $
*
* NOTES
*
...
...
@@ -250,6 +250,11 @@ static bool FatalError = false;
static
unsigned
int
random_seed
=
0
;
/*
* Path to pid file. Exitpostmaster() remember it to unlink the file.
*/
static
char
PidFile
[
MAXPGPATH
];
extern
char
*
optarg
;
extern
int
optind
,
opterr
;
...
...
@@ -277,7 +282,8 @@ static long PostmasterRandom(void);
static
void
RandomSalt
(
char
*
salt
);
static
void
SignalChildren
(
SIGNAL_ARGS
);
static
int
CountChildren
(
void
);
static
void
UnlinkPidFile
(
void
);
static
void
SetPidFname
(
char
*
datadir
);
static
int
SetPidFile
(
pid_t
pid
,
char
*
progname
,
int
port
,
char
*
datadir
,
int
assert
,
int
nbuf
,
char
*
execfile
,
int
debuglvl
,
int
netserver
,
...
...
@@ -748,6 +754,7 @@ pmdaemonize(char *extraoptions)
}
_exit
(
0
);
}
/* GH: If there's no setsid(), we hopefully don't need silent mode.
* Until there's a better solution.
*/
...
...
@@ -768,6 +775,12 @@ pmdaemonize(char *extraoptions)
dup2
(
i
,
1
);
dup2
(
i
,
2
);
close
(
i
);
/*
* register clean up proc
*/
SetPidFname
(
DataDir
);
on_proc_exit
(
UnlinkPidFile
,
NULL
);
}
static
void
...
...
@@ -2165,13 +2178,25 @@ SSDataBase(bool startup)
return
(
pid
);
}
static
char
PidFile
[
MAXPGPATH
];
/*
* Remove the pid file. This function is called from proc_exit.
*/
static
void
UnlinkPidFile
(
void
)
{
unlink
(
PidFile
);
}
/*
* Set path to the pid file
*/
static
void
SetPidFname
(
char
*
datadir
)
{
snprintf
(
PidFile
,
sizeof
(
PidFile
),
"%s/%s"
,
datadir
,
PIDFNAME
);
}
/*
* Create the pid file
*/
static
int
SetPidFile
(
pid_t
pid
,
char
*
progname
,
int
port
,
char
*
datadir
,
int
assert
,
int
nbuf
,
char
*
execfile
,
int
debuglvl
,
int
netserver
,
...
...
@@ -2192,7 +2217,7 @@ static int SetPidFile(pid_t pid, char *progname, int port, char *datadir,
/*
* Creating pid file
*/
snprintf
(
PidFile
,
sizeof
(
PidFile
),
"%s/%s"
,
datadir
,
PIDFNAME
);
SetPidFname
(
datadir
);
fd
=
open
(
PidFile
,
O_RDWR
|
O_CREAT
|
O_EXCL
,
0600
);
if
(
fd
<
0
)
{
/*
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录