summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorLibravatar Alex Vandiver <alexmv@dropbox.com>2017-10-27 16:26:35 -0700
committerLibravatar Junio C Hamano <gitster@pobox.com>2017-10-30 11:45:56 +0900
commitc87fbcf7614a064877cd0323f0ed31840fed9c0c (patch)
treef143f6ae959afdbee0ff50685b76552af339277e /t
parentfsmonitor: set the PWD to the top of the working tree (diff)
downloadtgif-c87fbcf7614a064877cd0323f0ed31840fed9c0c.tar.xz
fsmonitor: don't bother pretty-printing JSON from watchman
This provides modest performance savings. Benchmarking with the following program, with and without `--no-pretty`, we find savings of 23% (0.316s -> 0.242s) in the git repository, and savings of 8% (5.24s -> 4.86s) on a large repository with 580k files in the working copy. #!/usr/bin/perl use strict; use warnings; use IPC::Open2; use JSON::XS; my $pid = open2(\*CHLD_OUT, \*CHLD_IN, "watchman -j @ARGV") or die "open2() failed: $!\n" . "Falling back to scanning...\n"; my $query = qq|["query", "$ENV{PWD}", {}]|; print CHLD_IN $query; close CHLD_IN; my $response = do {local $/; <CHLD_OUT>}; JSON::XS->new->utf8->decode($response); Signed-off-by: Alex Vandiver <alexmv@dropbox.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't')
0 files changed, 0 insertions, 0 deletions