@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.) hq.recaptime.dev/wiki/Phorge
phorge phabricator
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

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.

+1 -1
+1 -1
src/applications/diffusion/query/rawdiff/DiffusionGitRawDiffQuery.php
··· 23 23 // Check if this is the root commit by seeing if it has parents, since 24 24 // `git diff X^ X` does not work if "X" is the initial commit. 25 25 list($parents) = $repository->execxLocalCommand( 26 - 'log --format=%s %s --', 26 + 'log -n 1 --format=%s %s --', 27 27 '%P', 28 28 $commit); 29 29