[PATCH v2 stable] largefiles: fix support for local largefiles while using share extension
Augie Fackler
raf at durin42.com
Thu Jun 9 23:30:11 EDT 2016
On Tue, Jun 07, 2016 at 08:39:15AM +0200, Henrik Stuart wrote:
> # HG changeset patch
> # User Henrik Stuart <henriks at unity3d.com>
> # Date 1465281153 -7200
> # Tue Jun 07 08:32:33 2016 +0200
> # Branch stable
> # Node ID 29373afaa1799b3f3505c7ab738bd81b2155a77a
> # Parent e82ca7d0967cd10d92562820297c3413abe6fc29
> largefiles: fix support for local largefiles while using share extension
Queued for stable, thanks.
>
> Prior to revision 2a3f24786d09, largefiles were saved in the local repository,
> even if it was using the share extension. After that change, all largefiles are
> now stored in the shared repository. However, the backward compatibility for
> existing largefiles already placed in the local repository was never tested,
> and has been broken since.
>
> diff --git a/hgext/largefiles/lfutil.py b/hgext/largefiles/lfutil.py
> --- a/hgext/largefiles/lfutil.py
> +++ b/hgext/largefiles/lfutil.py
> @@ -204,7 +204,7 @@
> if instore(repo, hash):
> return (path, True)
> elif repo.shared() and instore(repo, hash, True):
> - return storepath(repo, hash, True)
> + return storepath(repo, hash, True), True
>
> return (path, False)
>
> diff --git a/tests/test-largefiles-cache.t b/tests/test-largefiles-cache.t
> --- a/tests/test-largefiles-cache.t
> +++ b/tests/test-largefiles-cache.t
> @@ -186,6 +186,10 @@
> src/.hg/largefiles/dirstate
> src/.hg/largefiles/e2fb5f2139d086ded2cb600d5a91a196e76bf020
>
> +Verify that backwards compatibility is maintained for old storage layout
> + $ mv src/.hg/largefiles/$hash share_dst/.hg/largefiles
> + $ hg verify --quiet --lfa -R share_dst --config largefiles.usercache=
> +
> Inject corruption into the largefiles store and see how update handles that:
>
> $ cd src
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
More information about the Mercurial-devel
mailing list