blob: 7c4ae58c24d8c65c8a7a8263d87c4368ac553329 [file] [log] [blame]
N0
SELECT /*+ ENFORCE_JOIN_ORDER, DISABLE_RULE('JoinCommuteRule', 'MergeJoinConverter', 'NestedLoopJoinConverter', 'CorrelatedNestedLoopJoin') */ * FROM t1_n1 JOIN t2_n1 USING (id)
---
Fragment#0 root
executionNodes: [N0]
remoteFragments: [1]
exchangeSourceNodes: {1=[N1]}
tree:
Receiver(sourceFragment=1, exchange=1, distribution=single)
Fragment#1
targetNodes: [N0]
executionNodes: [N1]
tables: [T1_N1, T2_N1]
partitions: {N1=[0:1]}
tree:
Sender(targetFragment=0, exchange=1, distribution=single)
Project
HashJoin
TableScan(name=PUBLIC.T1_N1, source=2, partitions=1, distribution=affinity[table: T1_N1, columns: [ID]])
TableScan(name=PUBLIC.T2_N1, source=3, partitions=1, distribution=affinity[table: T2_N1, columns: [ID]])
---
N0
SELECT /*+ ENFORCE_JOIN_ORDER, DISABLE_RULE('JoinCommuteRule', 'MergeJoinConverter', 'NestedLoopJoinConverter', 'CorrelatedNestedLoopJoin') */ * FROM t1_n1 t1 JOIN t1_n1 t2 ON t1.id = t2.id
---
Fragment#0 root
executionNodes: [N0]
remoteFragments: [1]
exchangeSourceNodes: {1=[N1]}
tree:
Receiver(sourceFragment=1, exchange=1, distribution=single)
Fragment#1
targetNodes: [N0]
executionNodes: [N1]
tables: [T1_N1, T1_N1]
partitions: {N1=[0:1]}
tree:
Sender(targetFragment=0, exchange=1, distribution=single)
HashJoin
TableScan(name=PUBLIC.T1_N1, source=2, partitions=1, distribution=affinity[table: T1_N1, columns: [ID]])
TableScan(name=PUBLIC.T1_N1, source=3, partitions=1, distribution=affinity[table: T1_N1, columns: [ID]])
---
N0
SELECT /*+ ENFORCE_JOIN_ORDER, DISABLE_RULE('JoinCommuteRule', 'MergeJoinConverter', 'NestedLoopJoinConverter', 'CorrelatedNestedLoopJoin') */ * FROM t1_n1 JOIN t2_n2 USING (id)
---
Fragment#0 root
executionNodes: [N0]
remoteFragments: [1]
exchangeSourceNodes: {1=[N1]}
tree:
Receiver(sourceFragment=1, exchange=1, distribution=single)
Fragment#4
targetNodes: [N0]
executionNodes: [N1]
remoteFragments: [5]
exchangeSourceNodes: {5=[N2]}
tables: [T1_N1, T2_N2]
partitions: {N1=[0:1]}
tree:
Sender(targetFragment=0, exchange=1, distribution=single)
Project
HashJoin
TableScan(name=PUBLIC.T1_N1, source=2, partitions=1, distribution=affinity[table: T1_N1, columns: [ID]])
Receiver(sourceFragment=5, exchange=5, distribution=affinity[table: T2_N2, columns: [ID]])
Fragment#5
targetNodes: [N1]
executionNodes: [N2]
tables: [T2_N2]
partitions: {N2=[0:1]}
tree:
Sender(targetFragment=4, exchange=5, distribution=affinity[table: T2_N2, columns: [ID]])
TableScan(name=PUBLIC.T2_N2, source=3, partitions=1, distribution=affinity[table: T2_N2, columns: [ID]])
---
N0
SELECT /*+ ENFORCE_JOIN_ORDER, DISABLE_RULE('JoinCommuteRule', 'MergeJoinConverter', 'NestedLoopJoinConverter', 'CorrelatedNestedLoopJoin') */ * FROM t1_n1
JOIN TABLE(SYSTEM_RANGE(0, 10)) r ON t1_n1.id = r.x
---
Fragment#0 root
executionNodes: [N0]
remoteFragments: [1]
exchangeSourceNodes: {1=[N1]}
tree:
Project
HashJoin
Receiver(sourceFragment=1, exchange=1, distribution=single)
TableFunctionScan(source=2, distribution=single)
Fragment#1
targetNodes: [N0]
executionNodes: [N1]
tables: [T1_N1]
partitions: {N1=[0:1]}
tree:
Sender(targetFragment=0, exchange=1, distribution=single)
TableScan(name=PUBLIC.T1_N1, source=3, partitions=1, distribution=affinity[table: T1_N1, columns: [ID]])
---