```
SELECT x1 and 1 FROM (SELECT number + null AS x1 FROM numbers(1))


2020.07.14 17:29:12.351778 [ 159595 ] {8ed241d3-6c94-49be-a14a-a3e2175c822b} <Error> : Logical error: 'Unknown numeric column of type: DB::IColumn const*'.
clickhouse-server: /home/akuzm/ch4/ch/src/Common/Exception.cpp:45: DB::Exception::Exception(const std::string &, int): Assertion `false' failed.
2020.07.14 17:29:12.352110 [ 159533 ] {} <Trace> BaseDaemon: Received signal 6
2020.07.14 17:29:12.352443 [ 159617 ] {} <Fatal> BaseDaemon: ########################################
2020.07.14 17:29:12.352935 [ 159617 ] {} <Fatal> BaseDaemon: (version 20.7.1.1, build id: F176DE2A5C050ABF) (from thread 159595) (query_id: 8ed241d3-6c94-49be-a14a-a3e2175c822b) Received signal Aborted (6)
2020.07.14 17:29:12.353053 [ 159617 ] {} <Fatal> BaseDaemon: 
2020.07.14 17:29:12.353213 [ 159617 ] {} <Fatal> BaseDaemon: Stack trace: 0x7f966e30f18b 0x7f966e2ee859 0x7f966e2ee729 0x7f966e2fff36 0x7f96722373a5 0x7f96687dd327 0x7f96687dbc9e 0x7f96687da5fe 0x7f96687d8f6e 0x7f96687d78ce 0x7f96687d623e 0x7f96687d4b9e 0x7f96687d350e 0x7f96687d1e6e 0x7f96687d07de 0x7f96687d069e 0x7f96687d05aa 0x7f96687ecbb9 0x7f96687ec977 0x7f96687ec727 0x7f96687ec4d7 0x7f96687ec287 0x7f96687ec037 0x7f96687ebde7 0x7f96687ebb97 0x7f96687eb947 0x7f96687ce407 0x7f96687cde67
2020.07.14 17:29:12.353576 [ 159617 ] {} <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.14 17:29:12.353738 [ 159617 ] {} <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.14 17:29:12.353960 [ 159617 ] {} <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.14 17:29:12.354223 [ 159617 ] {} <Fatal> BaseDaemon: 7. ? @ 0x36f36 in /usr/lib/debug/lib/x86_64-linux-gnu/libc-2.31.so
2020.07.14 17:29:12.354498 [ 159617 ] {} <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) @ 0x29d3a5 in /home/akuzm/ch4/build-clang10/src/libclickhouse_common_iod.so
2020.07.14 17:29:12.356133 [ 159617 ] {} <Fatal> BaseDaemon: 9. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:224: DB::(anonymous namespace)::ValueGetterBuilderImpl<>::build(DB::IColumn const*) @ 0x2f85327 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.357831 [ 159617 ] {} <Fatal> BaseDaemon: 10. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:210: DB::(anonymous namespace)::ValueGetterBuilderImpl<double>::build(DB::IColumn const*) @ 0x2f83c9e in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.359433 [ 159617 ] {} <Fatal> BaseDaemon: 11. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:210: DB::(anonymous namespace)::ValueGetterBuilderImpl<float, double>::build(DB::IColumn const*) @ 0x2f825fe in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.360802 [ 159617 ] {} <Fatal> BaseDaemon: 12. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:210: DB::(anonymous namespace)::ValueGetterBuilderImpl<long, float, double>::build(DB::IColumn const*) @ 0x2f80f6e in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.362184 [ 159617 ] {} <Fatal> BaseDaemon: 13. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:210: DB::(anonymous namespace)::ValueGetterBuilderImpl<int, long, float, double>::build(DB::IColumn const*) @ 0x2f7f8ce in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.363597 [ 159617 ] {} <Fatal> BaseDaemon: 14. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:210: DB::(anonymous namespace)::ValueGetterBuilderImpl<short, int, long, float, double>::build(DB::IColumn const*) @ 0x2f7e23e in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.365015 [ 159617 ] {} <Fatal> BaseDaemon: 15. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:210: DB::(anonymous namespace)::ValueGetterBuilderImpl<signed char, short, int, long, float, double>::build(DB::IColumn const*) @ 0x2f7cb9e in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.366604 [ 159617 ] {} <Fatal> BaseDaemon: 16. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:210: DB::(anonymous namespace)::ValueGetterBuilderImpl<unsigned long, signed char, short, int, long, float, double>::build(DB::IColumn const*) @ 0x2f7b50e in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.368250 [ 159617 ] {} <Fatal> BaseDaemon: 17. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:210: DB::(anonymous namespace)::ValueGetterBuilderImpl<unsigned int, unsigned long, signed char, short, int, long, float, double>::build(DB::IColumn const*) @ 0x2f79e6e in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.369625 [ 159617 ] {} <Fatal> BaseDaemon: 18. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:210: DB::(anonymous namespace)::ValueGetterBuilderImpl<unsigned short, unsigned int, unsigned long, signed char, short, int, long, float, double>::build(DB::IColumn const*) @ 0x2f787de in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.370890 [ 159617 ] {} <Fatal> BaseDaemon: 19. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:210: DB::(anonymous namespace)::ValueGetterBuilderImpl<char8_t, unsigned short, unsigned int, unsigned long, signed char, short, int, long, float, double>::build(DB::IColumn const*) @ 0x2f7869e in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.372139 [ 159617 ] {} <Fatal> BaseDaemon: 20. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:270: DB::(anonymous namespace)::AssociativeGenericApplierImpl<DB::FunctionsLogicalDetail::AndImpl, 1ul>::AssociativeGenericApplierImpl(std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> > const&) @ 0x2f785aa in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.374202 [ 159617 ] {} <Fatal> BaseDaemon: 21. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:306: void DB::(anonymous namespace)::OperationApplier<DB::FunctionsLogicalDetail::AndImpl, DB::(anonymous namespace)::AssociativeGenericApplierImpl, 1ul>::doBatchedApply<true, std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul> >(std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >&, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul>&) @ 0x2f94bb9 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.376148 [ 159617 ] {} <Fatal> BaseDaemon: 22. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:302: void DB::(anonymous namespace)::OperationApplier<DB::FunctionsLogicalDetail::AndImpl, DB::(anonymous namespace)::AssociativeGenericApplierImpl, 2ul>::doBatchedApply<true, std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul> >(std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >&, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul>&) @ 0x2f94977 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.378124 [ 159617 ] {} <Fatal> BaseDaemon: 23. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:302: void DB::(anonymous namespace)::OperationApplier<DB::FunctionsLogicalDetail::AndImpl, DB::(anonymous namespace)::AssociativeGenericApplierImpl, 3ul>::doBatchedApply<true, std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul> >(std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >&, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul>&) @ 0x2f94727 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.380126 [ 159617 ] {} <Fatal> BaseDaemon: 24. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:302: void DB::(anonymous namespace)::OperationApplier<DB::FunctionsLogicalDetail::AndImpl, DB::(anonymous namespace)::AssociativeGenericApplierImpl, 4ul>::doBatchedApply<true, std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul> >(std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >&, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul>&) @ 0x2f944d7 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.382491 [ 159617 ] {} <Fatal> BaseDaemon: 25. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:302: void DB::(anonymous namespace)::OperationApplier<DB::FunctionsLogicalDetail::AndImpl, DB::(anonymous namespace)::AssociativeGenericApplierImpl, 5ul>::doBatchedApply<true, std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul> >(std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >&, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul>&) @ 0x2f94287 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.384721 [ 159617 ] {} <Fatal> BaseDaemon: 26. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:302: void DB::(anonymous namespace)::OperationApplier<DB::FunctionsLogicalDetail::AndImpl, DB::(anonymous namespace)::AssociativeGenericApplierImpl, 6ul>::doBatchedApply<true, std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul> >(std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >&, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul>&) @ 0x2f94037 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.387007 [ 159617 ] {} <Fatal> BaseDaemon: 27. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:302: void DB::(anonymous namespace)::OperationApplier<DB::FunctionsLogicalDetail::AndImpl, DB::(anonymous namespace)::AssociativeGenericApplierImpl, 7ul>::doBatchedApply<true, std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul> >(std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >&, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul>&) @ 0x2f93de7 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.389383 [ 159617 ] {} <Fatal> BaseDaemon: 28. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:302: void DB::(anonymous namespace)::OperationApplier<DB::FunctionsLogicalDetail::AndImpl, DB::(anonymous namespace)::AssociativeGenericApplierImpl, 8ul>::doBatchedApply<true, std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul> >(std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >&, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul>&) @ 0x2f93b97 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.391667 [ 159617 ] {} <Fatal> BaseDaemon: 29. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:302: void DB::(anonymous namespace)::OperationApplier<DB::FunctionsLogicalDetail::AndImpl, DB::(anonymous namespace)::AssociativeGenericApplierImpl, 9ul>::doBatchedApply<true, std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul> >(std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >&, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul>&) @ 0x2f93947 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.392900 [ 159617 ] {} <Fatal> BaseDaemon: 30. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:302: void DB::(anonymous namespace)::OperationApplier<DB::FunctionsLogicalDetail::AndImpl, DB::(anonymous namespace)::AssociativeGenericApplierImpl, 10ul>::doBatchedApply<true, std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul> >(std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >&, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul>&) @ 0x2f76407 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
2020.07.14 17:29:12.394319 [ 159617 ] {} <Fatal> BaseDaemon: 31. /home/akuzm/ch4/ch/src/Functions/FunctionsLogical.cpp:291: void DB::(anonymous namespace)::OperationApplier<DB::FunctionsLogicalDetail::AndImpl, DB::(anonymous namespace)::AssociativeGenericApplierImpl, 10ul>::apply<std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul> >(std::__1::vector<DB::IColumn const*, std::__1::allocator<DB::IColumn const*> >&, DB::PODArray<char8_t, 4096ul, Allocator<false, false>, 15ul, 16ul>&, bool) @ 0x2f75e67 in /home/akuzm/ch4/build-clang10/src/Functions/libclickhouse_functionsd.so
```
{
    if (arguments.size() < 2)
        throw Exception("Number of arguments for function \"" + getName() + "\" should be at least 2: passed "
            + toString(arguments.size()),
            ErrorCodes::TOO_FEW_ARGUMENTS_FOR_FUNCTION);
    bool has_nullable_arguments = false;
    for (size_t i = 0; i < arguments.size(); ++i)
    {
        const auto & arg_type = arguments[i];
        if (!has_nullable_arguments)
        {
            has_nullable_arguments = arg_type->isNullable();
            if (has_nullable_arguments && !Impl::specialImplementationForNulls())
                throw Exception("Logical error: Unexpected type of argument for function \"" + getName() + "\": "
                    " argument " + toString(i + 1) + " is of type " + arg_type->getName(), ErrorCodes::LOGICAL_ERROR);
        }
        if (!(isNativeNumber(arg_type)
            || (Impl::specialImplementationForNulls() && (arg_type->onlyNull() || isNativeNumber(removeNullable(arg_type))))))
            throw Exception("Illegal type ("
                + arg_type->getName()
                + ") of " + toString(i + 1) + " argument of function " + getName(),
                ErrorCodes::ILLEGAL_TYPE_OF_ARGUMENT);
    }
    auto result_type = std::make_shared<DataTypeUInt8>();
    return has_nullable_arguments
            ? makeNullable(result_type)
            : result_type;
}
template <typename Impl, typename Name>
void FunctionAnyArityLogical<Impl, Name>::executeImpl(