View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0001854||Composr||core_abstract_interfaces||public||2015-04-09 13:54||2019-11-24 21:19|
|Reporter||Chris Graham||Assigned To|
|Fixed in Version|
|Summary||0001854: Support keyset pagination|
|Description||Offset pagination is slow when going into deep datasets.|
|Additional Information||Fuller explanation:|
|Tags||Type: Cross-cutting feature, Type: Performance|
|Time estimation (hours)||50|
||See also 'search keys' In Tapatalk implementation.|
This is now implemented for forum topics (not in Tapatalk though).
It's only worth doing for result sets with large numbers of records which are actively gone deep into. That could be 'news' or 'activities', but forum topics is by far the most common thing to have the issue.
One problem with this is pagination becomes less user-friendly. IIRC we have to disable the 'last' button when using keyset pagination.
0003185 would be a better approach - and maybe we could even drop what we already have of this feature if we implement that.
EDIT: No, for 2 reasons...
1) actually I was able to implement a hybrid mode, where it does a pre-query to find the keyset ID even if one wasn't provided by URL, which is massively faster than using regular MySQL LIMIT clauses. This is best of both worlds and works great.
2) a background-generated pagination is not going to work for forumview, as each new post would invalidate it (posting in a topic changes the topic order on forumview)
|2016-06-20 03:14||Chris Graham||Tag Attached: Type: Performance|
|2016-06-22 23:38||Chris Graham||Note Added: 0004064|
|2016-12-08 16:19||Chris Graham||Tag Attached: Type: Cross-cutting feature|
|2017-04-05 12:04||Chris Graham||Relationship added||related to 0003185|
|2017-05-01 16:48||Chris Graham||Category||core => core_abstract_interfaces|
|2019-11-18 21:20||Chris Graham||Note Added: 0006160|
|2019-11-24 21:15||Chris Graham||Note Edited: 0006160||View Revisions|
|2019-11-24 21:19||Chris Graham||Note Edited: 0006160||View Revisions|