1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-11-28 01:32:42 +01:00

(stable) Stop doing an excessive amount of work in diffusion.rawdiffquery

Ref T11665.

Without `-n 1`, this logs the ENTIRE history of the repository. We
actually get the right result, but this is egregiously slow. Add `-n 1`
to return only one result.

It appears that I wrote this wrong way back in 2011, in D953. This
query is rarely used (until recently) which is likely why it has
escaped notice for so long.

Test Plan: Used Conduit console to execute `diffusion.rawdiffquery`.
Got the same results but spent 8ms instead of 200ms executing this
command, in a very small repository.
This commit is contained in:
epriestley 2016-09-20 05:57:52 -07:00
parent a768a252af
commit 25eea83bc0

View file

@ -23,7 +23,7 @@ final class DiffusionGitRawDiffQuery extends DiffusionRawDiffQuery {
// Check if this is the root commit by seeing if it has parents, since // Check if this is the root commit by seeing if it has parents, since
// `git diff X^ X` does not work if "X" is the initial commit. // `git diff X^ X` does not work if "X" is the initial commit.
list($parents) = $repository->execxLocalCommand( list($parents) = $repository->execxLocalCommand(
'log --format=%s %s --', 'log -n 1 --format=%s %s --',
'%P', '%P',
$commit); $commit);