comparison mercurial/debugcommands.py @ 46080:0e5065b6baa0

debugdiscovery: display some information about the initial "undecided" set The size and shape of the revision that remains "undediced" once the fetched the remote heads and queried the local one have a large impact on the discovery performance, so we display some information about that set. Differential Revision: https://phab.mercurial-scm.org/D9530
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Sun, 06 Dec 2020 14:45:19 +0100
parents 3ca9d26c5984
children d90f439ff19f
comparison
equal deleted inserted replaced
46079:3ca9d26c5984 46080:0e5065b6baa0
1032 missing = repo.revs(b'not ::%ld', common) 1032 missing = repo.revs(b'not ::%ld', common)
1033 heads_missing = repo.revs(b'heads(%ld)', missing) 1033 heads_missing = repo.revs(b'heads(%ld)', missing)
1034 roots_missing = repo.revs(b'roots(%ld)', missing) 1034 roots_missing = repo.revs(b'roots(%ld)', missing)
1035 assert len(common) + len(missing) == len(all) 1035 assert len(common) + len(missing) == len(all)
1036 1036
1037 initial_undecided = repo.revs(
1038 b'not (::%ln or %ln::)', heads_common_remote, heads_common_local
1039 )
1040 heads_initial_undecided = repo.revs(b'heads(%ld)', initial_undecided)
1041 roots_initial_undecided = repo.revs(b'roots(%ld)', initial_undecided)
1042 common_initial_undecided = initial_undecided & common
1043 missing_initial_undecided = initial_undecided & missing
1044
1037 data = {} 1045 data = {}
1038 data[b'elapsed'] = t.elapsed 1046 data[b'elapsed'] = t.elapsed
1039 data[b'nb-common-heads'] = len(heads_common) 1047 data[b'nb-common-heads'] = len(heads_common)
1040 data[b'nb-common-heads-local'] = len(heads_common_local) 1048 data[b'nb-common-heads-local'] = len(heads_common_local)
1041 data[b'nb-common-heads-remote'] = len(heads_common_remote) 1049 data[b'nb-common-heads-remote'] = len(heads_common_remote)
1050 data[b'nb-revs'] = len(all) 1058 data[b'nb-revs'] = len(all)
1051 data[b'nb-revs-common'] = len(common) 1059 data[b'nb-revs-common'] = len(common)
1052 data[b'nb-revs-missing'] = len(missing) 1060 data[b'nb-revs-missing'] = len(missing)
1053 data[b'nb-missing-heads'] = len(roots_missing) 1061 data[b'nb-missing-heads'] = len(roots_missing)
1054 data[b'nb-missing-roots'] = len(heads_missing) 1062 data[b'nb-missing-roots'] = len(heads_missing)
1063 data[b'nb-ini_und'] = len(initial_undecided)
1064 data[b'nb-ini_und-heads'] = len(heads_initial_undecided)
1065 data[b'nb-ini_und-roots'] = len(roots_initial_undecided)
1066 data[b'nb-ini_und-common'] = len(common_initial_undecided)
1067 data[b'nb-ini_und-missing'] = len(missing_initial_undecided)
1055 1068
1056 # display discovery summary 1069 # display discovery summary
1057 ui.writenoi18n(b"elapsed time: %(elapsed)f seconds\n" % data) 1070 ui.writenoi18n(b"elapsed time: %(elapsed)f seconds\n" % data)
1058 ui.writenoi18n(b"heads summary:\n") 1071 ui.writenoi18n(b"heads summary:\n")
1059 ui.writenoi18n(b" total common heads: %(nb-common-heads)9d\n" % data) 1072 ui.writenoi18n(b" total common heads: %(nb-common-heads)9d\n" % data)
1083 ui.writenoi18n(b" heads: %(nb-common-heads)9d\n" % data) 1096 ui.writenoi18n(b" heads: %(nb-common-heads)9d\n" % data)
1084 ui.writenoi18n(b" roots: %(nb-common-roots)9d\n" % data) 1097 ui.writenoi18n(b" roots: %(nb-common-roots)9d\n" % data)
1085 ui.writenoi18n(b" missing: %(nb-revs-missing)9d\n" % data) 1098 ui.writenoi18n(b" missing: %(nb-revs-missing)9d\n" % data)
1086 ui.writenoi18n(b" heads: %(nb-missing-heads)9d\n" % data) 1099 ui.writenoi18n(b" heads: %(nb-missing-heads)9d\n" % data)
1087 ui.writenoi18n(b" roots: %(nb-missing-roots)9d\n" % data) 1100 ui.writenoi18n(b" roots: %(nb-missing-roots)9d\n" % data)
1101 ui.writenoi18n(b" first undecided set: %(nb-ini_und)9d\n" % data)
1102 ui.writenoi18n(b" heads: %(nb-ini_und-heads)9d\n" % data)
1103 ui.writenoi18n(b" roots: %(nb-ini_und-roots)9d\n" % data)
1104 ui.writenoi18n(b" common: %(nb-ini_und-common)9d\n" % data)
1105 ui.writenoi18n(b" missing: %(nb-ini_und-missing)9d\n" % data)
1088 1106
1089 if ui.verbose: 1107 if ui.verbose:
1090 ui.writenoi18n( 1108 ui.writenoi18n(
1091 b"common heads: %s\n" 1109 b"common heads: %s\n"
1092 % b" ".join(sorted(short(n) for n in heads_common)) 1110 % b" ".join(sorted(short(n) for n in heads_common))