**Describe the bug**
https://clickhouse-test-reports.s3.yandex.net/19758/b9b573976e465670990c041ec303b59df1ee3919/fuzzer_asan/server.log

if (!const_array)
                throw Exception("Illegal column " + arguments[i].column->getName()
                    + " of " + toString(i + 1) + "-th argument of function " + getName(),
                    ErrorCodes::ILLEGAL_COLUMN);
            array_holders.emplace_back(const_array->convertToFullColumn());
            array = checkAndGetColumn<ColumnArray>(array_holders.back().get());
        }
        const ColumnArray::Offsets & offsets_i = array->getOffsets();
        if (i == 0)
        {
            offsets = &offsets_i;
            offsets_column = array->getOffsetsPtr();
        }
        else if (offsets_i != *offsets)
            throw Exception("Lengths of all arrays passed to " + getName() + " must be equal.",
                ErrorCodes::SIZES_OF_ARRAYS_DOESNT_MATCH);
        const auto * array_data = &array->getData();
        data_columns[i] = array_data;
    }
    const NullMap * null_map = nullptr;
    for (size_t i = 0; i < num_arguments; ++i)
    {
        if (const auto * nullable_col = checkAndGetColumn<ColumnNullable>(*data_columns[i]))
        {
            if (num_arguments == 1)
                data_columns[i] = &nullable_col->getNestedColumn();
            null_map = &nullable_col->getNullMapData();
            break;
        }
    }