Hans Holmberg
Hans Holmberg
@Haltz : If the active zone limit has been reached, data with the same life time(e.g WLTH_SHORT) will be co-located . See https://github.com/westerndigitalcorporation/zenfs/blob/12b0f637877fb083491b37b53d0ecb87f77ce1b9/fs/zbd_zenfs.cc#L841
See https://github.com/westerndigitalcorporation/zenfs/blob/12b0f637877fb083491b37b53d0ecb87f77ce1b9/fs/zbd_zenfs.cc#L490 LIFETIME_NOT_GOOD is returned if lifetime(file) > lifetime(zone)
We should probably avoid recovering files when mounting read-only like the utility does in these cases (as it the recovery assumes that the wp will not be moving around :))
I've addressed all comments(except the refactoring things I believe) and increased the gc aggressiveness a bit (slope 2 -> 3). It looks stable and performing nicely, (sysbench and db_bench tests...
Let's get this reviewed & merged
merge cmake changes first
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)
@percona-ysorokin thanks for reporting and for providing the fix! @MaisenbacherD will create a tag with the fix applied on a separate branch(2.1) based on the v2.1.0 tag
I have some follow-up patches to this pull request(including migration bug fixes), but will merge this and then submit the rest as separate PRs.
Could you have a quick look over this @ajkr ? Cheers!