对checkpoint not completed的理解

假设数据库存在两个日志组log1和log2,首先,-->log1-->log2-->log1,此时(log2切换到log1)触发checkpoint,该checkpoint will flush dirty block to datafile,从而触发DBWn书写dirty buffer,等到log1覆盖的dirty block全部被写入datafile后才能使用log1(循环使用),如果DBWn写入过慢,LGWR必须等待DBWn完成,则这时会出现“checkpoint not completed!”

别人的回答是

log1-> log2, trigger checkpoint 1

after log2 is full,

log2-> log1, trigger checkpoint 2

but if checkpoint 1 is still not finished, then LGWR must wait. This is "logfile switch (checkpoint incompleted)" event.

我的理解是

1.检查点完成,才能顺利切换。

2.checkpoint1阻塞了log2->log1的切换。

3.没有可用的redo日志,会阻塞数据正常使用,这时数据库是短暂hang住的。

不知道对不对,请高人指正~

对checkpoint not completed的理解,布布扣,bubuko.com

时间: 2024-10-09 23:58:44

对checkpoint not completed的理解的相关文章

InnoDB存储引擎介绍-(4)Checkpoint机制一

检查点的工作机制: innodb会自动维护一个检查点的机制,叫做 fuzzy checkpointing(当然sharp checkpoint也是检查点之一),fuzzy checkpointing就是将buffer pool当中的数据页信息小批量的刷新到磁盘.但是我们没有必要单批次批次的对buffer pool进行刷新,不然后影响其他正在执行的SQL进程. 在crash recovery期间,MySQL也会记录一次检查点信息到log  file当中去.它会记录数据库检查点发生之前的所有修改数据

Apache Flink fault tolerance源码剖析(二)

继续Flink Fault Tolerance机制剖析.上一篇文章我们结合代码讲解了Flink中检查点是如何应用的(如何根据快照做失败恢复,以及检查点被应用的场景),这篇我们来谈谈检查点的触发机制以及基于Actor的消息驱动的协同机制.这篇涉及到一个非常关键的类--CheckpointCoordinator. org.apache.flink.runtime.checkpoint.CheckpointCoordinator 该类可以理解为检查点的协调器,用来协调operator和state的分布

InnoDB Checkpoints

检查点的工作机制: innodb会自动维护一个检查点的机制,叫做 fuzzy checkpointing(当然sharp checkpoint也是检查点之一),fuzzy checkpointing就是将buffer pool当中的数据页信息小批量的刷新到磁盘.但是我们没有必要单批次批次的对buffer pool进行刷新,不然后影响其他正在执行的SQL进程. 在crash recovery期间,MySQL也会记录一次检查点信息到log  file当中去.它会记录数据库检查点发生之前的所有修改数据

每日一記(2016/10/24)

1,測試IO性能的小工具Bonnie 2,redo log切換hang住問題 症狀表現alert日誌是checkpoint not completed ,就是dbwr寫buffer(準確的是寫checkpoint queue鏈)的速度趕不上redo log切換的速度,redo log切換必須是寫inactive/unsued狀態的redo log.此時從v$log裡面看,除了當前的current狀態,其餘都是active狀態 原因從如下幾個方面考慮: ①DBWn進程太少,太繁忙(通過觀察dbwn

tf.train.Saver()

1. 实例化对象 saver = tf.train.Saver(max_to_keep=1) max_to_keep: 表明保存的最大checkpoint文件数.当一个新文件创建的时候,旧文件就会被删掉.如果值为None或0, 表示保存所有的checkpoint文件.默认值5(也就是说,保存最近的5个checkpoint文件). keep_checkpoint_every_n_hour: 除了保存最近的max_to_keep_checkpoint文件,你还可能想每训练N小时保存一个checkpo

关于Oracle GoldenGate中Extract的checkpoint的理解 转载

什么是checkpoint? 在Oracle 数据库中checkpoint的意思是将内存中的脏数据强制写入到磁盘的事件,其作用是保持内存中的数据与磁盘上的数据一致.SCN是用来描述该事件发生的准确的时间点. 而GoldenGate中出现的checkpoint有着不同的含义.简单的说就是position,位置的意思.它记录了Extract进程在抽取事务时的进度.使用INFO showch 命令可以查看当前正在运行的Extract进程中所记录的checkpoint. 当GoldenGate被计划内或

对于linux下system()函数的深度理解(整理)

对于linux下system()函数的深度理解(整理) (2013-02-07 08:58:54) 这几天调程序(嵌入式linux),发现程序有时就莫名其妙的死掉,每次都定位在程序中不同的system()函数,直接在shell下输入system()函数中调用的命令也都一切正常.就没理这个bug,以为是其他的代码影响到这个,或是内核驱动文件系统什么的异常导致,昨天有出现了这个问题,就随手百了一下度,问题出现了,很多人都说system()函数要慎用要少用要能不用则不用,system()函数不稳定?

如何理解 RxJS?RxJS的中文API和使用教程

如何理解 RxJS? 我先附上RxJS的中文教程地址方便大家去了解和使用 中文使用教程:http://rxjs-china.org/_book/ 官方中文文档:https://buctwbzs.gitbooks.io/rxjs/content/ 好啦,我们开始讲一下如何理解它 RxJS 可能对很多人而言是一个从没听说过的新名词,那么 RxJS 到底是什么呢?本文中将予以简要介绍 在 Angular 2 中,我们遇到了一个新的概念 —— RxJS. 对很多人而言,这可能是一个比较难以理解的地方.所

关于oracle实例恢复的前滚和回滚的理解

关于oracle实例恢复的一些理解,一直都有误区,今天通过查看相关资料和与同学探讨,发觉了自己的错误,探讨结果如下: 实例恢复:当数据库非正常关闭的时候(断电或者shu  abort等等非一致性关闭),当你从新启动数据库的时候,数据库相关进程自动进行实例恢复,无须人工干预. 什么时候需要实例恢复 在shutdown normal or shutdown immediate下,也就是所谓的clean shutdown,checkpoint也会自动触发,并且把SCN纪录写回. 当发生checkpoi