On Fri, Aug 5, 2016 at 7:36 PM, ISHIKAWA,chiaki <ishik...@yk.rim.or.jp> wrote:
> Hi, > > I am patching, compiling and testing C-C TB locally under linux (inside a > virtualbox). > > I have noticed that hg "qpush -a", "hg qpop -a", "hg identity" seems to > have slow down considerably after I installed |watchman| based on the > suggestion from the output of "mozilla/mach mercurial setup". > > Has anyone noticed this? > > Debian GNU/Linux: uname -a output is > Linux ip030 3.19.5 #1 SMP Mon Apr 20 08:50:21 JST 2015 x86_64 GNU/Linux > CPU is (from dmesg) > [ 0.044782] smpboot: CPU0: Intel(R) Xeon(R) CPU E3-1240 V2 @ 3.40GHz > (fam: 06, model: 3a, stepping: 09) > > and I have allocated four (4) CPUs to this virtualbox image. > I have not noticed this. When watchman first initializes, it needs to scan your entire directory tree before it can return results. Watchman doesn't initialize until running a `hg` command that needs watchman. So the first `hg` command that uses watchman will take a bit longer. There is another scenario where hg is unable to talk to watchman, hits an error or timeout, then falls back to the non-watchman code path. I see this all the time on Windows or when my page cache is empty and watchman is unable to crawl the source directory before hg times out waiting for data. A warning is printed in this case, however. Does `hg status` speed up with watchman installed? On my machine, there is a somewhat significant difference between a fresh watchman state: $ kill <pid of watchman process> $ time hg status real 0m1.334s After watchman is fully initialized: $ time hg status real 0m0.059s And without watchman integration: $ time hg --config extensions.fsmonitor=! status real 0m0.645s If you aren't seeing speedup from a fully initialized watchman, either your repo is too small to benefit from watchman or something is wrong with watchman or the hg watchman bridge. Be sure you are using Mercurial 3.8+, the "fsmonitor" extension (it replaces the 3rd party hgwatchman extension), and a modern version of watchman. `mach mercurial-setup` will ensure you are using "fsmonitor" if running hg 3.8+.
_______________________________________________ dev-builds mailing list dev-builds@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-builds