For large joins, prefer sticking to the user-supplied join order over full enumeration. #3335
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This effectively reverts a change that was introduced in #3289 (potentially by accident). For a large join (16+ tables), full enumeration of every possible join plan is too slow. In the event that we can't find a good join plan heuristically, we should stick to the original join order, and not attempt to enumerate all the possible joins.
This results in worse joins in the IMDB query tests... but those tests were previously skipped because they were too slow, and we can now unskip them.
Ideally we would do a better job of finding the best join without needing to fall back on an exhaustive search, but in the meantime, this serves as a workaround.