Skip to content

feat(shm): 升级 slotsboxmalloc v0.1.7 (v3) 并适配在线扩容 - #47

Merged
miaobyte merged 1 commit into
array2d:mainfrom
carsontung666:feat/adapt-sbo-v3
Oct 20, 2026
Merged

miaobyte merged 1 commit into
array2d:mainfrom
carsontung666:feat/adapt-sbo-v3

Conversation

@carsontung666

@carsontung666 carsontung666 commented Oct 19, 2026 •

Copy link
Copy Markdown
Collaborator

配合已合入并发布的 array2d/slotsboxmalloc#13 (v0.1.7, v3 格式):

  1. 升级依赖:deps.json 中 slotsboxmalloc 从 v0.1.6 升至 v0.1.7。
  2. 保持单 root 池在线扩容语义:在 src/kvspace.c 中定义 SBO_MIN_SHARD_BYTES (1ULL << 40),确保 kvspace-c SHM 在线扩容所需的单 root 池布局 (root_slots == 1)。
  3. 适配 v3 节点与元数据布局:
    • sbo_box() 改用 m->box_off 定位 8B 对齐后的 sbo_box_t;
    • sbo_head_grow() 同步更新 m->max_blocks;
    • sbo_data_grow() 适配 v3 的 child_mask / free_mask / sbo_box_format / sbo_combined / hot_id1 缓存与 m->slot_shift;
    • tests/test_shm_resize.c 中 t_bad_root_slots 的 root_slots 偏移更新为 v3 sbo_meta_t 的 byte 38。
  4. 验证:Linux & macOS CI 以及全部 6 项 ctest(含 test_shm_resize 的 t_data_grow / t_cross_process / t_punch / t_bad_root_slots / t_head_grow)全部通过。

@carsontung666 carsontung666 changed the title feat(shm): 适配 slotsboxmalloc v3 在线扩容与布局接口 feat(shm): 升级 slotsboxmalloc v0.1.7 (v3) 并适配在线扩容 Oct 19, 2026
@miaobyte
miaobyte merged commit 1918fd5 into array2d:main Oct 20, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants