Skip to content

Commit 6a2e27b

Browse files
author
epriestley
committed
Put all DifferentialComment loading behind DifferentialCommentQuery
Summary: Ref T2222. I'm thinking about how I want to approach the Asana sync, and I want to try to do T2222 first so that we can build it cleanly on top of ApplicationTransactions. I think we can at least walk down this road a little bit and if it turns out to be scary we can take another approach. I was generally very happy with how the auth migration turned out (seemingly, it was almost completely clean), and want to pursue a similar strategy here. Basically: - Wrap the new objects in the old objects for reads/writes. - Migrate all the existing data to the new table. - Everything hard is done; move things over a piece at a time at a leisurely pace in lots of smallish, relatively-easy-to-understand changes. This deletes or abstracts all reads of the DifferentialComment table. In particular, these things are **deleted**: - The script `undo_commits.php`, which I haven't pointed anyone at in a very long time. - The `differential.getrevisionfeedback` Conduit method, which has been marked deprecated for a year or more. - The `/stats/` interface in Differential, which should be rebuilt on Fact and has never been exposed in the UI. It does a ton of joins and such which are prohibitively difficult to migrate. This leaves a small number of reading interfaces, which I replaced with a new `DifferentialCommentQuery`. Some future change will make this actually load transactions and wrap them with DifferentialComment interfaces. Test Plan: Viewed a revision; made revision comments Reviewers: btrahan Reviewed By: btrahan CC: edward, chad, aran Maniphest Tasks: T2222 Differential Revision: https://secure.phabricator.com/D6260
1 parent 0a044ef commit 6a2e27b

12 files changed

+60
-755
lines changed

scripts/repository/undo_commits.php

Lines changed: 0 additions & 178 deletions
This file was deleted.

src/__phutil_library_map__.php

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,6 @@
141141
'ConduitAPI_differential_getdiff_Method' => 'applications/differential/conduit/ConduitAPI_differential_getdiff_Method.php',
142142
'ConduitAPI_differential_getrevision_Method' => 'applications/differential/conduit/ConduitAPI_differential_getrevision_Method.php',
143143
'ConduitAPI_differential_getrevisioncomments_Method' => 'applications/differential/conduit/ConduitAPI_differential_getrevisioncomments_Method.php',
144-
'ConduitAPI_differential_getrevisionfeedback_Method' => 'applications/differential/conduit/ConduitAPI_differential_getrevisionfeedback_Method.php',
145144
'ConduitAPI_differential_markcommitted_Method' => 'applications/differential/conduit/ConduitAPI_differential_markcommitted_Method.php',
146145
'ConduitAPI_differential_parsecommitmessage_Method' => 'applications/differential/conduit/ConduitAPI_differential_parsecommitmessage_Method.php',
147146
'ConduitAPI_differential_query_Method' => 'applications/differential/conduit/ConduitAPI_differential_query_Method.php',
@@ -331,6 +330,7 @@
331330
'DifferentialCommentEditor' => 'applications/differential/editor/DifferentialCommentEditor.php',
332331
'DifferentialCommentMail' => 'applications/differential/mail/DifferentialCommentMail.php',
333332
'DifferentialCommentPreviewController' => 'applications/differential/controller/DifferentialCommentPreviewController.php',
333+
'DifferentialCommentQuery' => 'applications/differential/query/DifferentialCommentQuery.php',
334334
'DifferentialCommentSaveController' => 'applications/differential/controller/DifferentialCommentSaveController.php',
335335
'DifferentialCommitsFieldSpecification' => 'applications/differential/field/specification/DifferentialCommitsFieldSpecification.php',
336336
'DifferentialConflictsFieldSpecification' => 'applications/differential/field/specification/DifferentialConflictsFieldSpecification.php',
@@ -390,8 +390,6 @@
390390
'DifferentialRevertPlanFieldSpecification' => 'applications/differential/field/specification/DifferentialRevertPlanFieldSpecification.php',
391391
'DifferentialReviewRequestMail' => 'applications/differential/mail/DifferentialReviewRequestMail.php',
392392
'DifferentialReviewedByFieldSpecification' => 'applications/differential/field/specification/DifferentialReviewedByFieldSpecification.php',
393-
'DifferentialReviewerStats' => 'applications/differential/stats/DifferentialReviewerStats.php',
394-
'DifferentialReviewerStatsTestCase' => 'applications/differential/stats/__tests__/DifferentialReviewerStatsTestCase.php',
395393
'DifferentialReviewersFieldSpecification' => 'applications/differential/field/specification/DifferentialReviewersFieldSpecification.php',
396394
'DifferentialRevision' => 'applications/differential/storage/DifferentialRevision.php',
397395
'DifferentialRevisionCommentListView' => 'applications/differential/view/DifferentialRevisionCommentListView.php',
@@ -408,7 +406,6 @@
408406
'DifferentialRevisionListView' => 'applications/differential/view/DifferentialRevisionListView.php',
409407
'DifferentialRevisionMailReceiver' => 'applications/differential/mail/DifferentialRevisionMailReceiver.php',
410408
'DifferentialRevisionQuery' => 'applications/differential/query/DifferentialRevisionQuery.php',
411-
'DifferentialRevisionStatsController' => 'applications/differential/controller/DifferentialRevisionStatsController.php',
412409
'DifferentialRevisionStatsView' => 'applications/differential/view/DifferentialRevisionStatsView.php',
413410
'DifferentialRevisionStatus' => 'applications/differential/constants/DifferentialRevisionStatus.php',
414411
'DifferentialRevisionStatusFieldSpecification' => 'applications/differential/field/specification/DifferentialRevisionStatusFieldSpecification.php',
@@ -2025,7 +2022,6 @@
20252022
'ConduitAPI_differential_getdiff_Method' => 'ConduitAPIMethod',
20262023
'ConduitAPI_differential_getrevision_Method' => 'ConduitAPIMethod',
20272024
'ConduitAPI_differential_getrevisioncomments_Method' => 'ConduitAPI_differential_Method',
2028-
'ConduitAPI_differential_getrevisionfeedback_Method' => 'ConduitAPIMethod',
20292025
'ConduitAPI_differential_markcommitted_Method' => 'ConduitAPIMethod',
20302026
'ConduitAPI_differential_parsecommitmessage_Method' => 'ConduitAPIMethod',
20312027
'ConduitAPI_differential_query_Method' => 'ConduitAPIMethod',
@@ -2210,6 +2206,7 @@
22102206
'DifferentialCommentEditor' => 'PhabricatorEditor',
22112207
'DifferentialCommentMail' => 'DifferentialMail',
22122208
'DifferentialCommentPreviewController' => 'DifferentialController',
2209+
'DifferentialCommentQuery' => 'PhabricatorOffsetPagedQuery',
22132210
'DifferentialCommentSaveController' => 'DifferentialController',
22142211
'DifferentialCommitsFieldSpecification' => 'DifferentialFieldSpecification',
22152212
'DifferentialConflictsFieldSpecification' => 'DifferentialFieldSpecification',
@@ -2268,7 +2265,6 @@
22682265
'DifferentialRevertPlanFieldSpecification' => 'DifferentialFieldSpecification',
22692266
'DifferentialReviewRequestMail' => 'DifferentialMail',
22702267
'DifferentialReviewedByFieldSpecification' => 'DifferentialFieldSpecification',
2271-
'DifferentialReviewerStatsTestCase' => 'PhabricatorTestCase',
22722268
'DifferentialReviewersFieldSpecification' => 'DifferentialFieldSpecification',
22732269
'DifferentialRevision' =>
22742270
array(
@@ -2287,7 +2283,6 @@
22872283
'DifferentialRevisionListController' => 'DifferentialController',
22882284
'DifferentialRevisionListView' => 'AphrontView',
22892285
'DifferentialRevisionMailReceiver' => 'PhabricatorObjectMailReceiver',
2290-
'DifferentialRevisionStatsController' => 'DifferentialController',
22912286
'DifferentialRevisionStatsView' => 'AphrontView',
22922287
'DifferentialRevisionStatusFieldSpecification' => 'DifferentialFieldSpecification',
22932288
'DifferentialRevisionUpdateHistoryView' => 'AphrontView',

src/applications/differential/application/PhabricatorApplicationDifferential.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@ public function getRoutes() {
4242
'' => 'DifferentialRevisionListController',
4343
'filter/(?P<filter>\w+)/(?:(?P<username>[\w._-]+)/)?' =>
4444
'DifferentialRevisionListController',
45-
'stats/(?P<filter>\w+)/' => 'DifferentialRevisionStatsController',
4645
'diff/' => array(
4746
'(?P<id>[1-9]\d*)/' => 'DifferentialDiffViewController',
4847
'create/' => 'DifferentialDiffCreateController',

src/applications/differential/conduit/ConduitAPI_differential_getrevisioncomments_Method.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,9 @@ protected function execute(ConduitAPIRequest $request) {
3434
return $results;
3535
}
3636

37-
$comments = id(new DifferentialComment())->loadAllWhere(
38-
'revisionID IN (%Ld)',
39-
$revision_ids);
37+
$comments = id(new DifferentialCommentQuery())
38+
->withRevisionIDs($revision_ids)
39+
->execute();
4040

4141
$with_inlines = $request->getValue('inlines');
4242
if ($with_inlines) {

src/applications/differential/conduit/ConduitAPI_differential_getrevisionfeedback_Method.php

Lines changed: 0 additions & 67 deletions
This file was deleted.

0 commit comments

Comments
 (0)