Admin ChangeList Infinite Scrolling or Disable Pagination

On one of my tables with 1M rows (which is not much), the admin takes a long time to load a page if I try jumping to a later page (say 10210). Just for clarity, this table doesn’t have any FK or filters that are not fetched from TextChoices.

After a bit of digging around, this looks like an inherent limitation of LIMIT/OFFSET-based pagination as the DB must do a table scan before it can apply the offset.

An interesting solution I came across is using a following_id + LIMIT option to run the search (assuming the IDs are ordered) kinda like stripe’s list API. The results are fetched practically instantly.

I’m looking for ways to disable pagination or show infinite pagination (that lists only the next page) while I build out this idea. Does has anyone any recommendation on how to do so ?

Setting paginator=None on the modelAdmlin throws an error