PostgreSQL中Tuple可见性判断分析

技术PostgreSQL中Tuple可见性判断分析本篇内容主要讲解“PostgreSQL中Tuple可见性判断分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Postgre

本文主要讲解“PostgreSQL中Tuple可见性判断分析”,感兴趣的朋友不妨看一下。本文介绍的方法简单、快速、实用。让边肖带你学习“PostgreSQL中Tuple可见性的判断与分析”!

一、xmin/xmax是当前事务

Tuple.xmin或xmax为当前交易的情况,交易状态为IN_PROGRESS,其判断逻辑如下:插入未提交.

如果xmin==当前事务,则

如果xmax==当前事务,则

元组是不可见的

其他

元组可见

如果…就会结束

如果…就会结束

以下示例显示了:

15:40:39(xdb @[本地]:5432)testdb=#

15:40:40(xdb @[local]:5432)testdb=# begin;

开始

15:40:44(xdb @[local]:5432)testdb=# * insertintot _ session 1 values(1);

INSERT01

15:40:52(xdb @[local]:5432)testdb=# * updatet _ session 1 setid=0;

更新1

15:41:02(xdb @[local]:5432)testdb=# * selectlp,lp_off,t_xmin,t _ xmax from heap _ page _ items(get _ raw _ page(‘ t _ session 1 ‘,0));

lp|lp_off|t_xmin|t_xmax

– – – –

1 | 8160 | 2370 | 2370-2370插入数据,2370更新数据,元组是不可见的。

2 | 8128 | 2370 | 0-2370更新数据,元组可见。

插入已提交

如果xmax==当前事务,则

元组是不可见的

如果…就会结束

15:41:11(xdb @[local]:5432)testdb=# * delete from _ session 1;

删除1

15:41:36(xdb @[local]:5432)testdb=# * selectlp,lp_off,t_xmin,t _ xmax from heap _ page _ items(get _ raw _ page(‘ t _ session 1 ‘,0));

lp|lp_off|t_xmin|t_xmax

– – – –

1 | 8160 | 2370 | 2370-2370更新此元组,它不可见。

2 | 8128 | 2370 | 2370-2370删除此元组,它不可见。

(2条线)

15:41:38(xdb @[local]:5432)testdb=# * commit;

COMMIT note :在这种情况下(xmax==当前事务),xmin状态不能被中止,因为不可能更新/删除不存在的元组(未提交的事务可以视为不存在)。

00-1010xmin和xmax不是当前事务,假设快照为st1:st23360xip [],其判断逻辑如下:

如果圣诞节。状态==已提交,然后

If xmax ST1 xmax。状态==已提交,然后

元组是不可见的

如果xmax XIP[] xmax。状态==已提交,然后

元组是不可见的

其他

元组可见

如果…就会结束

其他

元组是不可见的

如果…就会结束

至此,相信大家对“PostgreSQL中Tuple可见性判断与分析”有了更深的理解,让我们一起来实践吧!这是网站。更多相关内容,可以去相关渠道查询,关注我们,继续学习!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/78651.html

(0)

相关推荐

  • oracle18c和12c的区别(oracle20c新特性)

    技术Oracle 数据库12c新特性有哪些这篇文章将为大家详细讲解有关Oracle 数据库12c新特性有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。  1. 在线重命名和重新定位

    攻略 2021年12月13日
  • 如何进行window版本的安装

    技术如何进行window版本的安装这篇文章给大家介绍如何进行window版本的安装,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1 先解压 elasticsearch-7.3.0-windows-

    攻略 2021年10月20日
  • 1元涨1000粉丝网站,抖音怎么刷粉最划算?

    技术1元涨1000粉丝网站,抖音怎么刷粉最划算?1元涨1000粉丝网站,抖音怎么刷粉最划算?在正常情况下,抖音1元涨1000粉丝是有难度的,如果量大,比如一次性加几万粉,抖音100元涨1000粉丝也是可以做的,毕竟量大从

    测评 2021年11月11日
  • 您的浏览器不支持html5video标签(html5video标签双击事件)

    技术video是不是HTML5的标签小编给大家分享一下video是不是HTML5的标签,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! video是HTML5的新标签,该标签用

    攻略 2021年12月13日
  • spring集成mybatis依赖配置

    技术spring集成mybatis依赖配置 spring集成mybatis依赖配置dependencies
    !– 测试依赖–dependencygroupIdjunit/groupIdarti

    礼包 2021年10月27日
  • mydumperloaderother

    技术mydumperloaderother mydumperloaderother1.mydumperMydumper是一个针对MySQL和Drizzle的高性能多线程备份和恢复工具。 Mydumper

    礼包 2021年11月10日