--- a/mercurial/revlogutils/nodemap.py Thu Jan 27 15:22:09 2022 +0100
+++ b/mercurial/revlogutils/nodemap.py Thu Jan 27 22:24:11 2022 +0100
@@ -16,6 +16,7 @@
from .. import (
error,
+ requirements,
util,
)
from . import docket as docket_mod
@@ -34,6 +35,19 @@
pass
+def post_stream_cleanup(repo):
+ """The stream clone might needs to remove some file if persisten nodemap
+ was dropped while stream cloning
+ """
+ if requirements.REVLOGV1_REQUIREMENT not in repo.requirements:
+ return
+ if requirements.NODEMAP_REQUIREMENT in repo.requirements:
+ return
+ unfi = repo.unfiltered()
+ delete_nodemap(None, unfi, unfi.changelog)
+ delete_nodemap(None, repo, unfi.manifestlog._rootstore._revlog)
+
+
def persisted_data(revlog):
"""read the nodemap for a revlog from disk"""
if revlog._nodemap_file is None: