oceanbase / miniob

MiniOB is a compact database that assists developers in understanding the fundamental workings of a database.
https://oceanbase.github.io/miniob/
Mulan Permissive Software License, Version 2
2.86k stars 1.01k forks source link

Use 'bitmap node' to support more pages #341

Open Mark-Song0618 opened 3 months ago

Mark-Song0618 commented 3 months ago

Enhancement Currently, the max page cnt of a file is about 65,000. It is limited by ths size of BPFileHeader::bitmap. Shall we use the bitmap node:

struct BitmapNode { PageNum prev; PageNum next; char bitmap[0]; }

to support Infinite number of pages ?

hnwyllmm commented 3 months ago

It sounds good. But I think we don't need to use the link because the capacity of one 'chunk' is static.So there is a easier way to resolve this,We use all of the first page of each chunk as the meta page.There're also other better solutions such as Windows NTFS and Linux ext file system.Please feel free to discuss here if you have any idea发自我的 iPhone在 2024年2月13日,21:53,Mark Song @.***> 写道: Enhancement Currently, the max page cnt of a file is about 65,000. It is limited by ths size of BPFileHeader::bitmap. Shall we use the bitmap node: struct BitmapNode { PageNum prev; PageNum next; char bitmap[0]; } to support Infinite number of pages ?

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: @.***>