By default, the synapse admin API limits the rooms query to 100 results. This was causing the purges to apply to ~5% of rooms on our server. Now we set a higher limit for the room query.