**Describe the situation**
```
$ ./clickhouse-21.3.3 client --query "SELECT * FROM system.numbers_mt FORMAT Native" | pv > /dev/null
^C,1GiB 0:00:45 [ 710MiB/s] [                                                                                                                                                                                               <=>                      ]

$ ./clickhouse-21.3.3 client --compress 0 --query "SELECT * FROM system.numbers_mt FORMAT Native" | pv > /dev/null
^C,2GiB 0:00:12 [1,48GiB/s] [                                                   <=>                                                                                                                                                                  ]
```

{
    if (!quit)
    {
        quit = true;
        task_handle->deactivate();
    }
    auto dir_sync_guard = getDirectorySyncGuard(dir_fsync, disk, relative_path);
    Poco::File(path).remove(true);
}
void StorageDistributedDirectoryMonitor::run()
{
    std::lock_guard lock{mutex};
    bool do_sleep = false;
    while (!quit)
    {
        do_sleep = true;
        const auto & files = getFiles();
        if (files.empty())
            break;
        if (!monitor_blocker.isCancelled())
        {
            try
            {
                do_sleep = !processFiles(files);
                std::lock_guard metrics_lock(metrics_mutex);
                last_exception = std::exception_ptr{};
            }
            catch (...)
            {