```
CREATE TABLE testTSV
(
    A Date,
    S LowCardinality(Nullable(String)),
    X Int32,
    S1 LowCardinality(Nullable(String)),
    S2 Array(String)
)
ENGINE = Memory;

printf '2020-01-01\t\N\t32\t\N\n'|clickhouse-client -q 'insert into testTSV format TSV'

 DB::Exception: Unexpected NULL value of not Nullable type LowCardinality(Nullable(String)) (version 20.12.8.5 (official build))
```

But the real error is a missing column in the input stream, because I passed 4 columns instead of 5
```
printf '2020-01-01\t\N\t32\t\N\t[]\n'|clickhouse-client -q 'insert into testTSV format TSV'
ok
```
{
    for (size_t file_column = 0; file_column < column_mapping->column_indexes_for_input_fields.size(); ++file_column)
    {
        if (file_column == 0 && in.eof())
        {
            out << "<End of stream>\n";
            return false;
        }
        if (column_mapping->column_indexes_for_input_fields[file_column].has_value())
        {
            const auto & header = getPort().getHeader();
            size_t col_idx = column_mapping->column_indexes_for_input_fields[file_column].value();
            if (!deserializeFieldAndPrintDiagnosticInfo(header.getByPosition(col_idx).name, data_types[col_idx], *columns[col_idx],
                                                        out, file_column))
                return false;
        }
        else
        {
            static const String skipped_column_str = "<SKIPPED COLUMN>";
            static const DataTypePtr skipped_column_type = std::make_shared<DataTypeNothing>();
            static const MutableColumnPtr skipped_column = skipped_column_type->createColumn();
            if (!deserializeFieldAndPrintDiagnosticInfo(skipped_column_str, skipped_column_type, *skipped_column, out, file_column))
                return false;
        }
        
        if (file_column + 1 == column_mapping->column_indexes_for_input_fields.size())
        {
            if (!in.eof())