```
select parseDateTime64BestEffort('2.55');


2020.07.22 00:47:52.886789 [ 851658 ] {939dc3c2-9316-40d6-9769-f91ab87f6ab2} <Error> : Logical error: 'Cannot read DateTime: logical error, unexpected date: 2000-2-55'.
clickhouse-server: /home/akuzm/ch4/ch/src/Common/Exception.cpp:45: DB::Exception::Exception(const std::string &, int): Assertion `false' failed.
2020.07.22 00:47:52.887758 [ 851521 ] {} <Trace> BaseDaemon: Received signal 6
2020.07.22 00:47:52.888168 [ 886176 ] {} <Fatal> BaseDaemon: ########################################
2020.07.22 00:47:52.888688 [ 886176 ] {} <Fatal> BaseDaemon: (version 20.7.1.1, build id: 21B0DCC47427FD8E) (from thread 851658) (query_id: 939dc3c2-9316-40d6-9769-f91ab87f6ab2) Received signal Aborted (6)
2020.07.22 00:47:52.888912 [ 886176 ] {} <Fatal> BaseDaemon: 
2020.07.22 00:47:52.889307 [ 886176 ] {} <Fatal> BaseDaemon: Stack trace: 0x7f389438a18b 0x7f3894369859 0x7f3894369729 0x7f389437af36 0x7f38982b73a5 0x7f38983cfda3 0x7f38983cb0e9 0x7f38983cf9a0 0x7f38983cf943 0x7f388e46f138 0x7f388e46e4b6 0x7f388e1e76c1 0x7f388e1e6bcf 0x7f388e9e04d3 0x7f388e9e00ae 0x7f388e9e0450 0x7f388e9e15dd 0x7f3887725896 0x7f3887729117 0x7f3887728a43 0x7f3887350ec2 0x7f388735b0d6 0x7f38873542da 0x7f38873512c7 0x7f38877486dd 0x7f3887755d96 0x7f38877486ef 0x7f388773f85d
2020.07.22 00:47:52.892491 [ 886176 ] {} <Fatal> BaseDaemon: 4. /build/glibc-YYA7BZ/glibc-2.31/signal/../sysdeps/unix/sysv/linux/raise.c:51: raise @ 0x4618b in /usr/lib/debug/lib/x86_64-linux-gnu/libc-2.31.so
2020.07.22 00:47:52.893195 [ 886176 ] {} <Fatal> BaseDaemon: 5. /build/glibc-YYA7BZ/glibc-2.31/stdlib/abort.c:81: abort @ 0x25859 in /usr/lib/debug/lib/x86_64-linux-gnu/libc-2.31.so
2020.07.22 00:47:52.894235 [ 886176 ] {} <Fatal> BaseDaemon: 6. /build/glibc-YYA7BZ/glibc-2.31/intl/loadmsgcat.c:509: _nl_load_domain.cold @ 0x25729 in /usr/lib/debug/lib/x86_64-linux-gnu/libc-2.31.so
2020.07.22 00:47:52.894868 [ 886176 ] {} <Fatal> BaseDaemon: 7. ? @ 0x36f36 in /usr/lib/debug/lib/x86_64-linux-gnu/libc-2.31.so
2020.07.22 00:47:52.897805 [ 886176 ] {} <Fatal> BaseDaemon: 8. /home/akuzm/ch4/ch/src/Common/Exception.cpp:48: DB::Exception::Exception(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) @ 0x2a23a5 in /home/akuzm/ch4/build-clang10/src/libclickhouse_common_iod.so
2020.07.22 00:47:52.902076 [ 886176 ] {} <Fatal> BaseDaemon: 9. /home/akuzm/ch4/ch/src/IO/parseDateTimeBestEffort.cpp:102: void DB::(anonymous namespace)::parseDateTimeBestEffortImpl<void, false>(long&, DB::ReadBuffer&, DateLUTImpl const&, DateLUTImpl const&, DB::(anonymous namespace)::DateTimeSubsecondPart*)::'lambda'(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int)::operator()(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) const @ 0x3bada3 in /home/akuzm/ch4/build-clang10/src/libclickhouse_common_iod.so
2020.07.22 00:47:52.903713 [ 886176 ] {} <Fatal> BaseDaemon: 10. /home/akuzm/ch4/ch/src/IO/parseDateTimeBestEffort.cpp:558: void DB::(anonymous namespace)::parseDateTimeBestEffortImpl<void, false>(long&, DB::ReadBuffer&, DateLUTImpl const&, DateLUTImpl const&, DB::(anonymous namespace)::DateTimeSubsecondPart*) @ 0x3b60e9 in /home/akuzm/ch4/build-clang10/src/libclickhouse_common_iod.so
2020.07.22 00:47:52.905140 [ 886176 ] {} <Fatal> BaseDaemon: 11. /home/akuzm/ch4/ch/src/IO/parseDateTimeBestEffort.cpp:612: void DB::(anonymous namespace)::parseDateTime64BestEffortImpl<void>(DB::Decimal<long>&, unsigned int, DB::ReadBuffer&, DateLUTImpl const&, DateLUTImpl const&) @ 0x3ba9a0 in /home/akuzm/ch4/build-clang10/src/libclickhouse_common_iod.so
2020.07.22 00:47:52.906675 [ 886176 ] {} <Fatal> BaseDaemon: 12. /home/akuzm/ch4/ch/src/IO/parseDateTimeBestEffort.cpp:651: DB::parseDateTime64BestEffort(DB::Decimal<long>&, unsigned int, DB::ReadBuffer&, DateLUTImpl const&, DateLUTImpl const&) @ 0x3ba943 in /home/akuzm/ch4/build-clang10/src/libclickhouse_common_iod.so
2020.07.22 00:47:52.923698 [ 886176 ] {} <Fatal> BaseDaemon: 13. /home/akuzm/ch4/ch/src/Functions/FunctionsConversion.h:668: void DB::ConvertThroughParsing<DB::DataTypeString, DB::DataTypeDateTime64, DB::NameParseDateTime64BestEffort, (DB::ConvertFromStringExceptionMode)0, (DB::ConvertFromStringParsingMode)1>::execute<unsigned int>(DB::Block&, std::__1::vector<unsigned long, std::__1::allocator<unsigned long> > const&, unsigned long, unsigned long, unsigned int) @ 0x2acf138 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.22 00:47:52.937497 [ 886176 ] {} <Fatal> BaseDaemon: 14. /home/akuzm/ch4/ch/src/Functions/FunctionsConversion.h:1239: DB::FunctionConvertFromString<DB::DataTypeDateTime64, DB::NameParseDateTime64BestEffort, (DB::ConvertFromStringExceptionMode)0, (DB::ConvertFromStringParsingMode)1>::executeImpl(DB::Block&, std::__1::vector<unsigned long, std::__1::allocator<unsigned long> > const&, unsigned long, unsigned long) @ 0x2ace4b6 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.22 00:47:52.939467 [ 886176 ] {} <Fatal> BaseDaemon: 15. /home/akuzm/ch4/ch/src/Functions/IFunctionImpl.h:208: DB::IFunction::executeImplDryRun(DB::Block&, std::__1::vector<unsigned long, std::__1::allocator<unsigned long> > const&, unsigned long, unsigned long) @ 0x28476c1 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.22 00:47:52.939937 [ 886176 ] {} <Fatal> BaseDaemon: 16. /home/akuzm/ch4/ch/src/Functions/IFunctionAdaptors.h:156: DB::DefaultExecutable::executeDryRun(DB::Block&, std::__1::vector<unsigned long, std::__1::allocator<unsigned long> > const&, unsigned long, unsigned long) @ 0x2846bcf in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.22 00:47:52.943874 [ 886176 ] {} <Fatal> BaseDaemon: 17. /home/akuzm/ch4/ch/src/Functions/IFunction.cpp:323: DB::ExecutableFunctionAdaptor::executeWithoutLowCardinalityColumns(DB::Block&, std::__1::vector<unsigned long, std::__1::allocator<unsigned long> > const&, unsigned long, unsigned long, bool) @ 0x30404d3 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.22 00:47:52.945544 [ 886176 ] {} <Fatal> BaseDaemon: 18. /home/akuzm/ch4/ch/src/Functions/IFunction.cpp:266: DB::ExecutableFunctionAdaptor::defaultImplementationForConstantArguments(DB::Block&, std::__1::vector<unsigned long, std::__1::allocator<unsigned long> > const&, unsigned long, unsigned long, bool) @ 0x30400ae in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.22 00:47:52.947119 [ 886176 ] {} <Fatal> BaseDaemon: 19. /home/akuzm/ch4/ch/src/Functions/IFunction.cpp:316: DB::ExecutableFunctionAdaptor::executeWithoutLowCardinalityColumns(DB::Block&, std::__1::vector<unsigned long, std::__1::allocator<unsigned long> > const&, unsigned long, unsigned long, bool) @ 0x3040450 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.22 00:47:52.948796 [ 886176 ] {} <Fatal> BaseDaemon: 20. /home/akuzm/ch4/ch/src/Functions/IFunction.cpp:486: DB::ExecutableFunctionAdaptor::execute(DB::Block&, std::__1::vector<unsigned long, std::__1::allocator<unsigned long> > const&, unsigned long, unsigned long, bool) @ 0x30415dd in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.22 00:47:52.954415 [ 886176 ] {} <Fatal> BaseDaemon: 21. /home/akuzm/ch4/ch/src/Interpreters/ExpressionActions.cpp:206: DB::ExpressionAction::prepare(DB::Block&, DB::Settings const&, std::__1::unordered_set<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >&) @ 0x11a8896 in /home/akuzm/ch4/build-clang10/src/libclickhouse_interpretersd.so
2020.07.22 00:47:52.955738 [ 886176 ] {} <Fatal> BaseDaemon: 22. /home/akuzm/ch4/ch/src/Interpreters/ExpressionActions.cpp:625: DB::ExpressionActions::addImpl(DB::ExpressionAction, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >&) @ 0x11ac117 in /home/akuzm/ch4/build-clang10/src/libclickhouse_interpretersd.so
2020.07.22 00:47:52.957356 [ 886176 ] {} <Fatal> BaseDaemon: 23. /home/akuzm/ch4/ch/src/Interpreters/ExpressionActions.cpp:586: DB::ExpressionActions::add(DB::ExpressionAction const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >&) @ 0x11aba43 in /home/akuzm/ch4/build-clang10/src/libclickhouse_interpretersd.so
2020.07.22 00:47:52.958702 [ 886176 ] {} <Fatal> BaseDaemon: 24. /home/akuzm/ch4/ch/src/Interpreters/ActionsVisitor.cpp:253: DB::ScopeStack::addAction(DB::ExpressionAction const&) @ 0xdd3ec2 in /home/akuzm/ch4/build-clang10/src/libclickhouse_interpretersd.so
2020.07.22 00:47:52.959409 [ 886176 ] {} <Fatal> BaseDaemon: 25. /home/akuzm/ch4/ch/src/Interpreters/ActionsVisitor.h:117: DB::ActionsMatcher::Data::addAction(DB::ExpressionAction const&) @ 0xdde0d6 in /home/akuzm/ch4/build-clang10/src/libclickhouse_interpretersd.so
2020.07.22 00:47:52.959832 [ 886176 ] {} <Fatal> BaseDaemon: 26. /home/akuzm/ch4/ch/src/Interpreters/ActionsVisitor.cpp:593: DB::ActionsMatcher::visit(DB::ASTFunction const&, std::__1::shared_ptr<DB::IAST> const&, DB::ActionsMatcher::Data&) @ 0xdd72da in /home/akuzm/ch4/build-clang10/src/libclickhouse_interpretersd.so
2020.07.22 00:47:52.960160 [ 886176 ] {} <Fatal> BaseDaemon: 27. /home/akuzm/ch4/ch/src/Interpreters/ActionsVisitor.cpp:310: DB::ActionsMatcher::visit(std::__1::shared_ptr<DB::IAST> const&, DB::ActionsMatcher::Data&) @ 0xdd42c7 in /home/akuzm/ch4/build-clang10/src/libclickhouse_interpretersd.so
2020.07.22 00:47:52.963297 [ 886176 ] {} <Fatal> BaseDaemon: 28. /home/akuzm/ch4/ch/src/Interpreters/InDepthNodeVisitor.h:32: DB::InDepthNodeVisitor<DB::ActionsMatcher, true, std::__1::shared_ptr<DB::IAST> const>::visit(std::__1::shared_ptr<DB::IAST> const&) @ 0x11cb6dd in /home/akuzm/ch4/build-clang10/src/libclickhouse_interpretersd.so
2020.07.22 00:47:52.968343 [ 886176 ] {} <Fatal> BaseDaemon: 29. /home/akuzm/ch4/ch/src/Interpreters/InDepthNodeVisitor.h:45: DB::InDepthNodeVisitor<DB::ActionsMatcher, true, std::__1::shared_ptr<DB::IAST> const>::visitChildren(std::__1::shared_ptr<DB::IAST> const&) @ 0x11d8d96 in /home/akuzm/ch4/build-clang10/src/libclickhouse_interpretersd.so
2020.07.22 00:47:52.969977 [ 886176 ] {} <Fatal> BaseDaemon: 30. /home/akuzm/ch4/ch/src/Interpreters/InDepthNodeVisitor.h:35: DB::InDepthNodeVisitor<DB::ActionsMatcher, true, std::__1::shared_ptr<DB::IAST> const>::visit(std::__1::shared_ptr<DB::IAST> const&) @ 0x11cb6ef in /home/akuzm/ch4/build-clang10/src/libclickhouse_interpretersd.so
2020.07.22 00:47:52.971315 [ 886176 ] {} <Fatal> BaseDaemon: 31. /home/akuzm/ch4/ch/src/Interpreters/ExpressionAnalyzer.cpp:396: DB::ExpressionAnalyzer::getRootActions(std::__1::shared_ptr<DB::IAST> const&, bool, std::__1::shared_ptr<DB::ExpressionActions>&, bool) @ 0x11c285d in /home/akuzm/ch4/build-clang10/src/libclickhouse_interpretersd.so
```
return on_error("Cannot read DateTime: year component is duplicated", ErrorCodes::CANNOT_PARSE_DATETIME);
                        num_digits = readDigits(digits, sizeof(digits), in);
                        if (num_digits == 4)
                            readDecimalNumber<4>(year, digits);
                        else if (num_digits == 2)
                        {
                            readDecimalNumber<2>(year, digits);
                            if (year >= 70)
                                year += 1900;
                            else
                                year += 2000;
                        }
                        else
                            return on_error("Cannot read DateTime: unexpected number of decimal digits after day of month and month: " + toString(num_digits), ErrorCodes::CANNOT_PARSE_DATETIME);
                    }
                }
                else
                {
                    if (day_of_month)
                        hour = hour_or_day_of_month_or_month;
                    else
                        day_of_month = hour_or_day_of_month_or_month;
                }
            }
            else if (num_digits != 0)
                return on_error("Cannot read DateTime: unexpected number of decimal digits: " + toString(num_digits), ErrorCodes::CANNOT_PARSE_DATETIME);
        }
        if (num_digits == 0)
        {
            char c = *in.position();