persistent-nodemap: also exchange the nodemap data over the wire
It appears that 2 bytes are never equals to 3 bytes.
Differential Revision: https://phab.mercurial-scm.org/D9810
--- a/mercurial/store.py Sun Jan 17 19:22:30 2021 +0100
+++ b/mercurial/store.py Sun Jan 17 20:27:59 2021 +0100
@@ -389,7 +389,11 @@
def isrevlog(f, kind, st):
- return kind == stat.S_IFREG and f[-2:] in (b'.i', b'.d', b'.n', b'.nd')
+ if kind != stat.S_IFREG:
+ return False
+ if f[-2:] in (b'.i', b'.d', b'.n'):
+ return True
+ return f[-3:] == b'.nd'
class basicstore(object):
--- a/tests/test-persistent-nodemap.t Sun Jan 17 19:22:30 2021 +0100
+++ b/tests/test-persistent-nodemap.t Sun Jan 17 20:27:59 2021 +0100
@@ -708,9 +708,11 @@
adding [s] 00manifest.n (70 bytes)
adding [s] 00manifest.i (313 KB)
adding [s] 00manifest.d (452 KB)
+ adding [s] 00manifest-*.nd (118 KB) (glob)
adding [s] 00changelog.n (70 bytes)
adding [s] 00changelog.i (313 KB)
adding [s] 00changelog.d (360 KB)
+ adding [s] 00changelog-*.nd (118 KB) (glob)
$ ls -1 stream-clone/.hg/store/ | egrep '00(changelog|manifest)(\.n|-.*\.nd)'
00changelog-*.nd (glob)
00changelog.n