亚信安慧AntDB:AntDB-M元数据锁之锁的获取(三)

5 锁的获取

5.1 锁的强弱

当线程已经持有的锁比新申请的锁更强时,认为已经持有了锁,无需再对申请锁类型加锁。锁的强弱指持有的锁与其他锁的不兼容集合大小,集合相同锁相同,集合更大锁更强,否则无强弱关系。通过锁的兼容位图进行简单的位运算即可快速判断锁的强弱。

5.2 两种锁范围

按照锁的适用范围将锁划分为两类,当然划分不是非此即彼的,会有重叠,这两类锁有各自的兼容性和锁对象管理方式。

范围锁(scoped locks)

只有三种锁(IX,S,X),主要用于GLOBAL、COMMIT、TABLESPACE、BACKUP_LOCK命名空间的对象。这几种命名空间的锁主要从整体上去限制并发操作,比如在DML访问一张表时,会先申请一个该表所属SCHEMA的IX锁,避免访问过程中该SCHEMA被修改、删除。范围锁全局每种命名空间都仅有一个锁对象,从而实现全局性的并发控制。

相关推荐
瀚高PG实验室5 分钟前
HGHAC集群版本升级
数据库·postgresql·瀚高数据库
砚底藏山河6 分钟前
量化回测可复现流水线CI化
java·python·ci/cd·金融
骑着蜗牛撵大象3277 分钟前
Spring Boot 4.1 + Spring AI 2.0:RAG 供文、图谱供关系、MCP 供工具的 Java Agent 平台
java·spring boot·spring·微服务·知识图谱·rag·mcp
衍生星球27 分钟前
【Java 语言】— 面向对象:构造方法(无参、有参构造)
java·开发语言
SimonKing29 分钟前
素笺( local-notes)全面优化,新增功能体验不一样的笔记
java·后端·程序员
techpupil30 分钟前
IDEA基础配置及开发基础插件
java·ide·intellij-idea
品牌常新32 分钟前
室外巡检机器人推荐:园区与厂区怎么选
数据库·人工智能·机器人
yuniko-n35 分钟前
【JVM】对象内存布局
java·开发语言·jvm
snow@li35 分钟前
redis:RedisDesktopManager(RDM/RESP.app)Redis 数据可视化全景深度梳理
数据库·redis·缓存
lqbzlll36 分钟前
MySQL 慢查询日志开了但看不懂?从 slow_query_log 到 EXPLAIN ANALYZE 一步步定位
数据库·mysql·adb