Commit Graph

84915 Commits

Author SHA1 Message Date
Mark Shroyer
c8e7ae345d Skip test_mount_state_during_unmount_with_in_progress_checkout on macOS
Summary:
This is currently timing out and blocking our build:
https://www.internalfb.com/intern/test/844425038424631?ref_report_id=0

Reviewed By: kmancini

Differential Revision: D49336363

fbshipit-source-id: 61e9ce2e7501b5045e693d4b117daff85fbd7c51
2023-09-15 17:31:49 -07:00
Open Source Bot
bfc1a52b18 Updating submodules
Summary:
GitHub commits:

090c3c64e0
1c6faf3587

Reviewed By: jailby

fbshipit-source-id: b20b1cbcc471f3feb33f859af2b29ac850cc7a9c
2023-09-15 17:17:39 -07:00
Open Source Bot
8225d01a04 Updating submodules
Summary:
GitHub commits:

9df5b22a11
13049e5ee2
051cad3867
b1f3f76d4e

Reviewed By: jailby

fbshipit-source-id: 59c10a0c5682e523f14fe61a7bb1f593c5c99a4c
2023-09-15 14:35:37 -07:00
Muir Manders
a9338d324b Back out "sharded_map: implement a way to create a sharded map node from independent values and other sharded map nodes"
Summary:
Original commit changeset: 4a6f549cd250

Original Phabricator Diff: D48954392

Reviewed By: YousefSalama, sggutier

Differential Revision: D49330473

fbshipit-source-id: 7a7d5a4e50cc668e64478ee04724fa06afa54116
2023-09-15 14:13:44 -07:00
Muir Manders
b92771a3f6 Back out "manifest: implement TrieMap and use it in PathTree in place of BTreeMap"
Summary:
Original commit changeset: 260df0c3dea6

Original Phabricator Diff: D48954390

Reviewed By: YousefSalama

Differential Revision: D49330476

fbshipit-source-id: 3a1f9a82d77d7385ff60dc452fffd9d003e846c2
2023-09-15 14:13:44 -07:00
Muir Manders
3ca153cf1b Back out "manifest: introduce TrieMapOps trait and modify TreeInfo to allow including reused maps"
Summary:
Original commit changeset: 66cc6e782f02

Original Phabricator Diff: D48954395CI (backout due to BSSM derivation issue that caused T163954089)

Reviewed By: YousefSalama

Differential Revision: D49330479

fbshipit-source-id: 0701e3a28b9e794f02edb3613fe4847f016bda0d
2023-09-15 14:13:44 -07:00
Muir Manders
4167d0cccf Back out "manifest: rework merge function to use a trie merge"
Summary:
Original commit changeset: ab72e6a14d9b

Original Phabricator Diff: D48954396

Reviewed By: YousefSalama

Differential Revision: D49330475

fbshipit-source-id: 9aa7d346aa4a39a7276c12a2e1256a40d5ea4365
2023-09-15 14:13:44 -07:00
Muir Manders
9279e37064 Back out "sharded_map: implement ShardedTrieMap"
Summary:
Original commit changeset: f551e1634179

Original Phabricator Diff: D48954393

Reviewed By: YousefSalama, sggutier

Differential Revision: D49330477

fbshipit-source-id: 3bae5ef36eda8e1eab167741719c056da7c33493
2023-09-15 14:13:44 -07:00
Muir Manders
d96b69d9a7 Back out "manifest: add consumed_subentries to TreeInfo"
Summary:
Original commit changeset: 1247a930c59e

Original Phabricator Diff: D48954391

Reviewed By: sggutier

Differential Revision: D49330474

fbshipit-source-id: a69cc5a6e3aefa3fdc64a62bfd9e786282e66ea2
2023-09-15 14:13:44 -07:00
Muir Manders
42ccd24356 Back out "bssm: optimize derivation by reusing sharded map nodes"
Summary:
Original commit changeset: 6d0873232e51

Original Phabricator Diff: D48954394

Reviewed By: sggutier

Differential Revision: D49330478

fbshipit-source-id: c8087c9ccc85aa9e46c03b90aac346f5c6095dfa
2023-09-15 14:13:44 -07:00
Open Source Bot
30c83c02ec Updating submodules
Summary:
GitHub commits:

8f47070e03
58294680f7
986b3a6bae
68ce5d84f6
77c03644b2
54f0dfddf1
02ea91aebc
be1d5cadea

Reviewed By: jailby

fbshipit-source-id: b7856febf4dd7abf6a8ed5d34bd6ec464ec82f6f
2023-09-15 13:21:48 -07:00
Jun Wu
b05f41dd95 namespaces: make titles namespace avoid revset alias
Summary:
Without this the titles namespace can conflict with revset aliases like `top`,
`prev`, or user-defined ones.

Context:
https://fb.workplace.com/groups/2057771867705016/posts/2597930333689164/

Reviewed By: muirdm

Differential Revision: D49326340

fbshipit-source-id: cd1200ec2d550ec496089a5ce258fa09e7807172
2023-09-15 12:48:34 -07:00
Muir Manders
2045553340 rage: try to fix fatal timeout errors
Summary:
Recently we've been seeing a lot of rage collection errors. I don't know exactly what is happening, but typically we see a TimedOut exception that has bubbled to the main thread, and/or an "abort: IO::main() is not available (dropped)" error.

We do something unsafe where we run sl commands in-process in a thread (the thread gives us the ability to join() with a timeout). If the thread hasn't finished in time, we raise an exception within the thread (and don't wait any further). It is not hard to imagine this causing problems when sl is fundamentally not thread safe and has various global state.

I made three changes to try to fix/avoid the errors:
1. Ignore the TimedOut exception at the top level to be sure it never bubbles up and exits us.
2. When a thread doesn't finish in time and we inject an exception, give it a few seconds to exit naturally. This could let it clean up normally in some cases.
3. In bindings.commands.run, only restore the global IO back if our current IO override is still active. In other words, if another thread has changed the global IO since we started, don't mess with it.

Reviewed By: quark-zju

Differential Revision: D49289240

fbshipit-source-id: c6d8471cb1df0239cacaeb2e1a3d12b929bc36ef
2023-09-15 12:25:28 -07:00
Haitao Mei
a11d7cde08 Rename PublicChangesetBulkFetch to ChangesetBulkFetcher
Summary:
`PublicChangesetBulkFetch` fetchs all the commits, and also provides a method to filter out all the public commit.

This is a misleading name, we're better to call it `ChangesetBulkFetcher`

Reviewed By: YousefSalama

Differential Revision: D49277309

fbshipit-source-id: f2857d39764bc39673a0f7968fb1a2cface16d63
2023-09-15 11:32:38 -07:00
Open Source Bot
7baf12b4de Updating submodules
Summary:
GitHub commits:

d62f64f56a
1e2fd343bb

Reviewed By: jailby

fbshipit-source-id: f29b8ba90c9268685b8a5ce337ceb2e19dc97c60
2023-09-15 11:23:52 -07:00
Open Source Bot
80589841c5 Updating submodules
Summary:
GitHub commits:

d78deb1836
5887cbc2e4
3c342323ea
abf3cf84fd

Reviewed By: jailby

fbshipit-source-id: 1179d8db859ae3e2daff0bd16bbd31d2cb463a13
2023-09-15 08:48:19 -07:00
Open Source Bot
930c61f072 Updating submodules
Summary:
GitHub commits:

61c11d77eb

Reviewed By: jailby

fbshipit-source-id: 792d00a1ea4f92b7dd18504241e010ecf39aa4ce
2023-09-15 07:41:13 -07:00
Haitao Mei
0573ce5343 Introduce fetch both public and draft commits method to ChangesetBulkFetch
Summary:
This diff:
* allows the PublicChangesetBulkFetch to support fetch all commit (both draft and public).
* makes the walker to walk both types of commit in Scrub mode.

Next diff: rename PublicChangesetBulkFetch

Reviewed By: YousefSalama

Differential Revision: D49314344

fbshipit-source-id: cdbbbdc26103fd509cbaf9246a54b1861a33ecbb
2023-09-15 05:35:37 -07:00
Open Source Bot
2ee7b44a1d Updating submodules
Summary:
GitHub commits:

05ba1cf5be
e3d77aada0

Reviewed By: jailby

fbshipit-source-id: 365bf3ce544f781cda4d8d58797c737ba19096cc
2023-09-15 03:28:52 -07:00
Open Source Bot
7e91840584 Updating submodules
Summary:
GitHub commits:

1d8ab82da0

Reviewed By: jailby

fbshipit-source-id: 681a73cbf826862fdf24b9cd14f720adfc46e0e0
2023-09-14 20:29:24 -07:00
Genevieve (Genna) Helsel
fed870d3ca add explicit mapping of ConfigSourceType to precedence
Summary: Code review from D37169769 - its not easy to extend implicit precedence in thrift without unsafe reordering - instead lets map this ourselves in the code

Reviewed By: xavierd

Differential Revision: D48758164

fbshipit-source-id: faab964fae19cacc681628c5f31a6bc184a9a94f
2023-09-14 19:36:52 -07:00
Open Source Bot
a800e12297 Updating submodules
Summary:
GitHub commits:

aabf07a68f
e4324015ec
011378a05a
6c8c1e9263
92127985c3

Reviewed By: jailby

fbshipit-source-id: f968e144d154d6466ff3fff8d7d6a343a1441300
2023-09-14 19:24:23 -07:00
Open Source Bot
0f242a191d Updating submodules
Summary:
GitHub commits:

49e425c30b
97beb7ea99
2d6849a1f5
85af7cb49b
ec641b0bf9

Reviewed By: jailby

fbshipit-source-id: 91d89236143bc06781081240a30c6001089bfc74
2023-09-14 16:22:27 -07:00
Mark Shroyer
5775cd504e Log unsupported fuse operations as WARN
Summary:
While requesting an unsupported FUSE operation is an error from the client's
perspective, it isn't an error from eden's perspective, so it's misleading to
log them as such.

Reviewed By: genevievehelsel

Differential Revision: D49281263

fbshipit-source-id: eac3a4ee2f489a1af4485c349207c94473f4d77e
2023-09-14 15:45:50 -07:00
Open Source Bot
c04503efc8 Updating submodules
Summary:
GitHub commits:

1fbf25403a
c3404b5008
bb1b81241b
3c27f56d0b
f26912ed08

Reviewed By: jailby

fbshipit-source-id: fda00ae216abb7590d41a162198f0f906e6067e6
2023-09-14 14:54:13 -07:00
Open Source Bot
e8be6780c4 Updating submodules
Summary:
GitHub commits:

fa58c264ec
ffbc628c91
d5c82b3a64
303ec35c4d
84d335b619
7280aa9add

Reviewed By: jailby

fbshipit-source-id: 4a3b51f5836c240d3edd2c6fe64bc94d5a6791cf
2023-09-14 13:45:33 -07:00
Evan Krause
4d36f7e7d5 VS Code extension version 0.1.26
Summary: Hot fix to disable split on right click with uncommitted changes.

Reviewed By: quark-zju

Differential Revision: D49286542

fbshipit-source-id: 3f0fc1bb41b983daa35648d544f1e438bb0edf75
2023-09-14 12:12:32 -07:00
Evan Krause
7548c2ff8c Disable split from right click if you have uncommitted changes
Summary:
We don't technically need to disable if you're splitting outside the stack with head... but let's just be safer to start with.

I don't remove the option, instead i show it as disabled and hint why it's disabled

Reviewed By: quark-zju

Differential Revision: D49286253

fbshipit-source-id: 45a3d4caf1e84d1f5ee9968641a37ed08c134c59
2023-09-14 12:12:32 -07:00
Evan Krause
50addfbcd6 Fix left arrows overflowing
Summary: Tiny visual bug: left arrows would overflow out of the file

Reviewed By: quark-zju

Differential Revision: D49285293

fbshipit-source-id: 395cd9fdd5c4ac0a753245033d0314b0825d795d
2023-09-14 12:12:32 -07:00
Evan Krause
bd1e003099 Move stack edit and split files to subfolder
Summary: I noticed these files were just at the top level, but it's kind of nice ot have them in the same subfolder

Reviewed By: quark-zju

Differential Revision: D49241576

fbshipit-source-id: ac75a5d27202e6f2bb193a7d32d3396592800d2f
2023-09-14 12:12:32 -07:00
Open Source Bot
912e3abf72 Updating submodules
Summary:
GitHub commits:

0148eae8bd
77101e0868
91ab135969
61e0f9a2b7
d32879e0e0
483b521713
470a82b841
7c4c5f6f29
2204fca819
67596fda2e

Reviewed By: jailby

fbshipit-source-id: 43eb826ce49725cbcc7776bccd919b296a604ba6
2023-09-14 11:39:10 -07:00
Open Source Bot
69f33a51a6 Updating submodules
Summary:
GitHub commits:

143cd153ff
30a18233dd
9eb27a5d37
b895aab2bc
f0d6d6ea04
3e211fb36c

Reviewed By: jailby

fbshipit-source-id: 5c2c5c8a04164951d5cba0ee05a8ccf255211a73
2023-09-14 10:49:09 -07:00
Zhaolong Zhu
944ef7e95c config: enable dagcopytrace for open source version
Summary:
1. enable dagcopytrace for open source
2. delete unused maxmovescandidatestocheck

Reviewed By: sggutier

Differential Revision: D49276632

fbshipit-source-id: 021d87c2fad7a4170ba0ea5466e8c2f58b650fbf
2023-09-14 10:23:03 -07:00
Genevieve (Genna) Helsel
967b2ffc79 S362020: disable redirect_tests on macOS sandcastle hosts
Summary: disable redirect_tests on macOS sandcastle hosts due to them leaving behind disk images that clog up the mount table and cause chef to fail

Reviewed By: kmancini

Differential Revision: D49256840

fbshipit-source-id: 33cbfe8fdb38e8a4f71863d564db4b77b2fbcd4c
2023-09-14 10:07:36 -07:00
Open Source Bot
23ecd8e60d Updating submodules
Summary:
GitHub commits:

f9cb8e145c
dba965a772
5999784a3c
97b21a48df

Reviewed By: jailby

fbshipit-source-id: 90bee64625e4e7c8065c13722eaa41ec2ad95e6c
2023-09-14 08:24:27 -07:00
Youssef Ibrahim
ecf0f14c68 bssm: optimize derivation by reusing sharded map nodes
Summary:
For context on consumed_subentries see last diff.

Optimize derivation for BSSM by making use of the reused sharded map nodes provided in TreeInfo. Calculating rollup counts is tricky as we don't have rollup counts associated with sharded map nodes, instead they are associated with the subentries themselves. To work around this without having to expand the reused sharded map nodes, we make use of consumed_subentries as defined in the last diff. This will be unnecessary once we allow aggregate information to be stored on sharded maps. Also remove no longer needed top level directory optimization.

Differential Revision: D48954394

fbshipit-source-id: 6d0873232e5183fd066e7de3538a03593e8231cf
2023-09-14 07:41:43 -07:00
Youssef Ibrahim
94bc03957f manifest: add consumed_subentries to TreeInfo
Summary:
consumed_subentries consists of all subentries in all parent manifests except subentries that belong to reused maps. This can be helpful in calculating aggregate information (e.g. rollup counts) without having to expand reused maps (parent subentries - consumed subentries + produced subentries = the subentries for the new manifest).

Ideally we would extend sharded map nodes to have aggregate information themselves, which would be much simpler, allow for aggregate types that can't be inverted (e.g. maximum path length), and allow deduplicating identical maps in derivation for merge commits that share subentries. But for now this has the same performance and unblocks speeding up BSSM derivation.

Differential Revision: D48954391

fbshipit-source-id: 1247a930c59e774a69732423364ffe0d3b19a054
2023-09-14 07:41:43 -07:00
Youssef Ibrahim
79256fb17c sharded_map: implement ShardedTrieMap
Summary:
Implements a ShardedMapTrie wrapper for sharded maps to make it easier to implement TrieMapOps. ShardedMapTrie starts off by storing a ShardedMapEdge, and on each call to expand it:
- erases the beginning character if it's pointing to an intermediate node with a non-empty prefix.
- expands to its children if it's pointing to an intermediate node with an empty prefix.
- transforms into an in memory TrieMap if it's pointing to a terminal node then expands.

Differential Revision: D48954393

fbshipit-source-id: f551e1634179161d5133ffd21602a6312b73e4bd
2023-09-14 07:41:43 -07:00
Youssef Ibrahim
83fa5f9966 manifest: rework merge function to use a trie merge
Summary:
Currently the merge function in the derivation code lists all subentries in all parent manifests when trying to determine what to recurse on to compute new subentries. This made sense before the creation of sharded manifests as all subentries used to always exist in a single blob, but with sharded manifests this can be very expensive as it can require accessing a large number of blobs. Moreover this wastes the opportunity to reuse shards from parent manifests that do not conflict with any other manifest or any of the changes.
This diff refactors this logic to use a trie merge algorithm that recursively expands the subentries in the parent manifests and in the changes byte by byte, reusing parent maps when possible. This is all done generically through the TrieMapOps trait

Differential Revision: D48954396

fbshipit-source-id: ab72e6a14d9bccfa5f25c48a660a04c8a6335382
2023-09-14 07:41:43 -07:00
Haitao Mei
4db0118d95 GC - Print progress when handling the initial generation
Summary: As titled. This allows us to check the progress easier in Skycastle

Reviewed By: mzr

Differential Revision: D49271732

fbshipit-source-id: 86fd0e49d0a2f181926f57b62c099132bace2714
2023-09-14 07:00:16 -07:00
Haitao Mei
0c9e107597 Packing - increase packer retry times, and backoff time
Summary: As titled

Reviewed By: YousefSalama

Differential Revision: D49271612

fbshipit-source-id: c6104f1c9e375ae21fb7642522c4258b1789b330
2023-09-14 06:16:36 -07:00
Rajiv Sharma
8875204150 Implement helper methods for GitDeltaManifest
Summary: Since `GitDeltaManifest` is a `Manifest` type, usually it makes sense to implement the `AsyncManifest` trait so we can use `ManifestOps` methods to access its elements. However `GitDeltaManifest` is not a regular manifest that is structured like a tree and is instead a flat manifest which is structured like a list. Hence, instead of implementing the `Manifest` or `AsyncManifest` trait, the helper methods for accessing the elements are defined directly on the `GitDeltaManifest` type.

Differential Revision: D49146739

fbshipit-source-id: b8eca14ae7b5a5508c50fe7393b270989a21145b
2023-09-14 02:58:34 -07:00
Rajiv Sharma
515b497d7b Core derivation logic for GitDeltaManifest
Summary: With all the building blocks in place, it is time to finally implement the core derivation logic for `GitDeltaManifest`. This diff is necessarily large since it is not possible to break up the derivation into more pieces. The next diff will contain unit tests to validate that deriving the delta manifest doesn't lead to a runtime error. Additionally, it would validate that the manifest includes the expected entries. Testing beyond that would require E2E integration test which would take a while.

Differential Revision: D48783515

fbshipit-source-id: fa71b41d21ffd384e4be2810ae94a3c3e713468a
2023-09-14 02:58:34 -07:00
Open Source Bot
736a812440 Updating submodules
Summary:
GitHub commits:

714f83a12b
6734ef81bb

Reviewed By: jailby

fbshipit-source-id: b7e9229727650cbfca6fb9d00bd85ba01f93d322
2023-09-14 01:37:08 -07:00
Open Source Bot
a9348a809a Updating submodules
Summary:
GitHub commits:

25eedbee2f
5a9cb900d4
a9eed7eddf
262d7653fb
e9354bb74c
dc5958f76d

Reviewed By: jailby

fbshipit-source-id: 22efb6b998d813080b3f74b3b1f59abfc1ff12c4
2023-09-13 21:23:11 -07:00
Evan Krause
b4f39b7310 VS Code extension version 0.1.25
Summary: Version bump and changelog entry for new OSS vscode extension release

Reviewed By: quark-zju

Differential Revision: D49253564

fbshipit-source-id: 042217ed72ea5f5bc7494aca614987fae2c46c0c
2023-09-13 19:42:50 -07:00
Evan Krause
8a8aaef522 Change "goto" icon
Summary:
Someone noted that the goto button's arrow icon looks like the old ISL's button to open the sidebar.

Would love feedback about this new icon. I think it's a little less confusing, maybe.

Reviewed By: quark-zju

Differential Revision: D49253780

fbshipit-source-id: d78763eb77956ec7231d6eb6b0df002aac6e647d
2023-09-13 19:42:50 -07:00
Evan Krause
c8f8ccc065 Add analytics for split
Reviewed By: quark-zju

Differential Revision: D49253565

fbshipit-source-id: 1ce159bf354667b6c78a5e90b344ff163b413e41
2023-09-13 19:42:50 -07:00
Evan Krause
7c6582cd1f Prevent 1px of scrolling on files
Summary:
Minor fix, I noticed sometimes I could scroll horizontally by 1px, which steals my main horiztonal scroll from working. This is surprisingly annoying.

Turns out, it's from the left/right arrows, when hovered, the arrows now overflows out of the file by 2px, which becomes scrollable.

The fix is to translate the arrow slightly when scaling. This actually emphasizes the arrows a little bit more by having them stand out further to the left.

Reviewed By: quark-zju

Differential Revision: D49253092

fbshipit-source-id: 346fa2b2634547ee30c3e02dd2c0592c1376190b
2023-09-13 19:42:50 -07:00
Evan Krause
0e7d47e7d2 make empty commit's title read only
Summary: We talked about making this not ever render as an editor, but let's just make the editor read only for now, it's very simple to do.

Reviewed By: quark-zju

Differential Revision: D49252609

fbshipit-source-id: 444d609f6cd526d26cef5b3c171bd9a7f0c45a0e
2023-09-13 19:42:50 -07:00