Wed, 08 Mar 2023 14:23:43 +0100 clonebundles: add support for inline (streaming) clonebundles
Mathias De Mare <mathias.de_mare@nokia.com> [Wed, 08 Mar 2023 14:23:43 +0100] rev 50666
clonebundles: add support for inline (streaming) clonebundles The idea behind inline clonebundles is to send them through the ssh or https connection to the Mercurial server. We've been using this specifically for streaming clonebundles, although it works for 'regular' clonebundles as well (but is less relevant, since pullbundles exist). We've had this enabled for around 9 months for a part of our users. A few benefits are: - no need to secure an external system, since everything goes through the same Mercurial server - easier scaling (in our case: no risk of inconsistencies between multiple mercurial-server mirrors and nginx clonebundles hosts) Remaining topics/questions right now: - The inline clonebundles don't work for https yet. This is because httppeer doesn't seem to support sending client capabilities. I didn't focus on that as my main goal was to get this working for ssh.
Thu, 08 Jun 2023 17:02:04 +0200 Added signature for changeset da372c745e0f stable
Raphaël Gomès <rgomes@octobus.net> [Thu, 08 Jun 2023 17:02:04 +0200] rev 50665
Added signature for changeset da372c745e0f
Thu, 08 Jun 2023 17:02:00 +0200 Added tag 6.4.4 for changeset da372c745e0f stable
Raphaël Gomès <rgomes@octobus.net> [Thu, 08 Jun 2023 17:02:00 +0200] rev 50664
Added tag 6.4.4 for changeset da372c745e0f
Thu, 08 Jun 2023 17:01:29 +0200 relnotes: add 6.4.4 stable 6.4.4
Raphaël Gomès <rgomes@octobus.net> [Thu, 08 Jun 2023 17:01:29 +0200] rev 50663
relnotes: add 6.4.4
Thu, 08 Jun 2023 14:28:21 +0200 revlog: avoid possible collision between directory and temporary index stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 08 Jun 2023 14:28:21 +0200] rev 50662
revlog: avoid possible collision between directory and temporary index Since 6.4, we create a temporary index file to write the split data without overwriting the inline version too early. However, the store encoding does not prevent these new `.i.s` file to collide with a directory with the same name. While the odds for such a collision to happens are fairly low, the collision would prevent Mercurial from working. The store encoding have a mitigation solution in place to prevent such collisions from happening for `.i` and `.d` files, but not for other extensions. We cannot update this encoding scheme to solve the issue since it would diverge from older version of Mercurial. Instead, we create an alternative directory tree dedicated to such files. The use of the `.i` extension combined with store encoding will prevent collisions there.
Thu, 08 Jun 2023 11:08:19 +0200 revlog: move the computation of the split_index path in a property stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Thu, 08 Jun 2023 11:08:19 +0200] rev 50661
revlog: move the computation of the split_index path in a property This is about to become more complex, so we gather the logic in a single place.
Mon, 05 Jun 2023 16:43:27 +0200 rust-dirstate: fall back to v1 if reading v2 failed stable
Raphaël Gomès <rgomes@octobus.net> [Mon, 05 Jun 2023 16:43:27 +0200] rev 50660
rust-dirstate: fall back to v1 if reading v2 failed This will help us not fail when a v1 dirstate is present on disk while a v2 was expected (which could happen with a racy/interrupted upgrade).
Mon, 05 Jun 2023 17:29:52 +0200 dirstate: add test showing dirstate version mismatch causes an error stable
Raphaël Gomès <rgomes@octobus.net> [Mon, 05 Jun 2023 17:29:52 +0200] rev 50659
dirstate: add test showing dirstate version mismatch causes an error We should fall back to trying dirstate v1 when v2 fails to read.
Mon, 05 Jun 2023 16:30:25 +0200 rust-dirstate: rename `has_dirstate_v2` to `use_dirstate_v2` stable
Raphaël Gomès <rgomes@octobus.net> [Mon, 05 Jun 2023 16:30:25 +0200] rev 50658
rust-dirstate: rename `has_dirstate_v2` to `use_dirstate_v2` It is closer to the right semantics. I added a docstring to better explain the reasonning. In the next patch(es), I will address the underlying issue of finding the "wrong" version of the dirstate on disk.
Mon, 05 Jun 2023 03:11:26 +0200 delta-find: fix pulled-delta-reuse-policy=forced behavior stable
Pierre-Yves David <pierre-yves.david@octobus.net> [Mon, 05 Jun 2023 03:11:26 +0200] rev 50657
delta-find: fix pulled-delta-reuse-policy=forced behavior The code that select delta still has too many oportunity to discard the delta is has been forcibly asked to reuse. However is is fairly easy to use a dedicated fastpath for this case. So we do so. Cleaning other code that tries to enforce that policy will be done on default.
(0) -30000 -10000 -3000 -1000 -300 -100 -10 +10 +100 +300 tip