Description
I created Github PR #395 for this issue.https://github.com/apache/spark/pull/395
As marmbrus comments there, one design question is which of the following is better:
1. multiple operators that handle different kinds of joins, letting the planner pick the correct one
2. putting the switching logic inside of the operator as is done here