sapling/eden/fs
Chad Austin e03b717a45 make std::hash<Hash> noexcept
Summary:
In D10384953 I learned that std::unordered_map<Hash, V> V for any V
would waste storage by storing the hash result in each hash node. This
is especially silly because the hash function of std::Hash is as
simple as loading the first word from memory.

Marking the hash function as noexcept reduces the node size for
std::unordered_map<Hash, BlobMetadata> from 72 to 64, making it fit
cleanly in one of jemalloc's slabs.

Reviewed By: strager

Differential Revision: D10385972

fbshipit-source-id: 7a3da5d09be0650ad43849e6d82334b44f3582a3
2018-10-22 20:27:24 -07:00
..
config make mononoke tier configurable 2018-10-10 14:47:08 -07:00
fuse support running on kernels that require smaller fuse_init_out responses 2018-10-10 13:09:19 -07:00
inodes Fix -Wreturn-std-move violations 2018-10-22 20:27:24 -07:00
journal explicitly complete StreamPublisher stream on destruct 2018-10-01 13:21:59 -07:00
model make std::hash<Hash> noexcept 2018-10-22 20:27:24 -07:00
rocksdb add CMake build files 2018-04-30 14:37:46 -07:00
service Print log file path separately from "started" message 2018-10-12 17:06:41 -07:00
sqlite avoid leaking the sqlite3 db if we fail to open it 2018-06-20 16:36:22 -07:00
store improve context in errors reported when talking to mononoke 2018-10-10 14:47:08 -07:00
takeover Future<T>::then Future<T>::then() -> Future<T>::thenValue or thenTry. 2018-10-07 17:06:49 -07:00
testharness move fsync and flush from EdenFileHandle to FileInode 2018-10-08 11:13:38 -07:00
utils fix memory error in relativize() 2018-10-09 16:39:45 -07:00
CMakeLists.txt add CMake build files 2018-04-30 14:37:46 -07:00