**Describe the bug**
When you set the setting `input_format_with_names_use_header` to `0`, `INSERT` does not actually insert rows.

**How to reproduce**
* Which ClickHouse server version to use: git master `a21fe0b492cbc8628126a3cd493b83e82abf9978`, checked out on 2021-03-31
* Which interface to use: the native command-line client
* Non-default settings, if any: `input_format_with_names_use_header` = `0`
* `CREATE TABLE` statements for all tables involved:
```sql
CREATE TABLE csvtest
(
    `t` String
)
ENGINE = MergeTree
ORDER BY t
```
* Sample data for all these tables
`test.csv`:
```csv
t
testdata1
testdata2
```
* Queries to run that lead to unexpected result:
```
% clickhouse-client --input_format_with_names_use_header 0 --query "INSERT INTO csvtest FORMAT CSVWithNames" < test.csv
```

**Expected behavior**
Two rows `('testdata1'), ('testdata2')` will be inserted to the table `csvtest`.

**Error message and/or stacktrace**
Nothing. It silently discards the input and inserts nothing to the table.

**Additional context**
It works as expected if you set `input_format_with_names_use_header` to `1`.

}
void CSVRowInputFormat::resetParser()
{
    RowInputFormatWithDiagnosticInfo::resetParser();
    column_mapping->column_indexes_for_input_fields.clear();
    column_mapping->read_columns.clear();
    have_always_default_columns = false;
}
void registerInputFormatProcessorCSV(FormatFactory & factory)
{
    for (bool with_names : {false, true})
    {
        factory.registerInputFormatProcessor(with_names ? "CSVWithNames" : "CSV", [=](
            ReadBuffer & buf,
            const Block & sample,
            IRowInputFormat::Params params,
            const FormatSettings & settings)
        {
            return std::make_shared<CSVRowInputFormat>(sample, buf, params, with_names, settings);
        });
    }
}
static std::pair<bool, size_t> fileSegmentationEngineCSVImpl(ReadBuffer & in, DB::Memory<> & memory, size_t min_chunk_size)
{
    char * pos = in.position();
    bool quotes = false;
    bool need_more_data = true;
    size_t number_of_rows = 0;
    while (loadAtPosition(in, memory, pos) && need_more_data)
    {