contrib/hammerclient.py
author Sushil khanchi <sushilkhanchi97@gmail.com>
Tue, 25 Jun 2019 21:54:22 +0530
changeset 4704 5f90eb8fd63c
parent 4003 518e04284921
child 4809 f97379faefa3
permissions -rwxr-xr-x
evolve: fix confusion in branch heads checking logic when topic in play To provide some context, when topics are in play the branchmap cache we store contains the branch info of a rev as "branch:topic" format IIUC. Assuming that is right, now in present code we don't actually cover this part that "when looking for branch heads where we also have active topic we should look for branch='branch_name:topic' instead". And we get wrong branch heads as a result. This patch make sure that we pass right candidate to find branch heads using branchmap.branchheads() by overriding the localrepo.branchheads() Changes in test file reflect the fixed behavior.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4003
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     1
#!/usr/bin/env python
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     2
import os
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     3
import sys
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     4
import subprocess
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     5
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     6
if len(sys.argv) < 2:
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     7
    execname = os.path.basename(sys.argv[0])
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     8
    print >> sys.stderr, "usage: %s CLIENT_ID" % execname
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     9
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    10
client_id = sys.argv[1]
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    11
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    12
subprocess.check_call(['hg', 'branch', "--force", "hammer-branch-%s" % client_id])
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    13
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    14
while True:
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    15
    subprocess.check_call([
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    16
        'hg', 'commit',
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    17
        "--config", "ui.allowemptycommit=yes",
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    18
        "--message", "hammer-%s" % client_id,
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    19
    ])
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    20
    nodeid = subprocess.check_output([
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    21
        'hg', 'log', '--rev', '.', '--template', '{node}'
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    22
    ])
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    23
    subprocess.check_call([
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    24
        'hg', 'debugobsolete', ''.join(reversed(nodeid)), nodeid
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    25
    ])
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    26
    subprocess.check_call(['hg', 'pull'])
518e04284921 contrib: introduce a small script to stress tests obsolescence exchange
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    27
    subprocess.check_call(['hg', 'push', '--force'])