数据库星球-mytecdb.com

  • 最新文章
  • 全部分类
  • 文章搜索
  • 关于本站

当前分类:【PostgreSQL源码分析】

PostgreSQL Files 和 Forks 概念

在 PostgreSQL 数据库中,relation 关联的所有信息存储在几个不同的 forks 里面,每个 fork 都包含一个特定类型的数据。首先一个 fork 表示一个文件,它的文件名由一个数字 ID(oid)表示,可以通过对应于 f...继续阅读

  • 发表于:2022-12-20 11:09:38
  • 分类:PostgreSQL源码分析
  • 浏览(77)

PostgreSQL 子事务逻辑分析

源码文件:src/backend/access/transam/subtrans.c源码版本:PG 13.31. 子事务的使用PG 提供了一组 savepoint 相关的命令用于子事务操作,子事务相关例子如下:定义一个保存点:savepoi...继续阅读

  • 发表于:2022-12-07 17:15:10
  • 分类:PostgreSQL源码分析
  • 浏览(55)

PostgreSQL dsm 动态共享内存管理机制

源码版本:PG 13.3源码文件:dsm.c dsm_impl.cPostgreSQL 是基于进程模型的数据库内核实现,进程之间的通信、数据传输通常需要借助共享内存实现。在程序运行过程中,比如并发任务需要创建多个工作进程,工作进程与 bac...继续阅读

  • 发表于:2022-10-11 11:17:18
  • 分类:PostgreSQL源码分析
  • 浏览(148)

PostgreSQL复制槽源码分析

源码版本:PG 13.3源码文件:slot.c slotfuncs.c1. 什么是 PG 复制槽?PG 复制槽用于记录主备流复制的状态,主要目的是防止 wal 日志被过早的删除,导致备库流复制中断。复制槽是有状态的,能够持久化到磁盘上,允许...继续阅读

  • 发表于:2022-09-19 13:48:15
  • 分类:PostgreSQL源码分析
  • 浏览(130)

PostgreSQL事务快照源码分析

源码版本:PG 13.3源码文件:src/backend/utils/time/snapmgr.c1. 事务快照数据结构typedef struct SnapshotData{SnapshotType snapshot_type; /* t...继续阅读

  • 发表于:2022-09-16 22:28:47
  • 分类:PostgreSQL源码分析
  • 浏览(132)

PostgreSQL两阶段提交事务源码分析

源码版本:PG 13.3PG 支持两阶段提交事务(2PC),本文基于 PG 13.3 源码,简单分析 2PC 事务处理相关的逻辑。1. 两阶段事务提交的处理过程2PC 各阶段的命令调用主要包含如下三个:prepare trancation ...继续阅读

  • 发表于:2022-08-25 17:46:45
  • 分类:PostgreSQL源码分析
  • 浏览(130)

PostgreSQL同步复制实现逻辑分析

源码版本:pg 14.3源文件:src/backend/replication/syncrep.c原文地址:https://www.mytecdb.com/blogDetail.php?id=2391、PG同步复制简介同步复制是 pg 9....继续阅读

  • 发表于:2022-06-30 19:08:05
  • 分类:PostgreSQL源码分析
  • 浏览(73)

PostgreSQL空闲空间映射表FSM(Free Space Map)解析

源码版本:PG13Free Space Map 是 PostgreSQL 空闲空间高效管理的一种方式。堆表由于频繁的 update, delete,vacuum,会导致页面出现大小不一的空闲空间,FSM 机制能够有效的管理这些空闲空间,当...继续阅读

  • 发表于:2022-06-21 15:49:12
  • 分类:PostgreSQL源码分析
  • 浏览(145)

PostgreSQL 获取regress回归测试代码覆盖率

PostgreSQL 源码提供了编译选项用来测试代码覆盖率,打开 --enable-coverage 选项,编译安装,然后执行回归测试或者其他的测试,最后生成代码覆盖率报告。下面以 CentOS 7.9 环境为例,介绍整个操作流程。0、依赖...继续阅读

  • 发表于:2022-06-07 18:19:38
  • 分类:PostgreSQL源码分析
  • 浏览(68)

PostgreSQL Latch 实现逻辑

源码版本:pg 11.9源码文件:src/backend/storage/ipc/latch.cLatch 是 pg 中使用较多的一种数据结构,用于等待某个事件的发生或者超时,常见的 Latch 相关函数如下:InitLatch(),初始化...继续阅读

  • 发表于:2022-05-28 15:20:19
  • 分类:PostgreSQL源码分析
  • 浏览(122)

分页

上一页123下一页
搜索:

Copyright © 2020-2023 

www.mytecdb.com All Rights Reserved.