sapling/eden/fs/inodes
Xavier Deguillard 62076b545e inodes: move dispatchers around
Summary:
Instead of having one "Dispatcher" type that the various backend overload,
let's simply have a per-mount type dispatcher type. The previous model worked
fine when EdenFS supported only one way of mounting a repository, but with NFS
coming, unix platform will support both FUSE and NFS, making the Dispatcher
overload nonsensical.

As a behavioral change, the dispatcher lifetime and ownership is changed a bit.
It used to live for the duration of the EdenMount object, but is now tied to
the channel lifetime, as it is now owned by it.

Reviewed By: kmancini

Differential Revision: D26329477

fbshipit-source-id: 3959b90a4909e3ab0898caa308f54686f59a943c
2021-02-10 11:52:06 -08:00
..
overlay Rename Try::throwIfFailed -> throwUnlessValue 2021-01-11 13:05:17 -08:00
sqliteoverlay Remove dead includes in eden 2020-10-09 15:25:47 -07:00
test inodes: move dispatchers around 2021-02-10 11:52:06 -08:00
CacheHint.h Tidy up license headers 2019-10-11 05:28:23 -07:00
CheckoutAction.cpp remove dependency on glog 2020-11-10 16:31:15 -08:00
CheckoutAction.h Avoid overfetching in checkout 2020-11-03 10:58:22 -08:00
CheckoutContext.cpp Apply clang-format update fixes 2021-01-10 10:06:29 -08:00
CheckoutContext.h logging for thrift object fetch: checkout 2020-07-26 23:09:40 -07:00
CMakeLists.txt nfs: add NfsServer class 2021-02-09 12:47:11 -08:00
DeferredDiffEntry.cpp remove dependency on glog 2020-11-10 16:31:15 -08:00
DeferredDiffEntry.h add an ObjectFetchContext interface 2020-02-05 13:15:01 -08:00
DirEntry.cpp remove dependency on glog 2020-11-10 16:31:15 -08:00
DirEntry.h remove dependency on glog 2020-11-10 16:31:15 -08:00
EdenDispatcherFactory.cpp inodes: move dispatchers around 2021-02-10 11:52:06 -08:00
EdenDispatcherFactory.h inodes: move dispatchers around 2021-02-10 11:52:06 -08:00
EdenMount.cpp inodes: move dispatchers around 2021-02-10 11:52:06 -08:00
EdenMount.h inodes: move dispatchers around 2021-02-10 11:52:06 -08:00
EdenMountError.h Tidy up license headers 2019-10-11 05:28:23 -07:00
FileInode.cpp inodes: move dispatchers around 2021-02-10 11:52:06 -08:00
FileInode.h inodes: move dispatchers around 2021-02-10 11:52:06 -08:00
FuseDispatcherImpl.cpp inodes: move dispatchers around 2021-02-10 11:52:06 -08:00
FuseDispatcherImpl.h inodes: move dispatchers around 2021-02-10 11:52:06 -08:00
GlobNode.cpp Rename Try::throwIfFailed -> throwUnlessValue 2021-01-11 13:05:17 -08:00
GlobNode.h Allow specifying commits to match against and prefetch in globFiles 2020-10-29 13:34:06 -07:00
InodeBase.cpp Apply clang-format update fixes 2021-01-10 10:06:29 -08:00
InodeBase.h inodes: move dispatchers around 2021-02-10 11:52:06 -08:00
InodeError.cpp allow querying Overlay file size outside of FileInode 2020-10-23 11:16:10 -07:00
InodeError.h Tidy up license headers 2019-10-11 05:28:23 -07:00
InodeLoader.h edenfs: change PathMap CaseSensitivity to runtime option 2020-09-18 08:43:14 -07:00
InodeMap.cpp inodes: make the fs refcount a flag on Windows 2020-12-04 09:13:37 -08:00
InodeMap.h inodes: rename the fuseRefcount in InodeMap 2020-11-16 09:03:18 -08:00
InodeMetadata.cpp fs: ifdef linux/macos only files 2020-09-23 12:20:41 -07:00
InodeMetadata.h Tidy up license headers 2019-10-11 05:28:23 -07:00
InodeNumber.cpp inodes: move fuse/InodeNumber.{cpp,h} into inodes/ 2020-09-02 12:15:48 -07:00
InodeNumber.h remove dependency on glog 2020-11-10 16:31:15 -08:00
InodePtr-defs.h remove dependency on glog 2020-11-10 16:31:15 -08:00
InodePtr.cpp Apply clang-format update fixes 2021-01-10 10:06:29 -08:00
InodePtr.h remove dependency on glog 2020-11-10 16:31:15 -08:00
InodePtrFwd.h Tidy up license headers 2019-10-11 05:28:23 -07:00
InodeTable.h Apply clang-format update fixes 2021-01-10 10:06:29 -08:00
InodeTimestamps.cpp Inode support on Windows 2020-04-01 14:53:30 -07:00
InodeTimestamps.h Inode support on Windows 2020-04-01 14:53:30 -07:00
Overlay.cpp Apply clang-format update fixes 2021-01-10 10:06:29 -08:00
Overlay.h externally log result of fsck scans 2020-11-12 13:47:50 -08:00
OverlayFile.cpp implement FUSE_FALLOCATE 2021-01-20 19:04:59 -08:00
OverlayFile.h implement FUSE_FALLOCATE 2021-01-20 19:04:59 -08:00
OverlayFileAccess.cpp implement FUSE_FALLOCATE 2021-01-20 19:04:59 -08:00
OverlayFileAccess.h implement FUSE_FALLOCATE 2021-01-20 19:04:59 -08:00
ParentInodeInfo.h Tidy up license headers 2019-10-11 05:28:23 -07:00
PrjfsDispatcherImpl.cpp inodes: move dispatchers around 2021-02-10 11:52:06 -08:00
PrjfsDispatcherImpl.h inodes: move dispatchers around 2021-02-10 11:52:06 -08:00
RequestContext.cpp Apply clang-format update fixes 2021-01-10 10:06:29 -08:00
RequestContext.h fuse: move and rename RequestData 2020-09-04 16:14:24 -07:00
ServerState.cpp nfs: add NfsServer class 2021-02-09 12:47:11 -08:00
ServerState.h nfs: add NfsServer class 2021-02-09 12:47:11 -08:00
Traverse.cpp Apply clang-format update fixes 2021-01-10 10:06:29 -08:00
Traverse.h inodes: rename FUSE refcount to fs refcount 2020-11-04 17:34:01 -08:00
TreeInode.cpp inodes: move dispatchers around 2021-02-10 11:52:06 -08:00
TreeInode.h inodes: move dispatchers around 2021-02-10 11:52:06 -08:00
TreePrefetchLease.cpp limit the number of tree prefetch operations that can run in parallel 2019-12-20 16:14:19 -08:00
TreePrefetchLease.h fix one case of logging of null ClientPid 2020-08-31 10:05:02 -07:00