Allow pausing Zoekt indexing (like Elasticsearch pause)
At present we allow users to "pause" indexing for Elasticsearch in the admin UI. This is very useful during migrations or to quickly mitigate incidents.
This pausing behaviour sends all Sidekiq jobs to a Redis sorted set to be processed later when it's unpaused. This sorted set is also deduplicated to reduce the rate of growth (and hence Redis memory usage). The same approach should work for Zoekt and a lot of the code may be generalisable. I could even imagine the code could be generalised as far as "pause any worker in GitLab" but we maybe don't need to make it that generic if it harms readability.
Edited by Dylan Griffith