2025年5月9日
摘要: H2 Database Select 语句执行流程 var code = “f3fa8df8-672b-4506-9ee0-7d04d4eeba6e” 使用 // CREATE TABLE IF NOT EXISTS test(id INT primary key, name VARCHAR(255 阅读全文
posted @ 2025-05-09 08:21 flyingzc 阅读(0) 评论(0) 推荐(0)
摘要: H2Database SQL 插入流程 插入数据时会先进行 SQL 解析,然后找到插入表对应的 Primary Index 对应的 BTree,然后根据二分法定位到插入的叶子节点,将 key(主键) 和 value(Row) 插入到指定的叶子节点. 解析 SQL session 加锁 创建 save 阅读全文
posted @ 2025-05-09 08:20 flyingzc 阅读(0) 评论(0) 推荐(0)
摘要: H2 Database 事务 Rollback 流程实现原理 使用 Connection conn = getConnection(); // 开启事务 conn.setAutoCommit(false); // 执行 SQL executeWithLog(conn, "insert into Te 阅读全文
posted @ 2025-05-09 08:19 flyingzc 阅读(0) 评论(0) 推荐(0)
摘要: H2 Database 事务隔离性实现原理 使用 测试 cases: 隔离级别 RC A 开启事务 B 开启事务 B 插入数据并提交 A 可以读取到 隔离级别 RR A 开启事务 B 开启事务 A 查询 B 插入数据并提交 A 读取不到 A 自己插入数据 A 可以读取到自己插入的数据 功能 H2 支 阅读全文
posted @ 2025-05-09 08:18 flyingzc 阅读(0) 评论(0) 推荐(0)
摘要: H2 Database 事务 Commit 流程实现原理 使用 测试 Demo: begin; insert into test values(1); commit; 功能 模块 类 总体流程 解析 commit 语句 执行 commit 语句 设置事务状态为已提交 根据 undoLogId 判断事 阅读全文
posted @ 2025-05-09 08:18 flyingzc 阅读(0) 评论(0) 推荐(0)
摘要: H2 Database MvMap 插入数据流程 H2Database 使用 MVStore 作为默认的存储子系统,支持多版本,持久化的键值存储。 其中每一个 MVMap 对象代表了一颗 btree。 MVMap 里包含了 btree 根页面的引用,这颗 btree 可以表示一张表、一个索引,或者用 阅读全文
posted @ 2025-05-09 08:16 flyingzc 阅读(0) 评论(0) 推荐(0)
  2024年11月14日
摘要: H2 Database MVStore Commit 流程 作用 BackgroundWriterThread 按照固定频率,将内存里修改的尚未保存的 Page 信息持久化到存储。 流程 启动阶段创建后台线程 org.h2.mvstore.MVStore#setAutoCommitDelay 1.创 阅读全文
posted @ 2024-11-14 08:19 flyingzc 阅读(0) 评论(0) 推荐(0)
  2024年10月31日
摘要: H2 Database MVStore 初始化 作用 MVStore(multi-version store): H2 的默认存储子系统,支持多版本,持久化的、日志结构 的 键值存储。 功能 Maps 每个 store 包含多个 mvMaps,可以通过 java.util.Map 接口访问 Vers 阅读全文
posted @ 2024-10-31 08:48 flyingzc 阅读(0) 评论(0) 推荐(0)
摘要: H2 Database IDEA 源码 DEBUG 环境搭建 基于最新的 version-2.3.230 拉取分支。 git remote add h2 https://github.com/h2database/h2database.git git fetch h2 git checkout -b 阅读全文
posted @ 2024-10-31 08:42 flyingzc 阅读(0) 评论(0) 推荐(0)
  2024年7月26日
摘要: Android 使用 ADB 调试 ADB 安装 方式1: 通过 sudo apt install android-tools-adb 安装,试了下版本比较老了,用不起来. 方式2: 按照官网说明下载 Android Studio 或独立的 SDK 平台工具,两者都内含 ADB。 下载完成后,配置环 阅读全文
posted @ 2024-07-26 08:21 flyingzc 阅读(0) 评论(0) 推荐(0)