这篇文章主要介绍“分析postgresql异常重启postmaster.pid处理”,在日常操作中,相信很多人在分析Postgresql异常重启postmaster.pid处理问题上存在疑惑,小编查阅了各式
这篇文章主要介绍“分析postgresql异常重启postmaster.pid处理”,在日常操作中,相信很多人在分析Postgresql异常重启postmaster.pid处理问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”分析PostgreSQL异常重启postmaster.pid处理”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
启动时pid文件即锁文件的处理,若异常宕机,导致pid文件残留,那么重启时会自动将这个文件删除吗?
main>PostmasterMain->CreateDataDirLockFile->CreateLockFile::
for (ntries = 0;; ntries++){
// O_EXCL若存在则返回失败,errno是17
fd = open(filename, O_RDWR | O_CREAT | O_EXCL, pg_file_create_mode);
if (fd >= 0)
break;
if ((errno != EEXIST && errno != EACCES) || ntries > 100)//重试100次
could not create lock file
fd = open(filename, O_RDONLY, pg_file_create_mode);
...
if ((len = read(fd, buffer, sizeof(buffer) - 1)) < 0)
...
close(fd);
//0表示检查进程是否存在。ESRCH:没有这个进程;EPERM:操作不允许
if (kill(other_pid, 0) == 0 ||(errno != ESRCH && errno != EPERM)){
lock file \"%s\" already exists
}
if (unlink(filename) < 0)//删除,然后循环再试创建
...
}
//此时创建成功
if (write(fd, buffer, strlen(buffer)) != strlen(buffer))//写入pid内容
...
if (pg_fsync(fd) != 0)
...
if (close(fd) != 0)
...
说明:
1)会以O_RDWR | O_CREAT | O_EXCL形式open,若存在的话会返回创建文件失败。
2)若创建失败则会重试100次
3)若文件已存在,则以只读的形式再次open并读取文件内容
4)解析出pid,并通过kill(pid,0)判断进程是否存在(注意,若有子进程残留也会判断出来)
5)若有进程不存在,则将这个文件删除,然后进行重试
6)创建成功后,将当前进程信息写入文件并sync持久化。
7)最后将文件句柄关闭
到此,关于“分析PostgreSQL异常重启postmaster.pid处理”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!
--结束END--
本文标题: 分析PostgreSQL异常重启postmaster.pid处理
本文链接: https://www.lsjlt.com/news/62894.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-22
2024-05-22
2024-05-22
2024-05-22
2024-05-22
2024-05-22
2024-05-22
2024-05-21
2024-05-21
2024-05-21
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
一口价域名售卖能注册吗?域名是网站的标识,简短且易于记忆,为在线用户提供了访问我们网站的简单路径。一口价是在域名交易中一种常见的模式,而这种通常是针对已经被注册的域名转售给其他人的一种方式。
一口价域名买卖的过程通常包括以下几个步骤:
1.寻找:买家需要在域名售卖平台上找到心仪的一口价域名。平台通常会为每个可售的域名提供详细的描述,包括价格、年龄、流
443px" 443px) https://www.west.cn/docs/wp-content/uploads/2024/04/SEO图片294.jpg https://www.west.cn/docs/wp-content/uploads/2024/04/SEO图片294-768x413.jpg 域名售卖 域名一口价售卖 游戏音频 赋值/切片 框架优势 评估指南 项目规模 安全指南 Osprey 游戏分析 游戏调试 游戏图形 游戏物理 开源库
0