**Describe the situation**

```
SELECT * FROM test.hits INTO OUTFILE 'dump.csv' FORMAT CSV

8873898 rows in set. Elapsed: 32.487 sec. Processed 8.87 million rows, 8.46 GB (273.15 thousand rows/s., 260.42 MB/s.)
```

is bounded by single CPU core. Too slow :(
global_context->applySettingChange(change
            }
        }
        if (const auto * use_query = parsed_query->as<ASTUseQuery>())
        {
            const String & new_database = use_query->database;
            /// If the client initiates the reconnection, it takes the settings from the config.
            config().setString("database", new_database
            /// If the connection initiates the reconnection, it uses its variable.
            connection->setDefaultDatabase(new_database
        }
    }
    /// Always print last block (if it was not printed already)
    if (profile_events.last_block)
    {
        initLogsOutputStream(
        progress_indication.clearProgressOutput(
        logs_out_stream->writeProfileEvents(profile_events.last_block
        logs_out_stream->flush(
    }
    if (is_interactive)
    {
        std::cout << std::endl << processed_rows << " rows in set. Elapsed: " << progress_indication.elapsedSeconds() << " sec. ";
        progress_indication.writeFinalProgress(
        std::cout << std::endl << std::endl;
    }
    else if (print_time_to_stderr)
    {
        std::cerr << progress_indication.elapsedSeconds() << "\n";
    }