--- a/mercurial/upgrade_utils/engine.py Tue Jul 13 14:54:09 2021 +0530
+++ b/mercurial/upgrade_utils/engine.py Mon Jul 19 22:39:08 2021 +0200
@@ -200,6 +200,17 @@
if not rl_type & store.FILEFLAGS_REVLOG_MAIN:
continue
+ # the store.walk function will wrongly pickup transaction backup and
+ # get confused. As a quick fix for 5.9 release, we ignore those.
+ # (this is not a module constants because it seems better to keep the
+ # hack together)
+ skip_undo = (
+ b'undo.backup.00changelog.i',
+ b'undo.backup.00manifest.i',
+ )
+ if unencoded in skip_undo:
+ continue
+
rl = _revlogfrompath(srcrepo, rl_type, unencoded)
info = rl.storageinfo(