I'm trying to understand why global search uses offset-based paging and I can't see a good reason that it is currently implemented that way. It's terribly inefficient when the fulltext query returns a lot of matches. For example, see https://phabricator.wikimedia.org/T159575#3072387
I'm going to try to figure out how to convert to cursor paging, however, I'd love some input from @epriestley about why it's implemented with offset paging. Is it just because it was done that way originally and hasn't been converted, or is there some fundamental limitation that I am not understanding?