```
$ echo '20210101,A' | clickhouse-local --input-format CSV --structure 'd Date, s String' --query "SELECT * FROM table"
Code: 27. DB::Exception: Cannot parse input: expected ',' before: '20210101,A\n': 
Row 1:
Column 0,   name: d, type: Date,   ERROR: text "20210101,A" is not like Date

: While executing ParallelParsingBlockInputFormat: While executing File. (CANNOT_PARSE_INPUT_ASSERTION_FAILED)
```

**How to solve**

Disambiguate while parsing by absense of separators between YYYY-MM-DD.
while (s_pos < s + date_time_broken_down_length && !buf.eof() && isNumericASCII(*buf.position()))
    {
        *s_pos = *buf.position();
        ++s_pos;
        ++buf.position();
    }
    
    if (s_pos == s + 4 && !buf.eof() && !isNumericASCII(*buf.position()))
    {
        const auto already_read_length = s_pos - s;
        const size_t remaining_date_time_size = date_time_broken_down_length - already_read_length;
        const size_t remaining_date_size = date_broken_down_length - already_read_length;
        size_t size = buf.read(s_pos, remaining_date_time_size);
        if (size != remaining_date_time_size && size != remaining_date_size)
        {
            s_pos[size] = 0;
            if constexpr (throw_exception)
                throw ParsingException(std::string("Cannot parse datetime ") + s, ErrorCodes::CANNOT_PARSE_DATETIME);
            else
                return false;
        }
        UInt16 year = (s[0] - '0') * 1000 + (s[1] - '0') * 100 + (s[2] - '0') * 10 + (s[3] - '0');
        UInt8 month = (s[5] - '0') * 10 + (s[6] - '0');
        UInt8 day = (s[8] - '0') * 10 + (s[9] - '0');
        UInt8 hour = 0;
        UInt8 minute = 0;
        UInt8 second = 0;
        if (size == remaining_date_time_size)
        {
            hour = (s[11] - '0') * 10 + (s[12] - '0');