>From Michael Blow <[email protected]>:

Michael Blow has submitted this change. ( 
https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19327 )

Change subject: Merge branch 'gerrit/goldfish' into 'master'
......................................................................

Merge branch 'gerrit/goldfish' into 'master'

Change-Id: I65b6f845e9958fed620fffb78837ab07f1f03559
---
A 
asterixdb/asterix-app/src/test/resources/runtimets/results_column/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.3.plan
M 
asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.3.plan
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.5.plan
M 
asterixdb/asterix-app/src/test/resources/runtimets/results/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.3.plan
M 
asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.5.plan
A 
asterixdb/asterix-app/src/test/resources/runtimets/results_column/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.5.plan
7 files changed, 158 insertions(+), 107 deletions(-)

Approvals:
  Michael Blow: Looks good to me, approved; Verified




diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/results/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.3.plan
 
b/asterixdb/asterix-app/src/test/resources/runtimets/results/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.3.plan
index 1f2126c..9e9db49 100644
--- 
a/asterixdb/asterix-app/src/test/resources/runtimets/results/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.3.plan
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/results/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.3.plan
@@ -2,23 +2,19 @@
 -- DISTRIBUTE_RESULT  |PARTITIONED|
   exchange [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-    project ([$$311]) [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
-    -- STREAM_PROJECT  |PARTITIONED|
-      assign [$$311] <- [{"id": $$345}] [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
-      -- ASSIGN  |PARTITIONED|
-        select (not(is-null($$345))) [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
-        -- STREAM_SELECT  |PARTITIONED|
-          project ([$$345]) [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+    assign [$$311] <- [{"id": $$345}] project: [$$311] [cardinality: 0.0, 
op-cost: 0.0, total-cost: 0.0]
+    -- ASSIGN  |PARTITIONED|
+      select (not(is-null($$345))) [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
+      -- STREAM_SELECT  |PARTITIONED|
+        assign [$$345] <- [string-default-null($$s.getField("id"))] project: 
[$$345] [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+        -- ASSIGN  |PARTITIONED|
+          project ([$$s]) [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
           -- STREAM_PROJECT  |PARTITIONED|
-            assign [$$345] <- [string-default-null($$s.getField("id"))] 
[cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
-            -- ASSIGN  |PARTITIONED|
-              project ([$$s]) [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
-              -- STREAM_PROJECT  |PARTITIONED|
+            exchange [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+            -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
+              data-scan []<-[$$314, $$s] <- test.dat1 [cardinality: 0.0, 
op-cost: 0.0, total-cost: 0.0]
+              -- DATASOURCE_SCAN  |PARTITIONED|
                 exchange [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
                 -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-                  data-scan []<-[$$314, $$s] <- test.dat1 [cardinality: 0.0, 
op-cost: 0.0, total-cost: 0.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|
+                  empty-tuple-source [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
+                  -- EMPTY_TUPLE_SOURCE  |PARTITIONED|
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/results/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.5.plan
 
b/asterixdb/asterix-app/src/test/resources/runtimets/results/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.5.plan
index 2f074b7..6f838fa 100644
--- 
a/asterixdb/asterix-app/src/test/resources/runtimets/results/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.5.plan
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/results/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.5.plan
@@ -2,40 +2,34 @@
 -- DISTRIBUTE_RESULT  |PARTITIONED|
   exchange [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-    project ([$$317]) [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
-    -- STREAM_PROJECT  |PARTITIONED|
-      assign [$$317] <- [{"dat3": {"id": $$351, "a": 
string-default-null($$345), "d": int64-default-null($$318)}}] [cardinality: 
0.0, op-cost: 0.0, total-cost: 0.0]
-      -- ASSIGN  |PARTITIONED|
-        project ([$$351, $$345, $$318]) [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
+    assign [$$317] <- [{"dat3": {"id": $$351, "a": string-default-null($$345), 
"d": int64-default-null($$318)}}] project: [$$317] [cardinality: 0.0, op-cost: 
0.0, total-cost: 0.0]
+    -- ASSIGN  |PARTITIONED|
+      select (le($$318, get-item($$295, 0))) project: [$$351, $$345, $$318] 
[cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+      -- STREAM_SELECT  |PARTITIONED|
+        project ([$$351, $$345, $$318, $$295]) [cardinality: 0.0, op-cost: 
0.0, total-cost: 0.0]
         -- STREAM_PROJECT  |PARTITIONED|
-          select (le($$318, get-item($$295, 0))) [cardinality: 0.0, op-cost: 
0.0, total-cost: 0.0]
-          -- STREAM_SELECT  |PARTITIONED|
-            project ([$$351, $$345, $$318, $$295]) [cardinality: 0.0, op-cost: 
0.0, total-cost: 0.0]
-            -- STREAM_PROJECT  |PARTITIONED|
-              subplan {
-                        aggregate [$$295] <- [listify($$330)] [cardinality: 
0.0, op-cost: 0.0, total-cost: 0.0]
-                        -- AGGREGATE  |LOCAL|
-                          aggregate [$$330] <- [agg-sql-count(1)] 
[cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
-                          -- AGGREGATE  |LOCAL|
-                            unnest $$333 <- scan-collection($$343) 
[cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
-                            -- UNNEST  |LOCAL|
-                              nested tuple source [cardinality: 0.0, op-cost: 
0.0, total-cost: 0.0]
-                              -- NESTED_TUPLE_SOURCE  |LOCAL|
-                     } [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
-              -- SUBPLAN  |PARTITIONED|
-                select (not(is-null($$351))) [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
-                -- STREAM_SELECT  |PARTITIONED|
-                  project ([$$351, $$345, $$318, $$343]) [cardinality: 0.0, 
op-cost: 0.0, total-cost: 0.0]
-                  -- STREAM_PROJECT  |PARTITIONED|
-                    assign [$$351, $$345, $$318, $$343] <- 
[string-default-null($$s.getField("id")), $$s.getField("a"), $$s.getField("d"), 
$$s.getField("e")] [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
-                    -- ASSIGN  |PARTITIONED|
-                      project ([$$s]) [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
-                      -- STREAM_PROJECT  |PARTITIONED|
-                        exchange [cardinality: 0.0, op-cost: 0.0, total-cost: 
0.0]
-                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-                          data-scan []<-[$$319, $$s] <- test.dat1 
[cardinality: 0.0, op-cost: 0.0, total-cost: 0.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|
+          subplan {
+                    aggregate [$$295] <- [listify($$330)] [cardinality: 0.0, 
op-cost: 0.0, total-cost: 0.0]
+                    -- AGGREGATE  |LOCAL|
+                      aggregate [$$330] <- [agg-sql-count(1)] [cardinality: 
0.0, op-cost: 0.0, total-cost: 0.0]
+                      -- AGGREGATE  |LOCAL|
+                        unnest $$333 <- scan-collection($$343) [cardinality: 
0.0, op-cost: 0.0, total-cost: 0.0]
+                        -- UNNEST  |LOCAL|
+                          nested tuple source [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
+                          -- NESTED_TUPLE_SOURCE  |LOCAL|
+                 } [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+          -- SUBPLAN  |PARTITIONED|
+            select (not(is-null($$351))) [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
+            -- STREAM_SELECT  |PARTITIONED|
+              assign [$$351, $$345, $$318, $$343] <- 
[string-default-null($$s.getField("id")), $$s.getField("a"), $$s.getField("d"), 
$$s.getField("e")] project: [$$351, $$345, $$318, $$343] [cardinality: 0.0, 
op-cost: 0.0, total-cost: 0.0]
+              -- ASSIGN  |PARTITIONED|
+                project ([$$s]) [cardinality: 0.0, op-cost: 0.0, total-cost: 
0.0]
+                -- STREAM_PROJECT  |PARTITIONED|
+                  exchange [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+                  -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
+                    data-scan []<-[$$319, $$s] <- test.dat1 [cardinality: 0.0, 
op-cost: 0.0, total-cost: 0.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|
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.3.plan
 
b/asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.3.plan
index dc43c42..8d2d305 100644
--- 
a/asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.3.plan
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.3.plan
@@ -2,23 +2,19 @@
 -- DISTRIBUTE_RESULT  |PARTITIONED|
   exchange [cardinality: 8.0, op-cost: 0.0, total-cost: 8.0]
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-    project ([$$311]) [cardinality: 8.0, op-cost: 0.0, total-cost: 8.0]
-    -- STREAM_PROJECT  |PARTITIONED|
-      assign [$$311] <- [{"id": $$345}] [cardinality: 8.0, op-cost: 0.0, 
total-cost: 8.0]
-      -- ASSIGN  |PARTITIONED|
-        select (not(is-null($$345))) [cardinality: 8.0, op-cost: 0.0, 
total-cost: 8.0]
-        -- STREAM_SELECT  |PARTITIONED|
-          project ([$$345]) [cardinality: 8.0, op-cost: 0.0, total-cost: 8.0]
+    assign [$$311] <- [{"id": $$345}] project: [$$311] [cardinality: 8.0, 
op-cost: 0.0, total-cost: 8.0]
+    -- ASSIGN  |PARTITIONED|
+      select (not(is-null($$345))) [cardinality: 8.0, op-cost: 0.0, 
total-cost: 8.0]
+      -- STREAM_SELECT  |PARTITIONED|
+        assign [$$345] <- [string-default-null($$s.getField("id"))] project: 
[$$345] [cardinality: 8.0, op-cost: 0.0, total-cost: 8.0]
+        -- ASSIGN  |PARTITIONED|
+          project ([$$s]) [cardinality: 8.0, op-cost: 0.0, total-cost: 8.0]
           -- STREAM_PROJECT  |PARTITIONED|
-            assign [$$345] <- [string-default-null($$s.getField("id"))] 
[cardinality: 8.0, op-cost: 0.0, total-cost: 8.0]
-            -- ASSIGN  |PARTITIONED|
-              project ([$$s]) [cardinality: 8.0, op-cost: 0.0, total-cost: 8.0]
-              -- STREAM_PROJECT  |PARTITIONED|
-                exchange [cardinality: 8.0, op-cost: 0.0, total-cost: 8.0]
+            exchange [cardinality: 8.0, op-cost: 0.0, total-cost: 8.0]
+            -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
+              data-scan []<-[$$314, $$s] <- test.dat1 [cardinality: 8.0, 
op-cost: 8.0, total-cost: 8.0]
+              -- DATASOURCE_SCAN  |PARTITIONED|
+                exchange [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
                 -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-                  data-scan []<-[$$314, $$s] <- test.dat1 [cardinality: 8.0, 
op-cost: 8.0, total-cost: 8.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|
+                  empty-tuple-source [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
+                  -- EMPTY_TUPLE_SOURCE  |PARTITIONED|
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.5.plan
 
b/asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.5.plan
index b9dda19..efa194b 100644
--- 
a/asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.5.plan
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/results_cbo/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.5.plan
@@ -2,40 +2,34 @@
 -- DISTRIBUTE_RESULT  |PARTITIONED|
   exchange [cardinality: 4.0, op-cost: 0.0, total-cost: 8.0]
   -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-    project ([$$317]) [cardinality: 4.0, op-cost: 0.0, total-cost: 8.0]
-    -- STREAM_PROJECT  |PARTITIONED|
-      assign [$$317] <- [{"dat3": {"id": $$351, "a": 
string-default-null($$345), "d": int64-default-null($$318)}}] [cardinality: 
4.0, op-cost: 0.0, total-cost: 8.0]
-      -- ASSIGN  |PARTITIONED|
-        project ([$$351, $$345, $$318]) [cardinality: 4.0, op-cost: 0.0, 
total-cost: 8.0]
+    assign [$$317] <- [{"dat3": {"id": $$351, "a": string-default-null($$345), 
"d": int64-default-null($$318)}}] project: [$$317] [cardinality: 4.0, op-cost: 
0.0, total-cost: 8.0]
+    -- ASSIGN  |PARTITIONED|
+      select (le($$318, get-item($$295, 0))) project: [$$351, $$345, $$318] 
[cardinality: 4.0, op-cost: 0.0, total-cost: 8.0]
+      -- STREAM_SELECT  |PARTITIONED|
+        project ([$$351, $$345, $$318, $$295]) [cardinality: 8.0, op-cost: 
0.0, total-cost: 8.0]
         -- STREAM_PROJECT  |PARTITIONED|
-          select (le($$318, get-item($$295, 0))) [cardinality: 4.0, op-cost: 
0.0, total-cost: 8.0]
-          -- STREAM_SELECT  |PARTITIONED|
-            project ([$$351, $$345, $$318, $$295]) [cardinality: 8.0, op-cost: 
0.0, total-cost: 8.0]
-            -- STREAM_PROJECT  |PARTITIONED|
-              subplan {
-                        aggregate [$$295] <- [listify($$330)] [cardinality: 
0.0, op-cost: 0.0, total-cost: 0.0]
-                        -- AGGREGATE  |LOCAL|
-                          aggregate [$$330] <- [agg-sql-count(1)] 
[cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
-                          -- AGGREGATE  |LOCAL|
-                            unnest $$333 <- scan-collection($$343) 
[cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
-                            -- UNNEST  |LOCAL|
-                              nested tuple source [cardinality: 0.0, op-cost: 
0.0, total-cost: 0.0]
-                              -- NESTED_TUPLE_SOURCE  |LOCAL|
-                     } [cardinality: 8.0, op-cost: 0.0, total-cost: 8.0]
-              -- SUBPLAN  |PARTITIONED|
-                select (not(is-null($$351))) [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
-                -- STREAM_SELECT  |PARTITIONED|
-                  project ([$$351, $$345, $$318, $$343]) [cardinality: 8.0, 
op-cost: 0.0, total-cost: 8.0]
-                  -- STREAM_PROJECT  |PARTITIONED|
-                    assign [$$351, $$345, $$318, $$343] <- 
[string-default-null($$s.getField("id")), $$s.getField("a"), $$s.getField("d"), 
$$s.getField("e")] [cardinality: 8.0, op-cost: 0.0, total-cost: 8.0]
-                    -- ASSIGN  |PARTITIONED|
-                      project ([$$s]) [cardinality: 8.0, op-cost: 0.0, 
total-cost: 8.0]
-                      -- STREAM_PROJECT  |PARTITIONED|
-                        exchange [cardinality: 8.0, op-cost: 0.0, total-cost: 
8.0]
-                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-                          data-scan []<-[$$319, $$s] <- test.dat1 
[cardinality: 8.0, op-cost: 8.0, total-cost: 8.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|
+          subplan {
+                    aggregate [$$295] <- [listify($$330)] [cardinality: 0.0, 
op-cost: 0.0, total-cost: 0.0]
+                    -- AGGREGATE  |LOCAL|
+                      aggregate [$$330] <- [agg-sql-count(1)] [cardinality: 
0.0, op-cost: 0.0, total-cost: 0.0]
+                      -- AGGREGATE  |LOCAL|
+                        unnest $$333 <- scan-collection($$343) [cardinality: 
0.0, op-cost: 0.0, total-cost: 0.0]
+                        -- UNNEST  |LOCAL|
+                          nested tuple source [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
+                          -- NESTED_TUPLE_SOURCE  |LOCAL|
+                 } [cardinality: 8.0, op-cost: 0.0, total-cost: 8.0]
+          -- SUBPLAN  |PARTITIONED|
+            select (not(is-null($$351))) [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
+            -- STREAM_SELECT  |PARTITIONED|
+              assign [$$351, $$345, $$318, $$343] <- 
[string-default-null($$s.getField("id")), $$s.getField("a"), $$s.getField("d"), 
$$s.getField("e")] project: [$$351, $$345, $$318, $$343] [cardinality: 8.0, 
op-cost: 0.0, total-cost: 8.0]
+              -- ASSIGN  |PARTITIONED|
+                project ([$$s]) [cardinality: 8.0, op-cost: 0.0, total-cost: 
8.0]
+                -- STREAM_PROJECT  |PARTITIONED|
+                  exchange [cardinality: 8.0, op-cost: 0.0, total-cost: 8.0]
+                  -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
+                    data-scan []<-[$$319, $$s] <- test.dat1 [cardinality: 8.0, 
op-cost: 8.0, total-cost: 8.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|
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/results_column/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.3.plan
 
b/asterixdb/asterix-app/src/test/resources/runtimets/results_column/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.3.plan
new file mode 100644
index 0000000..34d7663
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/results_column/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.3.plan
@@ -0,0 +1,20 @@
+distribute result [$$311] [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+-- DISTRIBUTE_RESULT  |PARTITIONED|
+  exchange [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+  -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
+    assign [$$311] <- [{"id": $$345}] project: [$$311] [cardinality: 0.0, 
op-cost: 0.0, total-cost: 0.0]
+    -- ASSIGN  |PARTITIONED|
+      select (not(is-null($$345))) [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
+      -- STREAM_SELECT  |PARTITIONED|
+        assign [$$345] <- [string-default-null($$s.getField("id"))] project: 
[$$345] [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+        -- ASSIGN  |PARTITIONED|
+          project ([$$s]) [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+          -- STREAM_PROJECT  |PARTITIONED|
+            exchange [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+            -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
+              data-scan []<-[$$314, $$s] <- test.dat1 project ({id:any}) 
[cardinality: 0.0, op-cost: 0.0, total-cost: 0.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|
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/results_column/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.5.plan
 
b/asterixdb/asterix-app/src/test/resources/runtimets/results_column/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.5.plan
new file mode 100644
index 0000000..c94e333
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/results_column/subquery/query-ASTERIXDB-3538/query-ASTERIXDB-3538.5.plan
@@ -0,0 +1,35 @@
+distribute result [$$317] [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+-- DISTRIBUTE_RESULT  |PARTITIONED|
+  exchange [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+  -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
+    assign [$$317] <- [{"dat3": {"id": $$351, "a": string-default-null($$345), 
"d": int64-default-null($$318)}}] project: [$$317] [cardinality: 0.0, op-cost: 
0.0, total-cost: 0.0]
+    -- ASSIGN  |PARTITIONED|
+      select (le($$318, get-item($$295, 0))) project: [$$351, $$345, $$318] 
[cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+      -- STREAM_SELECT  |PARTITIONED|
+        project ([$$351, $$345, $$318, $$295]) [cardinality: 0.0, op-cost: 
0.0, total-cost: 0.0]
+        -- STREAM_PROJECT  |PARTITIONED|
+          subplan {
+                    aggregate [$$295] <- [listify($$330)] [cardinality: 0.0, 
op-cost: 0.0, total-cost: 0.0]
+                    -- AGGREGATE  |LOCAL|
+                      aggregate [$$330] <- [agg-sql-count(1)] [cardinality: 
0.0, op-cost: 0.0, total-cost: 0.0]
+                      -- AGGREGATE  |LOCAL|
+                        unnest $$333 <- scan-collection($$343) [cardinality: 
0.0, op-cost: 0.0, total-cost: 0.0]
+                        -- UNNEST  |LOCAL|
+                          nested tuple source [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
+                          -- NESTED_TUPLE_SOURCE  |LOCAL|
+                 } [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+          -- SUBPLAN  |PARTITIONED|
+            select (not(is-null($$351))) [cardinality: 0.0, op-cost: 0.0, 
total-cost: 0.0]
+            -- STREAM_SELECT  |PARTITIONED|
+              assign [$$351, $$345, $$318, $$343] <- 
[string-default-null($$s.getField("id")), $$s.getField("a"), $$s.getField("d"), 
$$s.getField("e")] project: [$$351, $$345, $$318, $$343] [cardinality: 0.0, 
op-cost: 0.0, total-cost: 0.0]
+              -- ASSIGN  |PARTITIONED|
+                project ([$$s]) [cardinality: 0.0, op-cost: 0.0, total-cost: 
0.0]
+                -- STREAM_PROJECT  |PARTITIONED|
+                  exchange [cardinality: 0.0, op-cost: 0.0, total-cost: 0.0]
+                  -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
+                    data-scan []<-[$$319, $$s] <- test.dat1 project 
({a:any,d:any,e:[any],id:any}) [cardinality: 0.0, op-cost: 0.0, total-cost: 0.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|

--
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19327
To unsubscribe, or for help writing mail filters, visit 
https://asterix-gerrit.ics.uci.edu/settings

Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Change-Id: I65b6f845e9958fed620fffb78837ab07f1f03559
Gerrit-Change-Number: 19327
Gerrit-PatchSet: 2
Gerrit-Owner: Michael Blow <[email protected]>
Gerrit-Reviewer: Jenkins <[email protected]>
Gerrit-Reviewer: Michael Blow <[email protected]>
Gerrit-MessageType: merged

Reply via email to