站长蚂蚁论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
热搜: 活动 交友 discuz
楼主: gydtep2002
打印 上一主题 下一主题

免费领取阿里云大礼包3150元+新客享0.26折起优惠

[复制链接]

4

主题

2090

帖子

8427

积分

老年蚂蚁

Rank: 10Rank: 10Rank: 10

积分
8427
491#
 楼主| 发表于 2023-9-15 09:20:04 | 只看该作者
其中记录的是这个Undo Segment的状态,比如TRX_UNDO_CACHED、TRX_UNDO_TO_PURGE等;这个Undo Segment中最后一条Undo Record的位置;这个FSP Segment的Header,以及当前分配出来的所有Undo Page的链表。
回复

使用道具 举报

4

主题

2090

帖子

8427

积分

老年蚂蚁

Rank: 10Rank: 10Rank: 10

积分
8427
492#
 楼主| 发表于 2023-9-17 09:14:11 | 只看该作者
一方面避免了ibdata1的膨胀,方便undo空间回收,另一方面也大大增加了最大的Rollback Segment的个数,增加了可支持的最大并发写事务数。如下图所示:
回复

使用道具 举报

4

主题

2090

帖子

8427

积分

老年蚂蚁

Rank: 10Rank: 10Rank: 10

积分
8427
493#
 楼主| 发表于 2023-9-18 07:54:53 | 只看该作者
无论是Rollback还是Commit,在这个修改对应的Redo落盘之后,就可以返回用户结果,并且Crash Recovery之后也不会再做回滚处理。
回复

使用道具 举报

4

主题

2090

帖子

8427

积分

老年蚂蚁

Rank: 10Rank: 10Rank: 10

积分
8427
494#
 楼主| 发表于 2023-9-19 08:25:17 | 只看该作者
TRX_UNDO_INSERT_REC类型的Undo回滚在row_undo_ins中进行,insert的逆向操作当然就是delete,根据从Undo Record中解析出来的主键,
回复

使用道具 举报

4

主题

2090

帖子

8427

积分

老年蚂蚁

Rank: 10Rank: 10Rank: 10

积分
8427
495#
 楼主| 发表于 2023-9-20 09:26:01 | 只看该作者
否则,就会解析对应的Undo Record,恢复出trx_id、指向下一条Undo Record的rollptr、主键信息,diff信息update vector等信息。
回复

使用道具 举报

4

主题

2090

帖子

8427

积分

老年蚂蚁

Rank: 10Rank: 10Rank: 10

积分
8427
496#
 楼主| 发表于 2023-9-21 10:22:30 | 只看该作者
那么,如果一个事务的trx_no小于当前所有活跃的读事务Readview中的这个m_low_limit_no,说明这个事务在所有的读开始之前已经提交了,其修改的新版本是可见的, 因此不再需要通过undo构建之前的版本,
回复

使用道具 举报

4

主题

2090

帖子

8427

积分

老年蚂蚁

Rank: 10Rank: 10Rank: 10

积分
8427
497#
 楼主| 发表于 2023-9-22 10:15:14 | 只看该作者
处理每一条Undo Record。之后继续调用trx_purge_rseg_get_next_history_log从purge_queue中获取下一条trx_no最小的Undo Log,并且将当前Rollback Segment上的下一条Undo Log继续push进purge_queue,等待后续的顺序处理。
回复

使用道具 举报

4

主题

2090

帖子

8427

积分

老年蚂蚁

Rank: 10Rank: 10Rank: 10

积分
8427
498#
 楼主| 发表于 2023-9-22 18:14:45 | 只看该作者
另外,TRX_UNDO_UPD_EXIST_REC类型的Undo虽然不涉及主索引的删除,但可能需要做二级索引的删除,也是在这里处理的。
回复

使用道具 举报

4

主题

2090

帖子

8427

积分

老年蚂蚁

Rank: 10Rank: 10Rank: 10

积分
8427
499#
 楼主| 发表于 2023-9-23 14:43:54 | 只看该作者
否则,说明该Undo Segment正在被使用或者还在被cache(TRX_UNDO_CACHED类型),那么只通过trx_purge_remove_log_hd将其从History List中删除。
回复

使用道具 举报

4

主题

2090

帖子

8427

积分

老年蚂蚁

Rank: 10Rank: 10Rank: 10

积分
8427
500#
 楼主| 发表于 2023-9-25 09:32:32 | 只看该作者
高效利用的技术架构与经济模式,让算力本身更绿色;在绿色数字供应链方面,以算法驱动,采用预测+决策的算法体系,
回复

使用道具 举报

关闭

站长推荐上一条 /1 下一条

QQ|Archiver|手机版|小黑屋|站长蚂蚁-站长之家 ( 赣ICP备15000807号

GMT+8, 2025-10-30 05:59

Powered by 蚂蚁站长论坛

© 2007-2024 bbs.jzmayi.com

快速回复 返回顶部 返回列表