This patch implements create table, insertion, mark exchange and query replicated and roundrobin table mixed with other distribued tables. Mark exchange is still in the conservative way, meaning it may add unnessary shuffle to the plan. For example, a replicated table A join distributed table B on non-aligned join key shall not do any shuffle if A is on the build side. See test case Redistribute(). The complete fix is with memo property enforcement.
This patch implements create table, insertion, mark exchange and query replicated and roundrobin table mixed with other distribued tables. Mark exchange is still in the conservative way, meaning it may add unnessary shuffle to the plan. For example, a replicated table A join distributed table B on non-aligned join key shall not do any shuffle if A is on the build side. See test case Redistribute(). The complete fix is with memo property enforcement.