zenfs
zenfs copied to clipboard
zonefs support for ZenFS
This change series introduces support for using zonefs to access a zoned block device in ZenFS. When using zonefs, the zones of a ZBD are exposed as individual files in a file system, e.g., sequential zone 5 is accessed through the path
To continue to support the notion of a contiguous LBA space, the approach taken with zonefs is to map all sequential zones into into a contiguous LBA space such that sequential zone N has the LBA range
[ N *
The use of zonefs is supported through a new URL:
zenfs://zonefs:
The zenfs utility has been extended to accept either a zoned device or a zonefs mountpoint (using --zonefs=
The change series is structured as follows:
- Use of FDs outside of the ZonedBlockDevice are removed
- ZonedBlockDevice is restructured such that all zbdlib specifics are moved to a ZonedBlockDeviceBackend object.
- Support for the new URL for zonefs and the zenfs utility option is introduced.
- zonefs support is added.
Closes #173
TerarkDB build is failing because of addition of new files. I think we need to fix that before merging.
The terarkdb smoke test fails, but that'll be resolved by https://github.com/bytedance/terarkdb/pull/244 , we also need some testing for zonefs in the ci(will be addressed separately)