Page MenuHomePhabricator

aalekseyev (Arseniy Alekseyev)
User

Projects

User does not belong to any projects.

User Details

User Since
Oct 1 2021, 12:37 PM (17 w, 16 h)

Recent Activity

Thu, Jan 20

aalekseyev closed D12009: revlog: fix a bug where transaction can be aborted partially.
Thu, Jan 20, 10:10 AM
aalekseyev closed D12008: revlog: demonstrate a bug where transaction can be aborted partially.
Thu, Jan 20, 10:09 AM
aalekseyev committed rHGccd9cb73125c: revlog: fix a bug where transaction can be aborted partially.
revlog: fix a bug where transaction can be aborted partially
Thu, Jan 20, 10:09 AM
aalekseyev committed rHGf38ae2d7390e: revlog: demonstrate a bug where transaction can be aborted partially.
revlog: demonstrate a bug where transaction can be aborted partially
Thu, Jan 20, 10:09 AM
aalekseyev added a comment to D12008: revlog: demonstrate a bug where transaction can be aborted partially.

This demonstrates a bug that results in a repo corruption any time a transaction is aborted that adds multiple revs of the same revlog while growing it beyond 128KiB.
I would have thought this affects most hg users, since none of the pre-conditions for this bug is very unique.
Probably this went unnoticed for such a long time simply because transactions are rarely aborted.

Thu, Jan 20, 9:14 AM
aalekseyev created D12009: revlog: fix a bug where transaction can be aborted partially.
Thu, Jan 20, 9:10 AM
aalekseyev created D12008: revlog: demonstrate a bug where transaction can be aborted partially.
Thu, Jan 20, 9:10 AM

Dec 17 2021

aalekseyev closed D11817: sparse: lock the store when updating requirements config.
Dec 17 2021, 8:11 AM
aalekseyev committed rHGb74ee41addee: sparse: lock the store when updating requirements config.
sparse: lock the store when updating requirements config
Dec 17 2021, 8:11 AM
aalekseyev closed D11766: sparse: demonstrate a bug when used with safe-share.
Dec 17 2021, 8:11 AM
aalekseyev committed rHG50330d481640: sparse: demonstrate a bug when used with safe-share.
sparse: demonstrate a bug when used with safe-share
Dec 17 2021, 8:10 AM

Dec 13 2021

aalekseyev added a comment to D11882: rhg: fix a crash on non-generaldelta revlogs.

Thanks for your review!

Dec 13 2021, 11:23 AM
aalekseyev closed D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 13 2021, 8:51 AM
aalekseyev closed D11881: rhg: centralize index header parsing.
Dec 13 2021, 8:51 AM
aalekseyev committed rHG96ea4db4741b: rhg: fix a crash on non-generaldelta revlogs.
rhg: fix a crash on non-generaldelta revlogs
Dec 13 2021, 8:51 AM
aalekseyev committed rHG1fb3615dfce2: rhg: centralize index header parsing.
rhg: centralize index header parsing
Dec 13 2021, 8:51 AM
aalekseyev closed D11880: rhg: demonstrate that rhg breaks on non-generaldelta revlogs.
Dec 13 2021, 8:51 AM
aalekseyev committed rHGe33d7c39db47: rhg: demonstrate that rhg breaks on non-generaldelta revlogs.
rhg: demonstrate that rhg breaks on non-generaldelta revlogs
Dec 13 2021, 8:51 AM
aalekseyev added a comment to D11882: rhg: fix a crash on non-generaldelta revlogs.

The point is to make the output smaller.
Seems ok to output the whole file, too (pushed). (it was 50 lines, not 20, when I introduced it)

Dec 13 2021, 8:45 AM
aalekseyev updated the diff for D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 13 2021, 8:42 AM

Dec 10 2021

aalekseyev updated the diff for D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 10 2021, 2:09 PM
aalekseyev added a comment to D11882: rhg: fix a crash on non-generaldelta revlogs.

The shell strikes again. :-\
I removed the problematic test, so it should be good now.

Dec 10 2021, 11:06 AM
aalekseyev updated the diff for D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 10 2021, 10:38 AM
aalekseyev added a comment to D11882: rhg: fix a crash on non-generaldelta revlogs.

I don't know about revlog-v1 (it seems there are tests in the tree that are revlog-v1-specific and don't gate against it), but (the lack of) zstd compression is also changing the result, so clearly needs to be guarded against, since it's breaking the --pure build.
I pushed that change. If you have ideas how to make the test less fragile, those would be appreciated. One possibility is to remove the test of corrupted repo altogether, if you think that's better.

Dec 10 2021, 9:06 AM
aalekseyev updated the diff for D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 10 2021, 8:59 AM
aalekseyev added a comment to D11882: rhg: fix a crash on non-generaldelta revlogs.

...
The last test is a bit fragile, we should gate it for revlog-v1 only.

Dec 10 2021, 8:39 AM
aalekseyev updated the diff for D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 10 2021, 6:55 AM
aalekseyev added a comment to D11882: rhg: fix a crash on non-generaldelta revlogs.

While working on comments I discovered that the rust implementation was different from the C/Python implementation in how it deals with a wrong value of delta chain base.
I made sure that rust code behaves the same as hg there (which is: ignore the corruption) and added a test that checks that.

Dec 10 2021, 6:52 AM
aalekseyev updated the diff for D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 10 2021, 6:50 AM
aalekseyev updated the diff for D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 10 2021, 6:11 AM
aalekseyev updated the diff for D11881: rhg: centralize index header parsing.
Dec 10 2021, 6:11 AM

Dec 8 2021

aalekseyev added a comment to D11880: rhg: demonstrate that rhg breaks on non-generaldelta revlogs.

The last update was to fix the issue with --pure: the output of debugdeltachain was different there.

Dec 8 2021, 12:29 PM
aalekseyev updated the diff for D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 8 2021, 12:28 PM
aalekseyev updated the diff for D11880: rhg: demonstrate that rhg breaks on non-generaldelta revlogs.
Dec 8 2021, 12:27 PM
aalekseyev updated the diff for D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 8 2021, 7:36 AM
aalekseyev added inline comments to D11880: rhg: demonstrate that rhg breaks on non-generaldelta revlogs.
Dec 8 2021, 7:36 AM
aalekseyev updated the diff for D11880: rhg: demonstrate that rhg breaks on non-generaldelta revlogs.
Dec 8 2021, 7:36 AM
aalekseyev added inline comments to D11880: rhg: demonstrate that rhg breaks on non-generaldelta revlogs.
Dec 8 2021, 7:06 AM
aalekseyev added inline comments to D11881: rhg: centralize index header parsing.
Dec 8 2021, 6:41 AM
aalekseyev updated the diff for D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 8 2021, 6:40 AM
aalekseyev updated the diff for D11881: rhg: centralize index header parsing.
Dec 8 2021, 6:40 AM
aalekseyev updated the diff for D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 8 2021, 6:25 AM
aalekseyev updated the diff for D11880: rhg: demonstrate that rhg breaks on non-generaldelta revlogs.
Dec 8 2021, 6:25 AM

Dec 7 2021

aalekseyev updated the diff for D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 7 2021, 2:07 PM
aalekseyev updated the diff for D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 7 2021, 2:04 PM
aalekseyev updated the diff for D11881: rhg: centralize index header parsing.
Dec 7 2021, 2:04 PM
aalekseyev created D11882: rhg: fix a crash on non-generaldelta revlogs.
Dec 7 2021, 1:58 PM
aalekseyev created D11881: rhg: centralize index header parsing.
Dec 7 2021, 1:58 PM
aalekseyev created D11880: rhg: demonstrate that rhg breaks on non-generaldelta revlogs.
Dec 7 2021, 1:58 PM

Dec 6 2021

aalekseyev updated the diff for D11817: sparse: lock the store when updating requirements config.
Dec 6 2021, 2:09 PM
aalekseyev added a comment to D11817: sparse: lock the store when updating requirements config.

I tried this, and ran into another problem: dirstate is linked to wlock, so if you share a wlock then you must also share the dirstate.
I wrote a patch that does this, but I can't tell how safe that is. All tests pass, at least.

Dec 6 2021, 2:07 PM
aalekseyev updated the diff for D11817: sparse: lock the store when updating requirements config.
Dec 6 2021, 2:05 PM

Dec 3 2021

aalekseyev closed D11764: rhg: add support for narrow clones and sparse checkouts.
Dec 3 2021, 10:43 AM
aalekseyev committed rHG005ae1a343f8: rhg: add support for narrow clones and sparse checkouts.
rhg: add support for narrow clones and sparse checkouts
Dec 3 2021, 10:42 AM

Nov 30 2021

aalekseyev added a comment to D11817: sparse: lock the store when updating requirements config.

Wow, looks I just didn't run all tests here. Sorry!
Investigating this, I went pretty deep into a rabbit hole and may need rescuing.
The bug seems to go like this:

Nov 30 2021, 2:42 PM
aalekseyev added a comment to D11764: rhg: add support for narrow clones and sparse checkouts.

I'm sorry. I forgot to backport a patch for shell compatibility. :-(
Did now.

Nov 30 2021, 11:29 AM
aalekseyev updated the diff for D11764: rhg: add support for narrow clones and sparse checkouts.
Nov 30 2021, 11:28 AM

Nov 29 2021

aalekseyev added a comment to D11764: rhg: add support for narrow clones and sparse checkouts.

Fixed the wording along with some other issues discovered in tests and review (we're using this patch in our internal fork).

Nov 29 2021, 12:47 PM
aalekseyev updated the diff for D11764: rhg: add support for narrow clones and sparse checkouts.
Nov 29 2021, 12:40 PM
aalekseyev closed D11722: rhg: implement the debugignorerhg subcommand.
Nov 29 2021, 10:44 AM
aalekseyev closed D11818: rhg: refactor to use IgnoreFnType alias more widely.
Nov 29 2021, 10:44 AM
aalekseyev committed rHG6d4daf51283c: rhg: implement the debugignorerhg subcommand.
rhg: implement the debugignorerhg subcommand
Nov 29 2021, 10:44 AM
aalekseyev committed rHG2009e3c64a53: rhg: refactor to use IgnoreFnType alias more widely.
rhg: refactor to use IgnoreFnType alias more widely
Nov 29 2021, 10:44 AM
aalekseyev added a comment to D11722: rhg: implement the debugignorerhg subcommand.

Done. The refactor part was extracted into https://phab.mercurial-scm.org/D11818.

Nov 29 2021, 9:11 AM
aalekseyev updated the summary of D11722: rhg: implement the debugignorerhg subcommand.
Nov 29 2021, 9:10 AM
aalekseyev created D11818: rhg: refactor to use IgnoreFnType alias more widely.
Nov 29 2021, 9:09 AM
aalekseyev added a comment to D11722: rhg: implement the debugignorerhg subcommand.

@Alphare, Ok. I understood you before, but those commits were not suitable for independent submission.

Nov 29 2021, 8:43 AM
aalekseyev added a comment to D11722: rhg: implement the debugignorerhg subcommand.

@Alphare, folded commit seems better than the separate ones in this case, though, since the second commit is simply incorporating review comments, not really an independent change.
I ran hg fold --from .^ followed by hg phabsend . to make this less confusing.

Nov 29 2021, 8:05 AM
aalekseyev updated the summary of D11722: rhg: implement the debugignorerhg subcommand.
Nov 29 2021, 8:04 AM
aalekseyev added a comment to D11766: sparse: demonstrate a bug when used with safe-share.

Thanks!

Nov 29 2021, 7:57 AM
aalekseyev closed D11751: rhg: only complain about poorly configured fallback when falling back.
Nov 29 2021, 7:45 AM
aalekseyev committed rHG8960295b9246: rhg: only complain about poorly configured fallback when falling back.
rhg: only complain about poorly configured fallback when falling back
Nov 29 2021, 7:45 AM
aalekseyev added a comment to D11766: sparse: demonstrate a bug when used with safe-share.

@Alphare, I re-created the commit and was able to make a phabricator revision https://phab.mercurial-scm.org/D11817.

Nov 29 2021, 7:28 AM
aalekseyev created D11817: sparse: lock the store when updating requirements config.
Nov 29 2021, 7:28 AM
aalekseyev added a comment to D11766: sparse: demonstrate a bug when used with safe-share.

Trying to send this, I get:

$ hg update 356d27775359
$ hg phabsend .^ .
D11766 - updated - 48486:e53ef79cd9d5 "sparse: demonstrate a bug when used with safe-share"
abort: Conduit Error (ERR-CONDUIT-CORE): Graph cycle detected (type=5, cycle=PHID-DREV-z7jbc5yf2jun6v2pbnqj, PHID-DREV-z7jbc5yf2jun6v2pbnqj).
EXIT STATUS 255
Nov 29 2021, 6:24 AM
aalekseyev updated the diff for D11766: sparse: demonstrate a bug when used with safe-share.
Nov 29 2021, 6:24 AM

Nov 26 2021

aalekseyev updated the diff for D11722: rhg: implement the debugignorerhg subcommand.
Nov 26 2021, 2:49 PM
aalekseyev added inline comments to D11722: rhg: implement the debugignorerhg subcommand.
Nov 26 2021, 2:49 PM
aalekseyev updated the diff for D11722: rhg: implement the debugignorerhg subcommand.
Nov 26 2021, 2:45 PM
aalekseyev updated the diff for D11722: rhg: implement the debugignorerhg subcommand.
Nov 26 2021, 2:42 PM
aalekseyev updated the summary of D11722: rhg: implement the debugignorerhg subcommand.
Nov 26 2021, 2:35 PM
aalekseyev added a comment to D11766: sparse: demonstrate a bug when used with safe-share.

I rebased to the stable branch. I did hg phabsend --fold again to avoid changing things. Let me know if you'd like me to re-do the phabsend.

Nov 26 2021, 1:59 PM
aalekseyev updated the diff for D11766: sparse: demonstrate a bug when used with safe-share.
Nov 26 2021, 1:58 PM
aalekseyev added a comment to D11751: rhg: only complain about poorly configured fallback when falling back.

Sorry, that test was weird indeed. I pushed a better one.

Nov 26 2021, 1:54 PM
aalekseyev updated the diff for D11751: rhg: only complain about poorly configured fallback when falling back.
Nov 26 2021, 1:53 PM

Nov 24 2021

aalekseyev added a comment to D11751: rhg: only complain about poorly configured fallback when falling back.

I'm not sure I understand what your use case is. The config is already fully read by the point we read it, so how does that help you?

Nov 24 2021, 11:23 AM
aalekseyev added a comment to D11766: sparse: demonstrate a bug when used with safe-share.

Indeed. You can see the diff history on the "History" tab, but I'm guessing it only coincides with the commits because I pushed them one by one.

Nov 24 2021, 9:25 AM
aalekseyev added a comment to D11766: sparse: demonstrate a bug when used with safe-share.

The patch does consist of two commits. I was under assumption that this is the way to review chains of commits. Should I in the future create a separate phabricator revision for each commit?

Nov 24 2021, 8:42 AM

Nov 18 2021

aalekseyev updated the summary of D11766: sparse: demonstrate a bug when used with safe-share.
Nov 18 2021, 9:27 AM

Nov 16 2021

aalekseyev created D11766: sparse: demonstrate a bug when used with safe-share.
Nov 16 2021, 12:36 PM
aalekseyev added a comment to D11752: rhg: allow rhg in sparse repos when the operations only need the store.

I'm abandoning this in favor of: https://phab.mercurial-scm.org/D11764
That's less conservative (it does the checks at the level of individual commands, not at the level of hg-core), but it's simpler and more useful.

Nov 16 2021, 7:19 AM
aalekseyev created D11764: rhg: add support for narrow clones and sparse checkouts.
Nov 16 2021, 7:11 AM

Nov 11 2021

aalekseyev created D11752: rhg: allow rhg in sparse repos when the operations only need the store.
Nov 11 2021, 2:24 PM
aalekseyev added a comment to D11751: rhg: only complain about poorly configured fallback when falling back.

The motivation here is that I kept running into this error when testing things with rhg, and I thought it didn't need to be an error.
I think there is no (significant) downside, since checking that fallback-executable is set by no means guarantees that the fallback will work, so not much is lost by delaying that check.

Nov 11 2021, 9:39 AM
aalekseyev created D11751: rhg: only complain about poorly configured fallback when falling back.
Nov 11 2021, 9:27 AM

Nov 9 2021

aalekseyev closed D11721: rhg: more efficient `HgPath::join`.
Nov 9 2021, 10:03 AM
aalekseyev committed rHG6d69e83e6b6e: rhg: more efficient `HgPath::join`.
rhg: more efficient `HgPath::join`
Nov 9 2021, 10:03 AM
aalekseyev closed D11723: rhg: make it possible to opt out of `rhg cat`.
Nov 9 2021, 10:02 AM
aalekseyev committed rHG698b70b9e8ea: rhg: make it possible to opt out of `rhg cat`.
rhg: make it possible to opt out of `rhg cat`
Nov 9 2021, 10:02 AM

Nov 2 2021

aalekseyev edited reviewers for D11731: rhg: lazily get filesystem metadata, added: SimonSapin; removed: hg-reviewers.
Nov 2 2021, 8:22 AM