| distribute result [$$13] [cardinality: 1000000.0, op-cost: 0.0, total-cost: 1000000.0] |
| -- DISTRIBUTE_RESULT |UNPARTITIONED| |
| exchange [cardinality: 1000000.0, op-cost: 0.0, total-cost: 1000000.0] |
| -- ONE_TO_ONE_EXCHANGE |UNPARTITIONED| |
| limit 5 [cardinality: 1000000.0, op-cost: 0.0, total-cost: 1000000.0] |
| -- STREAM_LIMIT |UNPARTITIONED| |
| exchange [cardinality: 1000000.0, op-cost: 0.0, total-cost: 1000000.0] |
| -- RANDOM_MERGE_EXCHANGE |PARTITIONED| |
| project ([$$13]) [cardinality: 1000000.0, op-cost: 0.0, total-cost: 1000000.0] |
| -- STREAM_PROJECT |PARTITIONED| |
| assign [$$13] <- [$$t.getField(0)] [cardinality: 1000000.0, op-cost: 0.0, total-cost: 1000000.0] |
| -- ASSIGN |PARTITIONED| |
| limit 5 [cardinality: 1000000.0, op-cost: 0.0, total-cost: 1000000.0] |
| -- STREAM_LIMIT |PARTITIONED| |
| exchange [cardinality: 1000000.0, op-cost: 0.0, total-cost: 1000000.0] |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| data-scan []<-[$$t] <- test.ds1 limit 5 [cardinality: 1000000.0, op-cost: 1000000.0, total-cost: 1000000.0] |
| -- DATASOURCE_SCAN |PARTITIONED| |
| exchange [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0] |
| -- ONE_TO_ONE_EXCHANGE |PARTITIONED| |
| empty-tuple-source [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0] |
| -- EMPTY_TUPLE_SOURCE |PARTITIONED| |