diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2018-05-21 12:43:05 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-05-21 12:43:05 +0200 |
commit | 05f8c375a245ff6709a20f6a4ac5115a75db3f2b (patch) | |
tree | 4982f4e31e89b29e1a013a8eb34d204366b479fa | |
parent | 9ada5328095e21691befb8ddd1081512c1858118 (diff) |
Remove small pagination limit from context API (#7564)
Fix #7557
-rw-r--r-- | app/controllers/api/v1/statuses_controller.rb | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/app/controllers/api/v1/statuses_controller.rb b/app/controllers/api/v1/statuses_controller.rb index 01880565c..289d91045 100644 --- a/app/controllers/api/v1/statuses_controller.rb +++ b/app/controllers/api/v1/statuses_controller.rb @@ -10,6 +10,12 @@ class Api::V1::StatusesController < Api::BaseController respond_to :json + # This API was originally unlimited, pagination cannot be introduced without + # breaking backwards-compatibility. Arbitrarily high number to cover most + # conversations as quasi-unlimited, it would be too much work to render more + # than this anyway + CONTEXT_LIMIT = 4_096 + def show cached = Rails.cache.read(@status.cache_key) @status = cached unless cached.nil? @@ -17,8 +23,8 @@ class Api::V1::StatusesController < Api::BaseController end def context - ancestors_results = @status.in_reply_to_id.nil? ? [] : @status.ancestors(DEFAULT_STATUSES_LIMIT, current_account) - descendants_results = @status.descendants(DEFAULT_STATUSES_LIMIT, current_account) + ancestors_results = @status.in_reply_to_id.nil? ? [] : @status.ancestors(CONTEXT_LIMIT, current_account) + descendants_results = @status.descendants(CONTEXT_LIMIT, current_account) loaded_ancestors = cache_collection(ancestors_results, Status) loaded_descendants = cache_collection(descendants_results, Status) |