```
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
```
{
                try
                {
                    assertChar('\n', in);
                }
                catch (const DB::Exception &)
                {
                    if (*in.position() == '\t')
                    {
                        out << "ERROR: Tab found where line feed is expected."
                               " It's like your file has more columns than expected.\n"
                               "And if your file have right number of columns, maybe it have unescaped tab in value.\n";
                    }
                    else if (*in.position() == '\r')
                    {
                        out << "ERROR: Carriage return found where line feed is expected."
                               " It's like your file has DOS/Windows style line separators, that is illegal in TabSeparated format.\n";
                    }
                    else
                    {
                        out << "ERROR: There is no line feed. ";
                        verbosePrintString(in.position(), in.position() + 1, out);
                        out << " found instead.\n";
                    }
                    return false;
                }
            }
        }
        else
        {