mirror of
https://github.com/facebook/sapling.git
synced 2024-10-11 01:07:15 +03:00
9f07485239
Summary: The serialized data for each file handle needs to be enough to re-construct the handle when we load it into a new process later on. We need the inode number, the file handle number that we communicated to the kernel and a flag to let us know whether it is a file or a dir. Note that the file handle allocation strategy already accomodates the idea of migrating to a new process; we don't need to serialize anything like a next file handle id number. This doesn't implement instantiating the handles from the loaded state, it is just the plumbing for saving and loading that state information. Reviewed By: bolinfest Differential Revision: D5733079 fbshipit-source-id: 8fb8afb8ae9694d013ce7a4a82c31bc876ed33c9
12 lines
203 B
Thrift
12 lines
203 B
Thrift
namespace cpp2 facebook.eden
|
|
|
|
struct FileHandleMapEntry {
|
|
1: i64 inodeNumber
|
|
2: i64 handleId // really u64
|
|
3: bool isDir
|
|
}
|
|
|
|
struct SerializedFileHandleMap {
|
|
1: list<FileHandleMapEntry> entries
|
|
}
|