discovery: log discovery result in non-trivial cases
We log the discovery summary, the number of roundtrips and the elapsed time.
This is useful to understand where slow push might come from when lloking at
the blackbox.
--- a/mercurial/setdiscovery.py Wed Jun 07 10:29:39 2017 +0100
+++ b/mercurial/setdiscovery.py Wed Jun 07 10:44:11 2017 +0100
@@ -241,6 +241,9 @@
elapsed = util.timer() - start
ui.progress(_('searching'), None)
ui.debug("%d total queries in %.4fs\n" % (roundtrips, elapsed))
+ msg = 'found %d common and %d missing heads, %d roundtrips in %.4fs\n'
+ ui.log('discovery', msg, len(result), len(srvheadhashes), roundtrips,
+ elapsed)
if not result and srvheadhashes != [nullid]:
if abortwhenunrelated:
--- a/tests/test-setdiscovery.t Wed Jun 07 10:29:39 2017 +0100
+++ b/tests/test-setdiscovery.t Wed Jun 07 10:44:11 2017 +0100
@@ -398,8 +398,13 @@
> unrandomsample = $TESTTMP/unrandomsample.py
> EOF
- $ hg -R r1 outgoing r2 -T'{rev} '
+ $ hg -R r1 outgoing r2 -T'{rev} ' --config extensions.blackbox=
comparing with r2
searching for changes
101 102 103 104 105 106 107 108 109 110 (no-eol)
+ $ hg -R r1 --config extensions.blackbox= blackbox
+ * @5d0b986a083e0d91f116de4691e2aaa54d5bbec0 (*)> outgoing r2 '-T{rev} ' (glob)
+ * @5d0b986a083e0d91f116de4691e2aaa54d5bbec0 (*)> found 101 common and 101 missing heads, 2 roundtrips in *.????s (glob)
+ * @5d0b986a083e0d91f116de4691e2aaa54d5bbec0 (*)> -R r1 outgoing r2 '-T{rev} ' --config 'extensions.blackbox=' exited 0 after *.?? seconds (glob)
+ * @5d0b986a083e0d91f116de4691e2aaa54d5bbec0 (*)> blackbox (glob)
$ cd ..