Revert [ab8667337e17d74d4f6c0649bde83aae5c16c651] and part of [d013e5426fac8c654159cfb12467da55106b5e4b]. Move the filtering by recordid into the services class instead. The archaic scheduler code is a minefield and fragile, safer just to avoid modifying it and in future work on implementing a simpler, cleaner and documented interface. Fixes #12285.