当前位置: 首页 > news >正文

【0371】Postgres内核 实现构建一个 WAL record

1. WAL record

一条 WAL record 包含所有 WAL 记录类型共有的头部、特定于记录的数据以及有关已修改数据块的信息。每个已修改的数据块均由一个 ID 号加以标识, 并且可以选择性地具有更多与该块相关的特定于记录的数据。若 XLogInsert 判定需要获取某个数据块的全页图像,则与该数据块相关的数据不会被涵盖在内。

1.1 构建 WAL record 的几个 API

构建 WAL 记录的API由五个函数组成:XLogBeginInsert、XLogRegisterBuffer、XLogRegisterData、XLogRegisterBufData 以及 XLogInsert。

首先,调用 XLogBeginInsert()。接着,使用 XLogRegister*函数注册所有已修改的缓冲区以及重放更改所需的数据。最后,通过调用 XLogInsert()将构建好的记录插入到 WAL 中。

XLogBeginInsert();/* *

http://www.mrgr.cn/news/80815.html

相关文章:

  • vue框架的搭建
  • 数据结构与算法学习笔记----SPFA判断负环
  • 使用skywalking,grafana实现从请求跟踪、 指标收集和日志记录的完整信息记录
  • Unity 组件学习记录:Aspect Ratio Fitter
  • 基于Docker的Minio分布式集群实践
  • MATLAB图卷积神经网络GCN处理分子数据集节点分类研究
  • 【java面向对象编程】第二弹----成员方法
  • 基于DockerCompose搭建Redis主从哨兵模式
  • js分页功能
  • 【Python】使用Selenium 操作浏览器 自动化测试 记录
  • regression里面的误差来源
  • Pytorch | 从零构建AlexNet对CIFAR10进行分类
  • Linux函数栈帧
  • windows上安装Redis
  • 对AI现状和未来发展的浅见
  • 关于代码注释
  • 分布式算法(一):从ACID和BASE到CAP
  • 面试题整理6----什么是进程最大数、最大线程数、进程打开的文件数,怎么调整
  • 百度飞桨:零基础入门深度学习
  • cocos creator制作2dTop-down游戏(虚拟摇杆、地图加载)
  • C# 基本信息介绍
  • python之OpenGL应用(1)入门篇
  • TCP拥塞控制
  • 2024年12月英语六级CET6写作与翻译笔记
  • 实现线程同步的方法
  • WSL Ubuntu