1
0
Fork 0
mirror of https://we.phorge.it/source/phorge.git synced 2024-09-22 10:18:48 +02:00
phorge-phorge/src/applications
epriestley 3ec4984f27 Use cursor-based paging in Differential
Summary:
Ref T603. Ref T2625. Use cursors to page Differential queries, not offsets.

The trick here is that some queries are ordered. In these cases, we either need to pass some kind of tuple or do a cursor lookup. For example, if you are viewing revisions ordered by `dateModified`, we can either have the next page be something like:

  ?afterDateModified=2398329373&afterID=292&order=modified

...or some magical token:

  ?afterToken=2398329373:292&order=modified

I think we did this in Conpherence, but one factor there was that paging orders update with some frequency. In most cases, I think it's reasonable to pass just the ID and do a lookup to get the actual clause value (e.g., go look up object ID 292 and see what its dateModified is) and I think this is much simpler in general.

Test Plan: Set page size in Differential to 3, and paged through result lists ordered by date created and date modified.

Reviewers: btrahan

Reviewed By: btrahan

CC: aran

Maniphest Tasks: T603, T2625

Differential Revision: https://secure.phabricator.com/D6345
2013-07-03 05:45:07 -07:00
..
arcanist/conduit Move Conduit methods inside applications 2012-12-21 12:21:59 -08:00
audit Tweak audit status colors. 2013-06-11 20:53:55 -07:00
auth Fix OAuth token refresh return value 2013-06-25 16:31:01 -07:00
base Provide contextual help on auth provider configuration 2013-06-20 11:18:48 -07:00
cache Provide 'bin/cache', for managing caches 2013-05-20 10:16:35 -07:00
calendar Conpherence calendar updates 2013-05-29 14:35:34 -07:00
chatlog Consolidate some datetime code and add unit tests 2013-06-03 12:58:11 -07:00
conduit Mostly modernize Conduit logs 2013-07-01 12:37:34 -07:00
config Mostly modernize Conduit logs 2013-07-01 12:37:34 -07:00
conpherence Conpherence - fix no messages button 2013-06-14 17:00:09 -07:00
countdown PHUIList, PHUIDocument updates 2013-06-05 08:41:43 -07:00
daemon reduce noise on daemon console 2013-03-08 13:08:11 -08:00
differential Use cursor-based paging in Differential 2013-07-03 05:45:07 -07:00
diffusion Always provide a viewer when executing DifferentialRevisionQuery 2013-07-01 12:38:27 -07:00
directory/controller Always provide a viewer when executing DifferentialRevisionQuery 2013-07-01 12:38:27 -07:00
diviner Fix search and core icons in top nav 2013-06-09 09:11:32 -07:00
doorkeeper Use remarkup rule priorities in Phabricator 2013-07-01 12:29:15 -07:00
draft/storage Add draft support to ApplicationTransactions 2012-12-21 05:57:14 -08:00
drydock Add PhabricatorWorker->log() 2013-06-25 16:31:37 -07:00
fact Convert AphrontTableView to safe HTML 2013-02-09 15:11:38 -08:00
feed Initial Asana sync for Differential 2013-06-25 16:33:16 -07:00
files Implement PhutilRequest parser #2 2013-06-24 08:22:26 -07:00
flag Minor, correct more application class name spellings. 2013-05-15 17:01:34 -07:00
harbormaster Add HarbormasterRunnerWorker, for running CI tests 2012-12-17 13:43:26 -08:00
help/controller Some help pht 2013-05-21 15:29:21 -07:00
herald PHUIList, PHUIDocument updates 2013-06-05 08:41:43 -07:00
lipsum Files Generating 2013-05-06 10:30:38 -07:00
macro Add the quick shortcut to create an image macro. Maybe. 2013-07-02 20:27:15 -07:00
mailinglists PHUIList, PHUIDocument updates 2013-06-05 08:41:43 -07:00
maniphest Allow filtering maniphest tasks authored by agents 2013-06-30 07:11:23 -07:00
meta Fix white + icon hover / apps create 2013-06-11 19:10:12 -07:00
metamta Expand the "PhabricatorExternalAccount" table for new registration 2013-06-14 06:55:18 -07:00
notification Fix weird "0" notification numbers 2013-05-21 15:44:44 -07:00
oauthserver Fix an OAuthServer issue where an attacker could make a link function over HTTP when it should be HTTPS-only 2013-02-19 16:09:36 -08:00
owners PHUIList, PHUIDocument updates 2013-06-05 08:41:43 -07:00
paste Default application search to the topmost filter 2013-06-05 18:58:50 -07:00
people Provide contextual help on auth provider configuration 2013-06-20 11:18:48 -07:00
phame Provide syntax highlighting css for oblivious phame posts 2013-06-26 15:01:56 -07:00
phid Always provide a viewer when executing DifferentialRevisionQuery 2013-07-01 12:38:27 -07:00
phlux PHUIList, PHUIDocument updates 2013-06-05 08:41:43 -07:00
pholio Make ApplicationTransactions preview -> submit flow less janky 2013-06-24 15:41:59 -07:00
phortune PHUIList, PHUIDocument updates 2013-06-05 08:41:43 -07:00
phpast Uninstall Conduit calls when uninstalling applications 2013-03-13 07:09:05 -07:00
phrequent Updates to phrequent's landing page 2013-04-29 12:01:02 -07:00
phriction PHUIList, PHUIDocument updates 2013-06-05 08:41:43 -07:00
policy Improve policy description strings in ApplicationTransactions 2013-05-26 09:51:14 -07:00
ponder PHUIList, PHUIDocument updates 2013-06-05 08:41:43 -07:00
project PHUIList, PHUIDocument updates 2013-06-05 08:41:43 -07:00
releeph Always provide a viewer when executing DifferentialRevisionQuery 2013-07-01 12:38:27 -07:00
remarkup/conduit Convert Remarkup to safe HTML 2013-02-13 12:34:49 -08:00
repository Process multiple Bugtraq links in reverse to avoid links overwriting each other 2013-07-02 04:46:40 -07:00
search Modernize most Conduit console interfaces 2013-07-01 12:36:34 -07:00
settings Add a "refresh" action for external accounts 2013-06-24 15:58:27 -07:00
slowvote PHUIList, PHUIDocument updates 2013-06-05 08:41:43 -07:00
subscriptions Remove subscribe icons 2013-06-06 15:06:08 -07:00
system Add a user-accessible hook for dumping debug code into an install 2013-03-04 13:45:51 -08:00
tokens Token - fix fatal for installs with no tokens yet given 2013-05-23 11:58:23 -07:00
transactions Make ApplicationTransactions preview -> submit flow less janky 2013-06-24 15:41:59 -07:00
typeahead Allow filtering maniphest tasks authored by agents 2013-06-30 07:11:23 -07:00
uiexample Add "state icons" to ObjectItemListView 2013-07-02 16:29:43 -07:00
xhprof Fix XHProf index page 2013-04-02 09:52:52 -07:00