Tracking laminated file state
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 122
- Forks
- 34
- PR merge metrics
- No merged PRs in 30d
Description
In order to take advantage of lamination semantics, we first need to track the boolean state as to whether a file has been laminated. For example, this could be a new boolean field on the global file metadata.
Knowing whether a file is laminated will greatly assist in things like file size queries:
```
get_file_size() {
if (laminated)
return cached_file_size (cheap)
else
query key/value store for current max written offset (expensive)
}
```
We can also start to return errors on new writes.
To set the laminated property, we may need to define the unifycr_laminate function in our library.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the global file metadata and the library entry point for the proposed unifycr_laminate function. Trace how lamination state would affect get_file_size and new writes. Done means the boolean state is tracked consistently and the intended post-lamination behavior is covered by relevant tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- operating-systems
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100