# HG changeset patch # User Pierre-Yves DAVID # Date 1654039974 -7200 # Node ID d910ca4e995bfb1cb689bf9b3ae8d3cfd5047750 # Parent 251650844331d2f0e87afdf63a57fb8349ebca60 debugindex: add a `p2-rev` column This will be useful in case of corrupted index. diff -r 251650844331 -r d910ca4e995b mercurial/revlogutils/debug.py --- a/mercurial/revlogutils/debug.py Wed Jun 01 01:32:45 2022 +0200 +++ b/mercurial/revlogutils/debug.py Wed Jun 01 01:32:54 2022 +0200 @@ -92,6 +92,11 @@ return hexfn(p_entry[constants.ENTRY_NODE_ID]) +@debug_column(b"p2-rev", size=6, verbose=True) +def _p2_rev(index, rev, entry, hexfn): + return b"%d" % entry[constants.ENTRY_PARENT_2] + + @debug_column(b"p2-nodeid", size=NODE_SIZE) def _p2_node(index, rev, entry, hexfn): parent = entry[constants.ENTRY_PARENT_2] diff -r 251650844331 -r d910ca4e995b tests/test-debugcommands.t --- a/tests/test-debugcommands.t Wed Jun 01 01:32:45 2022 +0200 +++ b/tests/test-debugcommands.t Wed Jun 01 01:32:54 2022 +0200 @@ -153,26 +153,26 @@ 1 1 8cccb4b5fec2 07f494440405 000000000000 2 2 b1e228c512c5 8cccb4b5fec2 000000000000 $ hg debugindex -c --debug - rev linkrev nodeid p1-rev p1-nodeid p2-nodeid - 0 0 07f4944404050f47db2e5c5071e0e84e7a27bba9 -1 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 - 1 1 8cccb4b5fec20cafeb99dd01c26d4dee8ea4388a 0 07f4944404050f47db2e5c5071e0e84e7a27bba9 0000000000000000000000000000000000000000 - 2 2 b1e228c512c5d7066d70562ed839c3323a62d6d2 1 8cccb4b5fec20cafeb99dd01c26d4dee8ea4388a 0000000000000000000000000000000000000000 + rev linkrev nodeid p1-rev p1-nodeid p2-rev p2-nodeid + 0 0 07f4944404050f47db2e5c5071e0e84e7a27bba9 -1 0000000000000000000000000000000000000000 -1 0000000000000000000000000000000000000000 + 1 1 8cccb4b5fec20cafeb99dd01c26d4dee8ea4388a 0 07f4944404050f47db2e5c5071e0e84e7a27bba9 -1 0000000000000000000000000000000000000000 + 2 2 b1e228c512c5d7066d70562ed839c3323a62d6d2 1 8cccb4b5fec20cafeb99dd01c26d4dee8ea4388a -1 0000000000000000000000000000000000000000 $ hg debugindex -m rev linkrev nodeid p1-nodeid p2-nodeid 0 0 a0c8bcbbb45c 000000000000 000000000000 1 1 57faf8a737ae a0c8bcbbb45c 000000000000 2 2 a35b10320954 57faf8a737ae 000000000000 $ hg debugindex -m --debug - rev linkrev nodeid p1-rev p1-nodeid p2-nodeid - 0 0 a0c8bcbbb45c63b90b70ad007bf38961f64f2af0 -1 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 - 1 1 57faf8a737ae7faf490582941a82319ba6529dca 0 a0c8bcbbb45c63b90b70ad007bf38961f64f2af0 0000000000000000000000000000000000000000 - 2 2 a35b103209548032201c16c7688cb2657f037a38 1 57faf8a737ae7faf490582941a82319ba6529dca 0000000000000000000000000000000000000000 + rev linkrev nodeid p1-rev p1-nodeid p2-rev p2-nodeid + 0 0 a0c8bcbbb45c63b90b70ad007bf38961f64f2af0 -1 0000000000000000000000000000000000000000 -1 0000000000000000000000000000000000000000 + 1 1 57faf8a737ae7faf490582941a82319ba6529dca 0 a0c8bcbbb45c63b90b70ad007bf38961f64f2af0 -1 0000000000000000000000000000000000000000 + 2 2 a35b103209548032201c16c7688cb2657f037a38 1 57faf8a737ae7faf490582941a82319ba6529dca -1 0000000000000000000000000000000000000000 $ hg debugindex a rev linkrev nodeid p1-nodeid p2-nodeid 0 0 b789fdd96dc2 000000000000 000000000000 $ hg debugindex --debug a - rev linkrev nodeid p1-rev p1-nodeid p2-nodeid - 0 0 b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 -1 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 + rev linkrev nodeid p1-rev p1-nodeid p2-rev p2-nodeid + 0 0 b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 -1 0000000000000000000000000000000000000000 -1 0000000000000000000000000000000000000000 debugdelta chain basic output diff -r 251650844331 -r d910ca4e995b tests/test-sidedata.t --- a/tests/test-sidedata.t Wed Jun 01 01:32:45 2022 +0200 +++ b/tests/test-sidedata.t Wed Jun 01 01:32:54 2022 +0200 @@ -41,16 +41,16 @@ entry-0002 size 32 $ hg debug-revlog-index --verbose -c - rev linkrev nodeid p1-rev p1-nodeid p2-nodeid - 0 0 7049e48789d7 -1 000000000000 000000000000 - 1 1 2707720c6597 0 7049e48789d7 000000000000 - 2 2 40f977031323 1 2707720c6597 000000000000 + rev linkrev nodeid p1-rev p1-nodeid p2-rev p2-nodeid + 0 0 7049e48789d7 -1 000000000000 -1 000000000000 + 1 1 2707720c6597 0 7049e48789d7 -1 000000000000 + 2 2 40f977031323 1 2707720c6597 -1 000000000000 $ hg debug-revlog-index --verbose -m - rev linkrev nodeid p1-rev p1-nodeid p2-nodeid - 0 0 b85d294330e3 -1 000000000000 000000000000 - 1 1 1a0aec305c63 0 b85d294330e3 000000000000 - 2 2 104258a4f75f 1 1a0aec305c63 000000000000 + rev linkrev nodeid p1-rev p1-nodeid p2-rev p2-nodeid + 0 0 b85d294330e3 -1 000000000000 -1 000000000000 + 1 1 1a0aec305c63 0 b85d294330e3 -1 000000000000 + 2 2 104258a4f75f 1 1a0aec305c63 -1 000000000000 Check upgrade behavior ======================