-
Implement tombstone for deletes.
-
Implement merging although it is a bit tricky.
- How do we handle "previous" field conflicts?
- Handling deletes with tombstones
-
Fix file size issue.
- We should be able to get the file size from a files metadata.
- This requires making changes to
IpldStore
andLayout
. -
IpldStore::get_cid_size(cid: &Cid) -> Result<u64, Error>
? -
Layout::get_cid_size(cid: &Cid) -> Result<u64, Error>
?
-
checkpoint
does not have to re-load the entity from the store.- We can take an efficient shortcut by modifying the initial_load_cid in-place during store.
- Introduce an internal
store_in_place
method?
-
Consider other store implementations optimized for write or read efficiency
-
RocksDbStore
- backed by RocksDB. -
PackedFsStore
- writes multiple blocks to a single file.
-
-
Support compression in
FlatFsStore
for better storage efficiency.- Compression option for block and packed files.
- GZIP with flate2-rs.
-
Implement a content-defined chunker that uses Gear Hashing.
- FastCDC
- GearCDC
- Make it the default chunker for stores.
-
Implement
BalancedDagLayout
and make it the default layout for stores. -
Expose
IpldStore::gc
andIpldStore::dereference
and implement for:-
FlatFsStore
-
MemoryStore
- A stored
node
orbytes
should be deleted when the last reference is dropped.
-
-
FlatFsStore
should support refcounting. -
bytes
andraw_blocks
should support refcounting too.
-
Fix copy and remove permission issues on Linux.
-
Use sqlitedb for maintaining running services state.
-
Treating microvm management like a package manager.
-
Support multiple registries.
- Docker
- Github
- Quay
- Sandboxes
-
Use
Reference
type for image_ref where it makes sense: https://docs.rs/oci-spec/0.7.1/oci_spec/distribution/struct.Reference.html -
Qualify image names fully where needed. /: