diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.5.ddl.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.ddl.sqlpp
similarity index 100%
rename from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.5.ddl.sqlpp
rename to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.ddl.sqlpp
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.01.query.sqlpp
similarity index 97%
rename from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp
rename to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.01.query.sqlpp
index 805dd99..a65a081 100755
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.01.query.sqlpp
@@ -22,6 +22,4 @@
 * Expected Res : Error due to processing different list types
 */
 
-use TinySocial;
-
 select array_concat([3,5,1], [2,1], {{3, 1}});
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.02.query.sqlpp
similarity index 93%
copy from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp
copy to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.02.query.sqlpp
index 805dd99..2009ca5 100755
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.02.query.sqlpp
@@ -22,6 +22,4 @@
 * Expected Res : Error due to processing different list types
 */
 
-use TinySocial;
-
-select array_concat([3,5,1], [2,1], {{3, 1}});
\ No newline at end of file
+select array_intersect([3,5,1], [2,1], {{3, 1}});
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_range/array_range.4.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.03.query.sqlpp
similarity index 97%
rename from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_range/array_range.4.query.sqlpp
rename to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.03.query.sqlpp
index 314360d..17f9f14 100755
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_range/array_range.4.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.03.query.sqlpp
@@ -22,6 +22,4 @@
 * Expected Res : Error, 2 or 3 args are required
 */
 
-use TinySocial;
-
 select array_range(2);
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_range/array_range.5.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.04.query.sqlpp
similarity index 97%
rename from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_range/array_range.5.query.sqlpp
rename to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.04.query.sqlpp
index e18dfdc..676ef92 100755
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_range/array_range.5.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.04.query.sqlpp
@@ -22,6 +22,4 @@
 * Expected Res : Error, 2 or 3 args are required
 */
 
-use TinySocial;
-
 select array_range(2,6,1,4,5);
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_replace/array_replace.5.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.05.query.sqlpp
similarity index 97%
rename from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_replace/array_replace.5.query.sqlpp
rename to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.05.query.sqlpp
index 5cd8753..64092bb 100755
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_replace/array_replace.5.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.05.query.sqlpp
@@ -22,6 +22,4 @@
 * Expected Res : Error, 3 or 4 args are required
 */
 
-use TinySocial;
-
 select array_replace([2,6],2);
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_replace/array_replace.6.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.06.query.sqlpp
similarity index 97%
rename from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_replace/array_replace.6.query.sqlpp
rename to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.06.query.sqlpp
index 61f682f..f237ef6 100755
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_replace/array_replace.6.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.06.query.sqlpp
@@ -22,6 +22,4 @@
 * Expected Res : Error, 3 or 4 args are required
 */
 
-use TinySocial;
-
 select array_replace([2,6],2,5,1,6);
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.07.query.sqlpp
similarity index 93%
copy from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp
copy to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.07.query.sqlpp
index 805dd99..d344f5d 100755
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.07.query.sqlpp
@@ -22,6 +22,4 @@
 * Expected Res : Error due to processing different list types
 */
 
-use TinySocial;
-
-select array_concat([3,5,1], [2,1], {{3, 1}});
\ No newline at end of file
+select array_symdiff([3,5,1], [2,1], {{3, 1}});
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.08.query.sqlpp
similarity index 93%
copy from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp
copy to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.08.query.sqlpp
index 805dd99..84b335b 100755
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.08.query.sqlpp
@@ -22,6 +22,4 @@
 * Expected Res : Error due to processing different list types
 */
 
-use TinySocial;
-
-select array_concat([3,5,1], [2,1], {{3, 1}});
\ No newline at end of file
+select array_symdiffn([3,5,1], [2,1], {{3, 1}});
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.09.query.sqlpp
similarity index 93%
copy from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp
copy to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.09.query.sqlpp
index 805dd99..97c219e 100755
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_concat/array_concat.4.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_errors/array_errors.09.query.sqlpp
@@ -22,6 +22,4 @@
 * Expected Res : Error due to processing different list types
 */
 
-use TinySocial;
-
-select array_concat([3,5,1], [2,1], {{3, 1}});
\ No newline at end of file
+select array_union([3,5,1], [2,1], {{3, 1}});
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_intersect/array_intersect.4.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_intersect/array_intersect.4.query.sqlpp
index 351797c..9a7ef85 100755
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_intersect/array_intersect.4.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_intersect/array_intersect.4.query.sqlpp
@@ -18,10 +18,17 @@
  */
 
 /*
-* Description  : Testing different input list types
-* Expected Res : Error due to processing different list types
+* Description  : Testing deep equality
+* Expected Res : Success
 */
 
 use TinySocial;
 
-select array_intersect([3,5,1], [2,1], {{3, 1}});
\ No newline at end of file
+{
+  "t1": (array_intersect([5,[1,2]], [[1,2],8,5], [[1,3],5,[1,2]])),
+  "t2": (array_intersect([[5,5],[1,2]], [[1,2],[8,5]], [[1,3],[5,5],[1,2]])),
+  "t3": (array_intersect([{"id": 1, "age": 34}, {"id": 2, "age": 29}], [{"id": 3, "age": 90}, {"id": 2, "age": 29}], [{"id": 2, "age": 29}, {"id": 1, "age": 34}])),
+  "t4": (from openDs select array_intersect(list_f, [ [9999,3], [1,2] ], [[9999,3]]) order by id),
+  "t5": (from openDs select array_intersect(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863} ], [ {"state": "OH", "country": "US"}]) order by id),
+  "t6": (from closedDs select array_intersect(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863} ], [ {"state": "OH", "country": "US"}]) order by id)
+};
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_intersect/array_intersect.6.ddl.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_intersect/array_intersect.5.ddl.sqlpp
similarity index 100%
rename from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_intersect/array_intersect.6.ddl.sqlpp
rename to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_intersect/array_intersect.5.ddl.sqlpp
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_intersect/array_intersect.5.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_intersect/array_intersect.5.query.sqlpp
deleted file mode 100755
index 9a7ef85..0000000
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_intersect/array_intersect.5.query.sqlpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-/*
-* Description  : Testing deep equality
-* Expected Res : Success
-*/
-
-use TinySocial;
-
-{
-  "t1": (array_intersect([5,[1,2]], [[1,2],8,5], [[1,3],5,[1,2]])),
-  "t2": (array_intersect([[5,5],[1,2]], [[1,2],[8,5]], [[1,3],[5,5],[1,2]])),
-  "t3": (array_intersect([{"id": 1, "age": 34}, {"id": 2, "age": 29}], [{"id": 3, "age": 90}, {"id": 2, "age": 29}], [{"id": 2, "age": 29}, {"id": 1, "age": 34}])),
-  "t4": (from openDs select array_intersect(list_f, [ [9999,3], [1,2] ], [[9999,3]]) order by id),
-  "t5": (from openDs select array_intersect(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863} ], [ {"state": "OH", "country": "US"}]) order by id),
-  "t6": (from closedDs select array_intersect(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863} ], [ {"state": "OH", "country": "US"}]) order by id)
-};
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_range/array_range.6.ddl.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_range/array_range.4.ddl.sqlpp
similarity index 100%
rename from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_range/array_range.6.ddl.sqlpp
rename to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_range/array_range.4.ddl.sqlpp
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_replace/array_replace.7.ddl.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_replace/array_replace.5.ddl.sqlpp
similarity index 100%
rename from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_replace/array_replace.7.ddl.sqlpp
rename to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_replace/array_replace.5.ddl.sqlpp
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiff/array_symdiff.4.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiff/array_symdiff.4.query.sqlpp
index 15636a5..01e93e7 100755
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiff/array_symdiff.4.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiff/array_symdiff.4.query.sqlpp
@@ -18,10 +18,17 @@
  */
 
 /*
-* Description  : Testing different input list types
-* Expected Res : Error due to processing different list types
+* Description  : Testing deep equality
+* Expected Res : Success
 */
 
 use TinySocial;
 
-select array_symdiff([3,5,1], [2,1], {{3, 1}});
\ No newline at end of file
+{
+  "t1": (array_symdiff([5,[1,2]], [[1,2],8,5], [[1,3],5,[1,2]])),
+  "t2": (array_symdiff([[5,5],[1,2]], [[1,2],[8,5]], [[1,3],[5,5],[1,2]])),
+  "t3": (array_symdiff([{"id": 1, "age": 34}, {"id": 2, "age": 29}], [{"id": 3, "age": 90}, {"id": 2, "age": 29}], [{"id": 2, "age": 29}, {"id": 1, "age": 34}])),
+  "t4": (from openDs select array_symdiff(list_f, [ [9999,3], [1,2] ], [[9999,3]]) order by id),
+  "t5": (from openDs select array_symdiff(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863} ], [ {"state": "OH", "country": "US"}]) order by id),
+  "t6": (from closedDs select array_symdiff(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863} ], [ {"state": "OH", "country": "US"}]) order by id)
+};
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiff/array_symdiff.6.ddl.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiff/array_symdiff.5.ddl.sqlpp
similarity index 100%
rename from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiff/array_symdiff.6.ddl.sqlpp
rename to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiff/array_symdiff.5.ddl.sqlpp
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiff/array_symdiff.5.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiff/array_symdiff.5.query.sqlpp
deleted file mode 100755
index 01e93e7..0000000
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiff/array_symdiff.5.query.sqlpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-/*
-* Description  : Testing deep equality
-* Expected Res : Success
-*/
-
-use TinySocial;
-
-{
-  "t1": (array_symdiff([5,[1,2]], [[1,2],8,5], [[1,3],5,[1,2]])),
-  "t2": (array_symdiff([[5,5],[1,2]], [[1,2],[8,5]], [[1,3],[5,5],[1,2]])),
-  "t3": (array_symdiff([{"id": 1, "age": 34}, {"id": 2, "age": 29}], [{"id": 3, "age": 90}, {"id": 2, "age": 29}], [{"id": 2, "age": 29}, {"id": 1, "age": 34}])),
-  "t4": (from openDs select array_symdiff(list_f, [ [9999,3], [1,2] ], [[9999,3]]) order by id),
-  "t5": (from openDs select array_symdiff(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863} ], [ {"state": "OH", "country": "US"}]) order by id),
-  "t6": (from closedDs select array_symdiff(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863} ], [ {"state": "OH", "country": "US"}]) order by id)
-};
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiffn/array_symdiffn.4.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiffn/array_symdiffn.4.query.sqlpp
index 270f9a0..0df00e1 100755
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiffn/array_symdiffn.4.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiffn/array_symdiffn.4.query.sqlpp
@@ -18,10 +18,17 @@
  */
 
 /*
-* Description  : Testing different input list types
-* Expected Res : Error due to processing different list types
+* Description  : Testing deep equality
+* Expected Res : Success
 */
 
 use TinySocial;
 
-select array_symdiffn([3,5,1], [2,1], {{3, 1}});
\ No newline at end of file
+{
+  "t1": (array_symdiffn([5,[1,2]], [[1,2],8,5], [[1,3],5,[1,2]])),
+  "t2": (array_symdiffn([[5,5],[1,2]], [[1,2],[8,5]], [[1,3],[5,5],[1,2]])),
+  "t3": (array_symdiffn([{"id": 1, "age": 34}, {"id": 2, "age": 29}], [{"id": 3, "age": 90}, {"id": 2, "age": 29}], [{"id": 2, "age": 29}, {"id": 1, "age": 34}])),
+  "t4": (from openDs select array_symdiffn(list_f, [ [9999,3], [1,2] ], [[9999,3]]) order by id),
+  "t5": (from openDs select array_symdiffn(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863}], [ {"state": "OH", "country": "US"}]) order by id),
+  "t6": (from closedDs select array_symdiffn(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863}], [ {"state": "OH", "country": "US"}]) order by id)
+};
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiffn/array_symdiffn.6.ddl.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiffn/array_symdiffn.5.ddl.sqlpp
similarity index 100%
rename from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiffn/array_symdiffn.6.ddl.sqlpp
rename to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiffn/array_symdiffn.5.ddl.sqlpp
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiffn/array_symdiffn.5.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiffn/array_symdiffn.5.query.sqlpp
deleted file mode 100755
index 0df00e1..0000000
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_symdiffn/array_symdiffn.5.query.sqlpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-/*
-* Description  : Testing deep equality
-* Expected Res : Success
-*/
-
-use TinySocial;
-
-{
-  "t1": (array_symdiffn([5,[1,2]], [[1,2],8,5], [[1,3],5,[1,2]])),
-  "t2": (array_symdiffn([[5,5],[1,2]], [[1,2],[8,5]], [[1,3],[5,5],[1,2]])),
-  "t3": (array_symdiffn([{"id": 1, "age": 34}, {"id": 2, "age": 29}], [{"id": 3, "age": 90}, {"id": 2, "age": 29}], [{"id": 2, "age": 29}, {"id": 1, "age": 34}])),
-  "t4": (from openDs select array_symdiffn(list_f, [ [9999,3], [1,2] ], [[9999,3]]) order by id),
-  "t5": (from openDs select array_symdiffn(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863}], [ {"state": "OH", "country": "US"}]) order by id),
-  "t6": (from closedDs select array_symdiffn(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863}], [ {"state": "OH", "country": "US"}]) order by id)
-};
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_union/array_union.4.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_union/array_union.4.query.sqlpp
index 211890d..0791cb5 100755
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_union/array_union.4.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_union/array_union.4.query.sqlpp
@@ -18,10 +18,17 @@
  */
 
 /*
-* Description  : Testing different input list types
-* Expected Res : Error due to processing different list types
+* Description  : Testing deep equality
+* Expected Res : Success
 */
 
 use TinySocial;
 
-select array_union([3,5,1], [2,1], {{3, 1}});
\ No newline at end of file
+{
+  "t1": (array_union([5,[1,2]], [[1,2],8,5], [[1,3],5,[1,2]])),
+  "t2": (array_union([[5,5],[1,2]], [[1,2],[8,5]], [[1,3],[5,5],[1,2]])),
+  "t3": (array_union([{"id": 1, "age": 34}, {"id": 2, "age": 29}], [{"id": 3, "age": 90}, {"id": 2, "age": 29}], [{"id": 7, "age": 29}, {"id": 1, "age": 34}])),
+  "t4": (from openDs select array_union(list_f, [ [8888,3], [1,2] ], [[9999,3]]) order by id),
+  "t5": (from openDs select array_union(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863}], [ {"state": "OH", "country": "US"}]) order by id),
+  "t6": (from closedDs select array_union(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863}], [ {"state": "OH", "country": "US"}]) order by id)
+};
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_union/array_union.6.ddl.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_union/array_union.5.ddl.sqlpp
similarity index 100%
rename from asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_union/array_union.6.ddl.sqlpp
rename to asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_union/array_union.5.ddl.sqlpp
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_union/array_union.5.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_union/array_union.5.query.sqlpp
deleted file mode 100755
index 0791cb5..0000000
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/array_fun/array_union/array_union.5.query.sqlpp
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-/*
-* Description  : Testing deep equality
-* Expected Res : Success
-*/
-
-use TinySocial;
-
-{
-  "t1": (array_union([5,[1,2]], [[1,2],8,5], [[1,3],5,[1,2]])),
-  "t2": (array_union([[5,5],[1,2]], [[1,2],[8,5]], [[1,3],[5,5],[1,2]])),
-  "t3": (array_union([{"id": 1, "age": 34}, {"id": 2, "age": 29}], [{"id": 3, "age": 90}, {"id": 2, "age": 29}], [{"id": 7, "age": 29}, {"id": 1, "age": 34}])),
-  "t4": (from openDs select array_union(list_f, [ [8888,3], [1,2] ], [[9999,3]]) order by id),
-  "t5": (from openDs select array_union(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863}], [ {"state": "OH", "country": "US"}]) order by id),
-  "t6": (from closedDs select array_union(list_f, [ {"state": "OH", "country": "US"} , {"state": "IL", "country": "US", "zip_code": 92863}], [ {"state": "OH", "country": "US"}]) order by id)
-};
\ No newline at end of file
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml b/asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
index f046f74..1f093d7 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
@@ -2700,7 +2700,6 @@
     <test-case FilePath="array_fun">
       <compilation-unit name="array_concat">
         <output-dir compare="Text">array_concat</output-dir>
-        <expected-error>Input contains different list types (in line 27, at column 8)</expected-error>
       </compilation-unit>
     </test-case>
     <test-case FilePath="array_fun">
@@ -2716,21 +2715,16 @@
     <test-case FilePath="array_fun">
       <compilation-unit name="array_intersect">
         <output-dir compare="Text">array_intersect</output-dir>
-        <expected-error>Input contains different list types (in line 27, at column 8)</expected-error>
       </compilation-unit>
     </test-case>
     <test-case FilePath="array_fun">
       <compilation-unit name="array_range">
         <output-dir compare="Text">array_range</output-dir>
-        <expected-error>Invalid number of arguments for function array-range (in line 27, at column 8)</expected-error>
-        <expected-error>Invalid number of arguments for function array-range (in line 27, at column 8)</expected-error>
       </compilation-unit>
     </test-case>
     <test-case FilePath="array_fun">
       <compilation-unit name="array_replace">
         <output-dir compare="Text">array_replace</output-dir>
-        <expected-error>Invalid number of arguments for function array-replace (in line 27, at column 8)</expected-error>
-        <expected-error>Invalid number of arguments for function array-replace (in line 27, at column 8)</expected-error>
       </compilation-unit>
     </test-case>
     <test-case FilePath="array_fun">
@@ -2741,19 +2735,16 @@
     <test-case FilePath="array_fun">
       <compilation-unit name="array_symdiff">
         <output-dir compare="Text">array_symdiff</output-dir>
-        <expected-error>Input contains different list types (in line 27, at column 8)</expected-error>
       </compilation-unit>
     </test-case>
     <test-case FilePath="array_fun">
       <compilation-unit name="array_symdiffn">
         <output-dir compare="Text">array_symdiffn</output-dir>
-        <expected-error>Input contains different list types (in line 27, at column 8)</expected-error>
       </compilation-unit>
     </test-case>
     <test-case FilePath="array_fun">
       <compilation-unit name="array_union">
         <output-dir compare="Text">array_union</output-dir>
-        <expected-error>Input contains different list types (in line 27, at column 8)</expected-error>
       </compilation-unit>
     </test-case>
     <test-case FilePath="array_fun">
@@ -2787,6 +2778,20 @@
         <expected-error>Compilation error</expected-error>
       </compilation-unit>
     </test-case>
+    <test-case FilePath="array_fun">
+      <compilation-unit name="array_errors">
+        <output-dir compare="Text">array_errors</output-dir>
+        <expected-error>Input contains different list types (in line 25, at column 8)</expected-error>
+        <expected-error>Input contains different list types (in line 25, at column 8)</expected-error>
+        <expected-error>Invalid number of arguments for function array-range (in line 25, at column 8)</expected-error>
+        <expected-error>Invalid number of arguments for function array-range (in line 25, at column 8)</expected-error>
+        <expected-error>Invalid number of arguments for function array-replace (in line 25, at column 8)</expected-error>
+        <expected-error>Invalid number of arguments for function array-replace (in line 25, at column 8)</expected-error>
+        <expected-error>Input contains different list types (in line 25, at column 8)</expected-error>
+        <expected-error>Input contains different list types (in line 25, at column 8)</expected-error>
+        <expected-error>Input contains different list types (in line 25, at column 8)</expected-error>
+      </compilation-unit>
+    </test-case>
   </test-group>
   <test-group name="boolean">
     <test-case FilePath="boolean">
