2.x replication doesn't set a limit value in changesOptions, as changes responses aren't batched in the same way 1.x responses are. However, this also means that queries triggered by changes requests aren't including a limit. This can result in query timeouts when backfill is required for very large channels.
Sync Gateway should apply a query limit when not otherwise specified. The default limit can be relatively large (i.e. the size of the default channel cache), but may need to be configurable, so that customers can tune the limit to their channel sizes in scenarios where query performance supports larger queries.