- 09 5月, 2023 1 次提交
-
-
由 羽飞 提交于
### What problem were solved in this pull request? Issue Number: close #155 close #135 Problem: 实现了简单的事务处理。 当前支持并发事务数据. ### What is changed and how it works? - 支持两种事务模式:Vacuous和MVCC。 Vacuous 事务模式算是没有事务,它的事务接口什么都不做。 MVCC 是多版本并发控制(Multi-Version Concurrency Control),使用多个版本保留记录数据。启动miniob时增加运行时选项 -t mvcc可以选择mvcc。 - MVCC:简单模式的多版本并发控制。 当前miniob仅包含insert和delete操作,因此数据最多包含两个版本,并且不需要在record中保留版本链表信息; 不支持持久化; 没有做垃圾回收; 遗留一个BUG:在提交时没有保证提交的数据一次性对外可见; 使用简单的写写冲突策略:检测到要修改的数据当前有人在修改,就回退 - 编译MINIOB时使用 -DCONCURRENCY=ON 才会支持并发 支持各个模块并发处理,包括buffer pool、bplus、record manager。如果编译时没有使用CONCURRENCY选项,则保持原样,不支持并发,保持系统的简单性。 - 编译时增加 -DDEBUG=ON 还会增加并发调试日志与严格的运行时检测(ASSERT语句) - 当前版本代码中包含了bplus tree和record manager的并发测试,参考benchmark目录下的代码。 ### Other information
-
- 28 1月, 2023 2 次提交
-
-
由 Longda Feng 提交于
-
由 Longda Feng 提交于
-
- 09 1月, 2023 1 次提交
-
-
由 羽飞 提交于
logical plan & physical plan; explain; yacc rewrite; join operator(nested loop join); simple rewrite rules; fix some issues of mysql protocol;
-
- 23 9月, 2022 1 次提交
-
-
由 夏克 提交于
* fix -Wunused-function * 调整文档格式
-
- 13 7月, 2022 1 次提交
-
-
由 羽飞 提交于
-
- 11 7月, 2022 2 次提交
- 09 7月, 2022 1 次提交
-
-
由 羽飞 提交于
-
- 05 7月, 2022 2 次提交
- 02 7月, 2022 2 次提交
- 01 7月, 2022 1 次提交
-
-
由 羽飞 提交于
-
- 28 6月, 2022 1 次提交
-
-
由 羽飞 提交于
1. select return all columns; 2. no tuple header now; 3. predicate works now.
-
- 24 6月, 2022 1 次提交
-
-
由 羽飞 提交于
-
- 21 6月, 2022 1 次提交
-
-
由 wangyunlai.wyl 提交于
-