Describe the bug
Much like #1939 and #2173, CrossJoin evaluates its children in ExecutionPlan::execute
To Reproduce
Inspect code
Expected behavior
ExecutionPlan::execute should return a stream of results, but should not block on those results being available
Additional context