Commit Graph

90566 Commits

Author SHA1 Message Date
Mark Juggurnauth-Thomas
55c6b5cae4 manifest: use SortedVectorTrieMap as the TrieMapType for unsharded manifests
Summary:
Switch unsharded manifest implementations to use `SortedVectorTrieMap` as their trie map type.

Because this is done through a blanket implementation, we must do this for all types at once.

Reviewed By: andreacampi

Differential Revision: D59380492

fbshipit-source-id: 9f676836798e5b64dba60ac33d727a9c4d7a10f0
2024-07-05 10:55:50 -07:00
Mark Juggurnauth-Thomas
904bb35283 manifest: implement SortedVectorTrieMap
Summary:
Implement a wrapper around `SortedVectorMap` that simulates a `TrieMap` without actually constructing one.

When using unsharded manifests in the sharded manifest algorithms, they need to provide the `TrieMapOps` interface.  Currently we do this by converting the unsharded manifest to a fully-expanded `TrieMap`.  However, for large manifests, this is expensive, and often wasteful as large parts of the manifest are likely the same anyway.

As an alternative, we can use the original `SortedVectorMap` that the unsharded manifest is built on as a basis for the trie map traversal.  We track the length of the common prefix so far traversed, and the start and end positions of all entries within the sorted vector map that start with that common prefix.  The individual trie map node emulators can share the original sorted vector map, so no copying of data is required (except to copy out values when they are reached).

Note that `SortedVectorTrieMap` is read-only.   It can be thought of as a trie-map "view" onto the original map.

Reviewed By: andreacampi

Differential Revision: D59380491

fbshipit-source-id: be2b52aad2673361b7151ad6492de0dcdaaa12d9
2024-07-05 10:55:50 -07:00
Mark Juggurnauth-Thomas
72dc50e5a6 hg_augmented_manifests: prefetch content metadata when deriving
Summary: As for fsnodes, prefetch the content metadata for all files before deriving hg augmentd manifest.  Do this concurrently with loading the mercurial changeset, so for most changesets this will take no extra time, and prevents content metadata fetches from stalling the derivation process.

Reviewed By: andreacampi

Differential Revision: D59380489

fbshipit-source-id: 8b9f84ab21eccf8a6dddf96e5f6b7ee66d98e781
2024-07-05 10:55:50 -07:00
Michael Cuevas
e2953456cf Doctor: fix diff vs status check on FilteredFS repos
Summary:
# Context

This check was broken because the GetScmStatusV2 call required the active filter to be passed in on FilteredFS repos.

# This diff

Fetches the active filter id from the getSnapshotInfo endpoint and then passes that filter id into the getScmStatusV2 endpoint so that it doesn't fail.

Reviewed By: kmancini

Differential Revision: D57345438

fbshipit-source-id: 5efe9426e1788770d3e5ef640e4891092cd9decc
2024-07-05 10:18:56 -07:00
Evan Krause
9a17ff8acb Add tests for multiple fields having image uploads
Summary: Add tests for previous diff. This is a new test suite since OSS tests only have a single field with image uploads.

Reviewed By: zzl0

Differential Revision: D59343164

fbshipit-source-id: e5a557fcfc7c554e53b23476fe711d46932cbda1
2024-07-05 10:06:04 -07:00
Evan Krause
fa700d11bf Fix image uploading showing data across different text areas
Summary:
Previously, image uploads weren't keyed by field. So if you had two fields which could accept image uploads, uploading to one would show a spinner in both, and errors in either would appear in both.

We just need to make our data store a fieldName key which we use to filter the underlying data.

Reviewed By: zzl0

Differential Revision: D59343165

fbshipit-source-id: 7c8b2308b7c991e9ad495545c6c33db16ff77bec
2024-07-05 10:06:04 -07:00
Open Source Bot
0b49d04157 Updating submodules
Summary:
GitHub commits:

bf692aba23
bfdd525c05
18d61d4cf0
028d42fb74
dc18a7291e
96dd6ae538
e57e301e08
57251a5230
21fc5b0e0d

Reviewed By: bigfootjon

fbshipit-source-id: 274745e8b795d313cf1356339f319c384a0cf72b
2024-07-05 09:30:53 -07:00
Gustavo Galvao Avena
239b111111 Add trace logs to submodule validation
Reviewed By: mitrandir77

Differential Revision: D59393135

fbshipit-source-id: e5fe0ca4bfc2c85182ef009bb432abcd3a366b6f
2024-07-05 05:46:24 -07:00
Andrea Campi
bd60d15abc Fix typo in message
Summary: Drive-by commit to fix something I noticed while testing.

Reviewed By: RajivTS, clara-9

Differential Revision: D59391199

fbshipit-source-id: d81d74cc7a57f59987a522c85e86351552da74bc
2024-07-05 04:05:17 -07:00
Andrea Campi
4847be03f9 Optionally hook up the DB to the read path
Summary:
Rather than trying to make the switch in one go, I'm introducing a new constructor. This will allow me to add some callsite at a time and test thoroughly. As long as the content of the DB and Configerator match, this should not cause any observable behavior, regardless of which code path is taken.

When the DB is empty (which is the case now) this is a giant noop anyway.

Differential Revision: D59367428

fbshipit-source-id: 08e9ac0734ad280381379ce8089bc214489e808c
2024-07-05 02:17:02 -07:00
Michael Cuevas
f95fef7211 install sighup handler
Summary:
# Context

We'd like to add log rotation for EdenFS (and eventually Watchman, Myles, etc). There are services that already exists on Linux and macOS (logrotate and newsyslog respectively). However, these services require our daemon's to implement log-reopening logic in order to work correctly (on Linux) or at all (on macOS).

We could deal with slightly correctness issues on Linux, but since we need log-reopening logic for log rotation to work at all on macOS, we should implement log-reopening so that we can use log rotation on at least two of our environments.

# Implementation

The basic way to implement log-reopening in Eden is to add a signal handler for SIGHUP. SIGHUP is used to indicate "hanging up" (in other words, the file we're writing to is now closed). When we receive SIGHUP, we can reopen the log file that we're writing to so that we can continue to persist our logs.

# This diff

This diff adds SIGHUP signal handling that reopens the log file. It also moves the log file path to be a global variable since signal handlers must be static void functions.

Reviewed By: chadaustin

Differential Revision: D59303686

fbshipit-source-id: c8ff0c54f9720388b2516c8074716a4dc3f2fbc5
2024-07-04 13:39:33 -07:00
Michael Cuevas
0944e2f159 add integration test
Summary:
# Context

We'd like to add log rotation for EdenFS (and eventually Watchman, Myles, etc). There are services that already exists on Linux and macOS (logrotate and newsyslog respectively). However, these services require our daemon's to implement log-reopening logic in order to work correctly (on Linux) or at all (on macOS).

We could deal with slightly correctness issues on Linux, but since we need log-reopening logic for log rotation to work at all on macOS, we should implement log-reopening so that we can use log rotation on at least two of our environments.

# Implementation

The basic way to implement log-reopening in Eden is to add a signal handler for SIGHUP. SIGHUP is used to indicate "hanging up" (in other words, the file we're writing to is now closed). When we receive SIGHUP, we can reopen the log file that we're writing to so that we can continue to persist our logs.

# This diff

This diff adds an integration test to show that SIGHUP handling doesn't work right now. The next diff should fix the test and prove that we handle SIGHUP correctly (and it fixes writing to a closed log file).

Reviewed By: chadaustin

Differential Revision: D59303688

fbshipit-source-id: dbbd83ba7078995918fd592d78bcae95f574e183
2024-07-04 13:39:33 -07:00
Michael Cuevas
c0a677cf04 add stub for SIGHUP handler
Summary:
# Context

We'd like to add log rotation for EdenFS (and eventually Watchman, Myles, etc). There are services that already exists on Linux and macOS (logrotate and newsyslog respectively). However, these services require our daemon's to implement log-reopening logic in order to work correctly (on Linux) or at all (on macOS).

We could deal with slightly correctness issues on Linux, but since we need log-reopening logic for log rotation to work at all on macOS, we should implement log-reopening so that we can use log rotation on at least two of our environments.

# Implementation

The basic way to implement log-reopening in Eden is to add a signal handler for SIGHUP. SIGHUP is used to indicate "hanging up" (in other words, the file we're writing to is now closed). When we receive SIGHUP, we can reopen the log file that we're writing to so that we can continue to persist our logs.

# This diff

This diff adds a stub for SIGHUP handling so that I can write an integration test in the next diff that avoids crashing the Eden daemon (sending SIGHUP to a process that doesn't handle SIGHUP will cause that process to exit).

Reviewed By: chadaustin

Differential Revision: D59303687

fbshipit-source-id: dd924957beac71868aea3adea37992733de64df3
2024-07-04 13:39:33 -07:00
Open Source Bot
f5b825346d Updating submodules
Summary:
GitHub commits:

66b37666c3
22ea900952
c6c5564e28
19e4d49f84
709d457976
3e4086117d
c309dd35bd
fe5fe5a2b3
76d39cb91a
b6d0e1a01e

Reviewed By: bigfootjon

fbshipit-source-id: e96c71adb89c7938c85265ac85873e1f16cc1f6d
2024-07-04 09:31:23 -07:00
Luisa Vasquez Gomez
30ab6730ae commit cloud: pass repo when creating service
Summary: I seem to have missed some endpoints when I did D56042552.

Reviewed By: zzl0

Differential Revision: D59305679

fbshipit-source-id: 158797cb561c779b5999dfe3812e9d4e42c009b8
2024-07-04 09:11:31 -07:00
Andrea Campi
afc70b77e3 Rename a new facet before it gets used any more broadly
Summary: `PushRedirection` was very confusing, especially when used next to `unbundle::PushRedirector` and `wireproto_handler::PushRedirectorBase`.

Reviewed By: gustavoavena

Differential Revision: D59369155

fbshipit-source-id: f4d626be157de35b22f49c2e55d05d8a75cf7a66
2024-07-04 08:58:15 -07:00
Rajiv Sharma
400c424ad7 Implement packfile parsing capability in Mononoke GRit server
Summary:
A key part of the `git push` payload is the `packfile` which contains the all the Git objects that the client wants to send over to the server. This packfile is encoded, compressed and deltified.

This diff adds the capability to parse the packfile and verify its validity. It produces a stream of objects that need to be persisted in Mononoke blobstore (which will be handled in a follow-up diff)

Reviewed By: andreacampi

Differential Revision: D59332462

fbshipit-source-id: 5c7b24649c17293c4bb69194dcfae295c9de621d
2024-07-04 07:20:55 -07:00
Pierre Chevalier
f3587869b3 derived_data: Always derive efficiently
Summary:
Before this change, there were two ways to interact with data derivation:
* `derive_exactly_batch`: a function that can be used efficiently but requires a lot of care (for instance, knowing for sure that the parents of each commit in the batch are already derived and ensuring the ordering in the batch is topological)
* `derive`: a function that's easy to use, and "does the right thing", but does so very inefficiently, with no batching and "O(n_commits * derived_data_size)" memory usage

The rule of thumb was: practically never call `derive` except if you're sure it's delegating to the derived data service that does the right thing of calling the batched interface or you will cause a SEV eventually.

Reconcile both of these implementations and sprinkle some `CommitGraph` magic on top so we can have the best of both worlds.

NOTE: We sacrifice a tiny surface of functionality, namely, logging the time spent finding underived commits, but we also make it so much more efficient that it really shouldn't matter anymore)

Reviewed By: YousefSalama

Differential Revision: D58202861

fbshipit-source-id: f30406ef9a8f0042e0f30ff9ea6f73184de775f8
2024-07-04 04:44:37 -07:00
Pierre Chevalier
0a6983dd2e config: Add configurable derivation batch sizes
Summary:
In the child diff, we replace the implementation of `derive` with a new version that sections the work into batches and derives in batches.

It will be useful to configure the behaviour so that for each individual derived data type, we can specify a reasonable batch size.

Add the config mechanics now and use them in the child diff.

Reviewed By: YousefSalama

Differential Revision: D59329112

fbshipit-source-id: fc58e2671163e8657b295f684135bf100c980955
2024-07-04 04:44:37 -07:00
Gustavo Galvao Avena
0b3a62893a Formatting changes to integration tests
Differential Revision: D59368480

fbshipit-source-id: 7c0ceedc16e6588763b80cadd40dcfe72fde2537
2024-07-04 04:06:58 -07:00
Andrea Campi
b20ce36885 Pass CoreContext, make async [2/n]
Summary: Small API change to simplify / split the rest of the stack.

Reviewed By: RajivTS

Differential Revision: D59328461

fbshipit-source-id: 60b195b5f92e3f82082261345083a679a27c4578
2024-07-04 03:31:22 -07:00
Andrea Campi
a6f269c2ff Pass CoreContext, make async [1/n]
Summary: Small API change to simplify / split the rest of the stack.

Reviewed By: RajivTS

Differential Revision: D59328417

fbshipit-source-id: e44c26ae671ac85250cb23fb77eaf509468d5a71
2024-07-04 03:31:22 -07:00
Andrea Campi
f1527bb71a Refactor to take the repo id at build time
Reviewed By: markbt

Differential Revision: D59272827

fbshipit-source-id: f0a43d32810d2de868e6aec41d068bdbce689584
2024-07-04 03:31:22 -07:00
Andrea Campi
3d49b4751a Connect the CLI to the library
Reviewed By: markbt

Differential Revision: D59270079

fbshipit-source-id: 0ba94c04320c23fcfc8131c91997e7c9f2c1c21f
2024-07-04 03:31:22 -07:00
Clara Rull
a33f88705d Extract identities from headers if mtls_disabled
Summary: When mTLS is disabled, identities must be extracted from headers. See https://docs.aws.amazon.com/elasticloadbalancing/latest/application/mutual-authentication.html#mtls-http-headers for docs on ALB headers

Reviewed By: RajivTS

Differential Revision: D59280410

fbshipit-source-id: e49a880acfeed0b9985713965284535ff4fd18a6
2024-07-04 03:25:41 -07:00
Clara Rull
aa4776d512 Add option to disable mTLS
Summary:
The current plan is
{F1737830691}
Util now mononoke supported only MTLS, this diff allows using TLS.

Reviewed By: andreacampi

Differential Revision: D59278026

fbshipit-source-id: 3bc81e4bb4fdb9812e23663590fa7e5fd496f705
2024-07-04 03:25:41 -07:00
Youssef Ibrahim
4c5ceb7db0 scs/client: add linear flag to scsc log
Summary: Adds a "linear" flag to `scsc log` to allow querying the linear history of a commit. This flag is not supported with any of the "path", "before" or "after" flags.

Reviewed By: markbt

Differential Revision: D59327662

fbshipit-source-id: caf7067c32a264594538f3d08670ca920f86f453
2024-07-04 02:22:17 -07:00
Youssef Ibrahim
1a8642fec9 scs_server: use LinearAncestorsStreamBuilder to implement commit_linear_history
Summary: Uses the commit graph `LinearAncestorsStreamBuilder` to implement SCS method `commit_linear_history`. Mostly a copy of `commit_history` without the timestamp parameters, and with the skip parameter handled in `LinearAncestorsStreamBuilder` not applied on top of the commit graph stream.

Reviewed By: markbt

Differential Revision: D59324409

fbshipit-source-id: 8e6f5f479371da44b8be1b4b01f87e02aaaa92f0
2024-07-04 02:22:17 -07:00
Youssef Ibrahim
4a5c6e13b4 commit_graph: implement a stream for linear ancestors
Summary:
Implements a builder for streams of linear ancestors. The builder allows constraining the stream to exclude the linear ancestors of a changeset, or to include only the linear descendants of a changeset. It additionally allows efficiently skipping the first N linear ancestors of the stream.

This will be used to power commit_linear_history SCS method.

Reviewed By: markbt

Differential Revision: D59324016

fbshipit-source-id: 8d5f3ac9f3f13d516457449cf28c916b02e20a8d
2024-07-04 02:22:17 -07:00
Youssef Ibrahim
46fd3c7431 commit_graph: fix bug in p1_linear_lowest_common_ancestor method
Summary: It was accessing the skip tree instead of the p1 linear tree.

Reviewed By: andreacampi

Differential Revision: D59323964

fbshipit-source-id: 4ad30964a38b9b97f3cd75e88b9ef655cb6ecc93
2024-07-04 02:22:17 -07:00
Youssef Ibrahim
3ab8d55869 commit_graph: showcase bug in p1_linear_lowest_common_ancestor method
Summary:
The method doesn't calculate the p1 linear lowest common ancestor, but the skip tree one instead. Modify unit test `test_p1_linear_tree` graph to showcase this bug.

I changed to a vertical drawdag because the horizontal drawdag was giving confusing parent order. Now the order of all parents is from left to right.

Reviewed By: andreacampi

Differential Revision: D59323881

fbshipit-source-id: eccdf70042c369c565c2ae4f949d0bbccd85eaa8
2024-07-04 02:22:17 -07:00
Youssef Ibrahim
f36da64cc5 scs_server: change skip to i64 in CommitLinearHistoryParams
Summary: Skipping is done in O(log) so we don't have to constrain the skip parameter to i32. None of our repos is that large but there's no reason not to use i64. This is not used so the thrift error is safe to bypass.

Reviewed By: andreacampi

Differential Revision: D59324153

fbshipit-source-id: 2ce8e7257297a895c4886077f6510312c9495444
2024-07-04 02:22:17 -07:00
Kaveh Ahmadi
ea2c6afe1e enable writing prjFS stat test on Windows
Summary:
The `test_writing_untracked_file_bumps_write_counter` test was in the skip list for windows. The reason was the difference between the counter names in windows.
This diff fix the counter names for Windows platform in this test and remove this test from the skip list

Reviewed By: kmancini

Differential Revision: D58888655

fbshipit-source-id: c4027cf2b3e67b635c216a8e31050be8c7034fdc
2024-07-03 19:34:30 -07:00
Kaveh Ahmadi
a86a47a5e9 Publish MarkDown files for EdenFS stats
Summary: Explanation of how stats are working at EdenFS

Reviewed By: genevievehelsel, kmancini

Differential Revision: D59252923

fbshipit-source-id: 126085c2f78abd15e00ebc39ab0a3734af141857
2024-07-03 18:56:35 -07:00
Pierre Chevalier
1c6014ae34 cross-repo sync: Break the stack size
Summary:
The cross-repo sync libraries construct really large futures that are on the border of causing stack overflows.

With D58202861, some shuffling of how derived data gets evaluated brings it over the limit and causes stack overflows in unit tests and integration tests, which manifests in SEGFAULTS.

This diff breaks down the stack in all the API functions that the cross-repo sync exposes (forward and backward sync), by boxing large futures.

Reviewed By: YousefSalama

Differential Revision: D59329111

fbshipit-source-id: 73037da9a06b69d47d1fe6ffbaffc4d1e7e5c775
2024-07-03 09:35:25 -07:00
Open Source Bot
28d5721442 Updating submodules
Summary:
GitHub commits:

906dfb1463
2e0a124b66
dcf0b6ccdb
d31f1b0fdc
5e79559d94
3dfff8fb84
66a71669ee
4fcb9b138d
6ee0656e0a
a244c8044e

Reviewed By: bigfootjon

fbshipit-source-id: 29dbbe4e446c739c6b400cec7b0c94a9f1dd104f
2024-07-03 09:31:12 -07:00
Simon Marlow
a7b0014626 CI: enable clang tests (#898)
Summary: Pull Request resolved: https://github.com/facebookincubator/zstrong/pull/898

Reviewed By: malanka

Differential Revision: D59065671

fbshipit-source-id: 2a09ae13e1d4c62a7b9a907cca0e911672435ad1
2024-07-03 08:57:21 -07:00
Muir Manders
089fe2816b contrib: don't use --chg in dot-to-model.el
Summary: This makes tests hang for some reason when running from Emacs. Didn't investigate, but --chg isn't important now that most tests supports debugruntest, so just remove it.

Reviewed By: quark-zju

Differential Revision: D59232877

fbshipit-source-id: c1fc0f2a4099e8255bef62073b5f9259c0a33c56
2024-07-03 08:46:56 -07:00
Muir Manders
d0abcc1cfc goto: add a couple more "checkout_info" fallback traces
Reviewed By: zzl0

Differential Revision: D59232876

fbshipit-source-id: 06bf6f2774ff842409411faa5e0e412a1d934842
2024-07-03 08:46:56 -07:00
Andrea Campi
e13a52c716 Add pushredirection DB library
Reviewed By: RajivTS

Differential Revision: D59216355

fbshipit-source-id: 7617a10c3c63ef404f8bc3dc1ca185407d34444b
2024-07-03 08:22:39 -07:00
Andrea Campi
71476588a6 Add pushredirection subcommands
Reviewed By: markbt

Differential Revision: D59270080

fbshipit-source-id: c2bf294db60c6aa7504504459292a9b708a4bbb7
2024-07-03 08:22:39 -07:00
Liubov Dmitrieva
29ffeeb511 fix broken test
Summary:
fix broken test

15 to 16 is expected to change since we added a new dd type but this test was
missed in D59230541 since CI for that diff failed to show the failing test

Reviewed By: YousefSalama

Differential Revision: D59324139

fbshipit-source-id: 4334edb0fd556510ca77dd0fd53962cfabd0de9b
2024-07-03 07:21:28 -07:00
Gustavo Galvao Avena
7143f3025d Improve logs for submodule expansion validation failures
Summary:
Minor improvements to the submodule expansion validation code.
- Provide more specific context about which submodule expansion failed validation.
- Print and log what were the unexpected files that led to validation failing.

Reviewed By: RajivTS

Differential Revision: D59272753

fbshipit-source-id: b0573d296810c7a763cd0faa164b818c61b310de
2024-07-03 05:15:43 -07:00
Liubov Dmitrieva
fcf249beb1 Back out "deprecate unused fields from trees metadata"
Summary:
Original commit changeset: 1d9e7f6857f0

Original Phabricator Diff: D59030345

Reviewed By: andreacampi, samkevich

Differential Revision: D59319481

fbshipit-source-id: 4f4d063bb00d98005079ab846264ff9a48b02622
2024-07-03 05:12:32 -07:00
Rajiv Sharma
b172694406 Clean up the logic in git-receive-pack handler
Summary: The parent diff had a few review comments + I wanted to do some extra cleanup so I combined those together in this diff.

Reviewed By: gustavoavena

Differential Revision: D59320456

fbshipit-source-id: ab739d00eba519dcccf8a9928accc484a3fe8022
2024-07-03 04:22:15 -07:00
Andrea Campi
d7d8bebbea Add Thrift files synced from configerator
Summary: D59264927 enables the automatic sync of these files; this diff adds TARGETS files and verifies everything works.

Reviewed By: RajivTS

Differential Revision: D59265101

fbshipit-source-id: 5efc2d423b146ca533762a8f7feafa4c8ab9b8b4
2024-07-03 03:04:23 -07:00
Rajiv Sharma
59dde67e9e Implement the git-receive-pack endpoint in Mononoke GRit server
Summary:
The core part of `git push` is handled by the `git-receive-pack` endpoint. This diff adds all the necessary scaffolding to make the communication between the client and the server possible. However, it does not actually move the bookmark just yet. Given that the surrounding code itself is complex enough, I have decided to split that into two different diffs.

Follow up diffs will implement the actual logic of invoking hooks and moving bookmarks.

Reviewed By: gustavoavena

Differential Revision: D59285259

fbshipit-source-id: 6f580f8bf7f993389e48d22e4879ebfaa9e3ea43
2024-07-03 02:36:28 -07:00
Liubov Dmitrieva
50fa890d82 add a compatibility test mononoke with sapling!
Summary:
add a compatibility test mononoke with sapling!

it is very important to have a compatibility test between the types

Reviewed By: RajivTS

Differential Revision: D59274564

fbshipit-source-id: bd3178712f91c811d75142461bc8d6f9fd48d4e0
2024-07-03 02:12:30 -07:00
Youssef Ibrahim
723b262a4c scs_server: add boilerplate for commit_linear_history method
Summary:
Context: For querying commit history from SCS we have the commit_history method. However, depending on the parameters passed to this method, it can be very inefficient. Most of the inefficiency comes from having to handle merge commits in the history, but most of our clients do not actually care about merges. Therefore I'm going to introduce another method that ignores merge commits, which allows it to be implemented in a way that's efficient for all possible parameters (efficient as in O((output size) * log))

Adds a new method for querying the linear ancestors of a commit. Linear ancestors of a commit are commits that can be reached by repeatedly following the first parent, including the commit itself. I'm explicilty ignoring the `after_timestamp` and `before_timestamp` parameters because they are well known to cause users to write inefficient queries.

Reviewed By: markbt

Differential Revision: D59273639

fbshipit-source-id: bd5c92b7b46b56637e91600f0a3c73aa084f4a58
2024-07-03 01:57:48 -07:00
David Barsky
f371238480 actually enable valuable on tracing
Summary: I thought `valuable` was enabled; it wasn't. Let's *actually* enable it.

Reviewed By: Wilfred

Differential Revision: D59301882

fbshipit-source-id: 60337d3b69f8babb4cd6f12d044fd2f856539056
2024-07-02 21:05:33 -07:00