1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2025-01-03 19:31:02 +01:00
phorge-phorge/src/applications/diffusion/query
epriestley d98eb2c8b8 Provide a fast path for resolving repository refs
Summary:
Ref T2783. With service-oriented calls, we take a larger performacne hit than necessary resolving refs.

Instead of resolving refs over the wire, try to resolve them from the database first. This can resolve almost all refs (commit hashes, branch and tag names).

This can't resolve weird refs like `master~50`, and obviously can't resolve invalid refs. In those cases we'll go back to the old logic, call `diffusion.resolverefs`, and end up with the right result.

Test Plan:
  - Browsed repositories in Diffusion.
  - Verified that service repositories no longer make unnecessary `diffusion.resolverefs` calls for common refs (branch names, commit hashes).
  - Resolved refs like `master~50`, saw call to underlying VCS and correct result.

Reviewers: btrahan

Reviewed By: btrahan

Subscribers: epriestley

Maniphest Tasks: T2783

Differential Revision: https://secure.phabricator.com/D11476
2015-01-23 13:31:17 -08:00
..
__tests__ Allow parenthesis in author name 2014-03-06 11:28:46 -08:00
filecontent Change double quotes to single quotes. 2014-06-09 11:36:50 -07:00
lowlevel Provide a fast path for resolving repository refs 2015-01-23 13:31:17 -08:00
pathchange Don't show changes for commits which affect more than 1,000 files 2013-01-30 12:01:49 -08:00
pathid Various linter fixes. 2014-02-26 12:44:58 -08:00
rawdiff Change double quotes to single quotes. 2014-06-09 11:36:50 -07:00
DiffusionCachedResolveRefsQuery.php Provide a fast path for resolving repository refs 2015-01-23 13:31:17 -08:00
DiffusionCommitQuery.php Fix method visibility for PhabricatorPolicyAwareQuery subclasses 2015-01-14 07:01:16 +11:00
DiffusionLintCountQuery.php Change double quotes to single quotes. 2014-06-09 11:36:50 -07:00
DiffusionPathQuery.php Delete license headers from files 2012-11-05 11:16:51 -08:00
DiffusionQuery.php Proxy Diffusion Conduit API calls 2015-01-23 13:30:52 -08:00
DiffusionRenameHistoryQuery.php Fix an issue with pulling Subversion blame data 2013-11-07 12:10:43 -08:00
DiffusionResolveUserQuery.php Provide a standalone query for resolution of commit author/committer into Phabricator users 2013-12-19 11:05:17 -08:00
DiffusionSymbolQuery.php Remove @group annotations 2014-07-10 08:12:48 +10:00