sapling/eden/fs/model
Michael Cuevas 61c02ae9ef remove entropy location assumptions from ObjectId hash
Summary:
Having a strict ObjectID format is quite inconvenient. We will need to introduce a new ObjectID format for Eden x Sparse, so it's in our best interest to remove the ObjectID format restrictions before hand.

This will allow us to place the high entropy data (proxy hash in our case) in any location in the ObjectId without causing a ton of hash collisions. This will enable us to introduce FilteredObjectIDs in the form:

`<tree_or_blob_byte><filterset_id><path><ObjectId>`

where the `<ObjectId>` contains the high entropy bits we need to hash.

Reviewed By: xavierd

Differential Revision: D45793298

fbshipit-source-id: 77385e32f63d5f3d1fc37b72b9971f5717cbd872
2023-05-17 17:47:42 -07:00
..
git remove a folly/Range include from GitBlob.h 2023-05-10 16:26:12 -07:00
test remove entropy location assumptions from ObjectId hash 2023-05-17 17:47:42 -07:00
Blob.h add debugGetBlob 2022-11-18 15:19:40 -08:00
BlobMetadata.h fs: fix license header 2022-01-04 15:00:07 -08:00
CMakeLists.txt Back out "Back out "[eden] Generalize Hash and add Hash32"" 2023-04-22 07:14:52 -07:00
EntryAttributeFlags.h return value instead of error for non source control types 2023-04-10 18:28:23 -07:00
Hash.cpp break Hash's dependency on folly/Conv 2023-05-09 15:29:04 -07:00
Hash.h silence a GCC warning 2023-05-11 14:49:34 -07:00
ObjectId.cpp remove entropy location assumptions from ObjectId hash 2023-05-17 17:47:42 -07:00
ObjectId.h remove entropy location assumptions from ObjectId hash 2023-05-17 17:47:42 -07:00
RootId.cpp fs: fix license header 2022-01-04 15:00:07 -08:00
RootId.h fix the custom PathFuncs and ObjectId formatters 2022-10-04 21:42:44 -07:00
TestOps.cpp support efficient object equality checks across ID schemes 2022-07-26 17:32:23 -07:00
TestOps.h give up on trying to keep operator== out of ObjectId 2023-05-09 15:29:04 -07:00
Tree.cpp support efficient object equality checks across ID schemes 2022-07-26 17:32:23 -07:00
Tree.h support efficient object equality checks across ID schemes 2022-07-26 17:32:23 -07:00
TreeEntry.cpp break Hash's dependency on folly/Conv 2023-05-09 15:29:04 -07:00
TreeEntry.h minor VirtualInode refactoring 2023-05-11 11:10:01 -07:00