You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Microsoft DevDrive supports copy-on-write semantics which is super cool. I'd like combine ProjFS + CoW so that large binary assets can be shared.
Currently the way ProjFS works is you call PrjWriteFileData. What I'd like to do instead is perform a block clone.
Is there any way to do this today? I believe the answer is no. But I wanted to check.
In case it helps, my intended use case is an experimental version control system. I'd like to support monorepos with very large files which are deduplicated via block cloning.
Thanks!
The text was updated successfully, but these errors were encountered:
Are you thinking of using a block clone to recall the data instead of PrjWriteFileData?
Or are you thinking of using block clone to preserve deduplication state that is in the backing store? That is, your backing store contains large files that have been deduplicated, and when you open such a file on the client you want the provider application to be able to preserve that deduplication on the client?
Imagine a version control system with a CAS cache. The cache may contain a very large, multi-tens of gigabyte file containing AI model weights. I don't want to make a copy of those bytes on the projected client. Similarly, consider a cache containing large files like LLVM toolchains. I want multiples repos to be deduplicated and share the same bytes from the CAS cache. And I want a virtual file system so that large repos only need to remotely fetch files for the cache if and as they are needed.
Microsoft DevDrive supports copy-on-write semantics which is super cool. I'd like combine ProjFS + CoW so that large binary assets can be shared.
Currently the way ProjFS works is you call
PrjWriteFileData
. What I'd like to do instead is perform a block clone.Is there any way to do this today? I believe the answer is no. But I wanted to check.
In case it helps, my intended use case is an experimental version control system. I'd like to support monorepos with very large files which are deduplicated via block cloning.
Thanks!
The text was updated successfully, but these errors were encountered: