yanzongshuai的专栏

专注于MySQL、MariaDB、Percona、PostgreSQL数据库及Aerospike等nosql数据库

PostgreSQL checkpoint--restart checkpoint

xlog_redo(XLogReaderState *record): if (info == XLOG_NEXTOID){ ... }else if (info == XLOG_CHECKPOINT_SHUTDOWN){ ... RecoveryRestartPoint(&am...

2018-08-29 20:51:29

阅读数 117

评论数 0

PostgreSQL server端接收连接后fork进程

main->PostmasterMain->ServerLoop: for(;;){ ... //会阻塞在这,监视文件描述符的变化 selres = select(nSockets, &rmask, NULL, N...

2018-08-25 22:23:13

阅读数 120

评论数 0

PostgreSQL状态变迁

typedef enum DBState { DB_STARTUP = 0, DB_SHUTDOWNED, DB_SHUTDOWNED_IN_RECOVERY, DB_SHUTDOWNING, DB_IN_CRASH_RECOVERY, DB_IN_ARCHIVE_RECOVERY,...

2018-08-22 20:18:25

阅读数 104

评论数 0

PostgreSQL启动恢复期间,恢复到的时间线的确定

1、启动恢复时,确定恢复到的时间线recoveryTargetTLI     1)归档恢复点比checkpoint中记录的时间线大,那么选择归档恢复点作为目标时间线     2)否则,checkpoint记录中的时间线作为目标时间线 StartupXLOG-> if (...

2018-08-12 20:48:54

阅读数 242

评论数 0

PostgreSQL启动恢复读取checkpoint记录失败的条件

1、首先读取ControlFile->checkPoint指向的checkpoint 2、如果读取失败,slave直接abort退出,master再次读取ControlFile->prevCheckPoint指向的checkpoint StartupX...

2018-08-05 17:27:05

阅读数 522

评论数 1

PostgreSQL启动恢复读取checkpoint时open wal日志

在上一篇博客https://blog.csdn.net/yanzongshuai/article/details/81415211中写到StartupXLOG最终会调用XLogFileReadAnyTLI打开归档日志或者WAL日志。 static int XLogFileReadAnyTLI(...

2018-08-05 11:40:17

阅读数 103

评论数 0

PostgreSQL启动恢复通过checkpoint open wal文件

StartupLOG:: ->record = ReadCheckpointRecord(xlogreader, ControlFile->checkPoint, 1, true) ->record = ReadRecord(xl...

2018-08-04 20:53:17

阅读数 137

评论数 1

提示
确定要删除当前文章?
取消 删除