<https://clickhouse-test-reports.s3.yandex.net/25969/86d31445fd0dd9bc086432f559d1089c3d4a7700/fuzzer_debug/report.html#fail1>
auto data = input.pullData();
            
            if (data.exception)
            {
                if (views_data->has_exception && views_data->first_exception == data.exception)
                    statuses[i].is_first = true;
                else
                    statuses[i].exception = data.exception;
                if (i == 0 && statuses[0].is_first)
                {
                    output.pushData(std::move(data));
                    return Status::PortFull;
                }
            }
            if (input.isFinished())
                ++num_finished;
        }
    }
    if (num_finished == inputs.size())
    {
        if (!statuses.empty())
            return Status::Ready;
        if (any_exception)
            output.pushException(any_exception);
        output.finish();
        return Status::Finished;
    }
    return Status::NeedData;
}
static std::exception_ptr addStorageToException(std::exception_ptr ptr, const StorageID & storage)