Symptoms: all threads in BackgroundScheduledPool busy, lot of tasks in replication queue, none of the tasks is executing. 

![Screenshot from 2021-04-16 16-21-44_](https://user-images.githubusercontent.com/1549571/115193796-e767d600-a0ec-11eb-887c-5c9c2412e50c.png)

Related to #16895

Possible workarounds (poor options): increasing the background_schedule_pool_size to huge values, or restart server every time when that happens etc. - 

{
            /
            bool match = true;
            Block aggregates;
            /
            for (const auto & aggregate : select.getQueryAnalyzer()->aggregates())
            {
                const auto * column = projection.sample_block.findByName(aggregate.column_name);
                if (column)
                {
                    aggregates.insert(*column);
                }
                else
                {
                    match = false;
                    break;
                }
            }
            if (!match)
                continue;
            /
            /
            /
            /
            candidate.before_aggregation = analysis_result.before_aggregation->clone();
            /
            /
            auto required_columns = candidate.before_aggregation->foldActionsByProjection(keys, projection.sample_block_for_keys);
            /
            /