Commit Graph

62440 Commits

Author SHA1 Message Date
Mark Juggurnauth-Thomas
4da7dfb91f add ref-cast to thrift dependencies
Summary:
Depending on the thrift defition, `thrift_library` targets may also depend on `ref-cast`.
Add this to the `Cargo.toml`.

Reviewed By: lukaspiatkowski

Differential Revision: D25636872

fbshipit-source-id: 8263395db2bb31127528f5c66c4cc5dd9180d89f
2021-01-11 02:17:50 -08:00
svcscm
bedf7d8efb Updating submodules
Summary:
GitHub commits:

6e82a16334
8ca26c2404
354b4adcd7

Reviewed By: yns88

fbshipit-source-id: 6cb8560df71457129748fb6736fe25f58cd1b0bc
2021-01-11 01:54:06 -08:00
Stanislau Hlebik
749919b0fb mononoke: add an admin command to insert mapping entries
Summary:
This diff adds a debug command that allows inserting different kinds of mapping
entries:
1) Rewritten, meaning that source repo commit rewrites into a target repo
commit
2) Equivalent working copy, meaning that source repo commit doesn't rewrite
into a target repo commit, but one of its ancestors does
3) NotSyncCandidate, meaning that large repo commit shouldn't be remapped into
a small repo

Reviewed By: ahornby

Differential Revision: D25844996

fbshipit-source-id: 1ba64540cf511da8cc50c80a5bee822a950707be
2021-01-11 01:00:59 -08:00
Stanislau Hlebik
d1bfed8f4a mononoke: remove MAPPING_VERSION_ARG
Summary: Let's be a bit more consistent and use ARG_VERSION_NAME

Reviewed By: krallin

Differential Revision: D25844995

fbshipit-source-id: c09be5a38ef97bc491b324f49a2c7d0b6a47212e
2021-01-11 01:00:59 -08:00
svcscm
513445f509 Updating submodules
Summary:
GitHub commits:

f07bb93a7a

Reviewed By: yns88

fbshipit-source-id: d2b44ee8aef91a20af55a47c64b22d69b6495bf3
2021-01-11 01:00:59 -08:00
svcscm
41d1855481 Updating submodules
Summary:
GitHub commits:

2ac2c88a69
a1a88c7a3f
dd429c2e51
97f46812a5
e4bd2c6bef
e4be70c362

Reviewed By: yns88

fbshipit-source-id: a5e7bfa2335e1547980137300a55ac83fcca5670
2021-01-10 10:52:10 -08:00
Andres Suarez
21c95391ca Apply clang-format update fixes
Reviewed By: igorsugak

Differential Revision: D25861960

fbshipit-source-id: e3c39c080429058a58cdc66d45350e5d1420f98c
2021-01-10 10:06:29 -08:00
svcscm
239356ffa9 Updating submodules
Summary:
GitHub commits:

12bcb6a9c4
779d7b6052
9f238cb8b9

Reviewed By: yns88

fbshipit-source-id: a4995f9390755d09d9e645a9bb983e517d590cc3
2021-01-10 10:06:28 -08:00
svcscm
5c3318afc6 Updating submodules
Summary:
GitHub commits:

2aea7a21a8

Reviewed By: yns88

fbshipit-source-id: 1a15e3e4de9ad5d93a4495bb956ebac0c7488d6e
2021-01-09 09:45:37 -08:00
svcscm
bf62fb2c66 Updating submodules
Summary:
GitHub commits:

ed6fa93cc8

Reviewed By: yns88

fbshipit-source-id: e31b527397a1c569a6d74136b039f0473032fb9a
2021-01-09 09:45:37 -08:00
svcscm
bebd81271a Updating submodules
Summary:
GitHub commits:

8f2777ae4c
2f9a3d6e4e
06f9ac3026
3c2929a0e3
aa1c0efece

Reviewed By: yns88

fbshipit-source-id: 12993e3004220033feae9160321870c3259e21b4
2021-01-08 17:52:00 -08:00
svcscm
8915af6de8 Updating submodules
Summary:
GitHub commits:

867a307ecd
90d71b6135

Reviewed By: yns88

fbshipit-source-id: db740d11bbe1580559c70f7621c340a8be2f9bd8
2021-01-08 17:52:00 -08:00
svcscm
702f0a33ff Updating submodules
Summary:
GitHub commits:

6d8b291bd4
8cf67ca04f
78e4b605a3
70fb934db3
e19755143e
9daae87a3d
3a27a4c8a4

Reviewed By: yns88

fbshipit-source-id: 8be42153ae2e76389af175b6278d9782893b845c
2021-01-08 13:01:02 -08:00
Stefan Filip
dcfb24ccc6 commands: add simple progress reporting for debugsegmentclone.
Summary:
Rough progress reporting. The progress bars are straight coming from the
`indicatif` crate. Integrating with the `IO` object is not trivial because
we only have a reference. It gets tricky. I think that it makes sense for
us to expand the IO object to something that is more than a `Box<dyn Write>`.
We have about 3 scenarios:
1. Write object that we need to implement interior mutability for to give out
clones.
2. Stdin/Stdout which have their own imlementation for interior mutability.
3. PyObject which has locking already implemented.

(Note: this ignores all push blocking failures!)

Reviewed By: quark-zju

Differential Revision: D25840469

fbshipit-source-id: 87f466f06f2c5d4c63ccb3bbc5c009fae41ed002
2021-01-08 12:07:45 -08:00
svcscm
3c39bf84de Updating submodules
Summary:
GitHub commits:

4cb83a6061
e9007c5ecf

Reviewed By: yns88

fbshipit-source-id: 96db2cff93c7c72b8dba0ee94e0411bcbc8c12e1
2021-01-08 11:32:40 -08:00
Stanislau Hlebik
5a7087f66f mononoke: add link to reclone instruction
Reviewed By: krallin

Differential Revision: D25846570

fbshipit-source-id: 7e8f0d103659dba4c1ab70cae0c172878b967fb6
2021-01-08 10:33:40 -08:00
svcscm
6325db3051 Updating submodules
Summary:
GitHub commits:

2bad81b695
0783f9ecd3

Reviewed By: yns88

fbshipit-source-id: 02f154183a5ee33e3f34d766043d563204e79e0b
2021-01-08 09:24:05 -08:00
Thomas Orozco
81d6aae51d mononoke/edenapi_server: capture handler errors
Summary:
Right now we don't log handler errors to Scuba. This can make debugging a
little tricky: if a client is sending an invalid request, we'll see that we
sent them a 400, but we won't know what was invalid about the request.

This diff updates our logging to actually log that.

Reviewed By: sfilipco

Differential Revision: D25826522

fbshipit-source-id: 89486014e0eeaac5c9b149224601db54a26080d9
2021-01-08 08:45:01 -08:00
svcscm
4babce78c4 Updating submodules
Summary:
GitHub commits:

fcfeaeb8c5
c03dbc0428

Reviewed By: yns88

fbshipit-source-id: cbd3191597bed4602ad3e181338d8ad118c8bf64
2021-01-08 08:45:01 -08:00
svcscm
8f93267ebb Updating submodules
Summary:
GitHub commits:

d973a73e8b

Reviewed By: yns88

fbshipit-source-id: 8d525769f98777c54e800001c578f2b3ee385395
2021-01-08 01:56:39 -08:00
Thomas Orozco
165071f16c revisionstore: make lfs.concurrentfetches actually work
Summary:
There is a little bug here. We produce a stream of futures of futures, then we
buffer it, which gives us a stream of futures, and then we await the futures
one by one, here:

```
while let Some(next) = stream.next().await {
    next.await?
}
```

This is not really correct, because it means we don't actually do fetches
concurrently at all (we just instantiate futures concurrently, but that's not
really async work).

This fixes that by removing one layer of future-ing.

Reviewed By: singhsrb

Differential Revision: D25825895

fbshipit-source-id: 3ad3367f1eb802ce5b9b5288f04fd3705e172537
2021-01-08 01:24:30 -08:00
Stanislau Hlebik
03e7f0d028 mononoke: change crossrepo map subcommand to return CommitSyncOutcome
Summary:
Cross repo sync has two tables to store mapping between commits (this is
something we should probably change, but this is what we have right now).

"map" subcommand was a bit useless because it searched only in a single table,
so for lots of commits it would just return empty response.

Let's instead return CommitSyncOutcome which gives more useful information

Reviewed By: krallin

Differential Revision: D25823629

fbshipit-source-id: afc14f48b6c30bec3714dc9b79cfc4a7d67e38a9
2021-01-08 00:04:11 -08:00
svcscm
69ca666e3c Updating submodules
Summary:
GitHub commits:

1be254ba53

Reviewed By: yns88

fbshipit-source-id: 2b70623a53c45f9a8e3866878b2a79ce26028ed5
2021-01-08 00:04:11 -08:00
svcscm
18faf50fd0 Updating submodules
Summary:
GitHub commits:

f8d96e5158
ab3426b9c3
e776c619e7

Reviewed By: yns88

fbshipit-source-id: 2a95fd32c8d6a8b30b732ed87b357e71ed0275cf
2021-01-07 21:48:20 -08:00
Stefan Filip
9845d2ac8a edenapi: add download progress reporting to full_idmap_clone_data
Summary:
This allows adding progress bars tracking downloads from the server.

We could be smarter in this instance if we were to deserialize on the fly.
The first part of the payload contains the number of idmap entries that we need
but it needs more work to make it clear. The progress object right now is
designed for general bytes.

Reviewed By: quark-zju

Differential Revision: D25840470

fbshipit-source-id: c466c8d606b44981fe63c95352db2d8f14d6071b
2021-01-07 21:44:30 -08:00
svcscm
2b8b3ec72b Updating submodules
Summary:
GitHub commits:

0ba2ee1fb8

Reviewed By: yns88

fbshipit-source-id: 11c61f837eac1e34075e999d92d460f4c754bd29
2021-01-07 21:10:31 -08:00
Egor Tkachenko
11dd72d6c5 Add unbundlereplay command
Summary:
Unbundlereplay command was not implemented in the mononoke but it is used by sync job. So let's add this command here
together with additional integration test for sync between 2 mononoke repos. In addition I'm adding non fast forward bookmark movements by specifying key to sync job.

Reviewed By: StanislavGlebik

Differential Revision: D25803375

fbshipit-source-id: 6be9e8bfed8976d47045bc425c8c796fb0dff064
2021-01-07 20:36:26 -08:00
svcscm
a1db86f179 Updating submodules
Summary:
GitHub commits:

6ec1b37fd0
599937beab

Reviewed By: yns88

fbshipit-source-id: da97fbaa77910fe7f98751b03af6d278235b3c43
2021-01-07 20:36:26 -08:00
svcscm
f62b3be93b Updating submodules
Summary:
GitHub commits:

e7a512059f
e35d29fba9
cc2a180d00

Reviewed By: yns88

fbshipit-source-id: 6775faeaa5352df22511cadc68b82232bbd7677a
2021-01-07 16:32:21 -08:00
Stefan Filip
0976022d19 segmented_changelog: add tailer test exercising concurrent updates
Summary:
The segmented changelog tailer is going to run with multiple instances which
may race to update the database. This change adds a test that checks that
concurrent updates keep the IdMap correct.

Reviewed By: ahornby

Differential Revision: D25684783

fbshipit-source-id: a09f6e6c915bde38158d9737dcfdc7adc3f15cb7
2021-01-07 16:25:38 -08:00
Stefan Filip
02606da6c5 pathmatcher: allow errors in match function definition
Summary:
The most common scenario where we see matcher errors is when we iterate through
a manifest and the user sends SIGTERM to the process. The matcher may be both
Rust and Python code. The Python code handles the interrupt and prevents future
function calls. The iterating Rust code will continue to call matcher functions
through this time so we get matcher errors from the terminated Python stack.

As long as we have Python matcher code, errors are valid.
It is unclear to me whether the matcher trait should have `Result` return
values when all implementations are Rust. It is easy to imagine implementations
that can fail in different circumstances but the ones that we use if we just
port the Python code wouldn't fail.
All in all, I think that this is a reasonable step forward.

Reviewed By: quark-zju

Differential Revision: D25697099

fbshipit-source-id: f61c80bd0a8caa58040a447ed02d48a1ae84ad60
2021-01-07 16:22:17 -08:00
Durham Goode
9c3d099697 tests: glob out times in tests
Summary: These globs were lost as part of D25315954 (ec0b533381).

Reviewed By: quark-zju

Differential Revision: D25814934

fbshipit-source-id: b1896893e37e355a73eb136758f8966666e0ec05
2021-01-07 16:13:31 -08:00
Xavier Deguillard
c2f13648ff cli: collect all errors while removing the repository
Summary:
On Windows, it's possible that not all files could be removed from the
repository due to some other process holding a reference to it. When that
happens the `edenfsctl rm` operation will fail. Sometimes, instead of failing
with the actual reason for why the removal failed, it throws a cryptic "list
index out of range" error.

The reason was that when the file that can't be removed is actually a
directory, the `errors` list would be empty. Since filtering the folders is a
bit silly, let's not do it.

Reviewed By: fanzeyi

Differential Revision: D25836412

fbshipit-source-id: 36f936ff9d7697dfd2f4c68d4e56bdb18b66b06a
2021-01-07 16:00:11 -08:00
svcscm
6cf70762e1 Updating submodules
Summary:
GitHub commits:

9334db1cf8
c56e85ae52
3f523b39d7
b195fcd321
084a38fe01
bc4d8a89f9

Reviewed By: yns88

fbshipit-source-id: 1ae0f98aaae6eff13692beb2862f3a0d745f896a
2021-01-07 12:58:54 -08:00
Jan Mazur
5cf41f42ee fixing integration test runners
Summary:
Fixed `README.md` so commands in it work now.
Fixed integration_runner.

Reviewed By: lukaspiatkowski

Differential Revision: D25823461

fbshipit-source-id: 0d6784758c9f86bca38beafe014af4766169bee3
2021-01-07 12:37:06 -08:00
Mateusz Kwapich
f9c8806f9d allow test to talk to network
Summary:
This unbreaks the test. The reversefiller need access to SMC to talk to
scmquery (we could set up our own scmquery instance but I don't think it's worh
it).

Reviewed By: krallin

Differential Revision: D25824395

fbshipit-source-id: 676b3ac1e3af95e8e02bd272f7cb25250e047eed
2021-01-07 12:29:17 -08:00
svcscm
f9b84fca26 Updating submodules
Summary:
GitHub commits:

fb84c585d3
99330de11e
ce1e2f3eaf

Reviewed By: yns88

fbshipit-source-id: 39c90edc3fef5a7b083037cf83c2b1de13091c7a
2021-01-07 12:29:17 -08:00
svcscm
e378d20c7f Updating submodules
Summary:
GitHub commits:

f22d9313ea
9e3e7456b8
4ca1c7879a

Reviewed By: yns88

fbshipit-source-id: 53fc56e18e855f884cf582a49aefbefe5ed443e9
2021-01-07 11:33:31 -08:00
Stanislau Hlebik
f0d438e694 mononoke: add an option to read content ids from file in fixrepocontents
Summary:
Sometimes we want to rechunk just a few file contents, this diff makes it
possible to do so.

Reviewed By: ahornby

Differential Revision: D25804144

fbshipit-source-id: 6ce69f7cee8616a872531bdf5a48746dd401442d
2021-01-07 10:03:25 -08:00
Alex Hornby
48ec577119 mononoke: remove ChangesetBulkFetch trait
Summary: There is only one implementation of the trait so remove it and use that impl directly.  Removing the trait  makes it simpler to work on bulkops in the rest of this stack.

Reviewed By: farnz

Differential Revision: D25804021

fbshipit-source-id: 22fe797cf87656932d383ae236f2f867e788a832
2021-01-07 08:18:50 -08:00
Liubov Dmitrieva
676063f0f2 allow switching workspaces with uncommitted changes unless move to a public root is impossible
Summary:
Unless we can't update to a public root, there is nothing wrong with having local changes and switching workspaces feature.
Those are not related. Uncommited changes shouldn't impact switching workspaces.

Reviewed By: mitrandir77

Differential Revision: D25802406

fbshipit-source-id: 3fcb70864002bed11ad32621947294f643ca1fc3
2021-01-07 06:20:23 -08:00
svcscm
ffe5076e8f Updating submodules
Summary:
GitHub commits:

8ab6d9c56a
720acf6286

Reviewed By: yns88

fbshipit-source-id: 98b642d77bdcebf58dc6229704be57a1198d1793
2021-01-07 05:50:47 -08:00
Thomas Orozco
a0f4d63e30 mononoke/blobstore_healer: log to blobstore trace
Summary:
Right now we get zero logs from the blobstore healer, which is pretty annoying
because it makes it impossible to really tell what it's doing.

This fixes that.

Reviewed By: HarveyHunt

Differential Revision: D25823800

fbshipit-source-id: ded420753ba809626d6e4291eb3d900dcfbff3d1
2021-01-07 04:59:15 -08:00
svcscm
d49e7f9c1e Updating submodules
Summary:
GitHub commits:

a44a2ac19f

Reviewed By: yns88

fbshipit-source-id: e728fb9fac4590097f56e324b0f927b44fce1897
2021-01-07 03:51:40 -08:00
svcscm
429957ee4f Updating submodules
Summary:
GitHub commits:

add97bf435
c412f51e3f

Reviewed By: yns88

fbshipit-source-id: f5d9c30b9fda6bbc834808f458fd54c92c16b9b3
2021-01-07 03:51:39 -08:00
svcscm
ab561f56c4 Updating submodules
Summary:
GitHub commits:

bc7d7abf37
97b4e01165
e175f8bc73
c33857a1fe
2095325e2c
76b92c924f

Reviewed By: yns88

fbshipit-source-id: 7e90d5ae2e2522da2cc5fce7282ca724ce217b3a
2021-01-06 18:13:38 -08:00
Andres Suarez
38705e5556 Update project Cargo.toml's
Reviewed By: mzlee

Differential Revision: D25803798

fbshipit-source-id: abe2ece3fcfa07ee13f3cf4455afa293ce966a07
2021-01-06 15:46:50 -08:00
svcscm
ea57cebecc Updating submodules
Summary:
GitHub commits:

4f93985850
6e0f62f2b6

Reviewed By: yns88

fbshipit-source-id: 200b30a8fbb86afd3b96149a210b3796513c83e3
2021-01-06 14:53:43 -08:00
Liubov Dmitrieva
713faa71cd allow hg cloud switch command to work for clean disconnected repos
Summary:
This was a request from users. Repo could go into a disconnected state, for example, if rejoin in fbclone fails due to some reason.
In this case it was confusing that `hg cloud switch` command doesn't work. Users have to run `hg cloud join` command first.

If the repo is disconnected but doesn't contain any relevant local changes for commit cloud, it should be fine to switch workspace.

Reviewed By: mitrandir77

Differential Revision: D25802193

fbshipit-source-id: 3216a10c3438463773602b2dfd13740866fb5908
2021-01-06 13:47:20 -08:00
svcscm
d1323cdc3e Updating submodules
Summary:
GitHub commits:

a08864c89e
4b481c135b

Reviewed By: yns88

fbshipit-source-id: a7eb9748a0d75cfb6667538286c02eda3a3d3be0
2021-01-06 13:47:20 -08:00