Merge branch 'master' into eugenia/black_cherry_stable
diff --git a/asterix-algebra/src/main/java/edu/uci/ics/asterix/optimizer/base/RuleCollections.java b/asterix-algebra/src/main/java/edu/uci/ics/asterix/optimizer/base/RuleCollections.java
index 14adbcc..0a1b429 100644
--- a/asterix-algebra/src/main/java/edu/uci/ics/asterix/optimizer/base/RuleCollections.java
+++ b/asterix-algebra/src/main/java/edu/uci/ics/asterix/optimizer/base/RuleCollections.java
@@ -42,7 +42,6 @@
 import edu.uci.ics.asterix.optimizer.rules.LoadRecordFieldsRule;
 import edu.uci.ics.asterix.optimizer.rules.NestGroupByRule;
 import edu.uci.ics.asterix.optimizer.rules.NestedSubplanToJoinRule;
-import edu.uci.ics.asterix.optimizer.rules.PullPositionalVariableFromUnnestRule;
 import edu.uci.ics.asterix.optimizer.rules.PushAggFuncIntoStandaloneAggregateRule;
 import edu.uci.ics.asterix.optimizer.rules.PushAggregateIntoGroupbyRule;
 import edu.uci.ics.asterix.optimizer.rules.PushFieldAccessRule;
@@ -124,7 +123,6 @@
         normalization.add(new ExtractGbyExpressionsRule());
         normalization.add(new ExtractDistinctByExpressionsRule());
         normalization.add(new ExtractOrderExpressionsRule());
-        normalization.add(new ExtractCommonExpressionsRule());
 
         // IntroduceStaticTypeCastRule should go before
         // IntroduceDynamicTypeCastRule to
@@ -132,6 +130,7 @@
         normalization.add(new IntroduceStaticTypeCastForInsertRule());
         normalization.add(new IntroduceDynamicTypeCastRule());
         normalization.add(new IntroduceEnforcedListTypeRule());
+        normalization.add(new ExtractCommonExpressionsRule());
         normalization.add(new ConstantFoldingRule());
         normalization.add(new UnnestToDataScanRule());
         normalization.add(new IfElseToSwitchCaseFunctionRule());
diff --git a/asterix-algebra/src/main/java/edu/uci/ics/asterix/optimizer/rules/RemoveUnusedOneToOneEquiJoinRule.java b/asterix-algebra/src/main/java/edu/uci/ics/asterix/optimizer/rules/RemoveUnusedOneToOneEquiJoinRule.java
index 9fe5e46..432ef10 100644
--- a/asterix-algebra/src/main/java/edu/uci/ics/asterix/optimizer/rules/RemoveUnusedOneToOneEquiJoinRule.java
+++ b/asterix-algebra/src/main/java/edu/uci/ics/asterix/optimizer/rules/RemoveUnusedOneToOneEquiJoinRule.java
@@ -23,6 +23,7 @@
 import org.apache.commons.lang3.mutable.Mutable;
 
 import edu.uci.ics.asterix.metadata.declared.AqlDataSource;
+import edu.uci.ics.asterix.metadata.entities.InternalDatasetDetails;
 import edu.uci.ics.asterix.metadata.utils.DatasetUtils;
 import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException;
 import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression;
@@ -45,14 +46,13 @@
  * Removes join operators for which all of the following conditions are true:
  * 1. The live variables of one input branch of the join are not used in the upstream plan
  * 2. The join is an inner equi join
- * 3. The join condition only uses variables that correspond to primary keys of the same dataset    
+ * 3. The join condition only uses variables that correspond to primary keys of the same dataset
  * Notice that the last condition implies a 1:1 join, i.e., the join does not change the result cardinality.
- * 
- * Joins that satisfy the above conditions may be introduced by other rules 
+ * Joins that satisfy the above conditions may be introduced by other rules
  * which use surrogate optimizations. Such an optimization aims to reduce data copies and communication costs by
  * using the primary keys as surrogates for the desired data items. Typically,
  * such a surrogate-based plan introduces a top-level join to finally resolve
- * the surrogates to the desired data items. 
+ * the surrogates to the desired data items.
  * In case the upstream plan does not require the original data items at all, such a top-level join is unnecessary.
  * The purpose of this rule is to remove such unnecessary joins.
  */
@@ -190,10 +190,12 @@
     private void fillPKVars(DataSourceScanOperator dataScan, List<LogicalVariable> pkVars) {
         pkVars.clear();
         AqlDataSource aqlDataSource = (AqlDataSource) dataScan.getDataSource();
-        int numPKs = DatasetUtils.getPartitioningKeys(aqlDataSource.getDataset()).size();
         pkVars.clear();
-        for (int i = 0; i < numPKs; i++) {
-            pkVars.add(dataScan.getVariables().get(i));
+        if (aqlDataSource.getDataset().getDatasetDetails() instanceof InternalDatasetDetails) {
+            int numPKs = DatasetUtils.getPartitioningKeys(aqlDataSource.getDataset()).size();
+            for (int i = 0; i < numPKs; i++) {
+                pkVars.add(dataScan.getVariables().get(i));
+            }
         }
     }
 
diff --git a/asterix-algebra/src/main/java/edu/uci/ics/asterix/optimizer/rules/typecast/StaticTypeCastUtil.java b/asterix-algebra/src/main/java/edu/uci/ics/asterix/optimizer/rules/typecast/StaticTypeCastUtil.java
index c67a4e5..1be4f40 100644
--- a/asterix-algebra/src/main/java/edu/uci/ics/asterix/optimizer/rules/typecast/StaticTypeCastUtil.java
+++ b/asterix-algebra/src/main/java/edu/uci/ics/asterix/optimizer/rules/typecast/StaticTypeCastUtil.java
@@ -223,7 +223,8 @@
         boolean changed = false;
         for (int j = 0; j < args.size(); j++) {
             ILogicalExpression arg = args.get(j).getValue();
-            IAType currentItemType = (inputItemType == null || inputItemType == BuiltinType.ANY) ? (IAType) env.getType(arg) : inputItemType;
+            IAType currentItemType = (inputItemType == null || inputItemType == BuiltinType.ANY) ? (IAType) env
+                    .getType(arg) : inputItemType;
             switch (arg.getExpressionTag()) {
                 case FUNCTION_CALL:
                     ScalarFunctionCallExpression argFunc = (ScalarFunctionCallExpression) arg;
@@ -271,8 +272,10 @@
             String fieldName = inputFieldNames[i];
             IAType fieldType = inputFieldTypes[i];
 
-            if (2 * i + 1 > func.getArguments().size())
-                throw new AlgebricksException("expression index out of bound");
+            if (2 * i + 1 > func.getArguments().size()) {
+                // it is not a record constructor function
+                return false;
+            }
 
             // 2*i+1 is the index of field value expression
             ILogicalExpression arg = func.getArguments().get(2 * i + 1).getValue();
@@ -463,12 +466,9 @@
                     reqFieldType = DefaultOpenFieldType.NESTED_OPEN_AUNORDERED_LIST_TYPE;
                     fi = AsterixBuiltinFunctions.CAST_LIST;
             }
-            if (fi != null
-                    && ! inputFieldType.equals(reqFieldType)
-                    && parameterVars.size() > 0) {
+            if (fi != null && !inputFieldType.equals(reqFieldType) && parameterVars.size() > 0) {
                 //inject dynamic type casting
-                injectCastFunction(FunctionUtils.getFunctionInfo(fi),
-                        reqFieldType, inputFieldType, expRef, argExpr);
+                injectCastFunction(FunctionUtils.getFunctionInfo(fi), reqFieldType, inputFieldType, expRef, argExpr);
                 castInjected = true;
             }
             if (argExpr.getExpressionTag() == LogicalExpressionTag.FUNCTION_CALL) {
diff --git a/asterix-app/data/adm-load/double_end_record_token.adm b/asterix-app/data/adm-load/double_end_record_token.adm
new file mode 100644
index 0000000..032901f
--- /dev/null
+++ b/asterix-app/data/adm-load/double_end_record_token.adm
@@ -0,0 +1,5 @@
+{
+    "id": 1,
+    "nest_rec": {
+        "id": 2
+}}
\ No newline at end of file
diff --git a/asterix-app/src/main/java/edu/uci/ics/asterix/api/http/servlet/RESTAPIServlet.java b/asterix-app/src/main/java/edu/uci/ics/asterix/api/http/servlet/RESTAPIServlet.java
index 2e7396a..ba0fa68 100644
--- a/asterix-app/src/main/java/edu/uci/ics/asterix/api/http/servlet/RESTAPIServlet.java
+++ b/asterix-app/src/main/java/edu/uci/ics/asterix/api/http/servlet/RESTAPIServlet.java
@@ -38,6 +38,7 @@
 import edu.uci.ics.asterix.aql.parser.TokenMgrError;
 import edu.uci.ics.asterix.aql.translator.AqlTranslator;
 import edu.uci.ics.asterix.common.config.GlobalConfig;
+import edu.uci.ics.asterix.common.exceptions.AsterixException;
 import edu.uci.ics.asterix.metadata.MetadataManager;
 import edu.uci.ics.asterix.result.ResultReader;
 import edu.uci.ics.asterix.result.ResultUtils;
@@ -88,16 +89,15 @@
 
             AQLParser parser = new AQLParser(query);
             List<Statement> aqlStatements = parser.Statement();
-            if (checkForbiddenStatements(aqlStatements, out)) {
-                return;
+            if (!containsForbiddenStatements(aqlStatements)) {
+                SessionConfig sessionConfig = new SessionConfig(true, false, false, false, false, false, true, true, false);
+    
+                MetadataManager.INSTANCE.init();
+    
+                AqlTranslator aqlTranslator = new AqlTranslator(aqlStatements, out, sessionConfig, format);
+    
+                aqlTranslator.compileAndExecute(hcc, hds, asyncResults);
             }
-            SessionConfig sessionConfig = new SessionConfig(true, false, false, false, false, false, true, true, false);
-
-            MetadataManager.INSTANCE.init();
-
-            AqlTranslator aqlTranslator = new AqlTranslator(aqlStatements, out, sessionConfig, format);
-
-            aqlTranslator.compileAndExecute(hcc, hds, asyncResults);
         } catch (ParseException | TokenMgrError | edu.uci.ics.asterix.aqlplus.parser.TokenMgrError pe) {
             GlobalConfig.ASTERIX_LOGGER.log(Level.SEVERE, pe.getMessage(), pe);
             String errorMessage = ResultUtils.buildParseExceptionMessage(pe, query);
@@ -111,13 +111,10 @@
         }
     }
 
-    private boolean checkForbiddenStatements(List<Statement> aqlStatements, PrintWriter out) {
+    private boolean containsForbiddenStatements(List<Statement> aqlStatements) throws AsterixException {
         for (Statement st : aqlStatements) {
             if (!getAllowedStatements().contains(st.getKind())) {
-                JSONObject errorResp = ResultUtils.getErrorResponse(1, String.format(getErrorMessage(), st.getKind()),
-                        "", "");
-                out.write(errorResp.toString());
-                return true;
+                throw new AsterixException(String.format(getErrorMessage(), st.getKind()));
             }
         }
         return false;
diff --git a/asterix-app/src/main/java/edu/uci/ics/asterix/file/DatasetOperations.java b/asterix-app/src/main/java/edu/uci/ics/asterix/file/DatasetOperations.java
index da0bebc..d99c4da 100644
--- a/asterix-app/src/main/java/edu/uci/ics/asterix/file/DatasetOperations.java
+++ b/asterix-app/src/main/java/edu/uci/ics/asterix/file/DatasetOperations.java
@@ -309,7 +309,7 @@
             spec.connect(new OneToOneConnectorDescriptor(spec), scanner, 0, asterixOp, 0);
 
             IConnectorDescriptor sortMergeConn = new MToNPartitioningMergingConnectorDescriptor(spec,
-                    new FieldHashPartitionComputerFactory(keys, hashFactories), keys, comparatorFactories);
+                    new FieldHashPartitionComputerFactory(keys, hashFactories), keys, comparatorFactories, null);
             spec.connect(sortMergeConn, asterixOp, 0, btreeBulkLoad, 0);
         }
         spec.addRoot(btreeBulkLoad);
diff --git a/asterix-app/src/test/resources/runtimets/queries/aggregate/scalar_min_empty/scalar_min_empty.1.ddl.aql b/asterix-app/src/test/resources/runtimets/queries/aggregate/scalar_min_empty/scalar_min_empty.1.ddl.aql
index d4de7aa..732d98a 100644
--- a/asterix-app/src/test/resources/runtimets/queries/aggregate/scalar_min_empty/scalar_min_empty.1.ddl.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/aggregate/scalar_min_empty/scalar_min_empty.1.ddl.aql
@@ -6,6 +6,3 @@
 drop dataverse test if exists;
 create dataverse test;
 
-use dataverse test;
-
-min([ ])
diff --git a/asterix-app/src/test/resources/runtimets/queries/aggregate/scalar_sum_empty/scalar_sum_empty.1.ddl.aql b/asterix-app/src/test/resources/runtimets/queries/aggregate/scalar_sum_empty/scalar_sum_empty.1.ddl.aql
index 3d954c1..b0c16d6 100644
--- a/asterix-app/src/test/resources/runtimets/queries/aggregate/scalar_sum_empty/scalar_sum_empty.1.ddl.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/aggregate/scalar_sum_empty/scalar_sum_empty.1.ddl.aql
@@ -6,6 +6,3 @@
 drop dataverse test if exists;
 create dataverse test;
 
-use dataverse test;
-
-sum([ ])
diff --git a/asterix-app/src/test/resources/runtimets/queries/aggregate/sum_int64/sum_int64.1.ddl.aql b/asterix-app/src/test/resources/runtimets/queries/aggregate/sum_int64/sum_int64.1.ddl.aql
index 247c983..97b4670 100644
--- a/asterix-app/src/test/resources/runtimets/queries/aggregate/sum_int64/sum_int64.1.ddl.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/aggregate/sum_int64/sum_int64.1.ddl.aql
@@ -2,10 +2,3 @@
 
 create dataverse test;
 
-use dataverse test;
-
-sum( 
- for $x in [int64("1"), int64("2"), int64("3")] 
- return $x
-)
-
diff --git a/asterix-app/src/test/resources/runtimets/queries/aggregate/sum_int8/sum_int8.1.ddl.aql b/asterix-app/src/test/resources/runtimets/queries/aggregate/sum_int8/sum_int8.1.ddl.aql
index 4c7f01d..d330bc0 100644
--- a/asterix-app/src/test/resources/runtimets/queries/aggregate/sum_int8/sum_int8.1.ddl.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/aggregate/sum_int8/sum_int8.1.ddl.aql
@@ -1,11 +1,3 @@
 drop dataverse test if exists;
 
 create dataverse test;
-
-use dataverse test;
-
-sum( 
- for $x in [int8("1"), int8("2"), int8("3")] 
- return $x
-)
-
diff --git a/asterix-app/src/test/resources/runtimets/queries/flwor/at00/at00.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/flwor/at00/at00.3.query.aql
index 0460490..f51c7f7 100644
--- a/asterix-app/src/test/resources/runtimets/queries/flwor/at00/at00.3.query.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/flwor/at00/at00.3.query.aql
@@ -7,8 +7,8 @@
 use dataverse test;
 
 for $i in dataset LineItem
-order by $i.l_shipdate
+order by $i.l_partkey, $i.l_shipdate
 group by $partkey := $i.l_partkey with $i
 for $j at $p in $i
 where $p < 4
-return { "partkey": $partkey, "pid": $p, "shipdate": $j.l_shipdate, "orderkey": $j.l_orderkey }
\ No newline at end of file
+return { "partkey": $partkey, "pid": $p, "shipdate": $j.l_shipdate }
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/flwor/at06/at06.1.ddl.aql b/asterix-app/src/test/resources/runtimets/queries/flwor/at06/at06.1.ddl.aql
new file mode 100644
index 0000000..f60cfc7
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/flwor/at06/at06.1.ddl.aql
@@ -0,0 +1,32 @@
+/*
+ * Description      :  Test for clause of the position variable in FLWOR expression
+ * Expected Result  :  Success
+ * Date             :  09/17/2013
+ */
+
+drop dataverse test if exists;
+create dataverse test;
+
+use dataverse test;
+
+create type LineItemType as closed {
+  l_orderkey: int32, 
+  l_partkey: int32, 
+  l_suppkey: int32, 
+  l_linenumber: int32, 
+  l_quantity: double, 
+  l_extendedprice: double,
+  l_discount: double, 
+  l_tax: double,
+  l_returnflag: string, 
+  l_linestatus: string, 
+  l_shipdate: string,
+  l_commitdate: string, 
+  l_receiptdate: string, 
+  l_shipinstruct: string, 
+  l_shipmode: string, 
+  l_comment: string
+}
+
+create dataset LineItem(LineItemType)
+  primary key l_orderkey, l_linenumber;
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/flwor/at06/at06.2.update.aql b/asterix-app/src/test/resources/runtimets/queries/flwor/at06/at06.2.update.aql
new file mode 100644
index 0000000..039e7bb
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/flwor/at06/at06.2.update.aql
@@ -0,0 +1,11 @@
+/*
+ * Description      :  Test for clause of the position variable in FLWOR expression
+ * Expected Result  :  Success
+ * Date             :  09/17/2013
+ */
+
+use dataverse test;
+
+load dataset LineItem 
+using "edu.uci.ics.asterix.external.dataset.adapter.NCFileSystemAdapter"
+(("path"="nc1://data/tpch0.001/lineitem.tbl"),("format"="delimited-text"),("delimiter"="|")) pre-sorted;
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/flwor/at06/at06.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/flwor/at06/at06.3.query.aql
new file mode 100644
index 0000000..7800143
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/flwor/at06/at06.3.query.aql
@@ -0,0 +1,14 @@
+/*
+ * Description      :  Test for clause of the position variable in FLWOR expression
+ * Expected Result  :  Success
+ * Date             :  09/17/2013
+ */
+
+use dataverse test;
+
+for $i in dataset LineItem
+order by $i.l_partkey
+group by $partkey := $i.l_partkey with $i
+for $j at $p in (for $ii in $i order by $ii.l_shipdate return $ii)
+where $p < 4
+return { "partkey": $partkey, "pid": $p, "shipdate": $j.l_shipdate, "orderkey": $j.l_orderkey }
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/leftouterjoin/query_issue658/query_issue658.1.ddl.aql b/asterix-app/src/test/resources/runtimets/queries/leftouterjoin/query_issue658/query_issue658.1.ddl.aql
new file mode 100644
index 0000000..b1910fb
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/leftouterjoin/query_issue658/query_issue658.1.ddl.aql
@@ -0,0 +1,29 @@
+/*
+ * Description    : Left-outer joins two datasets, DBLP and CSX, based on their authors and titles.
+ * Success        : Yes
+ */
+
+drop dataverse test if exists;
+create dataverse test;
+
+use dataverse test;
+
+create type DBLPType as closed {
+  id: int32, 
+  dblpid: string,
+  title: string,
+  authors: string,
+  misc: string
+}
+
+create type CSXType as closed {
+  id: int32, 
+  csxid: string,
+  title: string,
+  authors: string,
+  misc: string
+}
+
+create dataset DBLP(DBLPType) primary key id;
+create dataset CSX(CSXType) primary key id;
+
diff --git a/asterix-app/src/test/resources/runtimets/queries/leftouterjoin/query_issue658/query_issue658.2.update.aql b/asterix-app/src/test/resources/runtimets/queries/leftouterjoin/query_issue658/query_issue658.2.update.aql
new file mode 100644
index 0000000..4e2123a
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/leftouterjoin/query_issue658/query_issue658.2.update.aql
@@ -0,0 +1,15 @@
+/*
+ * Description    : Left-outer joins two datasets, DBLP and CSX, based on their authors and titles.
+ * Success        : Yes
+ */
+
+use dataverse test;
+
+load dataset DBLP 
+using "edu.uci.ics.asterix.external.dataset.adapter.NCFileSystemAdapter"
+(("path"="nc1://data/pub-small/dblp-small-id.txt"),("format"="delimited-text"),("delimiter"=":"));
+
+load dataset CSX
+using "edu.uci.ics.asterix.external.dataset.adapter.NCFileSystemAdapter"
+(("path"="nc1://data/pub-small/csx-small-id.txt"),("format"="delimited-text"),("delimiter"=":"));
+
diff --git a/asterix-app/src/test/resources/runtimets/queries/leftouterjoin/query_issue658/query_issue658.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/leftouterjoin/query_issue658/query_issue658.3.query.aql
new file mode 100644
index 0000000..04816a7
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/leftouterjoin/query_issue658/query_issue658.3.query.aql
@@ -0,0 +1,16 @@
+/*
+ * Description    : Left-outer joins two datasets, DBLP and CSX, based on their authors and titles.
+ * Success        : Yes
+ */
+
+use dataverse test;
+
+for $a in dataset('DBLP')
+order by $a.id
+return {
+"aid": $a.id,
+"bids": for $b in dataset('CSX')
+where $a.authors = $b.authors and $a.title != $b.title
+order by $b.id
+return $b.id
+}
diff --git a/asterix-app/src/test/resources/runtimets/queries/load/issue610_adm_token_end_collection/issue610_adm_token_end_collection.1.ddl.aql b/asterix-app/src/test/resources/runtimets/queries/load/issue610_adm_token_end_collection/issue610_adm_token_end_collection.1.ddl.aql
new file mode 100644
index 0000000..8ec663d
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/load/issue610_adm_token_end_collection/issue610_adm_token_end_collection.1.ddl.aql
@@ -0,0 +1,18 @@
+/*
+ * Description  : Load dataset with two consecutive end_record token and correctly recognize them.
+ * Expected Res : Success
+ * Date         : 30 Oct 2013
+ */
+
+drop dataverse foo if exists;
+create dataverse foo;
+use dataverse foo;
+
+create type bartype as open {
+id: int32,
+nest_rec: {
+id: int32
+}
+}
+
+create dataset baz(bartype) primary key id;
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/load/issue610_adm_token_end_collection/issue610_adm_token_end_collection.2.update.aql b/asterix-app/src/test/resources/runtimets/queries/load/issue610_adm_token_end_collection/issue610_adm_token_end_collection.2.update.aql
new file mode 100644
index 0000000..d622439
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/load/issue610_adm_token_end_collection/issue610_adm_token_end_collection.2.update.aql
@@ -0,0 +1,10 @@
+/*
+ * Description  : Load dataset with two consecutive end_record token and correctly recognize them.
+ * Expected Res : Success
+ * Date         : 30 Oct 2013
+ */
+
+use dataverse foo;
+
+load dataset baz
+using localfs(("path"="nc1://data/adm-load/double_end_record_token.adm"), ("format"="adm"));
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/load/issue650_query/issue650_query.1.ddl.aql b/asterix-app/src/test/resources/runtimets/queries/load/issue650_query/issue650_query.1.ddl.aql
new file mode 100644
index 0000000..b0fe47f
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/load/issue650_query/issue650_query.1.ddl.aql
@@ -0,0 +1,18 @@
+/*
+ * Description  : Drop and recreate the dataverse between creating and loading a dataset.
+ * Expected Res : Failure
+ * Date         : 17 Oct 2013
+ */
+ 
+drop dataverse fuzzyjoin if exists;
+create dataverse fuzzyjoin;
+use dataverse fuzzyjoin;
+
+create type UserType as open {
+  uid: int32, 
+  name: string,
+  lottery_numbers: [int32],
+  interests: {{string}}
+}
+
+create dataset Users(UserType) primary key uid;
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/load/issue650_query/issue650_query.2.update.aql b/asterix-app/src/test/resources/runtimets/queries/load/issue650_query/issue650_query.2.update.aql
new file mode 100644
index 0000000..b7729d2
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/load/issue650_query/issue650_query.2.update.aql
@@ -0,0 +1,13 @@
+/*
+ * Description  : Drop and recreate the dataverse between creating and loading a dataset.
+ * Expected Res : Failure
+ * Date         : 17 Oct 2013
+ */
+ 
+drop dataverse fuzzyjoin if exists;
+create dataverse fuzzyjoin;
+use dataverse fuzzyjoin;
+
+load dataset Users 
+using "edu.uci.ics.asterix.external.dataset.adapter.NCFileSystemAdapter"
+(("path"="nc1://data/users-visitors-small/users.json"),("format"="adm"));
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue592/query-issue592.1.ddl.aql b/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue592/query-issue592.1.ddl.aql
new file mode 100644
index 0000000..a0231f4
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue592/query-issue592.1.ddl.aql
@@ -0,0 +1,21 @@
+/*
+ * Description     : Issue592
+ * Expected Result : Success
+ * Date            : 21 October 2013
+ * Notes           : This test was written to verify the fix for issue592.
+ */
+
+drop dataverse fooverse if exists;
+create dataverse fooverse;
+use dataverse fooverse;
+
+create type bartype as open {
+    "baz": int32
+}
+
+create type footype as open {
+    "id": int32,
+    "bars": [ bartype ]?   
+};
+
+create dataset fooset(footype) primary key id;
diff --git a/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue592/query-issue592.2.update.aql b/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue592/query-issue592.2.update.aql
new file mode 100644
index 0000000..0a08c2a
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue592/query-issue592.2.update.aql
@@ -0,0 +1,18 @@
+/*
+ * Description     : Issue592
+ * Expected Result : Success
+ * Date            : 21 October 2013
+ * Notes           : This test was written to verify the fix for issue592.
+ */
+
+use dataverse fooverse;
+ 
+insert into dataset fooset (
+{
+    "id": 1,
+    "bars": [
+        { "baz": 1 },
+        { "baz": 1 }
+    ]
+}
+);
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue592/query-issue592.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue592/query-issue592.3.query.aql
new file mode 100644
index 0000000..39fd476
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue592/query-issue592.3.query.aql
@@ -0,0 +1,11 @@
+/*
+ * Description     : Issue592
+ * Expected Result : Success
+ * Date            : 21 October 2013
+ * Notes           : This test was written to verify the fix for issue592.
+ */
+ 
+use dataverse fooverse;
+
+for $f in dataset fooset
+return $f
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue625/query-issue625.1.ddl.aql b/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue625/query-issue625.1.ddl.aql
new file mode 100644
index 0000000..44d9d32
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue625/query-issue625.1.ddl.aql
@@ -0,0 +1,17 @@
+/*
+ * Description     : Issue625
+ * Expected Result : Success
+ * Date            : 21 October 2013
+ * Notes           : This test was written to verify the fix for issue625.
+ */
+
+drop dataverse fooverse if exists;
+create dataverse fooverse;
+use dataverse fooverse;
+
+create type FooType as open {
+    id: int32,
+    numbers: [int32]
+}
+
+create dataset Foo(FooType) primary key id;
diff --git a/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue625/query-issue625.2.update.aql b/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue625/query-issue625.2.update.aql
new file mode 100644
index 0000000..dbe69e6
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue625/query-issue625.2.update.aql
@@ -0,0 +1,17 @@
+/*
+ * Description     : Issue592
+ * Expected Result : Success
+ * Date            : 21 October 2013
+ * Notes           : This test was written to verify the fix for issue592.
+ */
+
+use dataverse fooverse;
+ 
+insert into dataset Foo(
+let $number_strings := ["1", "2", "3"]
+let $numbers := for $x in $number_strings return int32($x)
+return {
+    "id": 1,
+    "numbers": $numbers
+}
+);
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue625/query-issue625.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue625/query-issue625.3.query.aql
new file mode 100644
index 0000000..1f087a8
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/open-closed/query-issue625/query-issue625.3.query.aql
@@ -0,0 +1,11 @@
+/*
+ * Description     : Issue592
+ * Expected Result : Success
+ * Date            : 21 October 2013
+ * Notes           : This test was written to verify the fix for issue592.
+ */
+ 
+use dataverse fooverse;
+
+for $x in dataset Foo
+return $x
diff --git a/asterix-app/src/test/resources/runtimets/queries/records/expFieldName/expFieldName.1.ddl.aql b/asterix-app/src/test/resources/runtimets/queries/records/expFieldName/expFieldName.1.ddl.aql
index e3f2bc7..754ea81 100644
--- a/asterix-app/src/test/resources/runtimets/queries/records/expFieldName/expFieldName.1.ddl.aql
+++ b/asterix-app/src/test/resources/runtimets/queries/records/expFieldName/expFieldName.1.ddl.aql
@@ -1,5 +1,3 @@
 drop dataverse test if exists;
 create dataverse test;
 
-for $x in ["field1", "field2"] 
-return {$x: 1}
diff --git a/asterix-app/src/test/resources/runtimets/queries/types/type_promotion_0/type_promotion_0.1.ddl.aql b/asterix-app/src/test/resources/runtimets/queries/types/type_promotion_0/type_promotion_0.1.ddl.aql
new file mode 100644
index 0000000..c74fd3c
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/types/type_promotion_0/type_promotion_0.1.ddl.aql
@@ -0,0 +1,19 @@
+drop dataverse TestVerse if exists;
+create dataverse TestVerse;
+use dataverse TestVerse;
+
+create type Int64TestType as open {
+        myint64: int64,
+        myoptint64: int64?,
+        myint32: int32,
+        myoptint32: int32?,
+        myint16: int16,
+        myoptint16: int16?,
+        mydouble: double,
+        myoptdouble: double?,
+        myfloat: float,
+        myoptfloat: float?
+};
+
+create dataset Int64Test(Int64TestType)
+   primary key myint64;
diff --git a/asterix-app/src/test/resources/runtimets/queries/types/type_promotion_0/type_promotion_0.2.update.aql b/asterix-app/src/test/resources/runtimets/queries/types/type_promotion_0/type_promotion_0.2.update.aql
new file mode 100644
index 0000000..8505bff
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/types/type_promotion_0/type_promotion_0.2.update.aql
@@ -0,0 +1,13 @@
+use dataverse TestVerse;
+
+/* promotable type for optional field */
+insert into dataset Int64Test (
+       {"myint64": int64("13"), "myoptint64": 13, "myint32": int8("2"), "myoptint32": int16("3"), "myint16": int8("9"), "myoptint16": int8("10"), "mydouble": float("2.12"), "myoptdouble": int64("32"), "myfloat": int8("9"), "myoptfloat": int32("328")}
+);
+/* promotable type for non-optional field */
+insert into dataset Int64Test (
+       {"myint64": 12, "myoptint64": null, "myint32": int8("2"), "myoptint32": date(null), "myint16": int8("9"), "myoptint16": interval-starts(null, null), "mydouble": float("2.12"), "myoptdouble": time(null), "myfloat": int8("9"), "myoptfloat": datetime(null) }
+);
+insert into dataset Int64Test (
+       {"myint64": int16("11"), "myoptint64": int8("3"), "myint32": int8("2"), "myoptint32": int16("3"), "myint16": int8("9"), "myoptint16": int8("10"), "mydouble": int8("2"), "myoptdouble": int16("32"), "myfloat": int16("9"), "myoptfloat": datetime(null) }
+);
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/queries/types/type_promotion_0/type_promotion_0.3.query.aql b/asterix-app/src/test/resources/runtimets/queries/types/type_promotion_0/type_promotion_0.3.query.aql
new file mode 100644
index 0000000..8948b49
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/queries/types/type_promotion_0/type_promotion_0.3.query.aql
@@ -0,0 +1,4 @@
+use dataverse TestVerse;
+
+for $i in dataset Int64Test
+return $i
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results/flwor/at00/at00.1.adm b/asterix-app/src/test/resources/runtimets/results/flwor/at00/at00.1.adm
index 26c58cb..7897e41 100644
--- a/asterix-app/src/test/resources/runtimets/results/flwor/at00/at00.1.adm
+++ b/asterix-app/src/test/resources/runtimets/results/flwor/at00/at00.1.adm
@@ -1,561 +1,600 @@
-{ "partkey": 1, "pid": 1, "shipdate": "1992-02-15", "orderkey": 5409 }
-{ "partkey": 1, "pid": 2, "shipdate": "1992-03-30", "orderkey": 1154 }
-{ "partkey": 1, "pid": 3, "shipdate": "1992-07-17", "orderkey": 134 }
-{ "partkey": 2, "pid": 1, "shipdate": "1992-06-23", "orderkey": 3650 }
-{ "partkey": 2, "pid": 2, "shipdate": "1992-07-01", "orderkey": 130 }
-{ "partkey": 2, "pid": 3, "shipdate": "1992-07-18", "orderkey": 5893 }
-{ "partkey": 8, "pid": 1, "shipdate": "1992-09-25", "orderkey": 5635 }
-{ "partkey": 8, "pid": 2, "shipdate": "1992-11-15", "orderkey": 1540 }
-{ "partkey": 8, "pid": 3, "shipdate": "1993-02-13", "orderkey": 1222 }
-{ "partkey": 9, "pid": 1, "shipdate": "1992-04-29", "orderkey": 3970 }
-{ "partkey": 9, "pid": 2, "shipdate": "1992-04-30", "orderkey": 1955 }
-{ "partkey": 9, "pid": 3, "shipdate": "1992-06-01", "orderkey": 4199 }
-{ "partkey": 10, "pid": 1, "shipdate": "1992-05-13", "orderkey": 2881 }
-{ "partkey": 10, "pid": 2, "shipdate": "1992-11-25", "orderkey": 5378 }
-{ "partkey": 10, "pid": 3, "shipdate": "1992-12-01", "orderkey": 1796 }
-{ "partkey": 13, "pid": 1, "shipdate": "1992-04-01", "orderkey": 1537 }
-{ "partkey": 13, "pid": 2, "shipdate": "1992-04-26", "orderkey": 322 }
-{ "partkey": 13, "pid": 3, "shipdate": "1992-05-04", "orderkey": 5953 }
-{ "partkey": 18, "pid": 1, "shipdate": "1992-04-12", "orderkey": 1537 }
-{ "partkey": 18, "pid": 2, "shipdate": "1992-04-21", "orderkey": 2880 }
-{ "partkey": 18, "pid": 3, "shipdate": "1992-05-21", "orderkey": 2688 }
-{ "partkey": 19, "pid": 1, "shipdate": "1992-07-19", "orderkey": 2023 }
-{ "partkey": 19, "pid": 2, "shipdate": "1992-10-21", "orderkey": 481 }
-{ "partkey": 19, "pid": 3, "shipdate": "1992-12-22", "orderkey": 164 }
-{ "partkey": 21, "pid": 1, "shipdate": "1992-07-31", "orderkey": 549 }
-{ "partkey": 21, "pid": 2, "shipdate": "1992-09-09", "orderkey": 4581 }
-{ "partkey": 21, "pid": 3, "shipdate": "1993-01-09", "orderkey": 481 }
-{ "partkey": 25, "pid": 1, "shipdate": "1992-02-04", "orderkey": 2688 }
-{ "partkey": 25, "pid": 2, "shipdate": "1992-07-23", "orderkey": 5060 }
-{ "partkey": 25, "pid": 3, "shipdate": "1992-08-01", "orderkey": 868 }
-{ "partkey": 26, "pid": 1, "shipdate": "1992-02-23", "orderkey": 4800 }
-{ "partkey": 26, "pid": 2, "shipdate": "1992-05-09", "orderkey": 801 }
-{ "partkey": 26, "pid": 3, "shipdate": "1993-01-04", "orderkey": 2146 }
-{ "partkey": 37, "pid": 1, "shipdate": "1992-08-30", "orderkey": 1088 }
-{ "partkey": 37, "pid": 2, "shipdate": "1992-10-03", "orderkey": 2500 }
-{ "partkey": 37, "pid": 3, "shipdate": "1993-01-31", "orderkey": 3074 }
-{ "partkey": 42, "pid": 1, "shipdate": "1992-10-23", "orderkey": 2560 }
-{ "partkey": 42, "pid": 2, "shipdate": "1992-11-04", "orderkey": 2566 }
-{ "partkey": 42, "pid": 3, "shipdate": "1992-12-12", "orderkey": 1571 }
-{ "partkey": 43, "pid": 1, "shipdate": "1992-06-18", "orderkey": 4069 }
-{ "partkey": 43, "pid": 2, "shipdate": "1992-06-30", "orderkey": 2052 }
-{ "partkey": 43, "pid": 3, "shipdate": "1992-08-28", "orderkey": 5959 }
-{ "partkey": 46, "pid": 1, "shipdate": "1992-04-28", "orderkey": 4230 }
-{ "partkey": 46, "pid": 2, "shipdate": "1992-05-08", "orderkey": 3043 }
-{ "partkey": 46, "pid": 3, "shipdate": "1992-05-21", "orderkey": 3845 }
-{ "partkey": 48, "pid": 1, "shipdate": "1992-05-10", "orderkey": 2691 }
-{ "partkey": 48, "pid": 2, "shipdate": "1992-06-03", "orderkey": 5473 }
-{ "partkey": 48, "pid": 3, "shipdate": "1992-06-15", "orderkey": 832 }
-{ "partkey": 51, "pid": 1, "shipdate": "1992-03-11", "orderkey": 5860 }
-{ "partkey": 51, "pid": 2, "shipdate": "1992-05-15", "orderkey": 2786 }
-{ "partkey": 51, "pid": 3, "shipdate": "1992-05-17", "orderkey": 644 }
-{ "partkey": 52, "pid": 1, "shipdate": "1992-05-31", "orderkey": 1057 }
-{ "partkey": 52, "pid": 2, "shipdate": "1992-09-03", "orderkey": 4838 }
-{ "partkey": 52, "pid": 3, "shipdate": "1992-09-21", "orderkey": 3907 }
-{ "partkey": 54, "pid": 1, "shipdate": "1992-04-07", "orderkey": 4515 }
-{ "partkey": 54, "pid": 2, "shipdate": "1992-05-01", "orderkey": 3271 }
-{ "partkey": 54, "pid": 3, "shipdate": "1992-06-24", "orderkey": 1701 }
-{ "partkey": 56, "pid": 1, "shipdate": "1992-01-16", "orderkey": 1248 }
-{ "partkey": 56, "pid": 2, "shipdate": "1992-03-02", "orderkey": 3685 }
-{ "partkey": 56, "pid": 3, "shipdate": "1992-06-18", "orderkey": 3205 }
-{ "partkey": 58, "pid": 1, "shipdate": "1992-05-16", "orderkey": 3685 }
-{ "partkey": 58, "pid": 2, "shipdate": "1992-10-30", "orderkey": 4896 }
-{ "partkey": 58, "pid": 3, "shipdate": "1993-04-10", "orderkey": 1412 }
-{ "partkey": 61, "pid": 1, "shipdate": "1993-07-14", "orderkey": 2020 }
-{ "partkey": 61, "pid": 2, "shipdate": "1993-07-15", "orderkey": 5318 }
-{ "partkey": 61, "pid": 3, "shipdate": "1993-09-29", "orderkey": 261 }
-{ "partkey": 65, "pid": 1, "shipdate": "1992-03-02", "orderkey": 4804 }
-{ "partkey": 65, "pid": 2, "shipdate": "1992-04-14", "orderkey": 2848 }
-{ "partkey": 65, "pid": 3, "shipdate": "1992-06-26", "orderkey": 5095 }
-{ "partkey": 68, "pid": 1, "shipdate": "1992-04-13", "orderkey": 3842 }
-{ "partkey": 68, "pid": 2, "shipdate": "1992-06-08", "orderkey": 5121 }
-{ "partkey": 68, "pid": 3, "shipdate": "1992-06-22", "orderkey": 868 }
-{ "partkey": 72, "pid": 1, "shipdate": "1992-09-16", "orderkey": 3265 }
-{ "partkey": 72, "pid": 2, "shipdate": "1992-10-02", "orderkey": 5635 }
-{ "partkey": 72, "pid": 3, "shipdate": "1992-10-17", "orderkey": 3655 }
-{ "partkey": 74, "pid": 1, "shipdate": "1992-03-21", "orderkey": 4162 }
-{ "partkey": 74, "pid": 2, "shipdate": "1992-03-22", "orderkey": 801 }
-{ "partkey": 74, "pid": 3, "shipdate": "1992-10-21", "orderkey": 929 }
-{ "partkey": 78, "pid": 1, "shipdate": "1992-03-04", "orderkey": 2210 }
-{ "partkey": 78, "pid": 2, "shipdate": "1992-04-04", "orderkey": 2022 }
-{ "partkey": 78, "pid": 3, "shipdate": "1992-05-06", "orderkey": 1764 }
-{ "partkey": 84, "pid": 1, "shipdate": "1992-09-08", "orderkey": 1285 }
-{ "partkey": 84, "pid": 2, "shipdate": "1993-05-15", "orderkey": 2597 }
-{ "partkey": 84, "pid": 3, "shipdate": "1993-05-20", "orderkey": 772 }
-{ "partkey": 86, "pid": 1, "shipdate": "1992-05-25", "orderkey": 2240 }
-{ "partkey": 86, "pid": 2, "shipdate": "1992-11-18", "orderkey": 4896 }
-{ "partkey": 86, "pid": 3, "shipdate": "1993-03-01", "orderkey": 4166 }
-{ "partkey": 95, "pid": 1, "shipdate": "1992-02-24", "orderkey": 3271 }
-{ "partkey": 95, "pid": 2, "shipdate": "1992-03-14", "orderkey": 801 }
-{ "partkey": 95, "pid": 3, "shipdate": "1992-11-17", "orderkey": 2176 }
-{ "partkey": 100, "pid": 1, "shipdate": "1992-03-24", "orderkey": 2022 }
-{ "partkey": 100, "pid": 2, "shipdate": "1992-03-24", "orderkey": 292 }
-{ "partkey": 100, "pid": 3, "shipdate": "1992-06-18", "orderkey": 4738 }
-{ "partkey": 103, "pid": 1, "shipdate": "1992-03-28", "orderkey": 4515 }
-{ "partkey": 103, "pid": 2, "shipdate": "1992-05-08", "orderkey": 832 }
-{ "partkey": 103, "pid": 3, "shipdate": "1992-07-11", "orderkey": 4900 }
-{ "partkey": 104, "pid": 1, "shipdate": "1992-03-17", "orderkey": 5409 }
-{ "partkey": 104, "pid": 2, "shipdate": "1992-11-08", "orderkey": 4897 }
-{ "partkey": 104, "pid": 3, "shipdate": "1994-01-22", "orderkey": 5479 }
-{ "partkey": 108, "pid": 1, "shipdate": "1992-07-28", "orderkey": 1826 }
-{ "partkey": 108, "pid": 2, "shipdate": "1992-08-01", "orderkey": 1221 }
-{ "partkey": 108, "pid": 3, "shipdate": "1992-09-07", "orderkey": 2560 }
-{ "partkey": 114, "pid": 1, "shipdate": "1992-11-19", "orderkey": 3014 }
-{ "partkey": 114, "pid": 2, "shipdate": "1992-11-22", "orderkey": 1506 }
-{ "partkey": 114, "pid": 3, "shipdate": "1993-03-22", "orderkey": 710 }
-{ "partkey": 118, "pid": 1, "shipdate": "1992-06-18", "orderkey": 4035 }
-{ "partkey": 118, "pid": 2, "shipdate": "1992-09-27", "orderkey": 1793 }
-{ "partkey": 118, "pid": 3, "shipdate": "1992-10-02", "orderkey": 5408 }
-{ "partkey": 119, "pid": 1, "shipdate": "1992-05-08", "orderkey": 5574 }
-{ "partkey": 119, "pid": 2, "shipdate": "1992-05-27", "orderkey": 5959 }
-{ "partkey": 119, "pid": 3, "shipdate": "1992-09-07", "orderkey": 4294 }
-{ "partkey": 122, "pid": 1, "shipdate": "1992-03-12", "orderkey": 1248 }
-{ "partkey": 122, "pid": 2, "shipdate": "1992-04-09", "orderkey": 2912 }
-{ "partkey": 122, "pid": 3, "shipdate": "1992-06-05", "orderkey": 801 }
-{ "partkey": 123, "pid": 1, "shipdate": "1992-02-01", "orderkey": 3011 }
-{ "partkey": 123, "pid": 2, "shipdate": "1992-06-20", "orderkey": 5095 }
-{ "partkey": 123, "pid": 3, "shipdate": "1992-11-22", "orderkey": 1505 }
-{ "partkey": 130, "pid": 1, "shipdate": "1992-04-03", "orderkey": 4705 }
-{ "partkey": 130, "pid": 2, "shipdate": "1992-05-23", "orderkey": 1856 }
-{ "partkey": 130, "pid": 3, "shipdate": "1992-08-20", "orderkey": 644 }
-{ "partkey": 132, "pid": 1, "shipdate": "1992-04-17", "orderkey": 5607 }
-{ "partkey": 132, "pid": 2, "shipdate": "1992-06-14", "orderkey": 384 }
-{ "partkey": 132, "pid": 3, "shipdate": "1992-07-06", "orderkey": 3172 }
-{ "partkey": 134, "pid": 1, "shipdate": "1992-05-17", "orderkey": 3685 }
-{ "partkey": 134, "pid": 2, "shipdate": "1992-05-20", "orderkey": 644 }
-{ "partkey": 134, "pid": 3, "shipdate": "1992-05-29", "orderkey": 421 }
-{ "partkey": 136, "pid": 1, "shipdate": "1992-05-19", "orderkey": 2786 }
-{ "partkey": 136, "pid": 2, "shipdate": "1992-05-21", "orderkey": 4035 }
-{ "partkey": 136, "pid": 3, "shipdate": "1992-06-07", "orderkey": 4805 }
-{ "partkey": 140, "pid": 1, "shipdate": "1992-03-20", "orderkey": 1537 }
-{ "partkey": 140, "pid": 2, "shipdate": "1992-04-27", "orderkey": 6 }
-{ "partkey": 140, "pid": 3, "shipdate": "1992-08-03", "orderkey": 2881 }
-{ "partkey": 141, "pid": 1, "shipdate": "1992-01-13", "orderkey": 5409 }
-{ "partkey": 141, "pid": 2, "shipdate": "1992-02-01", "orderkey": 3712 }
-{ "partkey": 141, "pid": 3, "shipdate": "1992-06-22", "orderkey": 1344 }
-{ "partkey": 149, "pid": 1, "shipdate": "1992-03-22", "orderkey": 5382 }
-{ "partkey": 149, "pid": 2, "shipdate": "1992-04-29", "orderkey": 2688 }
-{ "partkey": 149, "pid": 3, "shipdate": "1992-05-14", "orderkey": 194 }
-{ "partkey": 158, "pid": 1, "shipdate": "1992-08-01", "orderkey": 1955 }
-{ "partkey": 158, "pid": 2, "shipdate": "1992-08-29", "orderkey": 5254 }
-{ "partkey": 158, "pid": 3, "shipdate": "1992-09-18", "orderkey": 5089 }
-{ "partkey": 159, "pid": 1, "shipdate": "1992-05-07", "orderkey": 5409 }
-{ "partkey": 159, "pid": 2, "shipdate": "1992-06-03", "orderkey": 1955 }
-{ "partkey": 159, "pid": 3, "shipdate": "1992-07-10", "orderkey": 4738 }
-{ "partkey": 170, "pid": 1, "shipdate": "1992-08-07", "orderkey": 1221 }
-{ "partkey": 170, "pid": 2, "shipdate": "1993-03-17", "orderkey": 738 }
-{ "partkey": 170, "pid": 3, "shipdate": "1993-06-19", "orderkey": 3874 }
-{ "partkey": 171, "pid": 1, "shipdate": "1992-11-09", "orderkey": 3361 }
-{ "partkey": 171, "pid": 2, "shipdate": "1994-01-22", "orderkey": 4675 }
-{ "partkey": 171, "pid": 3, "shipdate": "1995-01-02", "orderkey": 5317 }
-{ "partkey": 172, "pid": 1, "shipdate": "1992-09-06", "orderkey": 2247 }
-{ "partkey": 172, "pid": 2, "shipdate": "1993-05-01", "orderkey": 167 }
-{ "partkey": 172, "pid": 3, "shipdate": "1993-06-16", "orderkey": 1600 }
-{ "partkey": 179, "pid": 1, "shipdate": "1992-05-30", "orderkey": 1537 }
-{ "partkey": 179, "pid": 2, "shipdate": "1992-06-02", "orderkey": 384 }
-{ "partkey": 179, "pid": 3, "shipdate": "1992-09-20", "orderkey": 4741 }
-{ "partkey": 183, "pid": 1, "shipdate": "1992-04-24", "orderkey": 4998 }
-{ "partkey": 183, "pid": 2, "shipdate": "1992-10-24", "orderkey": 5408 }
-{ "partkey": 183, "pid": 3, "shipdate": "1993-01-08", "orderkey": 1571 }
-{ "partkey": 185, "pid": 1, "shipdate": "1992-04-30", "orderkey": 3712 }
-{ "partkey": 185, "pid": 2, "shipdate": "1992-06-20", "orderkey": 5574 }
-{ "partkey": 185, "pid": 3, "shipdate": "1992-07-23", "orderkey": 2023 }
-{ "partkey": 187, "pid": 1, "shipdate": "1992-04-01", "orderkey": 4391 }
-{ "partkey": 187, "pid": 2, "shipdate": "1992-05-30", "orderkey": 4738 }
-{ "partkey": 187, "pid": 3, "shipdate": "1992-06-01", "orderkey": 4738 }
-{ "partkey": 188, "pid": 1, "shipdate": "1992-09-15", "orderkey": 1285 }
-{ "partkey": 188, "pid": 2, "shipdate": "1993-04-08", "orderkey": 5381 }
-{ "partkey": 188, "pid": 3, "shipdate": "1993-05-03", "orderkey": 4226 }
-{ "partkey": 190, "pid": 1, "shipdate": "1992-04-14", "orderkey": 1856 }
-{ "partkey": 190, "pid": 2, "shipdate": "1992-07-17", "orderkey": 1344 }
-{ "partkey": 190, "pid": 3, "shipdate": "1992-10-12", "orderkey": 1185 }
-{ "partkey": 195, "pid": 1, "shipdate": "1992-04-10", "orderkey": 2848 }
-{ "partkey": 195, "pid": 2, "shipdate": "1992-05-07", "orderkey": 3744 }
-{ "partkey": 195, "pid": 3, "shipdate": "1992-05-28", "orderkey": 3205 }
-{ "partkey": 3, "pid": 1, "shipdate": "1992-04-25", "orderkey": 801 }
-{ "partkey": 3, "pid": 2, "shipdate": "1992-05-24", "orderkey": 194 }
-{ "partkey": 3, "pid": 3, "shipdate": "1993-01-03", "orderkey": 3776 }
-{ "partkey": 6, "pid": 1, "shipdate": "1992-04-05", "orderkey": 4483 }
-{ "partkey": 6, "pid": 2, "shipdate": "1992-04-25", "orderkey": 801 }
-{ "partkey": 6, "pid": 3, "shipdate": "1992-04-29", "orderkey": 2689 }
-{ "partkey": 7, "pid": 1, "shipdate": "1992-04-12", "orderkey": 3140 }
-{ "partkey": 7, "pid": 2, "shipdate": "1993-02-11", "orderkey": 3204 }
-{ "partkey": 7, "pid": 3, "shipdate": "1993-06-25", "orderkey": 5794 }
-{ "partkey": 12, "pid": 1, "shipdate": "1992-07-04", "orderkey": 130 }
-{ "partkey": 12, "pid": 2, "shipdate": "1992-07-17", "orderkey": 322 }
-{ "partkey": 12, "pid": 3, "shipdate": "1992-09-02", "orderkey": 2497 }
-{ "partkey": 17, "pid": 1, "shipdate": "1992-07-23", "orderkey": 967 }
-{ "partkey": 17, "pid": 2, "shipdate": "1993-03-01", "orderkey": 931 }
-{ "partkey": 17, "pid": 3, "shipdate": "1993-05-06", "orderkey": 611 }
-{ "partkey": 23, "pid": 1, "shipdate": "1992-04-04", "orderkey": 2786 }
-{ "partkey": 23, "pid": 2, "shipdate": "1992-06-19", "orderkey": 1856 }
-{ "partkey": 23, "pid": 3, "shipdate": "1992-06-29", "orderkey": 1282 }
-{ "partkey": 31, "pid": 1, "shipdate": "1992-07-14", "orderkey": 4705 }
-{ "partkey": 31, "pid": 2, "shipdate": "1992-09-24", "orderkey": 1185 }
-{ "partkey": 31, "pid": 3, "shipdate": "1992-09-29", "orderkey": 5415 }
-{ "partkey": 35, "pid": 1, "shipdate": "1992-03-11", "orderkey": 4230 }
-{ "partkey": 35, "pid": 2, "shipdate": "1992-04-06", "orderkey": 4804 }
-{ "partkey": 35, "pid": 3, "shipdate": "1992-05-26", "orderkey": 2880 }
-{ "partkey": 44, "pid": 1, "shipdate": "1992-02-14", "orderkey": 4292 }
-{ "partkey": 44, "pid": 2, "shipdate": "1992-06-11", "orderkey": 322 }
-{ "partkey": 44, "pid": 3, "shipdate": "1992-11-29", "orderkey": 2147 }
-{ "partkey": 49, "pid": 1, "shipdate": "1992-04-29", "orderkey": 2983 }
-{ "partkey": 49, "pid": 2, "shipdate": "1992-06-14", "orderkey": 2022 }
-{ "partkey": 49, "pid": 3, "shipdate": "1992-08-13", "orderkey": 933 }
-{ "partkey": 66, "pid": 1, "shipdate": "1992-05-07", "orderkey": 194 }
-{ "partkey": 66, "pid": 2, "shipdate": "1992-09-11", "orderkey": 549 }
-{ "partkey": 66, "pid": 3, "shipdate": "1992-10-10", "orderkey": 3015 }
-{ "partkey": 71, "pid": 1, "shipdate": "1992-11-10", "orderkey": 2497 }
-{ "partkey": 71, "pid": 2, "shipdate": "1993-01-10", "orderkey": 2146 }
-{ "partkey": 71, "pid": 3, "shipdate": "1993-02-28", "orderkey": 4611 }
-{ "partkey": 77, "pid": 1, "shipdate": "1992-08-18", "orderkey": 4900 }
-{ "partkey": 77, "pid": 2, "shipdate": "1992-12-23", "orderkey": 2497 }
-{ "partkey": 77, "pid": 3, "shipdate": "1993-06-19", "orderkey": 4166 }
-{ "partkey": 80, "pid": 1, "shipdate": "1992-05-18", "orderkey": 644 }
-{ "partkey": 80, "pid": 2, "shipdate": "1992-09-02", "orderkey": 2500 }
-{ "partkey": 80, "pid": 3, "shipdate": "1993-06-07", "orderkey": 3877 }
-{ "partkey": 81, "pid": 1, "shipdate": "1992-04-11", "orderkey": 2240 }
-{ "partkey": 81, "pid": 2, "shipdate": "1992-06-22", "orderkey": 1221 }
-{ "partkey": 81, "pid": 3, "shipdate": "1992-12-30", "orderkey": 5954 }
-{ "partkey": 89, "pid": 1, "shipdate": "1992-04-18", "orderkey": 2688 }
-{ "partkey": 89, "pid": 2, "shipdate": "1992-04-19", "orderkey": 4705 }
-{ "partkey": 89, "pid": 3, "shipdate": "1992-05-27", "orderkey": 5121 }
-{ "partkey": 90, "pid": 1, "shipdate": "1992-02-25", "orderkey": 4162 }
-{ "partkey": 90, "pid": 2, "shipdate": "1992-06-07", "orderkey": 5474 }
-{ "partkey": 90, "pid": 3, "shipdate": "1992-08-21", "orderkey": 5986 }
-{ "partkey": 91, "pid": 1, "shipdate": "1992-05-22", "orderkey": 3043 }
-{ "partkey": 91, "pid": 2, "shipdate": "1992-06-21", "orderkey": 2691 }
-{ "partkey": 91, "pid": 3, "shipdate": "1992-12-03", "orderkey": 3015 }
-{ "partkey": 93, "pid": 1, "shipdate": "1992-05-28", "orderkey": 2881 }
-{ "partkey": 93, "pid": 2, "shipdate": "1992-06-24", "orderkey": 384 }
-{ "partkey": 93, "pid": 3, "shipdate": "1992-09-11", "orderkey": 3654 }
-{ "partkey": 96, "pid": 1, "shipdate": "1992-06-18", "orderkey": 2052 }
-{ "partkey": 96, "pid": 2, "shipdate": "1992-09-26", "orderkey": 3172 }
-{ "partkey": 96, "pid": 3, "shipdate": "1992-11-25", "orderkey": 1159 }
-{ "partkey": 97, "pid": 1, "shipdate": "1992-01-27", "orderkey": 4800 }
-{ "partkey": 97, "pid": 2, "shipdate": "1992-03-22", "orderkey": 1856 }
-{ "partkey": 97, "pid": 3, "shipdate": "1992-04-21", "orderkey": 4035 }
-{ "partkey": 121, "pid": 1, "shipdate": "1992-04-23", "orderkey": 4903 }
-{ "partkey": 121, "pid": 2, "shipdate": "1992-06-09", "orderkey": 1764 }
-{ "partkey": 121, "pid": 3, "shipdate": "1992-06-23", "orderkey": 2054 }
-{ "partkey": 124, "pid": 1, "shipdate": "1992-06-15", "orderkey": 1088 }
-{ "partkey": 124, "pid": 2, "shipdate": "1992-08-09", "orderkey": 2209 }
-{ "partkey": 124, "pid": 3, "shipdate": "1992-09-13", "orderkey": 1346 }
-{ "partkey": 125, "pid": 1, "shipdate": "1992-03-15", "orderkey": 2848 }
-{ "partkey": 125, "pid": 2, "shipdate": "1992-03-29", "orderkey": 4230 }
-{ "partkey": 125, "pid": 3, "shipdate": "1992-05-24", "orderkey": 4069 }
-{ "partkey": 133, "pid": 1, "shipdate": "1992-06-08", "orderkey": 3140 }
-{ "partkey": 133, "pid": 2, "shipdate": "1992-11-17", "orderkey": 4864 }
-{ "partkey": 133, "pid": 3, "shipdate": "1993-01-18", "orderkey": 1506 }
-{ "partkey": 139, "pid": 1, "shipdate": "1992-04-12", "orderkey": 2880 }
-{ "partkey": 139, "pid": 2, "shipdate": "1992-06-28", "orderkey": 4992 }
-{ "partkey": 139, "pid": 3, "shipdate": "1992-09-12", "orderkey": 4099 }
-{ "partkey": 142, "pid": 1, "shipdate": "1992-10-14", "orderkey": 3556 }
-{ "partkey": 142, "pid": 2, "shipdate": "1993-05-14", "orderkey": 2241 }
-{ "partkey": 142, "pid": 3, "shipdate": "1993-07-11", "orderkey": 5670 }
-{ "partkey": 143, "pid": 1, "shipdate": "1992-04-17", "orderkey": 1154 }
-{ "partkey": 143, "pid": 2, "shipdate": "1992-09-01", "orderkey": 3524 }
-{ "partkey": 143, "pid": 3, "shipdate": "1992-09-05", "orderkey": 1285 }
-{ "partkey": 148, "pid": 1, "shipdate": "1992-01-15", "orderkey": 3712 }
-{ "partkey": 148, "pid": 2, "shipdate": "1992-02-27", "orderkey": 5601 }
-{ "partkey": 148, "pid": 3, "shipdate": "1992-04-22", "orderkey": 1154 }
-{ "partkey": 150, "pid": 1, "shipdate": "1992-05-01", "orderkey": 4805 }
-{ "partkey": 150, "pid": 2, "shipdate": "1992-05-02", "orderkey": 1856 }
-{ "partkey": 150, "pid": 3, "shipdate": "1992-05-25", "orderkey": 1701 }
-{ "partkey": 151, "pid": 1, "shipdate": "1992-01-26", "orderkey": 1248 }
-{ "partkey": 151, "pid": 2, "shipdate": "1992-07-30", "orderkey": 4256 }
-{ "partkey": 151, "pid": 3, "shipdate": "1992-12-19", "orderkey": 3014 }
-{ "partkey": 153, "pid": 1, "shipdate": "1992-02-22", "orderkey": 5382 }
-{ "partkey": 153, "pid": 2, "shipdate": "1992-06-02", "orderkey": 5767 }
-{ "partkey": 153, "pid": 3, "shipdate": "1992-06-29", "orderkey": 322 }
-{ "partkey": 155, "pid": 1, "shipdate": "1992-09-28", "orderkey": 1956 }
-{ "partkey": 155, "pid": 2, "shipdate": "1992-11-25", "orderkey": 5378 }
-{ "partkey": 155, "pid": 3, "shipdate": "1993-05-14", "orderkey": 2305 }
-{ "partkey": 162, "pid": 1, "shipdate": "1992-04-10", "orderkey": 5953 }
-{ "partkey": 162, "pid": 2, "shipdate": "1992-05-03", "orderkey": 2786 }
-{ "partkey": 162, "pid": 3, "shipdate": "1992-06-11", "orderkey": 2691 }
-{ "partkey": 165, "pid": 1, "shipdate": "1992-03-21", "orderkey": 2848 }
-{ "partkey": 165, "pid": 2, "shipdate": "1992-04-01", "orderkey": 4903 }
-{ "partkey": 165, "pid": 3, "shipdate": "1992-04-12", "orderkey": 3168 }
-{ "partkey": 169, "pid": 1, "shipdate": "1992-03-31", "orderkey": 1057 }
-{ "partkey": 169, "pid": 2, "shipdate": "1992-06-05", "orderkey": 5953 }
-{ "partkey": 169, "pid": 3, "shipdate": "1992-06-07", "orderkey": 1894 }
-{ "partkey": 174, "pid": 1, "shipdate": "1992-06-25", "orderkey": 2054 }
-{ "partkey": 174, "pid": 2, "shipdate": "1992-11-02", "orderkey": 1991 }
-{ "partkey": 174, "pid": 3, "shipdate": "1992-12-02", "orderkey": 4261 }
-{ "partkey": 177, "pid": 1, "shipdate": "1992-04-05", "orderkey": 5382 }
-{ "partkey": 177, "pid": 2, "shipdate": "1992-12-25", "orderkey": 1956 }
-{ "partkey": 177, "pid": 3, "shipdate": "1993-01-16", "orderkey": 3680 }
-{ "partkey": 178, "pid": 1, "shipdate": "1992-05-23", "orderkey": 5095 }
-{ "partkey": 178, "pid": 2, "shipdate": "1992-08-18", "orderkey": 2209 }
-{ "partkey": 178, "pid": 3, "shipdate": "1992-11-02", "orderkey": 1504 }
-{ "partkey": 180, "pid": 1, "shipdate": "1992-03-07", "orderkey": 5382 }
-{ "partkey": 180, "pid": 2, "shipdate": "1992-05-23", "orderkey": 4515 }
-{ "partkey": 180, "pid": 3, "shipdate": "1992-06-21", "orderkey": 2881 }
-{ "partkey": 182, "pid": 1, "shipdate": "1992-03-02", "orderkey": 1057 }
-{ "partkey": 182, "pid": 2, "shipdate": "1992-04-02", "orderkey": 384 }
-{ "partkey": 182, "pid": 3, "shipdate": "1992-04-28", "orderkey": 737 }
-{ "partkey": 4, "pid": 1, "shipdate": "1992-05-02", "orderkey": 4292 }
-{ "partkey": 4, "pid": 2, "shipdate": "1992-11-03", "orderkey": 164 }
-{ "partkey": 4, "pid": 3, "shipdate": "1992-11-18", "orderkey": 2019 }
-{ "partkey": 5, "pid": 1, "shipdate": "1992-05-02", "orderkey": 3970 }
-{ "partkey": 5, "pid": 2, "shipdate": "1992-06-14", "orderkey": 5959 }
-{ "partkey": 5, "pid": 3, "shipdate": "1993-01-06", "orderkey": 3680 }
-{ "partkey": 11, "pid": 1, "shipdate": "1992-02-14", "orderkey": 4800 }
-{ "partkey": 11, "pid": 2, "shipdate": "1992-07-20", "orderkey": 5858 }
-{ "partkey": 11, "pid": 3, "shipdate": "1992-08-03", "orderkey": 3237 }
-{ "partkey": 14, "pid": 1, "shipdate": "1992-07-17", "orderkey": 5028 }
-{ "partkey": 14, "pid": 2, "shipdate": "1992-11-30", "orderkey": 3232 }
-{ "partkey": 14, "pid": 3, "shipdate": "1993-05-10", "orderkey": 2279 }
-{ "partkey": 15, "pid": 1, "shipdate": "1992-05-18", "orderkey": 5473 }
-{ "partkey": 15, "pid": 2, "shipdate": "1992-05-24", "orderkey": 2688 }
-{ "partkey": 15, "pid": 3, "shipdate": "1993-04-14", "orderkey": 5472 }
-{ "partkey": 22, "pid": 1, "shipdate": "1992-06-21", "orderkey": 1285 }
-{ "partkey": 22, "pid": 2, "shipdate": "1992-06-25", "orderkey": 3970 }
-{ "partkey": 22, "pid": 3, "shipdate": "1992-11-20", "orderkey": 1447 }
-{ "partkey": 24, "pid": 1, "shipdate": "1992-04-12", "orderkey": 2755 }
-{ "partkey": 24, "pid": 2, "shipdate": "1992-08-06", "orderkey": 4260 }
-{ "partkey": 24, "pid": 3, "shipdate": "1992-08-08", "orderkey": 3845 }
-{ "partkey": 29, "pid": 1, "shipdate": "1992-05-25", "orderkey": 4738 }
-{ "partkey": 29, "pid": 2, "shipdate": "1992-06-01", "orderkey": 3205 }
-{ "partkey": 29, "pid": 3, "shipdate": "1992-07-25", "orderkey": 868 }
-{ "partkey": 33, "pid": 1, "shipdate": "1992-03-22", "orderkey": 5574 }
-{ "partkey": 33, "pid": 2, "shipdate": "1993-02-17", "orderkey": 4163 }
-{ "partkey": 33, "pid": 3, "shipdate": "1993-02-21", "orderkey": 388 }
-{ "partkey": 34, "pid": 1, "shipdate": "1992-07-03", "orderkey": 322 }
-{ "partkey": 34, "pid": 2, "shipdate": "1992-07-20", "orderkey": 3845 }
-{ "partkey": 34, "pid": 3, "shipdate": "1992-11-23", "orderkey": 5089 }
-{ "partkey": 36, "pid": 1, "shipdate": "1992-02-26", "orderkey": 1154 }
-{ "partkey": 36, "pid": 2, "shipdate": "1992-07-03", "orderkey": 134 }
-{ "partkey": 36, "pid": 3, "shipdate": "1993-01-06", "orderkey": 3521 }
-{ "partkey": 38, "pid": 1, "shipdate": "1992-04-06", "orderkey": 5601 }
-{ "partkey": 38, "pid": 2, "shipdate": "1992-04-15", "orderkey": 322 }
-{ "partkey": 38, "pid": 3, "shipdate": "1992-08-27", "orderkey": 2023 }
-{ "partkey": 41, "pid": 1, "shipdate": "1992-12-13", "orderkey": 4896 }
-{ "partkey": 41, "pid": 2, "shipdate": "1993-01-18", "orderkey": 2852 }
-{ "partkey": 41, "pid": 3, "shipdate": "1993-04-13", "orderkey": 3367 }
-{ "partkey": 47, "pid": 1, "shipdate": "1992-03-11", "orderkey": 3685 }
-{ "partkey": 47, "pid": 2, "shipdate": "1993-05-30", "orderkey": 3171 }
-{ "partkey": 47, "pid": 3, "shipdate": "1993-06-06", "orderkey": 2341 }
-{ "partkey": 53, "pid": 1, "shipdate": "1992-01-14", "orderkey": 4800 }
-{ "partkey": 53, "pid": 2, "shipdate": "1992-05-22", "orderkey": 2240 }
-{ "partkey": 53, "pid": 3, "shipdate": "1992-10-04", "orderkey": 2562 }
-{ "partkey": 60, "pid": 1, "shipdate": "1992-02-14", "orderkey": 3168 }
-{ "partkey": 60, "pid": 2, "shipdate": "1992-07-01", "orderkey": 1217 }
-{ "partkey": 60, "pid": 3, "shipdate": "1992-07-15", "orderkey": 3043 }
-{ "partkey": 62, "pid": 1, "shipdate": "1992-02-01", "orderkey": 1248 }
-{ "partkey": 62, "pid": 2, "shipdate": "1992-03-26", "orderkey": 5382 }
-{ "partkey": 62, "pid": 3, "shipdate": "1992-06-19", "orderkey": 4483 }
-{ "partkey": 64, "pid": 1, "shipdate": "1992-02-13", "orderkey": 2755 }
-{ "partkey": 64, "pid": 2, "shipdate": "1992-02-14", "orderkey": 5409 }
-{ "partkey": 64, "pid": 3, "shipdate": "1992-03-10", "orderkey": 3271 }
-{ "partkey": 67, "pid": 1, "shipdate": "1992-05-13", "orderkey": 1764 }
-{ "partkey": 67, "pid": 2, "shipdate": "1993-01-08", "orderkey": 612 }
-{ "partkey": 67, "pid": 3, "shipdate": "1993-11-03", "orderkey": 2631 }
-{ "partkey": 70, "pid": 1, "shipdate": "1992-04-06", "orderkey": 5473 }
-{ "partkey": 70, "pid": 2, "shipdate": "1992-06-11", "orderkey": 4199 }
-{ "partkey": 70, "pid": 3, "shipdate": "1992-06-25", "orderkey": 3650 }
-{ "partkey": 73, "pid": 1, "shipdate": "1992-01-08", "orderkey": 5601 }
-{ "partkey": 73, "pid": 2, "shipdate": "1992-09-16", "orderkey": 4741 }
-{ "partkey": 73, "pid": 3, "shipdate": "1993-07-02", "orderkey": 4743 }
-{ "partkey": 75, "pid": 1, "shipdate": "1992-03-27", "orderkey": 4000 }
-{ "partkey": 75, "pid": 2, "shipdate": "1992-05-12", "orderkey": 4230 }
-{ "partkey": 75, "pid": 3, "shipdate": "1992-09-19", "orderkey": 4103 }
-{ "partkey": 76, "pid": 1, "shipdate": "1992-10-22", "orderkey": 5408 }
-{ "partkey": 76, "pid": 2, "shipdate": "1993-04-19", "orderkey": 2272 }
-{ "partkey": 76, "pid": 3, "shipdate": "1993-06-12", "orderkey": 2245 }
-{ "partkey": 79, "pid": 1, "shipdate": "1992-08-05", "orderkey": 4069 }
-{ "partkey": 79, "pid": 2, "shipdate": "1992-08-10", "orderkey": 5986 }
-{ "partkey": 79, "pid": 3, "shipdate": "1993-04-08", "orderkey": 4418 }
-{ "partkey": 82, "pid": 1, "shipdate": "1992-07-17", "orderkey": 4867 }
-{ "partkey": 82, "pid": 2, "shipdate": "1992-10-18", "orderkey": 1504 }
-{ "partkey": 82, "pid": 3, "shipdate": "1992-12-11", "orderkey": 4261 }
-{ "partkey": 92, "pid": 1, "shipdate": "1992-02-11", "orderkey": 2755 }
-{ "partkey": 92, "pid": 2, "shipdate": "1992-09-30", "orderkey": 487 }
-{ "partkey": 92, "pid": 3, "shipdate": "1993-01-04", "orderkey": 164 }
-{ "partkey": 94, "pid": 1, "shipdate": "1992-05-20", "orderkey": 5574 }
-{ "partkey": 94, "pid": 2, "shipdate": "1992-07-03", "orderkey": 3650 }
-{ "partkey": 94, "pid": 3, "shipdate": "1992-07-26", "orderkey": 3654 }
-{ "partkey": 99, "pid": 1, "shipdate": "1992-05-01", "orderkey": 4998 }
-{ "partkey": 99, "pid": 2, "shipdate": "1993-04-18", "orderkey": 1409 }
-{ "partkey": 99, "pid": 3, "shipdate": "1993-06-09", "orderkey": 2149 }
-{ "partkey": 101, "pid": 1, "shipdate": "1992-08-17", "orderkey": 644 }
-{ "partkey": 101, "pid": 2, "shipdate": "1992-09-27", "orderkey": 2147 }
-{ "partkey": 101, "pid": 3, "shipdate": "1992-12-28", "orderkey": 1571 }
-{ "partkey": 102, "pid": 1, "shipdate": "1992-08-19", "orderkey": 5415 }
-{ "partkey": 102, "pid": 2, "shipdate": "1992-08-21", "orderkey": 5408 }
-{ "partkey": 102, "pid": 3, "shipdate": "1992-10-25", "orderkey": 674 }
-{ "partkey": 105, "pid": 1, "shipdate": "1992-02-14", "orderkey": 5382 }
-{ "partkey": 105, "pid": 2, "shipdate": "1992-06-01", "orderkey": 615 }
-{ "partkey": 105, "pid": 3, "shipdate": "1992-07-14", "orderkey": 4900 }
-{ "partkey": 107, "pid": 1, "shipdate": "1992-05-22", "orderkey": 1088 }
-{ "partkey": 107, "pid": 2, "shipdate": "1992-07-30", "orderkey": 3654 }
-{ "partkey": 107, "pid": 3, "shipdate": "1992-08-05", "orderkey": 3842 }
-{ "partkey": 109, "pid": 1, "shipdate": "1992-06-06", "orderkey": 3970 }
-{ "partkey": 109, "pid": 2, "shipdate": "1992-11-20", "orderkey": 1159 }
-{ "partkey": 109, "pid": 3, "shipdate": "1992-12-23", "orderkey": 164 }
-{ "partkey": 111, "pid": 1, "shipdate": "1992-07-05", "orderkey": 4705 }
-{ "partkey": 111, "pid": 2, "shipdate": "1992-07-28", "orderkey": 5254 }
-{ "partkey": 111, "pid": 3, "shipdate": "1992-08-13", "orderkey": 5121 }
-{ "partkey": 115, "pid": 1, "shipdate": "1992-03-13", "orderkey": 2912 }
-{ "partkey": 115, "pid": 2, "shipdate": "1992-05-29", "orderkey": 3973 }
-{ "partkey": 115, "pid": 3, "shipdate": "1992-06-17", "orderkey": 2880 }
-{ "partkey": 116, "pid": 1, "shipdate": "1992-03-22", "orderkey": 2755 }
-{ "partkey": 116, "pid": 2, "shipdate": "1992-05-17", "orderkey": 1925 }
-{ "partkey": 116, "pid": 3, "shipdate": "1992-06-24", "orderkey": 5603 }
-{ "partkey": 117, "pid": 1, "shipdate": "1992-05-04", "orderkey": 1856 }
-{ "partkey": 117, "pid": 2, "shipdate": "1993-03-18", "orderkey": 4545 }
-{ "partkey": 117, "pid": 3, "shipdate": "1993-07-10", "orderkey": 3494 }
-{ "partkey": 120, "pid": 1, "shipdate": "1992-03-23", "orderkey": 4292 }
-{ "partkey": 120, "pid": 2, "shipdate": "1992-04-28", "orderkey": 1221 }
-{ "partkey": 120, "pid": 3, "shipdate": "1992-06-29", "orderkey": 4903 }
-{ "partkey": 137, "pid": 1, "shipdate": "1992-05-23", "orderkey": 3524 }
-{ "partkey": 137, "pid": 2, "shipdate": "1992-07-05", "orderkey": 1955 }
-{ "partkey": 137, "pid": 3, "shipdate": "1992-09-12", "orderkey": 4099 }
-{ "partkey": 138, "pid": 1, "shipdate": "1992-06-20", "orderkey": 2848 }
-{ "partkey": 138, "pid": 2, "shipdate": "1992-11-21", "orderkey": 1991 }
-{ "partkey": 138, "pid": 3, "shipdate": "1993-02-28", "orderkey": 4487 }
-{ "partkey": 145, "pid": 1, "shipdate": "1992-01-25", "orderkey": 4998 }
-{ "partkey": 145, "pid": 2, "shipdate": "1992-08-16", "orderkey": 134 }
-{ "partkey": 145, "pid": 3, "shipdate": "1992-10-25", "orderkey": 3907 }
-{ "partkey": 146, "pid": 1, "shipdate": "1992-05-21", "orderkey": 194 }
-{ "partkey": 146, "pid": 2, "shipdate": "1993-06-21", "orderkey": 678 }
-{ "partkey": 146, "pid": 3, "shipdate": "1993-08-02", "orderkey": 1286 }
-{ "partkey": 152, "pid": 1, "shipdate": "1992-06-23", "orderkey": 4230 }
-{ "partkey": 152, "pid": 2, "shipdate": "1993-05-19", "orderkey": 896 }
-{ "partkey": 152, "pid": 3, "shipdate": "1993-10-31", "orderkey": 2368 }
-{ "partkey": 154, "pid": 1, "shipdate": "1992-02-18", "orderkey": 292 }
-{ "partkey": 154, "pid": 2, "shipdate": "1992-02-20", "orderkey": 4998 }
-{ "partkey": 154, "pid": 3, "shipdate": "1992-05-14", "orderkey": 4805 }
-{ "partkey": 156, "pid": 1, "shipdate": "1992-04-24", "orderkey": 1248 }
-{ "partkey": 156, "pid": 2, "shipdate": "1992-06-17", "orderkey": 1027 }
-{ "partkey": 156, "pid": 3, "shipdate": "1992-07-01", "orderkey": 2786 }
-{ "partkey": 157, "pid": 1, "shipdate": "1992-07-26", "orderkey": 4069 }
-{ "partkey": 157, "pid": 2, "shipdate": "1992-08-11", "orderkey": 1729 }
-{ "partkey": 157, "pid": 3, "shipdate": "1992-08-25", "orderkey": 4741 }
-{ "partkey": 160, "pid": 1, "shipdate": "1992-05-07", "orderkey": 1282 }
-{ "partkey": 160, "pid": 2, "shipdate": "1992-07-04", "orderkey": 4867 }
-{ "partkey": 160, "pid": 3, "shipdate": "1992-08-18", "orderkey": 1346 }
-{ "partkey": 161, "pid": 1, "shipdate": "1992-03-29", "orderkey": 2240 }
-{ "partkey": 161, "pid": 2, "shipdate": "1992-06-18", "orderkey": 4391 }
-{ "partkey": 161, "pid": 3, "shipdate": "1992-08-28", "orderkey": 5060 }
-{ "partkey": 164, "pid": 1, "shipdate": "1992-03-25", "orderkey": 5601 }
-{ "partkey": 164, "pid": 2, "shipdate": "1992-04-17", "orderkey": 1248 }
-{ "partkey": 164, "pid": 3, "shipdate": "1992-06-06", "orderkey": 801 }
-{ "partkey": 166, "pid": 1, "shipdate": "1992-08-11", "orderkey": 2691 }
-{ "partkey": 166, "pid": 2, "shipdate": "1992-08-14", "orderkey": 5095 }
-{ "partkey": 166, "pid": 3, "shipdate": "1993-04-22", "orderkey": 1703 }
-{ "partkey": 168, "pid": 1, "shipdate": "1992-05-06", "orderkey": 194 }
-{ "partkey": 168, "pid": 2, "shipdate": "1992-07-20", "orderkey": 3654 }
-{ "partkey": 168, "pid": 3, "shipdate": "1992-10-07", "orderkey": 868 }
-{ "partkey": 173, "pid": 1, "shipdate": "1992-06-17", "orderkey": 4738 }
-{ "partkey": 173, "pid": 2, "shipdate": "1992-09-15", "orderkey": 3654 }
-{ "partkey": 173, "pid": 3, "shipdate": "1992-09-30", "orderkey": 1540 }
-{ "partkey": 175, "pid": 1, "shipdate": "1992-10-09", "orderkey": 929 }
-{ "partkey": 175, "pid": 2, "shipdate": "1992-11-09", "orderkey": 4294 }
-{ "partkey": 175, "pid": 3, "shipdate": "1992-11-10", "orderkey": 2497 }
-{ "partkey": 176, "pid": 1, "shipdate": "1992-02-01", "orderkey": 4800 }
-{ "partkey": 176, "pid": 2, "shipdate": "1992-04-28", "orderkey": 1826 }
-{ "partkey": 176, "pid": 3, "shipdate": "1992-09-24", "orderkey": 3907 }
-{ "partkey": 16, "pid": 1, "shipdate": "1992-09-11", "orderkey": 1346 }
-{ "partkey": 16, "pid": 2, "shipdate": "1992-09-25", "orderkey": 5858 }
-{ "partkey": 16, "pid": 3, "shipdate": "1992-11-17", "orderkey": 5415 }
-{ "partkey": 20, "pid": 1, "shipdate": "1992-06-15", "orderkey": 2023 }
-{ "partkey": 20, "pid": 2, "shipdate": "1992-07-29", "orderkey": 5254 }
-{ "partkey": 20, "pid": 3, "shipdate": "1992-10-18", "orderkey": 2625 }
-{ "partkey": 27, "pid": 1, "shipdate": "1992-07-05", "orderkey": 1826 }
-{ "partkey": 27, "pid": 2, "shipdate": "1992-07-14", "orderkey": 4096 }
-{ "partkey": 27, "pid": 3, "shipdate": "1992-08-17", "orderkey": 4294 }
-{ "partkey": 28, "pid": 1, "shipdate": "1992-03-16", "orderkey": 2240 }
-{ "partkey": 28, "pid": 2, "shipdate": "1992-10-13", "orderkey": 5699 }
-{ "partkey": 28, "pid": 3, "shipdate": "1992-11-04", "orderkey": 1506 }
-{ "partkey": 30, "pid": 1, "shipdate": "1992-04-10", "orderkey": 1282 }
-{ "partkey": 30, "pid": 2, "shipdate": "1992-05-18", "orderkey": 1925 }
-{ "partkey": 30, "pid": 3, "shipdate": "1992-05-21", "orderkey": 5986 }
-{ "partkey": 32, "pid": 1, "shipdate": "1992-09-22", "orderkey": 4900 }
-{ "partkey": 32, "pid": 2, "shipdate": "1992-09-25", "orderkey": 5060 }
-{ "partkey": 32, "pid": 3, "shipdate": "1992-10-07", "orderkey": 5603 }
-{ "partkey": 39, "pid": 1, "shipdate": "1992-05-26", "orderkey": 4515 }
-{ "partkey": 39, "pid": 2, "shipdate": "1992-11-12", "orderkey": 612 }
-{ "partkey": 39, "pid": 3, "shipdate": "1992-11-15", "orderkey": 1447 }
-{ "partkey": 40, "pid": 1, "shipdate": "1992-02-07", "orderkey": 4292 }
-{ "partkey": 40, "pid": 2, "shipdate": "1992-04-28", "orderkey": 3139 }
-{ "partkey": 40, "pid": 3, "shipdate": "1992-05-03", "orderkey": 3973 }
-{ "partkey": 45, "pid": 1, "shipdate": "1992-07-16", "orderkey": 4515 }
-{ "partkey": 45, "pid": 2, "shipdate": "1993-06-24", "orderkey": 2720 }
-{ "partkey": 45, "pid": 3, "shipdate": "1993-09-15", "orderkey": 2055 }
-{ "partkey": 50, "pid": 1, "shipdate": "1992-04-22", "orderkey": 2786 }
-{ "partkey": 50, "pid": 2, "shipdate": "1992-07-31", "orderkey": 644 }
-{ "partkey": 50, "pid": 3, "shipdate": "1992-09-23", "orderkey": 2885 }
-{ "partkey": 55, "pid": 1, "shipdate": "1992-01-16", "orderkey": 5382 }
-{ "partkey": 55, "pid": 2, "shipdate": "1992-05-11", "orderkey": 1856 }
-{ "partkey": 55, "pid": 3, "shipdate": "1992-06-17", "orderkey": 2022 }
-{ "partkey": 57, "pid": 1, "shipdate": "1992-01-16", "orderkey": 3271 }
-{ "partkey": 57, "pid": 2, "shipdate": "1992-07-06", "orderkey": 194 }
-{ "partkey": 57, "pid": 3, "shipdate": "1992-09-21", "orderkey": 2146 }
-{ "partkey": 59, "pid": 1, "shipdate": "1992-02-09", "orderkey": 2688 }
-{ "partkey": 59, "pid": 2, "shipdate": "1992-03-17", "orderkey": 4998 }
-{ "partkey": 59, "pid": 3, "shipdate": "1992-06-12", "orderkey": 3845 }
-{ "partkey": 63, "pid": 1, "shipdate": "1992-02-07", "orderkey": 4998 }
-{ "partkey": 63, "pid": 2, "shipdate": "1992-06-15", "orderkey": 3650 }
-{ "partkey": 63, "pid": 3, "shipdate": "1993-02-07", "orderkey": 4545 }
-{ "partkey": 69, "pid": 1, "shipdate": "1992-05-31", "orderkey": 3205 }
-{ "partkey": 69, "pid": 2, "shipdate": "1992-06-05", "orderkey": 5767 }
-{ "partkey": 69, "pid": 3, "shipdate": "1992-07-01", "orderkey": 1221 }
-{ "partkey": 83, "pid": 1, "shipdate": "1992-06-09", "orderkey": 4738 }
-{ "partkey": 83, "pid": 2, "shipdate": "1992-08-04", "orderkey": 5218 }
-{ "partkey": 83, "pid": 3, "shipdate": "1992-09-21", "orderkey": 5220 }
-{ "partkey": 85, "pid": 1, "shipdate": "1992-02-28", "orderkey": 1057 }
-{ "partkey": 85, "pid": 2, "shipdate": "1992-05-28", "orderkey": 5574 }
-{ "partkey": 85, "pid": 3, "shipdate": "1992-06-27", "orderkey": 1221 }
-{ "partkey": 87, "pid": 1, "shipdate": "1992-09-30", "orderkey": 4294 }
-{ "partkey": 87, "pid": 2, "shipdate": "1992-12-02", "orderkey": 1540 }
-{ "partkey": 87, "pid": 3, "shipdate": "1993-01-06", "orderkey": 3556 }
-{ "partkey": 88, "pid": 1, "shipdate": "1992-04-24", "orderkey": 3970 }
-{ "partkey": 88, "pid": 2, "shipdate": "1992-06-26", "orderkey": 3842 }
-{ "partkey": 88, "pid": 3, "shipdate": "1992-12-18", "orderkey": 612 }
-{ "partkey": 98, "pid": 1, "shipdate": "1992-10-06", "orderkey": 5603 }
-{ "partkey": 98, "pid": 2, "shipdate": "1992-12-09", "orderkey": 1159 }
-{ "partkey": 98, "pid": 3, "shipdate": "1993-03-09", "orderkey": 678 }
-{ "partkey": 106, "pid": 1, "shipdate": "1992-07-09", "orderkey": 5095 }
-{ "partkey": 106, "pid": 2, "shipdate": "1992-07-31", "orderkey": 3681 }
-{ "partkey": 106, "pid": 3, "shipdate": "1992-10-02", "orderkey": 967 }
-{ "partkey": 110, "pid": 1, "shipdate": "1992-09-18", "orderkey": 3907 }
-{ "partkey": 110, "pid": 2, "shipdate": "1992-11-01", "orderkey": 4261 }
-{ "partkey": 110, "pid": 3, "shipdate": "1993-01-01", "orderkey": 1991 }
-{ "partkey": 112, "pid": 1, "shipdate": "1992-09-13", "orderkey": 3907 }
-{ "partkey": 112, "pid": 2, "shipdate": "1992-10-09", "orderkey": 2885 }
-{ "partkey": 112, "pid": 3, "shipdate": "1993-01-15", "orderkey": 481 }
-{ "partkey": 113, "pid": 1, "shipdate": "1992-06-08", "orderkey": 1027 }
-{ "partkey": 113, "pid": 2, "shipdate": "1992-08-13", "orderkey": 2054 }
-{ "partkey": 113, "pid": 3, "shipdate": "1992-08-25", "orderkey": 4741 }
-{ "partkey": 126, "pid": 1, "shipdate": "1992-07-28", "orderkey": 1793 }
-{ "partkey": 126, "pid": 2, "shipdate": "1992-08-28", "orderkey": 1027 }
-{ "partkey": 126, "pid": 3, "shipdate": "1992-09-06", "orderkey": 3907 }
-{ "partkey": 127, "pid": 1, "shipdate": "1992-06-04", "orderkey": 2023 }
-{ "partkey": 127, "pid": 2, "shipdate": "1992-07-02", "orderkey": 37 }
-{ "partkey": 127, "pid": 3, "shipdate": "1994-01-13", "orderkey": 1316 }
-{ "partkey": 128, "pid": 1, "shipdate": "1992-03-05", "orderkey": 3168 }
-{ "partkey": 128, "pid": 2, "shipdate": "1992-05-02", "orderkey": 4804 }
-{ "partkey": 128, "pid": 3, "shipdate": "1992-08-24", "orderkey": 4096 }
-{ "partkey": 129, "pid": 1, "shipdate": "1992-03-31", "orderkey": 2022 }
-{ "partkey": 129, "pid": 2, "shipdate": "1992-05-28", "orderkey": 5953 }
-{ "partkey": 129, "pid": 3, "shipdate": "1992-08-15", "orderkey": 130 }
-{ "partkey": 131, "pid": 1, "shipdate": "1992-02-27", "orderkey": 2755 }
-{ "partkey": 131, "pid": 2, "shipdate": "1992-03-03", "orderkey": 4292 }
-{ "partkey": 131, "pid": 3, "shipdate": "1992-05-14", "orderkey": 2627 }
-{ "partkey": 135, "pid": 1, "shipdate": "1992-05-02", "orderkey": 1826 }
-{ "partkey": 135, "pid": 2, "shipdate": "1992-05-11", "orderkey": 1925 }
-{ "partkey": 135, "pid": 3, "shipdate": "1992-05-29", "orderkey": 2052 }
-{ "partkey": 144, "pid": 1, "shipdate": "1992-07-05", "orderkey": 4992 }
-{ "partkey": 144, "pid": 2, "shipdate": "1992-08-25", "orderkey": 5415 }
-{ "partkey": 144, "pid": 3, "shipdate": "1992-09-17", "orderkey": 4996 }
-{ "partkey": 147, "pid": 1, "shipdate": "1992-06-10", "orderkey": 5959 }
-{ "partkey": 147, "pid": 2, "shipdate": "1992-09-04", "orderkey": 4992 }
-{ "partkey": 147, "pid": 3, "shipdate": "1992-12-03", "orderkey": 614 }
-{ "partkey": 163, "pid": 1, "shipdate": "1992-02-09", "orderkey": 2983 }
-{ "partkey": 163, "pid": 2, "shipdate": "1992-04-27", "orderkey": 4292 }
-{ "partkey": 163, "pid": 3, "shipdate": "1992-06-01", "orderkey": 4992 }
-{ "partkey": 167, "pid": 1, "shipdate": "1992-06-02", "orderkey": 5767 }
-{ "partkey": 167, "pid": 2, "shipdate": "1993-01-31", "orderkey": 1447 }
-{ "partkey": 167, "pid": 3, "shipdate": "1993-02-15", "orderkey": 1857 }
+{ "partkey": 1, "pid": 1, "shipdate": "1992-02-15" }
+{ "partkey": 1, "pid": 2, "shipdate": "1992-03-30" }
+{ "partkey": 1, "pid": 3, "shipdate": "1992-07-17" }
+{ "partkey": 2, "pid": 1, "shipdate": "1992-06-23" }
+{ "partkey": 2, "pid": 2, "shipdate": "1992-07-01" }
+{ "partkey": 2, "pid": 3, "shipdate": "1992-07-18" }
+{ "partkey": 8, "pid": 1, "shipdate": "1992-09-25" }
+{ "partkey": 8, "pid": 2, "shipdate": "1992-11-15" }
+{ "partkey": 8, "pid": 3, "shipdate": "1993-02-13" }
+{ "partkey": 9, "pid": 1, "shipdate": "1992-04-29" }
+{ "partkey": 9, "pid": 2, "shipdate": "1992-04-30" }
+{ "partkey": 9, "pid": 3, "shipdate": "1992-06-01" }
+{ "partkey": 10, "pid": 1, "shipdate": "1992-05-13" }
+{ "partkey": 10, "pid": 2, "shipdate": "1992-11-25" }
+{ "partkey": 10, "pid": 3, "shipdate": "1992-12-01" }
+{ "partkey": 13, "pid": 1, "shipdate": "1992-04-01" }
+{ "partkey": 13, "pid": 2, "shipdate": "1992-04-26" }
+{ "partkey": 13, "pid": 3, "shipdate": "1992-05-04" }
+{ "partkey": 18, "pid": 1, "shipdate": "1992-04-12" }
+{ "partkey": 18, "pid": 2, "shipdate": "1992-04-21" }
+{ "partkey": 18, "pid": 3, "shipdate": "1992-05-21" }
+{ "partkey": 19, "pid": 1, "shipdate": "1992-07-19" }
+{ "partkey": 19, "pid": 2, "shipdate": "1992-10-21" }
+{ "partkey": 19, "pid": 3, "shipdate": "1992-12-22" }
+{ "partkey": 21, "pid": 1, "shipdate": "1992-07-31" }
+{ "partkey": 21, "pid": 2, "shipdate": "1992-09-09" }
+{ "partkey": 21, "pid": 3, "shipdate": "1993-01-09" }
+{ "partkey": 25, "pid": 1, "shipdate": "1992-02-04" }
+{ "partkey": 25, "pid": 2, "shipdate": "1992-07-23" }
+{ "partkey": 25, "pid": 3, "shipdate": "1992-08-01" }
+{ "partkey": 26, "pid": 1, "shipdate": "1992-02-23" }
+{ "partkey": 26, "pid": 2, "shipdate": "1992-05-09" }
+{ "partkey": 26, "pid": 3, "shipdate": "1993-01-04" }
+{ "partkey": 37, "pid": 1, "shipdate": "1992-08-30" }
+{ "partkey": 37, "pid": 2, "shipdate": "1992-10-03" }
+{ "partkey": 37, "pid": 3, "shipdate": "1993-01-31" }
+{ "partkey": 42, "pid": 1, "shipdate": "1992-10-23" }
+{ "partkey": 42, "pid": 2, "shipdate": "1992-11-04" }
+{ "partkey": 42, "pid": 3, "shipdate": "1992-12-12" }
+{ "partkey": 43, "pid": 1, "shipdate": "1992-06-18" }
+{ "partkey": 43, "pid": 2, "shipdate": "1992-06-30" }
+{ "partkey": 43, "pid": 3, "shipdate": "1992-08-28" }
+{ "partkey": 46, "pid": 1, "shipdate": "1992-04-28" }
+{ "partkey": 46, "pid": 2, "shipdate": "1992-05-08" }
+{ "partkey": 46, "pid": 3, "shipdate": "1992-05-21" }
+{ "partkey": 48, "pid": 1, "shipdate": "1992-05-10" }
+{ "partkey": 48, "pid": 2, "shipdate": "1992-06-03" }
+{ "partkey": 48, "pid": 3, "shipdate": "1992-06-15" }
+{ "partkey": 51, "pid": 1, "shipdate": "1992-03-11" }
+{ "partkey": 51, "pid": 2, "shipdate": "1992-05-15" }
+{ "partkey": 51, "pid": 3, "shipdate": "1992-05-17" }
+{ "partkey": 52, "pid": 1, "shipdate": "1992-05-31" }
+{ "partkey": 52, "pid": 2, "shipdate": "1992-09-03" }
+{ "partkey": 52, "pid": 3, "shipdate": "1992-09-21" }
+{ "partkey": 54, "pid": 1, "shipdate": "1992-04-07" }
+{ "partkey": 54, "pid": 2, "shipdate": "1992-05-01" }
+{ "partkey": 54, "pid": 3, "shipdate": "1992-06-24" }
+{ "partkey": 56, "pid": 1, "shipdate": "1992-01-16" }
+{ "partkey": 56, "pid": 2, "shipdate": "1992-03-02" }
+{ "partkey": 56, "pid": 3, "shipdate": "1992-06-18" }
+{ "partkey": 58, "pid": 1, "shipdate": "1992-05-16" }
+{ "partkey": 58, "pid": 2, "shipdate": "1992-10-30" }
+{ "partkey": 58, "pid": 3, "shipdate": "1993-04-10" }
+{ "partkey": 61, "pid": 1, "shipdate": "1993-07-14" }
+{ "partkey": 61, "pid": 2, "shipdate": "1993-07-15" }
+{ "partkey": 61, "pid": 3, "shipdate": "1993-09-29" }
+{ "partkey": 65, "pid": 1, "shipdate": "1992-03-02" }
+{ "partkey": 65, "pid": 2, "shipdate": "1992-04-14" }
+{ "partkey": 65, "pid": 3, "shipdate": "1992-06-26" }
+{ "partkey": 68, "pid": 1, "shipdate": "1992-04-13" }
+{ "partkey": 68, "pid": 2, "shipdate": "1992-06-08" }
+{ "partkey": 68, "pid": 3, "shipdate": "1992-06-22" }
+{ "partkey": 72, "pid": 1, "shipdate": "1992-09-16" }
+{ "partkey": 72, "pid": 2, "shipdate": "1992-10-02" }
+{ "partkey": 72, "pid": 3, "shipdate": "1992-10-17" }
+{ "partkey": 74, "pid": 1, "shipdate": "1992-03-21" }
+{ "partkey": 74, "pid": 2, "shipdate": "1992-03-22" }
+{ "partkey": 74, "pid": 3, "shipdate": "1992-10-21" }
+{ "partkey": 78, "pid": 1, "shipdate": "1992-03-04" }
+{ "partkey": 78, "pid": 2, "shipdate": "1992-04-04" }
+{ "partkey": 78, "pid": 3, "shipdate": "1992-05-06" }
+{ "partkey": 84, "pid": 1, "shipdate": "1992-09-08" }
+{ "partkey": 84, "pid": 2, "shipdate": "1993-05-15" }
+{ "partkey": 84, "pid": 3, "shipdate": "1993-05-20" }
+{ "partkey": 86, "pid": 1, "shipdate": "1992-05-25" }
+{ "partkey": 86, "pid": 2, "shipdate": "1992-11-18" }
+{ "partkey": 86, "pid": 3, "shipdate": "1993-03-01" }
+{ "partkey": 95, "pid": 1, "shipdate": "1992-02-24" }
+{ "partkey": 95, "pid": 2, "shipdate": "1992-03-14" }
+{ "partkey": 95, "pid": 3, "shipdate": "1992-11-17" }
+{ "partkey": 100, "pid": 1, "shipdate": "1992-03-24" }
+{ "partkey": 100, "pid": 2, "shipdate": "1992-03-24" }
+{ "partkey": 100, "pid": 3, "shipdate": "1992-06-18" }
+{ "partkey": 103, "pid": 1, "shipdate": "1992-03-28" }
+{ "partkey": 103, "pid": 2, "shipdate": "1992-05-08" }
+{ "partkey": 103, "pid": 3, "shipdate": "1992-07-11" }
+{ "partkey": 104, "pid": 1, "shipdate": "1992-03-17" }
+{ "partkey": 104, "pid": 2, "shipdate": "1992-11-08" }
+{ "partkey": 104, "pid": 3, "shipdate": "1994-01-22" }
+{ "partkey": 108, "pid": 1, "shipdate": "1992-07-28" }
+{ "partkey": 108, "pid": 2, "shipdate": "1992-08-01" }
+{ "partkey": 108, "pid": 3, "shipdate": "1992-09-07" }
+{ "partkey": 114, "pid": 1, "shipdate": "1992-11-19" }
+{ "partkey": 114, "pid": 2, "shipdate": "1992-11-22" }
+{ "partkey": 114, "pid": 3, "shipdate": "1993-03-22" }
+{ "partkey": 118, "pid": 1, "shipdate": "1992-06-18" }
+{ "partkey": 118, "pid": 2, "shipdate": "1992-09-27" }
+{ "partkey": 118, "pid": 3, "shipdate": "1992-10-02" }
+{ "partkey": 119, "pid": 1, "shipdate": "1992-05-08" }
+{ "partkey": 119, "pid": 2, "shipdate": "1992-05-27" }
+{ "partkey": 119, "pid": 3, "shipdate": "1992-09-07" }
+{ "partkey": 122, "pid": 1, "shipdate": "1992-03-12" }
+{ "partkey": 122, "pid": 2, "shipdate": "1992-04-09" }
+{ "partkey": 122, "pid": 3, "shipdate": "1992-06-05" }
+{ "partkey": 123, "pid": 1, "shipdate": "1992-02-01" }
+{ "partkey": 123, "pid": 2, "shipdate": "1992-06-20" }
+{ "partkey": 123, "pid": 3, "shipdate": "1992-11-22" }
+{ "partkey": 130, "pid": 1, "shipdate": "1992-04-03" }
+{ "partkey": 130, "pid": 2, "shipdate": "1992-05-23" }
+{ "partkey": 130, "pid": 3, "shipdate": "1992-08-20" }
+{ "partkey": 132, "pid": 1, "shipdate": "1992-04-17" }
+{ "partkey": 132, "pid": 2, "shipdate": "1992-06-14" }
+{ "partkey": 132, "pid": 3, "shipdate": "1992-07-06" }
+{ "partkey": 134, "pid": 1, "shipdate": "1992-05-17" }
+{ "partkey": 134, "pid": 2, "shipdate": "1992-05-20" }
+{ "partkey": 134, "pid": 3, "shipdate": "1992-05-29" }
+{ "partkey": 136, "pid": 1, "shipdate": "1992-05-19" }
+{ "partkey": 136, "pid": 2, "shipdate": "1992-05-21" }
+{ "partkey": 136, "pid": 3, "shipdate": "1992-06-07" }
+{ "partkey": 140, "pid": 1, "shipdate": "1992-03-20" }
+{ "partkey": 140, "pid": 2, "shipdate": "1992-04-27" }
+{ "partkey": 140, "pid": 3, "shipdate": "1992-08-03" }
+{ "partkey": 141, "pid": 1, "shipdate": "1992-01-13" }
+{ "partkey": 141, "pid": 2, "shipdate": "1992-02-01" }
+{ "partkey": 141, "pid": 3, "shipdate": "1992-06-22" }
+{ "partkey": 149, "pid": 1, "shipdate": "1992-03-22" }
+{ "partkey": 149, "pid": 2, "shipdate": "1992-04-29" }
+{ "partkey": 149, "pid": 3, "shipdate": "1992-05-14" }
+{ "partkey": 158, "pid": 1, "shipdate": "1992-08-01" }
+{ "partkey": 158, "pid": 2, "shipdate": "1992-08-29" }
+{ "partkey": 158, "pid": 3, "shipdate": "1992-09-18" }
+{ "partkey": 159, "pid": 1, "shipdate": "1992-05-07" }
+{ "partkey": 159, "pid": 2, "shipdate": "1992-06-03" }
+{ "partkey": 159, "pid": 3, "shipdate": "1992-07-10" }
+{ "partkey": 170, "pid": 1, "shipdate": "1992-08-07" }
+{ "partkey": 170, "pid": 2, "shipdate": "1993-03-17" }
+{ "partkey": 170, "pid": 3, "shipdate": "1993-06-19" }
+{ "partkey": 171, "pid": 1, "shipdate": "1992-11-09" }
+{ "partkey": 171, "pid": 2, "shipdate": "1994-01-22" }
+{ "partkey": 171, "pid": 3, "shipdate": "1995-01-02" }
+{ "partkey": 172, "pid": 1, "shipdate": "1992-09-06" }
+{ "partkey": 172, "pid": 2, "shipdate": "1993-05-01" }
+{ "partkey": 172, "pid": 3, "shipdate": "1993-06-16" }
+{ "partkey": 179, "pid": 1, "shipdate": "1992-05-30" }
+{ "partkey": 179, "pid": 2, "shipdate": "1992-06-02" }
+{ "partkey": 179, "pid": 3, "shipdate": "1992-09-20" }
+{ "partkey": 183, "pid": 1, "shipdate": "1992-04-24" }
+{ "partkey": 183, "pid": 2, "shipdate": "1992-10-24" }
+{ "partkey": 183, "pid": 3, "shipdate": "1993-01-08" }
+{ "partkey": 185, "pid": 1, "shipdate": "1992-04-30" }
+{ "partkey": 185, "pid": 2, "shipdate": "1992-06-20" }
+{ "partkey": 185, "pid": 3, "shipdate": "1992-07-23" }
+{ "partkey": 187, "pid": 1, "shipdate": "1992-04-01" }
+{ "partkey": 187, "pid": 2, "shipdate": "1992-05-30" }
+{ "partkey": 187, "pid": 3, "shipdate": "1992-06-01" }
+{ "partkey": 188, "pid": 1, "shipdate": "1992-09-15" }
+{ "partkey": 188, "pid": 2, "shipdate": "1993-04-08" }
+{ "partkey": 188, "pid": 3, "shipdate": "1993-05-03" }
+{ "partkey": 190, "pid": 1, "shipdate": "1992-04-14" }
+{ "partkey": 190, "pid": 2, "shipdate": "1992-07-17" }
+{ "partkey": 190, "pid": 3, "shipdate": "1992-10-12" }
+{ "partkey": 195, "pid": 1, "shipdate": "1992-04-10" }
+{ "partkey": 195, "pid": 2, "shipdate": "1992-05-07" }
+{ "partkey": 195, "pid": 3, "shipdate": "1992-05-28" }
+{ "partkey": 197, "pid": 1, "shipdate": "1993-08-22" }
+{ "partkey": 197, "pid": 2, "shipdate": "1994-02-24" }
+{ "partkey": 197, "pid": 3, "shipdate": "1994-03-03" }
+{ "partkey": 199, "pid": 1, "shipdate": "1992-03-14" }
+{ "partkey": 199, "pid": 2, "shipdate": "1992-08-02" }
+{ "partkey": 199, "pid": 3, "shipdate": "1992-11-20" }
+{ "partkey": 200, "pid": 1, "shipdate": "1992-04-19" }
+{ "partkey": 200, "pid": 2, "shipdate": "1993-01-06" }
+{ "partkey": 200, "pid": 3, "shipdate": "1993-10-17" }
+{ "partkey": 3, "pid": 1, "shipdate": "1992-04-25" }
+{ "partkey": 3, "pid": 2, "shipdate": "1992-05-24" }
+{ "partkey": 3, "pid": 3, "shipdate": "1993-01-03" }
+{ "partkey": 6, "pid": 1, "shipdate": "1992-04-05" }
+{ "partkey": 6, "pid": 2, "shipdate": "1992-04-25" }
+{ "partkey": 6, "pid": 3, "shipdate": "1992-04-29" }
+{ "partkey": 7, "pid": 1, "shipdate": "1992-04-12" }
+{ "partkey": 7, "pid": 2, "shipdate": "1993-02-11" }
+{ "partkey": 7, "pid": 3, "shipdate": "1993-06-25" }
+{ "partkey": 12, "pid": 1, "shipdate": "1992-07-04" }
+{ "partkey": 12, "pid": 2, "shipdate": "1992-07-17" }
+{ "partkey": 12, "pid": 3, "shipdate": "1992-09-02" }
+{ "partkey": 17, "pid": 1, "shipdate": "1992-07-23" }
+{ "partkey": 17, "pid": 2, "shipdate": "1993-03-01" }
+{ "partkey": 17, "pid": 3, "shipdate": "1993-05-06" }
+{ "partkey": 23, "pid": 1, "shipdate": "1992-04-04" }
+{ "partkey": 23, "pid": 2, "shipdate": "1992-06-19" }
+{ "partkey": 23, "pid": 3, "shipdate": "1992-06-29" }
+{ "partkey": 31, "pid": 1, "shipdate": "1992-07-14" }
+{ "partkey": 31, "pid": 2, "shipdate": "1992-09-24" }
+{ "partkey": 31, "pid": 3, "shipdate": "1992-09-29" }
+{ "partkey": 35, "pid": 1, "shipdate": "1992-03-11" }
+{ "partkey": 35, "pid": 2, "shipdate": "1992-04-06" }
+{ "partkey": 35, "pid": 3, "shipdate": "1992-05-26" }
+{ "partkey": 44, "pid": 1, "shipdate": "1992-02-14" }
+{ "partkey": 44, "pid": 2, "shipdate": "1992-06-11" }
+{ "partkey": 44, "pid": 3, "shipdate": "1992-11-29" }
+{ "partkey": 49, "pid": 1, "shipdate": "1992-04-29" }
+{ "partkey": 49, "pid": 2, "shipdate": "1992-06-14" }
+{ "partkey": 49, "pid": 3, "shipdate": "1992-08-13" }
+{ "partkey": 66, "pid": 1, "shipdate": "1992-05-07" }
+{ "partkey": 66, "pid": 2, "shipdate": "1992-09-11" }
+{ "partkey": 66, "pid": 3, "shipdate": "1992-10-10" }
+{ "partkey": 71, "pid": 1, "shipdate": "1992-11-10" }
+{ "partkey": 71, "pid": 2, "shipdate": "1993-01-10" }
+{ "partkey": 71, "pid": 3, "shipdate": "1993-02-28" }
+{ "partkey": 77, "pid": 1, "shipdate": "1992-08-18" }
+{ "partkey": 77, "pid": 2, "shipdate": "1992-12-23" }
+{ "partkey": 77, "pid": 3, "shipdate": "1993-06-19" }
+{ "partkey": 80, "pid": 1, "shipdate": "1992-05-18" }
+{ "partkey": 80, "pid": 2, "shipdate": "1992-09-02" }
+{ "partkey": 80, "pid": 3, "shipdate": "1993-06-07" }
+{ "partkey": 81, "pid": 1, "shipdate": "1992-04-11" }
+{ "partkey": 81, "pid": 2, "shipdate": "1992-06-22" }
+{ "partkey": 81, "pid": 3, "shipdate": "1992-12-30" }
+{ "partkey": 89, "pid": 1, "shipdate": "1992-04-18" }
+{ "partkey": 89, "pid": 2, "shipdate": "1992-04-19" }
+{ "partkey": 89, "pid": 3, "shipdate": "1992-05-27" }
+{ "partkey": 90, "pid": 1, "shipdate": "1992-02-25" }
+{ "partkey": 90, "pid": 2, "shipdate": "1992-06-07" }
+{ "partkey": 90, "pid": 3, "shipdate": "1992-08-21" }
+{ "partkey": 91, "pid": 1, "shipdate": "1992-05-22" }
+{ "partkey": 91, "pid": 2, "shipdate": "1992-06-21" }
+{ "partkey": 91, "pid": 3, "shipdate": "1992-12-03" }
+{ "partkey": 93, "pid": 1, "shipdate": "1992-05-28" }
+{ "partkey": 93, "pid": 2, "shipdate": "1992-06-24" }
+{ "partkey": 93, "pid": 3, "shipdate": "1992-09-11" }
+{ "partkey": 96, "pid": 1, "shipdate": "1992-06-18" }
+{ "partkey": 96, "pid": 2, "shipdate": "1992-09-26" }
+{ "partkey": 96, "pid": 3, "shipdate": "1992-11-25" }
+{ "partkey": 97, "pid": 1, "shipdate": "1992-01-27" }
+{ "partkey": 97, "pid": 2, "shipdate": "1992-03-22" }
+{ "partkey": 97, "pid": 3, "shipdate": "1992-04-21" }
+{ "partkey": 121, "pid": 1, "shipdate": "1992-04-23" }
+{ "partkey": 121, "pid": 2, "shipdate": "1992-06-09" }
+{ "partkey": 121, "pid": 3, "shipdate": "1992-06-23" }
+{ "partkey": 124, "pid": 1, "shipdate": "1992-06-15" }
+{ "partkey": 124, "pid": 2, "shipdate": "1992-08-09" }
+{ "partkey": 124, "pid": 3, "shipdate": "1992-09-13" }
+{ "partkey": 125, "pid": 1, "shipdate": "1992-03-15" }
+{ "partkey": 125, "pid": 2, "shipdate": "1992-03-29" }
+{ "partkey": 125, "pid": 3, "shipdate": "1992-05-24" }
+{ "partkey": 133, "pid": 1, "shipdate": "1992-06-08" }
+{ "partkey": 133, "pid": 2, "shipdate": "1992-11-17" }
+{ "partkey": 133, "pid": 3, "shipdate": "1993-01-18" }
+{ "partkey": 139, "pid": 1, "shipdate": "1992-04-12" }
+{ "partkey": 139, "pid": 2, "shipdate": "1992-06-28" }
+{ "partkey": 139, "pid": 3, "shipdate": "1992-09-12" }
+{ "partkey": 142, "pid": 1, "shipdate": "1992-10-14" }
+{ "partkey": 142, "pid": 2, "shipdate": "1993-05-14" }
+{ "partkey": 142, "pid": 3, "shipdate": "1993-07-11" }
+{ "partkey": 143, "pid": 1, "shipdate": "1992-04-17" }
+{ "partkey": 143, "pid": 2, "shipdate": "1992-09-01" }
+{ "partkey": 143, "pid": 3, "shipdate": "1992-09-05" }
+{ "partkey": 148, "pid": 1, "shipdate": "1992-01-15" }
+{ "partkey": 148, "pid": 2, "shipdate": "1992-02-27" }
+{ "partkey": 148, "pid": 3, "shipdate": "1992-04-22" }
+{ "partkey": 150, "pid": 1, "shipdate": "1992-05-01" }
+{ "partkey": 150, "pid": 2, "shipdate": "1992-05-02" }
+{ "partkey": 150, "pid": 3, "shipdate": "1992-05-25" }
+{ "partkey": 151, "pid": 1, "shipdate": "1992-01-26" }
+{ "partkey": 151, "pid": 2, "shipdate": "1992-07-30" }
+{ "partkey": 151, "pid": 3, "shipdate": "1992-12-19" }
+{ "partkey": 153, "pid": 1, "shipdate": "1992-02-22" }
+{ "partkey": 153, "pid": 2, "shipdate": "1992-06-02" }
+{ "partkey": 153, "pid": 3, "shipdate": "1992-06-29" }
+{ "partkey": 155, "pid": 1, "shipdate": "1992-09-28" }
+{ "partkey": 155, "pid": 2, "shipdate": "1992-11-25" }
+{ "partkey": 155, "pid": 3, "shipdate": "1993-05-14" }
+{ "partkey": 162, "pid": 1, "shipdate": "1992-04-10" }
+{ "partkey": 162, "pid": 2, "shipdate": "1992-05-03" }
+{ "partkey": 162, "pid": 3, "shipdate": "1992-06-11" }
+{ "partkey": 165, "pid": 1, "shipdate": "1992-03-21" }
+{ "partkey": 165, "pid": 2, "shipdate": "1992-04-01" }
+{ "partkey": 165, "pid": 3, "shipdate": "1992-04-12" }
+{ "partkey": 169, "pid": 1, "shipdate": "1992-03-31" }
+{ "partkey": 169, "pid": 2, "shipdate": "1992-06-05" }
+{ "partkey": 169, "pid": 3, "shipdate": "1992-06-07" }
+{ "partkey": 174, "pid": 1, "shipdate": "1992-06-25" }
+{ "partkey": 174, "pid": 2, "shipdate": "1992-11-02" }
+{ "partkey": 174, "pid": 3, "shipdate": "1992-12-02" }
+{ "partkey": 177, "pid": 1, "shipdate": "1992-04-05" }
+{ "partkey": 177, "pid": 2, "shipdate": "1992-12-25" }
+{ "partkey": 177, "pid": 3, "shipdate": "1993-01-16" }
+{ "partkey": 178, "pid": 1, "shipdate": "1992-05-23" }
+{ "partkey": 178, "pid": 2, "shipdate": "1992-08-18" }
+{ "partkey": 178, "pid": 3, "shipdate": "1992-11-02" }
+{ "partkey": 180, "pid": 1, "shipdate": "1992-03-07" }
+{ "partkey": 180, "pid": 2, "shipdate": "1992-05-23" }
+{ "partkey": 180, "pid": 3, "shipdate": "1992-06-21" }
+{ "partkey": 182, "pid": 1, "shipdate": "1992-03-02" }
+{ "partkey": 182, "pid": 2, "shipdate": "1992-04-02" }
+{ "partkey": 182, "pid": 3, "shipdate": "1992-04-28" }
+{ "partkey": 186, "pid": 1, "shipdate": "1992-07-26" }
+{ "partkey": 186, "pid": 2, "shipdate": "1992-11-25" }
+{ "partkey": 186, "pid": 3, "shipdate": "1992-11-27" }
+{ "partkey": 189, "pid": 1, "shipdate": "1992-06-16" }
+{ "partkey": 189, "pid": 2, "shipdate": "1992-06-20" }
+{ "partkey": 189, "pid": 3, "shipdate": "1992-07-20" }
+{ "partkey": 192, "pid": 1, "shipdate": "1992-02-19" }
+{ "partkey": 192, "pid": 2, "shipdate": "1992-08-10" }
+{ "partkey": 192, "pid": 3, "shipdate": "1992-09-02" }
+{ "partkey": 194, "pid": 1, "shipdate": "1992-02-14" }
+{ "partkey": 194, "pid": 2, "shipdate": "1992-06-20" }
+{ "partkey": 194, "pid": 3, "shipdate": "1992-12-15" }
+{ "partkey": 4, "pid": 1, "shipdate": "1992-05-02" }
+{ "partkey": 4, "pid": 2, "shipdate": "1992-11-03" }
+{ "partkey": 4, "pid": 3, "shipdate": "1992-11-18" }
+{ "partkey": 5, "pid": 1, "shipdate": "1992-05-02" }
+{ "partkey": 5, "pid": 2, "shipdate": "1992-06-14" }
+{ "partkey": 5, "pid": 3, "shipdate": "1993-01-06" }
+{ "partkey": 11, "pid": 1, "shipdate": "1992-02-14" }
+{ "partkey": 11, "pid": 2, "shipdate": "1992-07-20" }
+{ "partkey": 11, "pid": 3, "shipdate": "1992-08-03" }
+{ "partkey": 14, "pid": 1, "shipdate": "1992-07-17" }
+{ "partkey": 14, "pid": 2, "shipdate": "1992-11-30" }
+{ "partkey": 14, "pid": 3, "shipdate": "1993-05-10" }
+{ "partkey": 15, "pid": 1, "shipdate": "1992-05-18" }
+{ "partkey": 15, "pid": 2, "shipdate": "1992-05-24" }
+{ "partkey": 15, "pid": 3, "shipdate": "1993-04-14" }
+{ "partkey": 22, "pid": 1, "shipdate": "1992-06-21" }
+{ "partkey": 22, "pid": 2, "shipdate": "1992-06-25" }
+{ "partkey": 22, "pid": 3, "shipdate": "1992-11-20" }
+{ "partkey": 24, "pid": 1, "shipdate": "1992-04-12" }
+{ "partkey": 24, "pid": 2, "shipdate": "1992-08-06" }
+{ "partkey": 24, "pid": 3, "shipdate": "1992-08-08" }
+{ "partkey": 29, "pid": 1, "shipdate": "1992-05-25" }
+{ "partkey": 29, "pid": 2, "shipdate": "1992-06-01" }
+{ "partkey": 29, "pid": 3, "shipdate": "1992-07-25" }
+{ "partkey": 33, "pid": 1, "shipdate": "1992-03-22" }
+{ "partkey": 33, "pid": 2, "shipdate": "1993-02-17" }
+{ "partkey": 33, "pid": 3, "shipdate": "1993-02-21" }
+{ "partkey": 34, "pid": 1, "shipdate": "1992-07-03" }
+{ "partkey": 34, "pid": 2, "shipdate": "1992-07-20" }
+{ "partkey": 34, "pid": 3, "shipdate": "1992-11-23" }
+{ "partkey": 36, "pid": 1, "shipdate": "1992-02-26" }
+{ "partkey": 36, "pid": 2, "shipdate": "1992-07-03" }
+{ "partkey": 36, "pid": 3, "shipdate": "1993-01-06" }
+{ "partkey": 38, "pid": 1, "shipdate": "1992-04-06" }
+{ "partkey": 38, "pid": 2, "shipdate": "1992-04-15" }
+{ "partkey": 38, "pid": 3, "shipdate": "1992-08-27" }
+{ "partkey": 41, "pid": 1, "shipdate": "1992-12-13" }
+{ "partkey": 41, "pid": 2, "shipdate": "1993-01-18" }
+{ "partkey": 41, "pid": 3, "shipdate": "1993-04-13" }
+{ "partkey": 47, "pid": 1, "shipdate": "1992-03-11" }
+{ "partkey": 47, "pid": 2, "shipdate": "1993-05-30" }
+{ "partkey": 47, "pid": 3, "shipdate": "1993-06-06" }
+{ "partkey": 53, "pid": 1, "shipdate": "1992-01-14" }
+{ "partkey": 53, "pid": 2, "shipdate": "1992-05-22" }
+{ "partkey": 53, "pid": 3, "shipdate": "1992-10-04" }
+{ "partkey": 60, "pid": 1, "shipdate": "1992-02-14" }
+{ "partkey": 60, "pid": 2, "shipdate": "1992-07-01" }
+{ "partkey": 60, "pid": 3, "shipdate": "1992-07-15" }
+{ "partkey": 62, "pid": 1, "shipdate": "1992-02-01" }
+{ "partkey": 62, "pid": 2, "shipdate": "1992-03-26" }
+{ "partkey": 62, "pid": 3, "shipdate": "1992-06-19" }
+{ "partkey": 64, "pid": 1, "shipdate": "1992-02-13" }
+{ "partkey": 64, "pid": 2, "shipdate": "1992-02-14" }
+{ "partkey": 64, "pid": 3, "shipdate": "1992-03-10" }
+{ "partkey": 67, "pid": 1, "shipdate": "1992-05-13" }
+{ "partkey": 67, "pid": 2, "shipdate": "1993-01-08" }
+{ "partkey": 67, "pid": 3, "shipdate": "1993-11-03" }
+{ "partkey": 70, "pid": 1, "shipdate": "1992-04-06" }
+{ "partkey": 70, "pid": 2, "shipdate": "1992-06-11" }
+{ "partkey": 70, "pid": 3, "shipdate": "1992-06-25" }
+{ "partkey": 73, "pid": 1, "shipdate": "1992-01-08" }
+{ "partkey": 73, "pid": 2, "shipdate": "1992-09-16" }
+{ "partkey": 73, "pid": 3, "shipdate": "1993-07-02" }
+{ "partkey": 75, "pid": 1, "shipdate": "1992-03-27" }
+{ "partkey": 75, "pid": 2, "shipdate": "1992-05-12" }
+{ "partkey": 75, "pid": 3, "shipdate": "1992-09-19" }
+{ "partkey": 76, "pid": 1, "shipdate": "1992-10-22" }
+{ "partkey": 76, "pid": 2, "shipdate": "1993-04-19" }
+{ "partkey": 76, "pid": 3, "shipdate": "1993-06-12" }
+{ "partkey": 79, "pid": 1, "shipdate": "1992-08-05" }
+{ "partkey": 79, "pid": 2, "shipdate": "1992-08-10" }
+{ "partkey": 79, "pid": 3, "shipdate": "1993-04-08" }
+{ "partkey": 82, "pid": 1, "shipdate": "1992-07-17" }
+{ "partkey": 82, "pid": 2, "shipdate": "1992-10-18" }
+{ "partkey": 82, "pid": 3, "shipdate": "1992-12-11" }
+{ "partkey": 92, "pid": 1, "shipdate": "1992-02-11" }
+{ "partkey": 92, "pid": 2, "shipdate": "1992-09-30" }
+{ "partkey": 92, "pid": 3, "shipdate": "1993-01-04" }
+{ "partkey": 94, "pid": 1, "shipdate": "1992-05-20" }
+{ "partkey": 94, "pid": 2, "shipdate": "1992-07-03" }
+{ "partkey": 94, "pid": 3, "shipdate": "1992-07-26" }
+{ "partkey": 99, "pid": 1, "shipdate": "1992-05-01" }
+{ "partkey": 99, "pid": 2, "shipdate": "1993-04-18" }
+{ "partkey": 99, "pid": 3, "shipdate": "1993-06-09" }
+{ "partkey": 101, "pid": 1, "shipdate": "1992-08-17" }
+{ "partkey": 101, "pid": 2, "shipdate": "1992-09-27" }
+{ "partkey": 101, "pid": 3, "shipdate": "1992-12-28" }
+{ "partkey": 102, "pid": 1, "shipdate": "1992-08-19" }
+{ "partkey": 102, "pid": 2, "shipdate": "1992-08-21" }
+{ "partkey": 102, "pid": 3, "shipdate": "1992-10-25" }
+{ "partkey": 105, "pid": 1, "shipdate": "1992-02-14" }
+{ "partkey": 105, "pid": 2, "shipdate": "1992-06-01" }
+{ "partkey": 105, "pid": 3, "shipdate": "1992-07-14" }
+{ "partkey": 107, "pid": 1, "shipdate": "1992-05-22" }
+{ "partkey": 107, "pid": 2, "shipdate": "1992-07-30" }
+{ "partkey": 107, "pid": 3, "shipdate": "1992-08-05" }
+{ "partkey": 109, "pid": 1, "shipdate": "1992-06-06" }
+{ "partkey": 109, "pid": 2, "shipdate": "1992-11-20" }
+{ "partkey": 109, "pid": 3, "shipdate": "1992-12-23" }
+{ "partkey": 111, "pid": 1, "shipdate": "1992-07-05" }
+{ "partkey": 111, "pid": 2, "shipdate": "1992-07-28" }
+{ "partkey": 111, "pid": 3, "shipdate": "1992-08-13" }
+{ "partkey": 115, "pid": 1, "shipdate": "1992-03-13" }
+{ "partkey": 115, "pid": 2, "shipdate": "1992-05-29" }
+{ "partkey": 115, "pid": 3, "shipdate": "1992-06-17" }
+{ "partkey": 116, "pid": 1, "shipdate": "1992-03-22" }
+{ "partkey": 116, "pid": 2, "shipdate": "1992-05-17" }
+{ "partkey": 116, "pid": 3, "shipdate": "1992-06-24" }
+{ "partkey": 117, "pid": 1, "shipdate": "1992-05-04" }
+{ "partkey": 117, "pid": 2, "shipdate": "1993-03-18" }
+{ "partkey": 117, "pid": 3, "shipdate": "1993-07-10" }
+{ "partkey": 120, "pid": 1, "shipdate": "1992-03-23" }
+{ "partkey": 120, "pid": 2, "shipdate": "1992-04-28" }
+{ "partkey": 120, "pid": 3, "shipdate": "1992-06-29" }
+{ "partkey": 137, "pid": 1, "shipdate": "1992-05-23" }
+{ "partkey": 137, "pid": 2, "shipdate": "1992-07-05" }
+{ "partkey": 137, "pid": 3, "shipdate": "1992-09-12" }
+{ "partkey": 138, "pid": 1, "shipdate": "1992-06-20" }
+{ "partkey": 138, "pid": 2, "shipdate": "1992-11-21" }
+{ "partkey": 138, "pid": 3, "shipdate": "1993-02-28" }
+{ "partkey": 145, "pid": 1, "shipdate": "1992-01-25" }
+{ "partkey": 145, "pid": 2, "shipdate": "1992-08-16" }
+{ "partkey": 145, "pid": 3, "shipdate": "1992-10-25" }
+{ "partkey": 146, "pid": 1, "shipdate": "1992-05-21" }
+{ "partkey": 146, "pid": 2, "shipdate": "1993-06-21" }
+{ "partkey": 146, "pid": 3, "shipdate": "1993-08-02" }
+{ "partkey": 152, "pid": 1, "shipdate": "1992-06-23" }
+{ "partkey": 152, "pid": 2, "shipdate": "1993-05-19" }
+{ "partkey": 152, "pid": 3, "shipdate": "1993-10-31" }
+{ "partkey": 154, "pid": 1, "shipdate": "1992-02-18" }
+{ "partkey": 154, "pid": 2, "shipdate": "1992-02-20" }
+{ "partkey": 154, "pid": 3, "shipdate": "1992-05-14" }
+{ "partkey": 156, "pid": 1, "shipdate": "1992-04-24" }
+{ "partkey": 156, "pid": 2, "shipdate": "1992-06-17" }
+{ "partkey": 156, "pid": 3, "shipdate": "1992-07-01" }
+{ "partkey": 157, "pid": 1, "shipdate": "1992-07-26" }
+{ "partkey": 157, "pid": 2, "shipdate": "1992-08-11" }
+{ "partkey": 157, "pid": 3, "shipdate": "1992-08-25" }
+{ "partkey": 160, "pid": 1, "shipdate": "1992-05-07" }
+{ "partkey": 160, "pid": 2, "shipdate": "1992-07-04" }
+{ "partkey": 160, "pid": 3, "shipdate": "1992-08-18" }
+{ "partkey": 161, "pid": 1, "shipdate": "1992-03-29" }
+{ "partkey": 161, "pid": 2, "shipdate": "1992-06-18" }
+{ "partkey": 161, "pid": 3, "shipdate": "1992-08-28" }
+{ "partkey": 164, "pid": 1, "shipdate": "1992-03-25" }
+{ "partkey": 164, "pid": 2, "shipdate": "1992-04-17" }
+{ "partkey": 164, "pid": 3, "shipdate": "1992-06-06" }
+{ "partkey": 166, "pid": 1, "shipdate": "1992-08-11" }
+{ "partkey": 166, "pid": 2, "shipdate": "1992-08-14" }
+{ "partkey": 166, "pid": 3, "shipdate": "1993-04-22" }
+{ "partkey": 168, "pid": 1, "shipdate": "1992-05-06" }
+{ "partkey": 168, "pid": 2, "shipdate": "1992-07-20" }
+{ "partkey": 168, "pid": 3, "shipdate": "1992-10-07" }
+{ "partkey": 173, "pid": 1, "shipdate": "1992-06-17" }
+{ "partkey": 173, "pid": 2, "shipdate": "1992-09-15" }
+{ "partkey": 173, "pid": 3, "shipdate": "1992-09-30" }
+{ "partkey": 175, "pid": 1, "shipdate": "1992-10-09" }
+{ "partkey": 175, "pid": 2, "shipdate": "1992-11-09" }
+{ "partkey": 175, "pid": 3, "shipdate": "1992-11-10" }
+{ "partkey": 176, "pid": 1, "shipdate": "1992-02-01" }
+{ "partkey": 176, "pid": 2, "shipdate": "1992-04-28" }
+{ "partkey": 176, "pid": 3, "shipdate": "1992-09-24" }
+{ "partkey": 193, "pid": 1, "shipdate": "1992-05-05" }
+{ "partkey": 193, "pid": 2, "shipdate": "1992-08-21" }
+{ "partkey": 193, "pid": 3, "shipdate": "1993-02-12" }
+{ "partkey": 196, "pid": 1, "shipdate": "1992-03-02" }
+{ "partkey": 196, "pid": 2, "shipdate": "1992-03-04" }
+{ "partkey": 196, "pid": 3, "shipdate": "1992-06-11" }
+{ "partkey": 198, "pid": 1, "shipdate": "1992-04-21" }
+{ "partkey": 198, "pid": 2, "shipdate": "1992-09-12" }
+{ "partkey": 198, "pid": 3, "shipdate": "1992-12-27" }
+{ "partkey": 16, "pid": 1, "shipdate": "1992-09-11" }
+{ "partkey": 16, "pid": 2, "shipdate": "1992-09-25" }
+{ "partkey": 16, "pid": 3, "shipdate": "1992-11-17" }
+{ "partkey": 20, "pid": 1, "shipdate": "1992-06-15" }
+{ "partkey": 20, "pid": 2, "shipdate": "1992-07-29" }
+{ "partkey": 20, "pid": 3, "shipdate": "1992-10-18" }
+{ "partkey": 27, "pid": 1, "shipdate": "1992-07-05" }
+{ "partkey": 27, "pid": 2, "shipdate": "1992-07-14" }
+{ "partkey": 27, "pid": 3, "shipdate": "1992-08-17" }
+{ "partkey": 28, "pid": 1, "shipdate": "1992-03-16" }
+{ "partkey": 28, "pid": 2, "shipdate": "1992-10-13" }
+{ "partkey": 28, "pid": 3, "shipdate": "1992-11-04" }
+{ "partkey": 30, "pid": 1, "shipdate": "1992-04-10" }
+{ "partkey": 30, "pid": 2, "shipdate": "1992-05-18" }
+{ "partkey": 30, "pid": 3, "shipdate": "1992-05-21" }
+{ "partkey": 32, "pid": 1, "shipdate": "1992-09-22" }
+{ "partkey": 32, "pid": 2, "shipdate": "1992-09-25" }
+{ "partkey": 32, "pid": 3, "shipdate": "1992-10-07" }
+{ "partkey": 39, "pid": 1, "shipdate": "1992-05-26" }
+{ "partkey": 39, "pid": 2, "shipdate": "1992-11-12" }
+{ "partkey": 39, "pid": 3, "shipdate": "1992-11-15" }
+{ "partkey": 40, "pid": 1, "shipdate": "1992-02-07" }
+{ "partkey": 40, "pid": 2, "shipdate": "1992-04-28" }
+{ "partkey": 40, "pid": 3, "shipdate": "1992-05-03" }
+{ "partkey": 45, "pid": 1, "shipdate": "1992-07-16" }
+{ "partkey": 45, "pid": 2, "shipdate": "1993-06-24" }
+{ "partkey": 45, "pid": 3, "shipdate": "1993-09-15" }
+{ "partkey": 50, "pid": 1, "shipdate": "1992-04-22" }
+{ "partkey": 50, "pid": 2, "shipdate": "1992-07-31" }
+{ "partkey": 50, "pid": 3, "shipdate": "1992-09-23" }
+{ "partkey": 55, "pid": 1, "shipdate": "1992-01-16" }
+{ "partkey": 55, "pid": 2, "shipdate": "1992-05-11" }
+{ "partkey": 55, "pid": 3, "shipdate": "1992-06-17" }
+{ "partkey": 57, "pid": 1, "shipdate": "1992-01-16" }
+{ "partkey": 57, "pid": 2, "shipdate": "1992-07-06" }
+{ "partkey": 57, "pid": 3, "shipdate": "1992-09-21" }
+{ "partkey": 59, "pid": 1, "shipdate": "1992-02-09" }
+{ "partkey": 59, "pid": 2, "shipdate": "1992-03-17" }
+{ "partkey": 59, "pid": 3, "shipdate": "1992-06-12" }
+{ "partkey": 63, "pid": 1, "shipdate": "1992-02-07" }
+{ "partkey": 63, "pid": 2, "shipdate": "1992-06-15" }
+{ "partkey": 63, "pid": 3, "shipdate": "1993-02-07" }
+{ "partkey": 69, "pid": 1, "shipdate": "1992-05-31" }
+{ "partkey": 69, "pid": 2, "shipdate": "1992-06-05" }
+{ "partkey": 69, "pid": 3, "shipdate": "1992-07-01" }
+{ "partkey": 83, "pid": 1, "shipdate": "1992-06-09" }
+{ "partkey": 83, "pid": 2, "shipdate": "1992-08-04" }
+{ "partkey": 83, "pid": 3, "shipdate": "1992-09-21" }
+{ "partkey": 85, "pid": 1, "shipdate": "1992-02-28" }
+{ "partkey": 85, "pid": 2, "shipdate": "1992-05-28" }
+{ "partkey": 85, "pid": 3, "shipdate": "1992-06-27" }
+{ "partkey": 87, "pid": 1, "shipdate": "1992-09-30" }
+{ "partkey": 87, "pid": 2, "shipdate": "1992-12-02" }
+{ "partkey": 87, "pid": 3, "shipdate": "1993-01-06" }
+{ "partkey": 88, "pid": 1, "shipdate": "1992-04-24" }
+{ "partkey": 88, "pid": 2, "shipdate": "1992-06-26" }
+{ "partkey": 88, "pid": 3, "shipdate": "1992-12-18" }
+{ "partkey": 98, "pid": 1, "shipdate": "1992-10-06" }
+{ "partkey": 98, "pid": 2, "shipdate": "1992-12-09" }
+{ "partkey": 98, "pid": 3, "shipdate": "1993-03-09" }
+{ "partkey": 106, "pid": 1, "shipdate": "1992-07-09" }
+{ "partkey": 106, "pid": 2, "shipdate": "1992-07-31" }
+{ "partkey": 106, "pid": 3, "shipdate": "1992-10-02" }
+{ "partkey": 110, "pid": 1, "shipdate": "1992-09-18" }
+{ "partkey": 110, "pid": 2, "shipdate": "1992-11-01" }
+{ "partkey": 110, "pid": 3, "shipdate": "1993-01-01" }
+{ "partkey": 112, "pid": 1, "shipdate": "1992-09-13" }
+{ "partkey": 112, "pid": 2, "shipdate": "1992-10-09" }
+{ "partkey": 112, "pid": 3, "shipdate": "1993-01-15" }
+{ "partkey": 113, "pid": 1, "shipdate": "1992-06-08" }
+{ "partkey": 113, "pid": 2, "shipdate": "1992-08-13" }
+{ "partkey": 113, "pid": 3, "shipdate": "1992-08-25" }
+{ "partkey": 126, "pid": 1, "shipdate": "1992-07-28" }
+{ "partkey": 126, "pid": 2, "shipdate": "1992-08-28" }
+{ "partkey": 126, "pid": 3, "shipdate": "1992-09-06" }
+{ "partkey": 127, "pid": 1, "shipdate": "1992-06-04" }
+{ "partkey": 127, "pid": 2, "shipdate": "1992-07-02" }
+{ "partkey": 127, "pid": 3, "shipdate": "1994-01-13" }
+{ "partkey": 128, "pid": 1, "shipdate": "1992-03-05" }
+{ "partkey": 128, "pid": 2, "shipdate": "1992-05-02" }
+{ "partkey": 128, "pid": 3, "shipdate": "1992-08-24" }
+{ "partkey": 129, "pid": 1, "shipdate": "1992-03-31" }
+{ "partkey": 129, "pid": 2, "shipdate": "1992-05-28" }
+{ "partkey": 129, "pid": 3, "shipdate": "1992-08-15" }
+{ "partkey": 131, "pid": 1, "shipdate": "1992-02-27" }
+{ "partkey": 131, "pid": 2, "shipdate": "1992-03-03" }
+{ "partkey": 131, "pid": 3, "shipdate": "1992-05-14" }
+{ "partkey": 135, "pid": 1, "shipdate": "1992-05-02" }
+{ "partkey": 135, "pid": 2, "shipdate": "1992-05-11" }
+{ "partkey": 135, "pid": 3, "shipdate": "1992-05-29" }
+{ "partkey": 144, "pid": 1, "shipdate": "1992-07-05" }
+{ "partkey": 144, "pid": 2, "shipdate": "1992-08-25" }
+{ "partkey": 144, "pid": 3, "shipdate": "1992-09-17" }
+{ "partkey": 147, "pid": 1, "shipdate": "1992-06-10" }
+{ "partkey": 147, "pid": 2, "shipdate": "1992-09-04" }
+{ "partkey": 147, "pid": 3, "shipdate": "1992-12-03" }
+{ "partkey": 163, "pid": 1, "shipdate": "1992-02-09" }
+{ "partkey": 163, "pid": 2, "shipdate": "1992-04-27" }
+{ "partkey": 163, "pid": 3, "shipdate": "1992-06-01" }
+{ "partkey": 167, "pid": 1, "shipdate": "1992-06-02" }
+{ "partkey": 167, "pid": 2, "shipdate": "1993-01-31" }
+{ "partkey": 167, "pid": 3, "shipdate": "1993-02-15" }
+{ "partkey": 181, "pid": 1, "shipdate": "1992-07-01" }
+{ "partkey": 181, "pid": 2, "shipdate": "1992-11-04" }
+{ "partkey": 181, "pid": 3, "shipdate": "1992-12-14" }
+{ "partkey": 184, "pid": 1, "shipdate": "1992-04-12" }
+{ "partkey": 184, "pid": 2, "shipdate": "1992-04-12" }
+{ "partkey": 184, "pid": 3, "shipdate": "1992-04-30" }
+{ "partkey": 191, "pid": 1, "shipdate": "1992-07-31" }
+{ "partkey": 191, "pid": 2, "shipdate": "1992-08-29" }
+{ "partkey": 191, "pid": 3, "shipdate": "1992-09-22" }
diff --git a/asterix-app/src/test/resources/runtimets/results/flwor/at06/at06.1.adm b/asterix-app/src/test/resources/runtimets/results/flwor/at06/at06.1.adm
new file mode 100644
index 0000000..6e4dc15
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/results/flwor/at06/at06.1.adm
@@ -0,0 +1,600 @@
+{ "partkey": 1, "pid": 1, "shipdate": "1992-02-15", "orderkey": 5409 }
+{ "partkey": 1, "pid": 2, "shipdate": "1992-03-30", "orderkey": 1154 }
+{ "partkey": 1, "pid": 3, "shipdate": "1992-07-17", "orderkey": 134 }
+{ "partkey": 2, "pid": 1, "shipdate": "1992-06-23", "orderkey": 3650 }
+{ "partkey": 2, "pid": 2, "shipdate": "1992-07-01", "orderkey": 130 }
+{ "partkey": 2, "pid": 3, "shipdate": "1992-07-18", "orderkey": 5893 }
+{ "partkey": 8, "pid": 1, "shipdate": "1992-09-25", "orderkey": 5635 }
+{ "partkey": 8, "pid": 2, "shipdate": "1992-11-15", "orderkey": 1540 }
+{ "partkey": 8, "pid": 3, "shipdate": "1993-02-13", "orderkey": 1222 }
+{ "partkey": 9, "pid": 1, "shipdate": "1992-04-29", "orderkey": 3970 }
+{ "partkey": 9, "pid": 2, "shipdate": "1992-04-30", "orderkey": 1955 }
+{ "partkey": 9, "pid": 3, "shipdate": "1992-06-01", "orderkey": 4199 }
+{ "partkey": 10, "pid": 1, "shipdate": "1992-05-13", "orderkey": 2881 }
+{ "partkey": 10, "pid": 2, "shipdate": "1992-11-25", "orderkey": 5378 }
+{ "partkey": 10, "pid": 3, "shipdate": "1992-12-01", "orderkey": 1796 }
+{ "partkey": 13, "pid": 1, "shipdate": "1992-04-01", "orderkey": 1537 }
+{ "partkey": 13, "pid": 2, "shipdate": "1992-04-26", "orderkey": 322 }
+{ "partkey": 13, "pid": 3, "shipdate": "1992-05-04", "orderkey": 5953 }
+{ "partkey": 18, "pid": 1, "shipdate": "1992-04-12", "orderkey": 1537 }
+{ "partkey": 18, "pid": 2, "shipdate": "1992-04-21", "orderkey": 2880 }
+{ "partkey": 18, "pid": 3, "shipdate": "1992-05-21", "orderkey": 2688 }
+{ "partkey": 19, "pid": 1, "shipdate": "1992-07-19", "orderkey": 2023 }
+{ "partkey": 19, "pid": 2, "shipdate": "1992-10-21", "orderkey": 481 }
+{ "partkey": 19, "pid": 3, "shipdate": "1992-12-22", "orderkey": 164 }
+{ "partkey": 21, "pid": 1, "shipdate": "1992-07-31", "orderkey": 549 }
+{ "partkey": 21, "pid": 2, "shipdate": "1992-09-09", "orderkey": 4581 }
+{ "partkey": 21, "pid": 3, "shipdate": "1993-01-09", "orderkey": 481 }
+{ "partkey": 25, "pid": 1, "shipdate": "1992-02-04", "orderkey": 2688 }
+{ "partkey": 25, "pid": 2, "shipdate": "1992-07-23", "orderkey": 5060 }
+{ "partkey": 25, "pid": 3, "shipdate": "1992-08-01", "orderkey": 868 }
+{ "partkey": 26, "pid": 1, "shipdate": "1992-02-23", "orderkey": 4800 }
+{ "partkey": 26, "pid": 2, "shipdate": "1992-05-09", "orderkey": 801 }
+{ "partkey": 26, "pid": 3, "shipdate": "1993-01-04", "orderkey": 2146 }
+{ "partkey": 37, "pid": 1, "shipdate": "1992-08-30", "orderkey": 1088 }
+{ "partkey": 37, "pid": 2, "shipdate": "1992-10-03", "orderkey": 2500 }
+{ "partkey": 37, "pid": 3, "shipdate": "1993-01-31", "orderkey": 3074 }
+{ "partkey": 42, "pid": 1, "shipdate": "1992-10-23", "orderkey": 2560 }
+{ "partkey": 42, "pid": 2, "shipdate": "1992-11-04", "orderkey": 2566 }
+{ "partkey": 42, "pid": 3, "shipdate": "1992-12-12", "orderkey": 1571 }
+{ "partkey": 43, "pid": 1, "shipdate": "1992-06-18", "orderkey": 4069 }
+{ "partkey": 43, "pid": 2, "shipdate": "1992-06-30", "orderkey": 2052 }
+{ "partkey": 43, "pid": 3, "shipdate": "1992-08-28", "orderkey": 5959 }
+{ "partkey": 46, "pid": 1, "shipdate": "1992-04-28", "orderkey": 4230 }
+{ "partkey": 46, "pid": 2, "shipdate": "1992-05-08", "orderkey": 3043 }
+{ "partkey": 46, "pid": 3, "shipdate": "1992-05-21", "orderkey": 3845 }
+{ "partkey": 48, "pid": 1, "shipdate": "1992-05-10", "orderkey": 2691 }
+{ "partkey": 48, "pid": 2, "shipdate": "1992-06-03", "orderkey": 5473 }
+{ "partkey": 48, "pid": 3, "shipdate": "1992-06-15", "orderkey": 832 }
+{ "partkey": 51, "pid": 1, "shipdate": "1992-03-11", "orderkey": 5860 }
+{ "partkey": 51, "pid": 2, "shipdate": "1992-05-15", "orderkey": 2786 }
+{ "partkey": 51, "pid": 3, "shipdate": "1992-05-17", "orderkey": 644 }
+{ "partkey": 52, "pid": 1, "shipdate": "1992-05-31", "orderkey": 1057 }
+{ "partkey": 52, "pid": 2, "shipdate": "1992-09-03", "orderkey": 4838 }
+{ "partkey": 52, "pid": 3, "shipdate": "1992-09-21", "orderkey": 3907 }
+{ "partkey": 54, "pid": 1, "shipdate": "1992-04-07", "orderkey": 4515 }
+{ "partkey": 54, "pid": 2, "shipdate": "1992-05-01", "orderkey": 3271 }
+{ "partkey": 54, "pid": 3, "shipdate": "1992-06-24", "orderkey": 1701 }
+{ "partkey": 56, "pid": 1, "shipdate": "1992-01-16", "orderkey": 1248 }
+{ "partkey": 56, "pid": 2, "shipdate": "1992-03-02", "orderkey": 3685 }
+{ "partkey": 56, "pid": 3, "shipdate": "1992-06-18", "orderkey": 3205 }
+{ "partkey": 58, "pid": 1, "shipdate": "1992-05-16", "orderkey": 3685 }
+{ "partkey": 58, "pid": 2, "shipdate": "1992-10-30", "orderkey": 4896 }
+{ "partkey": 58, "pid": 3, "shipdate": "1993-04-10", "orderkey": 1412 }
+{ "partkey": 61, "pid": 1, "shipdate": "1993-07-14", "orderkey": 2020 }
+{ "partkey": 61, "pid": 2, "shipdate": "1993-07-15", "orderkey": 5318 }
+{ "partkey": 61, "pid": 3, "shipdate": "1993-09-29", "orderkey": 261 }
+{ "partkey": 65, "pid": 1, "shipdate": "1992-03-02", "orderkey": 4804 }
+{ "partkey": 65, "pid": 2, "shipdate": "1992-04-14", "orderkey": 2848 }
+{ "partkey": 65, "pid": 3, "shipdate": "1992-06-26", "orderkey": 5095 }
+{ "partkey": 68, "pid": 1, "shipdate": "1992-04-13", "orderkey": 3842 }
+{ "partkey": 68, "pid": 2, "shipdate": "1992-06-08", "orderkey": 5121 }
+{ "partkey": 68, "pid": 3, "shipdate": "1992-06-22", "orderkey": 868 }
+{ "partkey": 72, "pid": 1, "shipdate": "1992-09-16", "orderkey": 3265 }
+{ "partkey": 72, "pid": 2, "shipdate": "1992-10-02", "orderkey": 5635 }
+{ "partkey": 72, "pid": 3, "shipdate": "1992-10-17", "orderkey": 3655 }
+{ "partkey": 74, "pid": 1, "shipdate": "1992-03-21", "orderkey": 4162 }
+{ "partkey": 74, "pid": 2, "shipdate": "1992-03-22", "orderkey": 801 }
+{ "partkey": 74, "pid": 3, "shipdate": "1992-10-21", "orderkey": 929 }
+{ "partkey": 78, "pid": 1, "shipdate": "1992-03-04", "orderkey": 2210 }
+{ "partkey": 78, "pid": 2, "shipdate": "1992-04-04", "orderkey": 2022 }
+{ "partkey": 78, "pid": 3, "shipdate": "1992-05-06", "orderkey": 1764 }
+{ "partkey": 84, "pid": 1, "shipdate": "1992-09-08", "orderkey": 1285 }
+{ "partkey": 84, "pid": 2, "shipdate": "1993-05-15", "orderkey": 2597 }
+{ "partkey": 84, "pid": 3, "shipdate": "1993-05-20", "orderkey": 772 }
+{ "partkey": 86, "pid": 1, "shipdate": "1992-05-25", "orderkey": 2240 }
+{ "partkey": 86, "pid": 2, "shipdate": "1992-11-18", "orderkey": 4896 }
+{ "partkey": 86, "pid": 3, "shipdate": "1993-03-01", "orderkey": 4166 }
+{ "partkey": 95, "pid": 1, "shipdate": "1992-02-24", "orderkey": 3271 }
+{ "partkey": 95, "pid": 2, "shipdate": "1992-03-14", "orderkey": 801 }
+{ "partkey": 95, "pid": 3, "shipdate": "1992-11-17", "orderkey": 2176 }
+{ "partkey": 100, "pid": 1, "shipdate": "1992-03-24", "orderkey": 292 }
+{ "partkey": 100, "pid": 2, "shipdate": "1992-03-24", "orderkey": 2022 }
+{ "partkey": 100, "pid": 3, "shipdate": "1992-06-18", "orderkey": 4738 }
+{ "partkey": 103, "pid": 1, "shipdate": "1992-03-28", "orderkey": 4515 }
+{ "partkey": 103, "pid": 2, "shipdate": "1992-05-08", "orderkey": 832 }
+{ "partkey": 103, "pid": 3, "shipdate": "1992-07-11", "orderkey": 4900 }
+{ "partkey": 104, "pid": 1, "shipdate": "1992-03-17", "orderkey": 5409 }
+{ "partkey": 104, "pid": 2, "shipdate": "1992-11-08", "orderkey": 4897 }
+{ "partkey": 104, "pid": 3, "shipdate": "1994-01-22", "orderkey": 5479 }
+{ "partkey": 108, "pid": 1, "shipdate": "1992-07-28", "orderkey": 1826 }
+{ "partkey": 108, "pid": 2, "shipdate": "1992-08-01", "orderkey": 1221 }
+{ "partkey": 108, "pid": 3, "shipdate": "1992-09-07", "orderkey": 2560 }
+{ "partkey": 114, "pid": 1, "shipdate": "1992-11-19", "orderkey": 3014 }
+{ "partkey": 114, "pid": 2, "shipdate": "1992-11-22", "orderkey": 1506 }
+{ "partkey": 114, "pid": 3, "shipdate": "1993-03-22", "orderkey": 710 }
+{ "partkey": 118, "pid": 1, "shipdate": "1992-06-18", "orderkey": 4035 }
+{ "partkey": 118, "pid": 2, "shipdate": "1992-09-27", "orderkey": 1793 }
+{ "partkey": 118, "pid": 3, "shipdate": "1992-10-02", "orderkey": 5408 }
+{ "partkey": 119, "pid": 1, "shipdate": "1992-05-08", "orderkey": 5574 }
+{ "partkey": 119, "pid": 2, "shipdate": "1992-05-27", "orderkey": 5959 }
+{ "partkey": 119, "pid": 3, "shipdate": "1992-09-07", "orderkey": 4294 }
+{ "partkey": 122, "pid": 1, "shipdate": "1992-03-12", "orderkey": 1248 }
+{ "partkey": 122, "pid": 2, "shipdate": "1992-04-09", "orderkey": 2912 }
+{ "partkey": 122, "pid": 3, "shipdate": "1992-06-05", "orderkey": 801 }
+{ "partkey": 123, "pid": 1, "shipdate": "1992-02-01", "orderkey": 3011 }
+{ "partkey": 123, "pid": 2, "shipdate": "1992-06-20", "orderkey": 5095 }
+{ "partkey": 123, "pid": 3, "shipdate": "1992-11-22", "orderkey": 1505 }
+{ "partkey": 130, "pid": 1, "shipdate": "1992-04-03", "orderkey": 4705 }
+{ "partkey": 130, "pid": 2, "shipdate": "1992-05-23", "orderkey": 1856 }
+{ "partkey": 130, "pid": 3, "shipdate": "1992-08-20", "orderkey": 644 }
+{ "partkey": 132, "pid": 1, "shipdate": "1992-04-17", "orderkey": 5607 }
+{ "partkey": 132, "pid": 2, "shipdate": "1992-06-14", "orderkey": 384 }
+{ "partkey": 132, "pid": 3, "shipdate": "1992-07-06", "orderkey": 3172 }
+{ "partkey": 134, "pid": 1, "shipdate": "1992-05-17", "orderkey": 3685 }
+{ "partkey": 134, "pid": 2, "shipdate": "1992-05-20", "orderkey": 644 }
+{ "partkey": 134, "pid": 3, "shipdate": "1992-05-29", "orderkey": 421 }
+{ "partkey": 136, "pid": 1, "shipdate": "1992-05-19", "orderkey": 2786 }
+{ "partkey": 136, "pid": 2, "shipdate": "1992-05-21", "orderkey": 4035 }
+{ "partkey": 136, "pid": 3, "shipdate": "1992-06-07", "orderkey": 4805 }
+{ "partkey": 140, "pid": 1, "shipdate": "1992-03-20", "orderkey": 1537 }
+{ "partkey": 140, "pid": 2, "shipdate": "1992-04-27", "orderkey": 6 }
+{ "partkey": 140, "pid": 3, "shipdate": "1992-08-03", "orderkey": 2881 }
+{ "partkey": 141, "pid": 1, "shipdate": "1992-01-13", "orderkey": 5409 }
+{ "partkey": 141, "pid": 2, "shipdate": "1992-02-01", "orderkey": 3712 }
+{ "partkey": 141, "pid": 3, "shipdate": "1992-06-22", "orderkey": 1344 }
+{ "partkey": 149, "pid": 1, "shipdate": "1992-03-22", "orderkey": 5382 }
+{ "partkey": 149, "pid": 2, "shipdate": "1992-04-29", "orderkey": 2688 }
+{ "partkey": 149, "pid": 3, "shipdate": "1992-05-14", "orderkey": 194 }
+{ "partkey": 158, "pid": 1, "shipdate": "1992-08-01", "orderkey": 1955 }
+{ "partkey": 158, "pid": 2, "shipdate": "1992-08-29", "orderkey": 5254 }
+{ "partkey": 158, "pid": 3, "shipdate": "1992-09-18", "orderkey": 5089 }
+{ "partkey": 159, "pid": 1, "shipdate": "1992-05-07", "orderkey": 5409 }
+{ "partkey": 159, "pid": 2, "shipdate": "1992-06-03", "orderkey": 1955 }
+{ "partkey": 159, "pid": 3, "shipdate": "1992-07-10", "orderkey": 4738 }
+{ "partkey": 170, "pid": 1, "shipdate": "1992-08-07", "orderkey": 1221 }
+{ "partkey": 170, "pid": 2, "shipdate": "1993-03-17", "orderkey": 738 }
+{ "partkey": 170, "pid": 3, "shipdate": "1993-06-19", "orderkey": 3874 }
+{ "partkey": 171, "pid": 1, "shipdate": "1992-11-09", "orderkey": 3361 }
+{ "partkey": 171, "pid": 2, "shipdate": "1994-01-22", "orderkey": 4675 }
+{ "partkey": 171, "pid": 3, "shipdate": "1995-01-02", "orderkey": 5317 }
+{ "partkey": 172, "pid": 1, "shipdate": "1992-09-06", "orderkey": 2247 }
+{ "partkey": 172, "pid": 2, "shipdate": "1993-05-01", "orderkey": 167 }
+{ "partkey": 172, "pid": 3, "shipdate": "1993-06-16", "orderkey": 1600 }
+{ "partkey": 179, "pid": 1, "shipdate": "1992-05-30", "orderkey": 1537 }
+{ "partkey": 179, "pid": 2, "shipdate": "1992-06-02", "orderkey": 384 }
+{ "partkey": 179, "pid": 3, "shipdate": "1992-09-20", "orderkey": 4741 }
+{ "partkey": 183, "pid": 1, "shipdate": "1992-04-24", "orderkey": 4998 }
+{ "partkey": 183, "pid": 2, "shipdate": "1992-10-24", "orderkey": 5408 }
+{ "partkey": 183, "pid": 3, "shipdate": "1993-01-08", "orderkey": 1571 }
+{ "partkey": 185, "pid": 1, "shipdate": "1992-04-30", "orderkey": 3712 }
+{ "partkey": 185, "pid": 2, "shipdate": "1992-06-20", "orderkey": 5574 }
+{ "partkey": 185, "pid": 3, "shipdate": "1992-07-23", "orderkey": 2023 }
+{ "partkey": 187, "pid": 1, "shipdate": "1992-04-01", "orderkey": 4391 }
+{ "partkey": 187, "pid": 2, "shipdate": "1992-05-30", "orderkey": 4738 }
+{ "partkey": 187, "pid": 3, "shipdate": "1992-06-01", "orderkey": 4738 }
+{ "partkey": 188, "pid": 1, "shipdate": "1992-09-15", "orderkey": 1285 }
+{ "partkey": 188, "pid": 2, "shipdate": "1993-04-08", "orderkey": 5381 }
+{ "partkey": 188, "pid": 3, "shipdate": "1993-05-03", "orderkey": 4226 }
+{ "partkey": 190, "pid": 1, "shipdate": "1992-04-14", "orderkey": 1856 }
+{ "partkey": 190, "pid": 2, "shipdate": "1992-07-17", "orderkey": 1344 }
+{ "partkey": 190, "pid": 3, "shipdate": "1992-10-12", "orderkey": 1185 }
+{ "partkey": 195, "pid": 1, "shipdate": "1992-04-10", "orderkey": 2848 }
+{ "partkey": 195, "pid": 2, "shipdate": "1992-05-07", "orderkey": 3744 }
+{ "partkey": 195, "pid": 3, "shipdate": "1992-05-28", "orderkey": 3205 }
+{ "partkey": 197, "pid": 1, "shipdate": "1993-08-22", "orderkey": 2080 }
+{ "partkey": 197, "pid": 2, "shipdate": "1994-02-24", "orderkey": 3138 }
+{ "partkey": 197, "pid": 3, "shipdate": "1994-03-03", "orderkey": 70 }
+{ "partkey": 199, "pid": 1, "shipdate": "1992-03-14", "orderkey": 4230 }
+{ "partkey": 199, "pid": 2, "shipdate": "1992-08-02", "orderkey": 5028 }
+{ "partkey": 199, "pid": 3, "shipdate": "1992-11-20", "orderkey": 3333 }
+{ "partkey": 200, "pid": 1, "shipdate": "1992-04-19", "orderkey": 324 }
+{ "partkey": 200, "pid": 2, "shipdate": "1993-01-06", "orderkey": 1447 }
+{ "partkey": 200, "pid": 3, "shipdate": "1993-10-17", "orderkey": 5764 }
+{ "partkey": 3, "pid": 1, "shipdate": "1992-04-25", "orderkey": 801 }
+{ "partkey": 3, "pid": 2, "shipdate": "1992-05-24", "orderkey": 194 }
+{ "partkey": 3, "pid": 3, "shipdate": "1993-01-03", "orderkey": 3776 }
+{ "partkey": 6, "pid": 1, "shipdate": "1992-04-05", "orderkey": 4483 }
+{ "partkey": 6, "pid": 2, "shipdate": "1992-04-25", "orderkey": 801 }
+{ "partkey": 6, "pid": 3, "shipdate": "1992-04-29", "orderkey": 2689 }
+{ "partkey": 7, "pid": 1, "shipdate": "1992-04-12", "orderkey": 3140 }
+{ "partkey": 7, "pid": 2, "shipdate": "1993-02-11", "orderkey": 3204 }
+{ "partkey": 7, "pid": 3, "shipdate": "1993-06-25", "orderkey": 5794 }
+{ "partkey": 12, "pid": 1, "shipdate": "1992-07-04", "orderkey": 130 }
+{ "partkey": 12, "pid": 2, "shipdate": "1992-07-17", "orderkey": 322 }
+{ "partkey": 12, "pid": 3, "shipdate": "1992-09-02", "orderkey": 2497 }
+{ "partkey": 17, "pid": 1, "shipdate": "1992-07-23", "orderkey": 967 }
+{ "partkey": 17, "pid": 2, "shipdate": "1993-03-01", "orderkey": 931 }
+{ "partkey": 17, "pid": 3, "shipdate": "1993-05-06", "orderkey": 611 }
+{ "partkey": 23, "pid": 1, "shipdate": "1992-04-04", "orderkey": 2786 }
+{ "partkey": 23, "pid": 2, "shipdate": "1992-06-19", "orderkey": 1856 }
+{ "partkey": 23, "pid": 3, "shipdate": "1992-06-29", "orderkey": 1282 }
+{ "partkey": 31, "pid": 1, "shipdate": "1992-07-14", "orderkey": 4705 }
+{ "partkey": 31, "pid": 2, "shipdate": "1992-09-24", "orderkey": 1185 }
+{ "partkey": 31, "pid": 3, "shipdate": "1992-09-29", "orderkey": 5415 }
+{ "partkey": 35, "pid": 1, "shipdate": "1992-03-11", "orderkey": 4230 }
+{ "partkey": 35, "pid": 2, "shipdate": "1992-04-06", "orderkey": 4804 }
+{ "partkey": 35, "pid": 3, "shipdate": "1992-05-26", "orderkey": 2880 }
+{ "partkey": 44, "pid": 1, "shipdate": "1992-02-14", "orderkey": 4292 }
+{ "partkey": 44, "pid": 2, "shipdate": "1992-06-11", "orderkey": 322 }
+{ "partkey": 44, "pid": 3, "shipdate": "1992-11-29", "orderkey": 2147 }
+{ "partkey": 49, "pid": 1, "shipdate": "1992-04-29", "orderkey": 2983 }
+{ "partkey": 49, "pid": 2, "shipdate": "1992-06-14", "orderkey": 2022 }
+{ "partkey": 49, "pid": 3, "shipdate": "1992-08-13", "orderkey": 933 }
+{ "partkey": 66, "pid": 1, "shipdate": "1992-05-07", "orderkey": 194 }
+{ "partkey": 66, "pid": 2, "shipdate": "1992-09-11", "orderkey": 549 }
+{ "partkey": 66, "pid": 3, "shipdate": "1992-10-10", "orderkey": 3015 }
+{ "partkey": 71, "pid": 1, "shipdate": "1992-11-10", "orderkey": 2497 }
+{ "partkey": 71, "pid": 2, "shipdate": "1993-01-10", "orderkey": 2146 }
+{ "partkey": 71, "pid": 3, "shipdate": "1993-02-28", "orderkey": 4611 }
+{ "partkey": 77, "pid": 1, "shipdate": "1992-08-18", "orderkey": 4900 }
+{ "partkey": 77, "pid": 2, "shipdate": "1992-12-23", "orderkey": 2497 }
+{ "partkey": 77, "pid": 3, "shipdate": "1993-06-19", "orderkey": 4166 }
+{ "partkey": 80, "pid": 1, "shipdate": "1992-05-18", "orderkey": 644 }
+{ "partkey": 80, "pid": 2, "shipdate": "1992-09-02", "orderkey": 2500 }
+{ "partkey": 80, "pid": 3, "shipdate": "1993-06-07", "orderkey": 3877 }
+{ "partkey": 81, "pid": 1, "shipdate": "1992-04-11", "orderkey": 2240 }
+{ "partkey": 81, "pid": 2, "shipdate": "1992-06-22", "orderkey": 1221 }
+{ "partkey": 81, "pid": 3, "shipdate": "1992-12-30", "orderkey": 5954 }
+{ "partkey": 89, "pid": 1, "shipdate": "1992-04-18", "orderkey": 2688 }
+{ "partkey": 89, "pid": 2, "shipdate": "1992-04-19", "orderkey": 4705 }
+{ "partkey": 89, "pid": 3, "shipdate": "1992-05-27", "orderkey": 5121 }
+{ "partkey": 90, "pid": 1, "shipdate": "1992-02-25", "orderkey": 4162 }
+{ "partkey": 90, "pid": 2, "shipdate": "1992-06-07", "orderkey": 5474 }
+{ "partkey": 90, "pid": 3, "shipdate": "1992-08-21", "orderkey": 5986 }
+{ "partkey": 91, "pid": 1, "shipdate": "1992-05-22", "orderkey": 3043 }
+{ "partkey": 91, "pid": 2, "shipdate": "1992-06-21", "orderkey": 2691 }
+{ "partkey": 91, "pid": 3, "shipdate": "1992-12-03", "orderkey": 3015 }
+{ "partkey": 93, "pid": 1, "shipdate": "1992-05-28", "orderkey": 2881 }
+{ "partkey": 93, "pid": 2, "shipdate": "1992-06-24", "orderkey": 384 }
+{ "partkey": 93, "pid": 3, "shipdate": "1992-09-11", "orderkey": 3654 }
+{ "partkey": 96, "pid": 1, "shipdate": "1992-06-18", "orderkey": 2052 }
+{ "partkey": 96, "pid": 2, "shipdate": "1992-09-26", "orderkey": 3172 }
+{ "partkey": 96, "pid": 3, "shipdate": "1992-11-25", "orderkey": 1159 }
+{ "partkey": 97, "pid": 1, "shipdate": "1992-01-27", "orderkey": 4800 }
+{ "partkey": 97, "pid": 2, "shipdate": "1992-03-22", "orderkey": 1856 }
+{ "partkey": 97, "pid": 3, "shipdate": "1992-04-21", "orderkey": 4035 }
+{ "partkey": 121, "pid": 1, "shipdate": "1992-04-23", "orderkey": 4903 }
+{ "partkey": 121, "pid": 2, "shipdate": "1992-06-09", "orderkey": 1764 }
+{ "partkey": 121, "pid": 3, "shipdate": "1992-06-23", "orderkey": 2054 }
+{ "partkey": 124, "pid": 1, "shipdate": "1992-06-15", "orderkey": 1088 }
+{ "partkey": 124, "pid": 2, "shipdate": "1992-08-09", "orderkey": 2209 }
+{ "partkey": 124, "pid": 3, "shipdate": "1992-09-13", "orderkey": 1346 }
+{ "partkey": 125, "pid": 1, "shipdate": "1992-03-15", "orderkey": 2848 }
+{ "partkey": 125, "pid": 2, "shipdate": "1992-03-29", "orderkey": 4230 }
+{ "partkey": 125, "pid": 3, "shipdate": "1992-05-24", "orderkey": 4069 }
+{ "partkey": 133, "pid": 1, "shipdate": "1992-06-08", "orderkey": 3140 }
+{ "partkey": 133, "pid": 2, "shipdate": "1992-11-17", "orderkey": 4864 }
+{ "partkey": 133, "pid": 3, "shipdate": "1993-01-18", "orderkey": 1506 }
+{ "partkey": 139, "pid": 1, "shipdate": "1992-04-12", "orderkey": 2880 }
+{ "partkey": 139, "pid": 2, "shipdate": "1992-06-28", "orderkey": 4992 }
+{ "partkey": 139, "pid": 3, "shipdate": "1992-09-12", "orderkey": 4099 }
+{ "partkey": 142, "pid": 1, "shipdate": "1992-10-14", "orderkey": 3556 }
+{ "partkey": 142, "pid": 2, "shipdate": "1993-05-14", "orderkey": 2241 }
+{ "partkey": 142, "pid": 3, "shipdate": "1993-07-11", "orderkey": 5670 }
+{ "partkey": 143, "pid": 1, "shipdate": "1992-04-17", "orderkey": 1154 }
+{ "partkey": 143, "pid": 2, "shipdate": "1992-09-01", "orderkey": 3524 }
+{ "partkey": 143, "pid": 3, "shipdate": "1992-09-05", "orderkey": 1285 }
+{ "partkey": 148, "pid": 1, "shipdate": "1992-01-15", "orderkey": 3712 }
+{ "partkey": 148, "pid": 2, "shipdate": "1992-02-27", "orderkey": 5601 }
+{ "partkey": 148, "pid": 3, "shipdate": "1992-04-22", "orderkey": 1154 }
+{ "partkey": 150, "pid": 1, "shipdate": "1992-05-01", "orderkey": 4805 }
+{ "partkey": 150, "pid": 2, "shipdate": "1992-05-02", "orderkey": 1856 }
+{ "partkey": 150, "pid": 3, "shipdate": "1992-05-25", "orderkey": 1701 }
+{ "partkey": 151, "pid": 1, "shipdate": "1992-01-26", "orderkey": 1248 }
+{ "partkey": 151, "pid": 2, "shipdate": "1992-07-30", "orderkey": 4256 }
+{ "partkey": 151, "pid": 3, "shipdate": "1992-12-19", "orderkey": 3014 }
+{ "partkey": 153, "pid": 1, "shipdate": "1992-02-22", "orderkey": 5382 }
+{ "partkey": 153, "pid": 2, "shipdate": "1992-06-02", "orderkey": 5767 }
+{ "partkey": 153, "pid": 3, "shipdate": "1992-06-29", "orderkey": 322 }
+{ "partkey": 155, "pid": 1, "shipdate": "1992-09-28", "orderkey": 1956 }
+{ "partkey": 155, "pid": 2, "shipdate": "1992-11-25", "orderkey": 5378 }
+{ "partkey": 155, "pid": 3, "shipdate": "1993-05-14", "orderkey": 2305 }
+{ "partkey": 162, "pid": 1, "shipdate": "1992-04-10", "orderkey": 5953 }
+{ "partkey": 162, "pid": 2, "shipdate": "1992-05-03", "orderkey": 2786 }
+{ "partkey": 162, "pid": 3, "shipdate": "1992-06-11", "orderkey": 2691 }
+{ "partkey": 165, "pid": 1, "shipdate": "1992-03-21", "orderkey": 2848 }
+{ "partkey": 165, "pid": 2, "shipdate": "1992-04-01", "orderkey": 4903 }
+{ "partkey": 165, "pid": 3, "shipdate": "1992-04-12", "orderkey": 3168 }
+{ "partkey": 169, "pid": 1, "shipdate": "1992-03-31", "orderkey": 1057 }
+{ "partkey": 169, "pid": 2, "shipdate": "1992-06-05", "orderkey": 5953 }
+{ "partkey": 169, "pid": 3, "shipdate": "1992-06-07", "orderkey": 1894 }
+{ "partkey": 174, "pid": 1, "shipdate": "1992-06-25", "orderkey": 2054 }
+{ "partkey": 174, "pid": 2, "shipdate": "1992-11-02", "orderkey": 1991 }
+{ "partkey": 174, "pid": 3, "shipdate": "1992-12-02", "orderkey": 4261 }
+{ "partkey": 177, "pid": 1, "shipdate": "1992-04-05", "orderkey": 5382 }
+{ "partkey": 177, "pid": 2, "shipdate": "1992-12-25", "orderkey": 1956 }
+{ "partkey": 177, "pid": 3, "shipdate": "1993-01-16", "orderkey": 3680 }
+{ "partkey": 178, "pid": 1, "shipdate": "1992-05-23", "orderkey": 5095 }
+{ "partkey": 178, "pid": 2, "shipdate": "1992-08-18", "orderkey": 2209 }
+{ "partkey": 178, "pid": 3, "shipdate": "1992-11-02", "orderkey": 1504 }
+{ "partkey": 180, "pid": 1, "shipdate": "1992-03-07", "orderkey": 5382 }
+{ "partkey": 180, "pid": 2, "shipdate": "1992-05-23", "orderkey": 4515 }
+{ "partkey": 180, "pid": 3, "shipdate": "1992-06-21", "orderkey": 2881 }
+{ "partkey": 182, "pid": 1, "shipdate": "1992-03-02", "orderkey": 1057 }
+{ "partkey": 182, "pid": 2, "shipdate": "1992-04-02", "orderkey": 384 }
+{ "partkey": 182, "pid": 3, "shipdate": "1992-04-28", "orderkey": 737 }
+{ "partkey": 186, "pid": 1, "shipdate": "1992-07-26", "orderkey": 4069 }
+{ "partkey": 186, "pid": 2, "shipdate": "1992-11-25", "orderkey": 129 }
+{ "partkey": 186, "pid": 3, "shipdate": "1992-11-27", "orderkey": 481 }
+{ "partkey": 189, "pid": 1, "shipdate": "1992-06-16", "orderkey": 4805 }
+{ "partkey": 189, "pid": 2, "shipdate": "1992-06-20", "orderkey": 134 }
+{ "partkey": 189, "pid": 3, "shipdate": "1992-07-20", "orderkey": 1285 }
+{ "partkey": 192, "pid": 1, "shipdate": "1992-02-19", "orderkey": 3685 }
+{ "partkey": 192, "pid": 2, "shipdate": "1992-08-10", "orderkey": 5254 }
+{ "partkey": 192, "pid": 3, "shipdate": "1992-09-02", "orderkey": 2500 }
+{ "partkey": 194, "pid": 1, "shipdate": "1992-02-14", "orderkey": 5409 }
+{ "partkey": 194, "pid": 2, "shipdate": "1992-06-20", "orderkey": 3842 }
+{ "partkey": 194, "pid": 3, "shipdate": "1992-12-15", "orderkey": 5062 }
+{ "partkey": 4, "pid": 1, "shipdate": "1992-05-02", "orderkey": 4292 }
+{ "partkey": 4, "pid": 2, "shipdate": "1992-11-03", "orderkey": 164 }
+{ "partkey": 4, "pid": 3, "shipdate": "1992-11-18", "orderkey": 2019 }
+{ "partkey": 5, "pid": 1, "shipdate": "1992-05-02", "orderkey": 3970 }
+{ "partkey": 5, "pid": 2, "shipdate": "1992-06-14", "orderkey": 5959 }
+{ "partkey": 5, "pid": 3, "shipdate": "1993-01-06", "orderkey": 3680 }
+{ "partkey": 11, "pid": 1, "shipdate": "1992-02-14", "orderkey": 4800 }
+{ "partkey": 11, "pid": 2, "shipdate": "1992-07-20", "orderkey": 5858 }
+{ "partkey": 11, "pid": 3, "shipdate": "1992-08-03", "orderkey": 3237 }
+{ "partkey": 14, "pid": 1, "shipdate": "1992-07-17", "orderkey": 5028 }
+{ "partkey": 14, "pid": 2, "shipdate": "1992-11-30", "orderkey": 3232 }
+{ "partkey": 14, "pid": 3, "shipdate": "1993-05-10", "orderkey": 2279 }
+{ "partkey": 15, "pid": 1, "shipdate": "1992-05-18", "orderkey": 5473 }
+{ "partkey": 15, "pid": 2, "shipdate": "1992-05-24", "orderkey": 2688 }
+{ "partkey": 15, "pid": 3, "shipdate": "1993-04-14", "orderkey": 5472 }
+{ "partkey": 22, "pid": 1, "shipdate": "1992-06-21", "orderkey": 1285 }
+{ "partkey": 22, "pid": 2, "shipdate": "1992-06-25", "orderkey": 3970 }
+{ "partkey": 22, "pid": 3, "shipdate": "1992-11-20", "orderkey": 1447 }
+{ "partkey": 24, "pid": 1, "shipdate": "1992-04-12", "orderkey": 2755 }
+{ "partkey": 24, "pid": 2, "shipdate": "1992-08-06", "orderkey": 4260 }
+{ "partkey": 24, "pid": 3, "shipdate": "1992-08-08", "orderkey": 3845 }
+{ "partkey": 29, "pid": 1, "shipdate": "1992-05-25", "orderkey": 4738 }
+{ "partkey": 29, "pid": 2, "shipdate": "1992-06-01", "orderkey": 3205 }
+{ "partkey": 29, "pid": 3, "shipdate": "1992-07-25", "orderkey": 868 }
+{ "partkey": 33, "pid": 1, "shipdate": "1992-03-22", "orderkey": 5574 }
+{ "partkey": 33, "pid": 2, "shipdate": "1993-02-17", "orderkey": 4163 }
+{ "partkey": 33, "pid": 3, "shipdate": "1993-02-21", "orderkey": 388 }
+{ "partkey": 34, "pid": 1, "shipdate": "1992-07-03", "orderkey": 322 }
+{ "partkey": 34, "pid": 2, "shipdate": "1992-07-20", "orderkey": 3845 }
+{ "partkey": 34, "pid": 3, "shipdate": "1992-11-23", "orderkey": 5089 }
+{ "partkey": 36, "pid": 1, "shipdate": "1992-02-26", "orderkey": 1154 }
+{ "partkey": 36, "pid": 2, "shipdate": "1992-07-03", "orderkey": 134 }
+{ "partkey": 36, "pid": 3, "shipdate": "1993-01-06", "orderkey": 3521 }
+{ "partkey": 38, "pid": 1, "shipdate": "1992-04-06", "orderkey": 5601 }
+{ "partkey": 38, "pid": 2, "shipdate": "1992-04-15", "orderkey": 322 }
+{ "partkey": 38, "pid": 3, "shipdate": "1992-08-27", "orderkey": 2023 }
+{ "partkey": 41, "pid": 1, "shipdate": "1992-12-13", "orderkey": 4896 }
+{ "partkey": 41, "pid": 2, "shipdate": "1993-01-18", "orderkey": 2852 }
+{ "partkey": 41, "pid": 3, "shipdate": "1993-04-13", "orderkey": 3367 }
+{ "partkey": 47, "pid": 1, "shipdate": "1992-03-11", "orderkey": 3685 }
+{ "partkey": 47, "pid": 2, "shipdate": "1993-05-30", "orderkey": 3171 }
+{ "partkey": 47, "pid": 3, "shipdate": "1993-06-06", "orderkey": 2341 }
+{ "partkey": 53, "pid": 1, "shipdate": "1992-01-14", "orderkey": 4800 }
+{ "partkey": 53, "pid": 2, "shipdate": "1992-05-22", "orderkey": 2240 }
+{ "partkey": 53, "pid": 3, "shipdate": "1992-10-04", "orderkey": 2562 }
+{ "partkey": 60, "pid": 1, "shipdate": "1992-02-14", "orderkey": 3168 }
+{ "partkey": 60, "pid": 2, "shipdate": "1992-07-01", "orderkey": 1217 }
+{ "partkey": 60, "pid": 3, "shipdate": "1992-07-15", "orderkey": 3043 }
+{ "partkey": 62, "pid": 1, "shipdate": "1992-02-01", "orderkey": 1248 }
+{ "partkey": 62, "pid": 2, "shipdate": "1992-03-26", "orderkey": 5382 }
+{ "partkey": 62, "pid": 3, "shipdate": "1992-06-19", "orderkey": 4483 }
+{ "partkey": 64, "pid": 1, "shipdate": "1992-02-13", "orderkey": 2755 }
+{ "partkey": 64, "pid": 2, "shipdate": "1992-02-14", "orderkey": 5409 }
+{ "partkey": 64, "pid": 3, "shipdate": "1992-03-10", "orderkey": 3271 }
+{ "partkey": 67, "pid": 1, "shipdate": "1992-05-13", "orderkey": 1764 }
+{ "partkey": 67, "pid": 2, "shipdate": "1993-01-08", "orderkey": 612 }
+{ "partkey": 67, "pid": 3, "shipdate": "1993-11-03", "orderkey": 2631 }
+{ "partkey": 70, "pid": 1, "shipdate": "1992-04-06", "orderkey": 5473 }
+{ "partkey": 70, "pid": 2, "shipdate": "1992-06-11", "orderkey": 4199 }
+{ "partkey": 70, "pid": 3, "shipdate": "1992-06-25", "orderkey": 3650 }
+{ "partkey": 73, "pid": 1, "shipdate": "1992-01-08", "orderkey": 5601 }
+{ "partkey": 73, "pid": 2, "shipdate": "1992-09-16", "orderkey": 4741 }
+{ "partkey": 73, "pid": 3, "shipdate": "1993-07-02", "orderkey": 4743 }
+{ "partkey": 75, "pid": 1, "shipdate": "1992-03-27", "orderkey": 4000 }
+{ "partkey": 75, "pid": 2, "shipdate": "1992-05-12", "orderkey": 4230 }
+{ "partkey": 75, "pid": 3, "shipdate": "1992-09-19", "orderkey": 4103 }
+{ "partkey": 76, "pid": 1, "shipdate": "1992-10-22", "orderkey": 5408 }
+{ "partkey": 76, "pid": 2, "shipdate": "1993-04-19", "orderkey": 2272 }
+{ "partkey": 76, "pid": 3, "shipdate": "1993-06-12", "orderkey": 2245 }
+{ "partkey": 79, "pid": 1, "shipdate": "1992-08-05", "orderkey": 4069 }
+{ "partkey": 79, "pid": 2, "shipdate": "1992-08-10", "orderkey": 5986 }
+{ "partkey": 79, "pid": 3, "shipdate": "1993-04-08", "orderkey": 4418 }
+{ "partkey": 82, "pid": 1, "shipdate": "1992-07-17", "orderkey": 4867 }
+{ "partkey": 82, "pid": 2, "shipdate": "1992-10-18", "orderkey": 1504 }
+{ "partkey": 82, "pid": 3, "shipdate": "1992-12-11", "orderkey": 4261 }
+{ "partkey": 92, "pid": 1, "shipdate": "1992-02-11", "orderkey": 2755 }
+{ "partkey": 92, "pid": 2, "shipdate": "1992-09-30", "orderkey": 487 }
+{ "partkey": 92, "pid": 3, "shipdate": "1993-01-04", "orderkey": 164 }
+{ "partkey": 94, "pid": 1, "shipdate": "1992-05-20", "orderkey": 5574 }
+{ "partkey": 94, "pid": 2, "shipdate": "1992-07-03", "orderkey": 3650 }
+{ "partkey": 94, "pid": 3, "shipdate": "1992-07-26", "orderkey": 3654 }
+{ "partkey": 99, "pid": 1, "shipdate": "1992-05-01", "orderkey": 4998 }
+{ "partkey": 99, "pid": 2, "shipdate": "1993-04-18", "orderkey": 1409 }
+{ "partkey": 99, "pid": 3, "shipdate": "1993-06-09", "orderkey": 2149 }
+{ "partkey": 101, "pid": 1, "shipdate": "1992-08-17", "orderkey": 644 }
+{ "partkey": 101, "pid": 2, "shipdate": "1992-09-27", "orderkey": 2147 }
+{ "partkey": 101, "pid": 3, "shipdate": "1992-12-28", "orderkey": 1571 }
+{ "partkey": 102, "pid": 1, "shipdate": "1992-08-19", "orderkey": 5415 }
+{ "partkey": 102, "pid": 2, "shipdate": "1992-08-21", "orderkey": 5408 }
+{ "partkey": 102, "pid": 3, "shipdate": "1992-10-25", "orderkey": 674 }
+{ "partkey": 105, "pid": 1, "shipdate": "1992-02-14", "orderkey": 5382 }
+{ "partkey": 105, "pid": 2, "shipdate": "1992-06-01", "orderkey": 615 }
+{ "partkey": 105, "pid": 3, "shipdate": "1992-07-14", "orderkey": 4900 }
+{ "partkey": 107, "pid": 1, "shipdate": "1992-05-22", "orderkey": 1088 }
+{ "partkey": 107, "pid": 2, "shipdate": "1992-07-30", "orderkey": 3654 }
+{ "partkey": 107, "pid": 3, "shipdate": "1992-08-05", "orderkey": 3842 }
+{ "partkey": 109, "pid": 1, "shipdate": "1992-06-06", "orderkey": 3970 }
+{ "partkey": 109, "pid": 2, "shipdate": "1992-11-20", "orderkey": 1159 }
+{ "partkey": 109, "pid": 3, "shipdate": "1992-12-23", "orderkey": 164 }
+{ "partkey": 111, "pid": 1, "shipdate": "1992-07-05", "orderkey": 4705 }
+{ "partkey": 111, "pid": 2, "shipdate": "1992-07-28", "orderkey": 5254 }
+{ "partkey": 111, "pid": 3, "shipdate": "1992-08-13", "orderkey": 5121 }
+{ "partkey": 115, "pid": 1, "shipdate": "1992-03-13", "orderkey": 2912 }
+{ "partkey": 115, "pid": 2, "shipdate": "1992-05-29", "orderkey": 3973 }
+{ "partkey": 115, "pid": 3, "shipdate": "1992-06-17", "orderkey": 2880 }
+{ "partkey": 116, "pid": 1, "shipdate": "1992-03-22", "orderkey": 2755 }
+{ "partkey": 116, "pid": 2, "shipdate": "1992-05-17", "orderkey": 1925 }
+{ "partkey": 116, "pid": 3, "shipdate": "1992-06-24", "orderkey": 5603 }
+{ "partkey": 117, "pid": 1, "shipdate": "1992-05-04", "orderkey": 1856 }
+{ "partkey": 117, "pid": 2, "shipdate": "1993-03-18", "orderkey": 4545 }
+{ "partkey": 117, "pid": 3, "shipdate": "1993-07-10", "orderkey": 3494 }
+{ "partkey": 120, "pid": 1, "shipdate": "1992-03-23", "orderkey": 4292 }
+{ "partkey": 120, "pid": 2, "shipdate": "1992-04-28", "orderkey": 1221 }
+{ "partkey": 120, "pid": 3, "shipdate": "1992-06-29", "orderkey": 4903 }
+{ "partkey": 137, "pid": 1, "shipdate": "1992-05-23", "orderkey": 3524 }
+{ "partkey": 137, "pid": 2, "shipdate": "1992-07-05", "orderkey": 1955 }
+{ "partkey": 137, "pid": 3, "shipdate": "1992-09-12", "orderkey": 4099 }
+{ "partkey": 138, "pid": 1, "shipdate": "1992-06-20", "orderkey": 2848 }
+{ "partkey": 138, "pid": 2, "shipdate": "1992-11-21", "orderkey": 1991 }
+{ "partkey": 138, "pid": 3, "shipdate": "1993-02-28", "orderkey": 4487 }
+{ "partkey": 145, "pid": 1, "shipdate": "1992-01-25", "orderkey": 4998 }
+{ "partkey": 145, "pid": 2, "shipdate": "1992-08-16", "orderkey": 134 }
+{ "partkey": 145, "pid": 3, "shipdate": "1992-10-25", "orderkey": 3907 }
+{ "partkey": 146, "pid": 1, "shipdate": "1992-05-21", "orderkey": 194 }
+{ "partkey": 146, "pid": 2, "shipdate": "1993-06-21", "orderkey": 678 }
+{ "partkey": 146, "pid": 3, "shipdate": "1993-08-02", "orderkey": 1286 }
+{ "partkey": 152, "pid": 1, "shipdate": "1992-06-23", "orderkey": 4230 }
+{ "partkey": 152, "pid": 2, "shipdate": "1993-05-19", "orderkey": 896 }
+{ "partkey": 152, "pid": 3, "shipdate": "1993-10-31", "orderkey": 2368 }
+{ "partkey": 154, "pid": 1, "shipdate": "1992-02-18", "orderkey": 292 }
+{ "partkey": 154, "pid": 2, "shipdate": "1992-02-20", "orderkey": 4998 }
+{ "partkey": 154, "pid": 3, "shipdate": "1992-05-14", "orderkey": 4805 }
+{ "partkey": 156, "pid": 1, "shipdate": "1992-04-24", "orderkey": 1248 }
+{ "partkey": 156, "pid": 2, "shipdate": "1992-06-17", "orderkey": 1027 }
+{ "partkey": 156, "pid": 3, "shipdate": "1992-07-01", "orderkey": 2786 }
+{ "partkey": 157, "pid": 1, "shipdate": "1992-07-26", "orderkey": 4069 }
+{ "partkey": 157, "pid": 2, "shipdate": "1992-08-11", "orderkey": 1729 }
+{ "partkey": 157, "pid": 3, "shipdate": "1992-08-25", "orderkey": 4741 }
+{ "partkey": 160, "pid": 1, "shipdate": "1992-05-07", "orderkey": 1282 }
+{ "partkey": 160, "pid": 2, "shipdate": "1992-07-04", "orderkey": 4867 }
+{ "partkey": 160, "pid": 3, "shipdate": "1992-08-18", "orderkey": 1346 }
+{ "partkey": 161, "pid": 1, "shipdate": "1992-03-29", "orderkey": 2240 }
+{ "partkey": 161, "pid": 2, "shipdate": "1992-06-18", "orderkey": 4391 }
+{ "partkey": 161, "pid": 3, "shipdate": "1992-08-28", "orderkey": 5060 }
+{ "partkey": 164, "pid": 1, "shipdate": "1992-03-25", "orderkey": 5601 }
+{ "partkey": 164, "pid": 2, "shipdate": "1992-04-17", "orderkey": 1248 }
+{ "partkey": 164, "pid": 3, "shipdate": "1992-06-06", "orderkey": 801 }
+{ "partkey": 166, "pid": 1, "shipdate": "1992-08-11", "orderkey": 2691 }
+{ "partkey": 166, "pid": 2, "shipdate": "1992-08-14", "orderkey": 5095 }
+{ "partkey": 166, "pid": 3, "shipdate": "1993-04-22", "orderkey": 1703 }
+{ "partkey": 168, "pid": 1, "shipdate": "1992-05-06", "orderkey": 194 }
+{ "partkey": 168, "pid": 2, "shipdate": "1992-07-20", "orderkey": 3654 }
+{ "partkey": 168, "pid": 3, "shipdate": "1992-10-07", "orderkey": 868 }
+{ "partkey": 173, "pid": 1, "shipdate": "1992-06-17", "orderkey": 4738 }
+{ "partkey": 173, "pid": 2, "shipdate": "1992-09-15", "orderkey": 3654 }
+{ "partkey": 173, "pid": 3, "shipdate": "1992-09-30", "orderkey": 1540 }
+{ "partkey": 175, "pid": 1, "shipdate": "1992-10-09", "orderkey": 929 }
+{ "partkey": 175, "pid": 2, "shipdate": "1992-11-09", "orderkey": 4294 }
+{ "partkey": 175, "pid": 3, "shipdate": "1992-11-10", "orderkey": 2497 }
+{ "partkey": 176, "pid": 1, "shipdate": "1992-02-01", "orderkey": 4800 }
+{ "partkey": 176, "pid": 2, "shipdate": "1992-04-28", "orderkey": 1826 }
+{ "partkey": 176, "pid": 3, "shipdate": "1992-09-24", "orderkey": 3907 }
+{ "partkey": 193, "pid": 1, "shipdate": "1992-05-05", "orderkey": 1057 }
+{ "partkey": 193, "pid": 2, "shipdate": "1992-08-21", "orderkey": 5795 }
+{ "partkey": 193, "pid": 3, "shipdate": "1993-02-12", "orderkey": 2244 }
+{ "partkey": 196, "pid": 1, "shipdate": "1992-03-02", "orderkey": 4000 }
+{ "partkey": 196, "pid": 2, "shipdate": "1992-03-04", "orderkey": 1154 }
+{ "partkey": 196, "pid": 3, "shipdate": "1992-06-11", "orderkey": 4230 }
+{ "partkey": 198, "pid": 1, "shipdate": "1992-04-21", "orderkey": 3011 }
+{ "partkey": 198, "pid": 2, "shipdate": "1992-09-12", "orderkey": 4294 }
+{ "partkey": 198, "pid": 3, "shipdate": "1992-12-27", "orderkey": 1345 }
+{ "partkey": 16, "pid": 1, "shipdate": "1992-09-11", "orderkey": 1346 }
+{ "partkey": 16, "pid": 2, "shipdate": "1992-09-25", "orderkey": 5858 }
+{ "partkey": 16, "pid": 3, "shipdate": "1992-11-17", "orderkey": 5415 }
+{ "partkey": 20, "pid": 1, "shipdate": "1992-06-15", "orderkey": 2023 }
+{ "partkey": 20, "pid": 2, "shipdate": "1992-07-29", "orderkey": 5254 }
+{ "partkey": 20, "pid": 3, "shipdate": "1992-10-18", "orderkey": 2625 }
+{ "partkey": 27, "pid": 1, "shipdate": "1992-07-05", "orderkey": 1826 }
+{ "partkey": 27, "pid": 2, "shipdate": "1992-07-14", "orderkey": 4096 }
+{ "partkey": 27, "pid": 3, "shipdate": "1992-08-17", "orderkey": 4294 }
+{ "partkey": 28, "pid": 1, "shipdate": "1992-03-16", "orderkey": 2240 }
+{ "partkey": 28, "pid": 2, "shipdate": "1992-10-13", "orderkey": 5699 }
+{ "partkey": 28, "pid": 3, "shipdate": "1992-11-04", "orderkey": 1506 }
+{ "partkey": 30, "pid": 1, "shipdate": "1992-04-10", "orderkey": 1282 }
+{ "partkey": 30, "pid": 2, "shipdate": "1992-05-18", "orderkey": 1925 }
+{ "partkey": 30, "pid": 3, "shipdate": "1992-05-21", "orderkey": 5986 }
+{ "partkey": 32, "pid": 1, "shipdate": "1992-09-22", "orderkey": 4900 }
+{ "partkey": 32, "pid": 2, "shipdate": "1992-09-25", "orderkey": 5060 }
+{ "partkey": 32, "pid": 3, "shipdate": "1992-10-07", "orderkey": 5603 }
+{ "partkey": 39, "pid": 1, "shipdate": "1992-05-26", "orderkey": 4515 }
+{ "partkey": 39, "pid": 2, "shipdate": "1992-11-12", "orderkey": 612 }
+{ "partkey": 39, "pid": 3, "shipdate": "1992-11-15", "orderkey": 1447 }
+{ "partkey": 40, "pid": 1, "shipdate": "1992-02-07", "orderkey": 4292 }
+{ "partkey": 40, "pid": 2, "shipdate": "1992-04-28", "orderkey": 3139 }
+{ "partkey": 40, "pid": 3, "shipdate": "1992-05-03", "orderkey": 3973 }
+{ "partkey": 45, "pid": 1, "shipdate": "1992-07-16", "orderkey": 4515 }
+{ "partkey": 45, "pid": 2, "shipdate": "1993-06-24", "orderkey": 2720 }
+{ "partkey": 45, "pid": 3, "shipdate": "1993-09-15", "orderkey": 2055 }
+{ "partkey": 50, "pid": 1, "shipdate": "1992-04-22", "orderkey": 2786 }
+{ "partkey": 50, "pid": 2, "shipdate": "1992-07-31", "orderkey": 644 }
+{ "partkey": 50, "pid": 3, "shipdate": "1992-09-23", "orderkey": 2885 }
+{ "partkey": 55, "pid": 1, "shipdate": "1992-01-16", "orderkey": 5382 }
+{ "partkey": 55, "pid": 2, "shipdate": "1992-05-11", "orderkey": 1856 }
+{ "partkey": 55, "pid": 3, "shipdate": "1992-06-17", "orderkey": 2022 }
+{ "partkey": 57, "pid": 1, "shipdate": "1992-01-16", "orderkey": 3271 }
+{ "partkey": 57, "pid": 2, "shipdate": "1992-07-06", "orderkey": 194 }
+{ "partkey": 57, "pid": 3, "shipdate": "1992-09-21", "orderkey": 2146 }
+{ "partkey": 59, "pid": 1, "shipdate": "1992-02-09", "orderkey": 2688 }
+{ "partkey": 59, "pid": 2, "shipdate": "1992-03-17", "orderkey": 4998 }
+{ "partkey": 59, "pid": 3, "shipdate": "1992-06-12", "orderkey": 3845 }
+{ "partkey": 63, "pid": 1, "shipdate": "1992-02-07", "orderkey": 4998 }
+{ "partkey": 63, "pid": 2, "shipdate": "1992-06-15", "orderkey": 3650 }
+{ "partkey": 63, "pid": 3, "shipdate": "1993-02-07", "orderkey": 4545 }
+{ "partkey": 69, "pid": 1, "shipdate": "1992-05-31", "orderkey": 3205 }
+{ "partkey": 69, "pid": 2, "shipdate": "1992-06-05", "orderkey": 5767 }
+{ "partkey": 69, "pid": 3, "shipdate": "1992-07-01", "orderkey": 1221 }
+{ "partkey": 83, "pid": 1, "shipdate": "1992-06-09", "orderkey": 4738 }
+{ "partkey": 83, "pid": 2, "shipdate": "1992-08-04", "orderkey": 5218 }
+{ "partkey": 83, "pid": 3, "shipdate": "1992-09-21", "orderkey": 5220 }
+{ "partkey": 85, "pid": 1, "shipdate": "1992-02-28", "orderkey": 1057 }
+{ "partkey": 85, "pid": 2, "shipdate": "1992-05-28", "orderkey": 5574 }
+{ "partkey": 85, "pid": 3, "shipdate": "1992-06-27", "orderkey": 1221 }
+{ "partkey": 87, "pid": 1, "shipdate": "1992-09-30", "orderkey": 4294 }
+{ "partkey": 87, "pid": 2, "shipdate": "1992-12-02", "orderkey": 1540 }
+{ "partkey": 87, "pid": 3, "shipdate": "1993-01-06", "orderkey": 3556 }
+{ "partkey": 88, "pid": 1, "shipdate": "1992-04-24", "orderkey": 3970 }
+{ "partkey": 88, "pid": 2, "shipdate": "1992-06-26", "orderkey": 3842 }
+{ "partkey": 88, "pid": 3, "shipdate": "1992-12-18", "orderkey": 612 }
+{ "partkey": 98, "pid": 1, "shipdate": "1992-10-06", "orderkey": 5603 }
+{ "partkey": 98, "pid": 2, "shipdate": "1992-12-09", "orderkey": 1159 }
+{ "partkey": 98, "pid": 3, "shipdate": "1993-03-09", "orderkey": 678 }
+{ "partkey": 106, "pid": 1, "shipdate": "1992-07-09", "orderkey": 5095 }
+{ "partkey": 106, "pid": 2, "shipdate": "1992-07-31", "orderkey": 3681 }
+{ "partkey": 106, "pid": 3, "shipdate": "1992-10-02", "orderkey": 967 }
+{ "partkey": 110, "pid": 1, "shipdate": "1992-09-18", "orderkey": 3907 }
+{ "partkey": 110, "pid": 2, "shipdate": "1992-11-01", "orderkey": 4261 }
+{ "partkey": 110, "pid": 3, "shipdate": "1993-01-01", "orderkey": 1991 }
+{ "partkey": 112, "pid": 1, "shipdate": "1992-09-13", "orderkey": 3907 }
+{ "partkey": 112, "pid": 2, "shipdate": "1992-10-09", "orderkey": 2885 }
+{ "partkey": 112, "pid": 3, "shipdate": "1993-01-15", "orderkey": 481 }
+{ "partkey": 113, "pid": 1, "shipdate": "1992-06-08", "orderkey": 1027 }
+{ "partkey": 113, "pid": 2, "shipdate": "1992-08-13", "orderkey": 2054 }
+{ "partkey": 113, "pid": 3, "shipdate": "1992-08-25", "orderkey": 4741 }
+{ "partkey": 126, "pid": 1, "shipdate": "1992-07-28", "orderkey": 1793 }
+{ "partkey": 126, "pid": 2, "shipdate": "1992-08-28", "orderkey": 1027 }
+{ "partkey": 126, "pid": 3, "shipdate": "1992-09-06", "orderkey": 3907 }
+{ "partkey": 127, "pid": 1, "shipdate": "1992-06-04", "orderkey": 2023 }
+{ "partkey": 127, "pid": 2, "shipdate": "1992-07-02", "orderkey": 37 }
+{ "partkey": 127, "pid": 3, "shipdate": "1994-01-13", "orderkey": 1316 }
+{ "partkey": 128, "pid": 1, "shipdate": "1992-03-05", "orderkey": 3168 }
+{ "partkey": 128, "pid": 2, "shipdate": "1992-05-02", "orderkey": 4804 }
+{ "partkey": 128, "pid": 3, "shipdate": "1992-08-24", "orderkey": 4096 }
+{ "partkey": 129, "pid": 1, "shipdate": "1992-03-31", "orderkey": 2022 }
+{ "partkey": 129, "pid": 2, "shipdate": "1992-05-28", "orderkey": 5953 }
+{ "partkey": 129, "pid": 3, "shipdate": "1992-08-15", "orderkey": 130 }
+{ "partkey": 131, "pid": 1, "shipdate": "1992-02-27", "orderkey": 2755 }
+{ "partkey": 131, "pid": 2, "shipdate": "1992-03-03", "orderkey": 4292 }
+{ "partkey": 131, "pid": 3, "shipdate": "1992-05-14", "orderkey": 2627 }
+{ "partkey": 135, "pid": 1, "shipdate": "1992-05-02", "orderkey": 1826 }
+{ "partkey": 135, "pid": 2, "shipdate": "1992-05-11", "orderkey": 1925 }
+{ "partkey": 135, "pid": 3, "shipdate": "1992-05-29", "orderkey": 2052 }
+{ "partkey": 144, "pid": 1, "shipdate": "1992-07-05", "orderkey": 4992 }
+{ "partkey": 144, "pid": 2, "shipdate": "1992-08-25", "orderkey": 5415 }
+{ "partkey": 144, "pid": 3, "shipdate": "1992-09-17", "orderkey": 4996 }
+{ "partkey": 147, "pid": 1, "shipdate": "1992-06-10", "orderkey": 5959 }
+{ "partkey": 147, "pid": 2, "shipdate": "1992-09-04", "orderkey": 4992 }
+{ "partkey": 147, "pid": 3, "shipdate": "1992-12-03", "orderkey": 614 }
+{ "partkey": 163, "pid": 1, "shipdate": "1992-02-09", "orderkey": 2983 }
+{ "partkey": 163, "pid": 2, "shipdate": "1992-04-27", "orderkey": 4292 }
+{ "partkey": 163, "pid": 3, "shipdate": "1992-06-01", "orderkey": 4992 }
+{ "partkey": 167, "pid": 1, "shipdate": "1992-06-02", "orderkey": 5767 }
+{ "partkey": 167, "pid": 2, "shipdate": "1993-01-31", "orderkey": 1447 }
+{ "partkey": 167, "pid": 3, "shipdate": "1993-02-15", "orderkey": 1857 }
+{ "partkey": 181, "pid": 1, "shipdate": "1992-07-01", "orderkey": 1088 }
+{ "partkey": 181, "pid": 2, "shipdate": "1992-11-04", "orderkey": 2209 }
+{ "partkey": 181, "pid": 3, "shipdate": "1992-12-14", "orderkey": 3232 }
+{ "partkey": 184, "pid": 1, "shipdate": "1992-04-12", "orderkey": 322 }
+{ "partkey": 184, "pid": 2, "shipdate": "1992-04-12", "orderkey": 1925 }
+{ "partkey": 184, "pid": 3, "shipdate": "1992-04-30", "orderkey": 194 }
+{ "partkey": 191, "pid": 1, "shipdate": "1992-07-31", "orderkey": 5767 }
+{ "partkey": 191, "pid": 2, "shipdate": "1992-08-29", "orderkey": 3361 }
+{ "partkey": 191, "pid": 3, "shipdate": "1992-09-22", "orderkey": 1506 }
diff --git a/asterix-app/src/test/resources/runtimets/results/leftouterjoin/query_issue658/query_issue658.1.adm b/asterix-app/src/test/resources/runtimets/results/leftouterjoin/query_issue658/query_issue658.1.adm
new file mode 100644
index 0000000..62c427a
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/results/leftouterjoin/query_issue658/query_issue658.1.adm
@@ -0,0 +1,100 @@
+{ "aid": 1, "bids": [  ] }
+{ "aid": 2, "bids": [  ] }
+{ "aid": 3, "bids": [  ] }
+{ "aid": 4, "bids": [  ] }
+{ "aid": 5, "bids": [ 98 ] }
+{ "aid": 6, "bids": [  ] }
+{ "aid": 7, "bids": [  ] }
+{ "aid": 8, "bids": [  ] }
+{ "aid": 9, "bids": [  ] }
+{ "aid": 10, "bids": [  ] }
+{ "aid": 11, "bids": [  ] }
+{ "aid": 12, "bids": [  ] }
+{ "aid": 13, "bids": [  ] }
+{ "aid": 14, "bids": [  ] }
+{ "aid": 15, "bids": [  ] }
+{ "aid": 16, "bids": [  ] }
+{ "aid": 17, "bids": [  ] }
+{ "aid": 18, "bids": [  ] }
+{ "aid": 19, "bids": [  ] }
+{ "aid": 20, "bids": [  ] }
+{ "aid": 21, "bids": [  ] }
+{ "aid": 22, "bids": [  ] }
+{ "aid": 23, "bids": [  ] }
+{ "aid": 24, "bids": [  ] }
+{ "aid": 25, "bids": [  ] }
+{ "aid": 26, "bids": [  ] }
+{ "aid": 27, "bids": [  ] }
+{ "aid": 28, "bids": [  ] }
+{ "aid": 29, "bids": [  ] }
+{ "aid": 30, "bids": [  ] }
+{ "aid": 31, "bids": [  ] }
+{ "aid": 32, "bids": [  ] }
+{ "aid": 33, "bids": [  ] }
+{ "aid": 34, "bids": [ 57 ] }
+{ "aid": 35, "bids": [  ] }
+{ "aid": 36, "bids": [  ] }
+{ "aid": 37, "bids": [  ] }
+{ "aid": 38, "bids": [  ] }
+{ "aid": 39, "bids": [  ] }
+{ "aid": 40, "bids": [  ] }
+{ "aid": 41, "bids": [  ] }
+{ "aid": 42, "bids": [  ] }
+{ "aid": 43, "bids": [  ] }
+{ "aid": 44, "bids": [  ] }
+{ "aid": 45, "bids": [  ] }
+{ "aid": 46, "bids": [  ] }
+{ "aid": 47, "bids": [  ] }
+{ "aid": 48, "bids": [  ] }
+{ "aid": 49, "bids": [  ] }
+{ "aid": 50, "bids": [  ] }
+{ "aid": 51, "bids": [  ] }
+{ "aid": 52, "bids": [  ] }
+{ "aid": 53, "bids": [  ] }
+{ "aid": 54, "bids": [ 91 ] }
+{ "aid": 55, "bids": [  ] }
+{ "aid": 56, "bids": [  ] }
+{ "aid": 57, "bids": [  ] }
+{ "aid": 58, "bids": [  ] }
+{ "aid": 59, "bids": [  ] }
+{ "aid": 60, "bids": [  ] }
+{ "aid": 61, "bids": [  ] }
+{ "aid": 62, "bids": [  ] }
+{ "aid": 63, "bids": [  ] }
+{ "aid": 64, "bids": [  ] }
+{ "aid": 65, "bids": [  ] }
+{ "aid": 66, "bids": [  ] }
+{ "aid": 67, "bids": [  ] }
+{ "aid": 68, "bids": [ 57 ] }
+{ "aid": 69, "bids": [ 57 ] }
+{ "aid": 70, "bids": [  ] }
+{ "aid": 71, "bids": [  ] }
+{ "aid": 72, "bids": [  ] }
+{ "aid": 73, "bids": [  ] }
+{ "aid": 74, "bids": [  ] }
+{ "aid": 75, "bids": [  ] }
+{ "aid": 76, "bids": [  ] }
+{ "aid": 77, "bids": [  ] }
+{ "aid": 78, "bids": [  ] }
+{ "aid": 79, "bids": [  ] }
+{ "aid": 80, "bids": [  ] }
+{ "aid": 81, "bids": [  ] }
+{ "aid": 82, "bids": [  ] }
+{ "aid": 83, "bids": [  ] }
+{ "aid": 84, "bids": [  ] }
+{ "aid": 85, "bids": [  ] }
+{ "aid": 86, "bids": [  ] }
+{ "aid": 87, "bids": [  ] }
+{ "aid": 88, "bids": [  ] }
+{ "aid": 89, "bids": [  ] }
+{ "aid": 90, "bids": [  ] }
+{ "aid": 91, "bids": [  ] }
+{ "aid": 92, "bids": [  ] }
+{ "aid": 93, "bids": [  ] }
+{ "aid": 94, "bids": [  ] }
+{ "aid": 95, "bids": [  ] }
+{ "aid": 96, "bids": [  ] }
+{ "aid": 97, "bids": [  ] }
+{ "aid": 98, "bids": [  ] }
+{ "aid": 99, "bids": [  ] }
+{ "aid": 100, "bids": [  ] }
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/results/load/issue610_adm_token_end_collection/issue610_adm_token_end_collection.1.adm b/asterix-app/src/test/resources/runtimets/results/load/issue610_adm_token_end_collection/issue610_adm_token_end_collection.1.adm
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/results/load/issue610_adm_token_end_collection/issue610_adm_token_end_collection.1.adm
diff --git a/asterix-app/src/test/resources/runtimets/results/load/issue610_adm_token_end_collection/issue610_adm_token_end_collection.2.adm b/asterix-app/src/test/resources/runtimets/results/load/issue610_adm_token_end_collection/issue610_adm_token_end_collection.2.adm
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/results/load/issue610_adm_token_end_collection/issue610_adm_token_end_collection.2.adm
diff --git a/asterix-app/src/test/resources/runtimets/results/open-closed/query-issue592/query-issue592.1.adm b/asterix-app/src/test/resources/runtimets/results/open-closed/query-issue592/query-issue592.1.adm
new file mode 100644
index 0000000..cd05949
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/results/open-closed/query-issue592/query-issue592.1.adm
@@ -0,0 +1 @@
+{ "id": 1, "bars": [ { "baz": 1 }, { "baz": 1 } ] }
diff --git a/asterix-app/src/test/resources/runtimets/results/open-closed/query-issue625/query-issue625.1.adm b/asterix-app/src/test/resources/runtimets/results/open-closed/query-issue625/query-issue625.1.adm
new file mode 100644
index 0000000..a7adaa3
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/results/open-closed/query-issue625/query-issue625.1.adm
@@ -0,0 +1 @@
+{ "id": 1, "numbers": [ 1, 2, 3 ] }
diff --git a/asterix-app/src/test/resources/runtimets/results/types/type_promotion_0/type_promotion_0.1.adm b/asterix-app/src/test/resources/runtimets/results/types/type_promotion_0/type_promotion_0.1.adm
new file mode 100644
index 0000000..3c356ed
--- /dev/null
+++ b/asterix-app/src/test/resources/runtimets/results/types/type_promotion_0/type_promotion_0.1.adm
@@ -0,0 +1,3 @@
+{ "myint64": 11i64, "myoptint64": 3i64, "myint32": 2, "myoptint32": 3, "myint16": 9i16, "myoptint16": 10i16, "mydouble": 2.0d, "myoptdouble": 32.0d, "myfloat": 9.0f, "myoptfloat": null }
+{ "myint64": 12i64, "myoptint64": null, "myint32": 2, "myoptint32": null, "myint16": 9i16, "myoptint16": null, "mydouble": 2.119999885559082d, "myoptdouble": null, "myfloat": 9.0f, "myoptfloat": null }
+{ "myint64": 13i64, "myoptint64": 13i64, "myint32": 2, "myoptint32": 3, "myint16": 9i16, "myoptint16": 10i16, "mydouble": 2.119999885559082d, "myoptdouble": 32.0d, "myfloat": 9.0f, "myoptfloat": 328.0f }
\ No newline at end of file
diff --git a/asterix-app/src/test/resources/runtimets/testsuite.xml b/asterix-app/src/test/resources/runtimets/testsuite.xml
index 62e5adb..a256fb5 100644
--- a/asterix-app/src/test/resources/runtimets/testsuite.xml
+++ b/asterix-app/src/test/resources/runtimets/testsuite.xml
@@ -44,6 +44,11 @@
         <output-dir compare="Text">at05</output-dir>
       </compilation-unit>
     </test-case>
+    <test-case FilePath="flwor">
+      <compilation-unit name="at06">
+        <output-dir compare="Text">at06</output-dir>
+      </compilation-unit>
+    </test-case>
   </test-group>
   <test-group name="aggregate">
     <test-case FilePath="aggregate">
@@ -2897,6 +2902,16 @@
         <expected-error>edu.uci.ics.asterix.common.exceptions.AsterixException</expected-error>
       </compilation-unit>
     </test-case>
+    <test-case FilePath="open-closed">
+      <compilation-unit name="query-issue592">
+        <output-dir compare="Text">query-issue592</output-dir>
+      </compilation-unit>
+    </test-case>
+    <test-case FilePath="open-closed">
+      <compilation-unit name="query-issue625">
+        <output-dir compare="Text">query-issue625</output-dir>
+      </compilation-unit>
+    </test-case>
   </test-group>
   <test-group name="quantifiers">
     <test-case FilePath="quantifiers">
@@ -4336,6 +4351,12 @@
         <output-dir compare="Text">issue289_query</output-dir>
       </compilation-unit>
     </test-case>
+    <test-case FilePath="load">
+      <compilation-unit name="issue650_query">
+        <output-dir compare="Text">none</output-dir>
+        <expected-error>edu.uci.ics.asterix.common.exceptions.AsterixException</expected-error> 
+      </compilation-unit>
+    </test-case>
      <test-case FilePath="user-defined-functions">
       <compilation-unit name="query-issue244">
         <output-dir compare="Text">query-issue244</output-dir>
@@ -4347,6 +4368,11 @@
         <expected-error>edu.uci.ics.hyracks.api.exceptions.HyracksException</expected-error> 
       </compilation-unit>
     </test-case>
+    <test-case FilePath="load">
+      <compilation-unit name="issue610_adm_token_end_collection">
+        <output-dir compare="Text">issue610_adm_token_end_collection</output-dir>
+      </compilation-unit>
+    </test-case>
   </test-group>
   <test-group name="hints">
     <test-case FilePath="hints">
@@ -4515,6 +4541,11 @@
   </test-group>
   <test-group name="leftouterjoin">
     <test-case FilePath="leftouterjoin">
+      <compilation-unit name="query_issue658">
+        <output-dir compare="Text">query_issue658</output-dir>
+      </compilation-unit>
+    </test-case>
+    <test-case FilePath="leftouterjoin">
       <compilation-unit name="query_issue285">
         <output-dir compare="Text">query_issue285</output-dir>
       </compilation-unit>
@@ -4550,5 +4581,10 @@
         <output-dir compare="Text">record01</output-dir>
       </compilation-unit>
     </test-case>
+    <test-case FilePath="types">
+      <compilation-unit name="type_promotion_0">
+        <output-dir compare="Text">type_promotion_0</output-dir>
+      </compilation-unit>
+    </test-case>
   </test-group>
 </test-suite>
diff --git a/asterix-common/src/main/java/edu/uci/ics/asterix/common/ioopcallbacks/AbstractLSMIOOperationCallback.java b/asterix-common/src/main/java/edu/uci/ics/asterix/common/ioopcallbacks/AbstractLSMIOOperationCallback.java
index 684068b..d22280e 100644
--- a/asterix-common/src/main/java/edu/uci/ics/asterix/common/ioopcallbacks/AbstractLSMIOOperationCallback.java
+++ b/asterix-common/src/main/java/edu/uci/ics/asterix/common/ioopcallbacks/AbstractLSMIOOperationCallback.java
@@ -77,7 +77,7 @@
             metadataFrame.setPage(metadataPage);
             metadataFrame.setLSN(componentLSN);
         } finally {
-            metadataPage.releaseWriteLatch();
+            metadataPage.releaseWriteLatch(true);
             bufferCache.unpin(metadataPage);
         }
     }
diff --git a/asterix-common/src/test/java/edu/uci/ics/asterix/test/aql/TestsUtils.java b/asterix-common/src/test/java/edu/uci/ics/asterix/test/aql/TestsUtils.java
index 55c9d23..3fec2c8 100644
--- a/asterix-common/src/test/java/edu/uci/ics/asterix/test/aql/TestsUtils.java
+++ b/asterix-common/src/test/java/edu/uci/ics/asterix/test/aql/TestsUtils.java
@@ -253,7 +253,7 @@
             GlobalConfig.ASTERIX_LOGGER.log(Level.SEVERE, "Method failed: " + method.getStatusLine());
             String[] errors = handleError(method);
             GlobalConfig.ASTERIX_LOGGER.log(Level.SEVERE, errors[2]);
-            throw new Exception("DML operation failed: " + errors[0]);
+            throw new Exception("DDL operation failed: " + errors[0] + "\nSUMMARY: " + errors[1] + "\nSTACKTRACE: " + errors[2]);
         }
     }
 
@@ -285,7 +285,7 @@
             GlobalConfig.ASTERIX_LOGGER.log(Level.SEVERE, "Method failed: " + method.getStatusLine());
             String[] errors = handleError(method);
             GlobalConfig.ASTERIX_LOGGER.log(Level.SEVERE, errors[2]);
-            throw new Exception("DDL operation failed: " + errors[0]);
+            throw new Exception("DDL operation failed: " + errors[0] + "\nSUMMARY: " + errors[1] + "\nSTACKTRACE: " + errors[2]);
         }
     }
 
@@ -338,7 +338,7 @@
         StringWriter writerIn = new StringWriter();
         IOUtils.copy(bisIn, writerIn, "UTF-8");
         s.append(writerIn.toString());
-        
+
         BufferedInputStream bisErr = new BufferedInputStream(p.getErrorStream());
         StringWriter writerErr = new StringWriter();
         IOUtils.copy(bisErr, writerErr, "UTF-8");
@@ -422,10 +422,30 @@
                             break;
                         case "txnqar": //qar represents query after recovery
                             try {
-                                InputStream resultStream = executeQuery(statement);
+                                ////////////// <begin of temporary fix> ////////////////////////////
+                                //TODO
+                                //Temporary fix in order not to block the build test(mvn verify)
+                                //A proper fix should not have the while loop here.
+                                int maxRetryCount = 12;
+                                int tryCount = 0;
+                                InputStream resultStream = null;
+                                long sleepTime = 5;
+                                
+                                do {
+                                    //wait until NC starts
+                                    sleepTime *= 2;
+                                    Thread.sleep(sleepTime);
+                                    if (++tryCount > maxRetryCount) {
+                                        LOGGER.info("Metadata node is not running - this test will fail.");
+                                        break;
+                                    }
+                                    resultStream = executeQuery(statement);
+                                } while (resultStream.toString().contains("Connection refused to host"));
+                                ////////////// <end of temporary fix> //////////////////////////////
+
                                 qarFile = new File(actualPath + File.separator
                                         + testCaseCtx.getTestCase().getFilePath().replace(File.separator, "_") + "_"
-                                        + cUnit.getName() + "_qbc.adm");
+                                        + cUnit.getName() + "_qar.adm");
                                 qarFile.getParentFile().mkdirs();
                                 TestsUtils.writeResultsToFile(qarFile, resultStream);
                                 TestsUtils.runScriptAndCompareWithResult(testFile, new PrintWriter(System.err),
@@ -449,7 +469,7 @@
                                         pb,
                                         getScriptPath(testFile.getAbsolutePath(), pb.environment().get("SCRIPT_HOME"),
                                                 statement.trim()));
-                                if(output.contains("ERROR")) {
+                                if (output.contains("ERROR")) {
                                     throw new Exception(output);
                                 }
                             } catch (Exception e) {
diff --git a/asterix-external-data/src/main/java/edu/uci/ics/asterix/external/dataset/adapter/FileSystemBasedAdapter.java b/asterix-external-data/src/main/java/edu/uci/ics/asterix/external/dataset/adapter/FileSystemBasedAdapter.java
index 33ee11f..753f7d1 100644
--- a/asterix-external-data/src/main/java/edu/uci/ics/asterix/external/dataset/adapter/FileSystemBasedAdapter.java
+++ b/asterix-external-data/src/main/java/edu/uci/ics/asterix/external/dataset/adapter/FileSystemBasedAdapter.java
@@ -16,7 +16,6 @@
 
 import java.io.IOException;
 import java.io.InputStream;
-import java.util.List;
 import java.util.Map;
 import java.util.logging.Level;
 import java.util.logging.Logger;
@@ -29,6 +28,7 @@
 import edu.uci.ics.asterix.om.types.ATypeTag;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.IAType;
+import edu.uci.ics.asterix.om.util.NonTaggedFormatUtil;
 import edu.uci.ics.asterix.runtime.operators.file.AdmSchemafullRecordParserFactory;
 import edu.uci.ics.asterix.runtime.operators.file.NtDelimitedDataTupleParserFactory;
 import edu.uci.ics.hyracks.algebricks.common.constraints.AlgebricksPartitionConstraint;
@@ -108,11 +108,11 @@
         for (int i = 0; i < n; i++) {
             ATypeTag tag = null;
             if (recordType.getFieldTypes()[i].getTypeTag() == ATypeTag.UNION) {
-                List<IAType> unionTypes = ((AUnionType) recordType.getFieldTypes()[i]).getUnionList();
-                if (unionTypes.size() != 2 && unionTypes.get(0).getTypeTag() != ATypeTag.NULL) {
+                if (!NonTaggedFormatUtil.isOptionalField(((AUnionType) recordType.getFieldTypes()[i]))) {
                     throw new NotImplementedException("Non-optional UNION type is not supported.");
                 }
-                tag = unionTypes.get(1).getTypeTag();
+                tag = ((AUnionType) recordType.getFieldTypes()[i]).getUnionList()
+                        .get(NonTaggedFormatUtil.OPTIONAL_TYPE_INDEX_IN_UNION_LIST).getTypeTag();
             } else {
                 tag = recordType.getFieldTypes()[i].getTypeTag();
             }
diff --git a/asterix-metadata/src/main/java/edu/uci/ics/asterix/metadata/MetadataNode.java b/asterix-metadata/src/main/java/edu/uci/ics/asterix/metadata/MetadataNode.java
index a3f736e..b344f69 100644
--- a/asterix-metadata/src/main/java/edu/uci/ics/asterix/metadata/MetadataNode.java
+++ b/asterix-metadata/src/main/java/edu/uci/ics/asterix/metadata/MetadataNode.java
@@ -878,7 +878,7 @@
             indexLifecycleManager.open(resourceID);
             IIndexAccessor indexAccessor = indexInstance.createAccessor(NoOpOperationCallback.INSTANCE,
                     NoOpOperationCallback.INSTANCE);
-            ITreeIndexCursor rangeCursor = (ITreeIndexCursor) indexAccessor.createSearchCursor();
+            ITreeIndexCursor rangeCursor = (ITreeIndexCursor) indexAccessor.createSearchCursor(false);
 
             RangePredicate rangePred = null;
             rangePred = new RangePredicate(null, null, true, true, null, null);
@@ -901,7 +901,7 @@
             indexLifecycleManager.open(resourceID);
             indexAccessor = indexInstance
                     .createAccessor(NoOpOperationCallback.INSTANCE, NoOpOperationCallback.INSTANCE);
-            rangeCursor = (ITreeIndexCursor) indexAccessor.createSearchCursor();
+            rangeCursor = (ITreeIndexCursor) indexAccessor.createSearchCursor(false);
 
             rangePred = null;
             rangePred = new RangePredicate(null, null, true, true, null, null);
@@ -924,7 +924,7 @@
             indexLifecycleManager.open(resourceID);
             indexAccessor = indexInstance
                     .createAccessor(NoOpOperationCallback.INSTANCE, NoOpOperationCallback.INSTANCE);
-            rangeCursor = (ITreeIndexCursor) indexAccessor.createSearchCursor();
+            rangeCursor = (ITreeIndexCursor) indexAccessor.createSearchCursor(false);
 
             rangePred = null;
             rangePred = new RangePredicate(null, null, true, true, null, null);
@@ -955,7 +955,7 @@
         indexLifecycleManager.open(resourceID);
         IIndexAccessor indexAccessor = indexInstance.createAccessor(NoOpOperationCallback.INSTANCE,
                 NoOpOperationCallback.INSTANCE);
-        ITreeIndexCursor rangeCursor = (ITreeIndexCursor) indexAccessor.createSearchCursor();
+        ITreeIndexCursor rangeCursor = (ITreeIndexCursor) indexAccessor.createSearchCursor(false);
 
         IBinaryComparator[] searchCmps = null;
         MultiComparator searchCmp = null;
@@ -993,7 +993,7 @@
             indexLifecycleManager.open(resourceID);
             IIndexAccessor indexAccessor = indexInstance.createAccessor(NoOpOperationCallback.INSTANCE,
                     NoOpOperationCallback.INSTANCE);
-            IIndexCursor rangeCursor = indexAccessor.createSearchCursor();
+            IIndexCursor rangeCursor = indexAccessor.createSearchCursor(false);
 
             DatasetTupleTranslator tupleReaderWriter = new DatasetTupleTranslator(false);
             IValueExtractor<Dataset> valueExtractor = new MetadataEntityValueExtractor<Dataset>(tupleReaderWriter);
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/pointables/cast/ACastVisitor.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/pointables/cast/ACastVisitor.java
index 4e939ce..a711eb9 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/pointables/cast/ACastVisitor.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/pointables/cast/ACastVisitor.java
@@ -15,6 +15,7 @@
 
 package edu.uci.ics.asterix.om.pointables.cast;
 
+import java.io.IOException;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -28,8 +29,12 @@
 import edu.uci.ics.asterix.om.types.ARecordType;
 import edu.uci.ics.asterix.om.types.ATypeTag;
 import edu.uci.ics.asterix.om.types.AbstractCollectionType;
+import edu.uci.ics.asterix.om.types.EnumDeserializer;
 import edu.uci.ics.asterix.om.types.IAType;
+import edu.uci.ics.asterix.om.types.hierachy.ATypeHierarchy;
+import edu.uci.ics.asterix.om.types.hierachy.ITypePromoteComputer;
 import edu.uci.ics.hyracks.algebricks.common.utils.Triple;
+import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage;
 
 /**
  * This class is a IVisitablePointableVisitor implementation which recursively
@@ -86,10 +91,48 @@
     }
 
     @Override
-    public Void visit(AFlatValuePointable accessor, Triple<IVisitablePointable, IAType, Boolean> arg) {
+    public Void visit(AFlatValuePointable accessor, Triple<IVisitablePointable, IAType, Boolean> arg)
+            throws AsterixException {
+        if (arg.second == null) {
+            // for open type case
+            arg.first.set(accessor);
+            return null;
+        }
         // set the pointer for result
-        arg.first.set(accessor);
+        ATypeTag reqTypeTag = ((IAType) (arg.second)).getTypeTag();
+        ATypeTag inputTypeTag = EnumDeserializer.ATYPETAGDESERIALIZER.deserialize(accessor.getByteArray()[accessor
+                .getStartOffset()]);
+        if (!needPromote(inputTypeTag, reqTypeTag)) {
+            arg.first.set(accessor);
+        } else {
+            ArrayBackedValueStorage castBuffer = new ArrayBackedValueStorage();
+            ITypePromoteComputer promoteComputer = ATypeHierarchy.getTypePromoteComputer(inputTypeTag, reqTypeTag);
+            if (promoteComputer != null) {
+
+                try {
+                    // do the promotion; note that the type tag field should be skipped
+                    promoteComputer.promote(accessor.getByteArray(), accessor.getStartOffset() + 1,
+                            accessor.getLength() - 1, castBuffer);
+                    arg.first.set(castBuffer);
+                } catch (IOException e) {
+                    throw new AsterixException(e);
+                }
+            } else {
+                throw new AsterixException("Type mismatch: cannot cast type " + inputTypeTag + " to " + reqTypeTag);
+            }
+        }
+
         return null;
     }
 
+    private boolean needPromote(ATypeTag tag0, ATypeTag tag1) {
+        if (tag0 == tag1) {
+            return false;
+        }
+        if (tag0 == ATypeTag.NULL) {
+            return false;
+        }
+        return true;
+    }
+
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/pointables/cast/ARecordCaster.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/pointables/cast/ARecordCaster.java
index 507b845..e7e0ef2 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/pointables/cast/ARecordCaster.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/pointables/cast/ARecordCaster.java
@@ -36,6 +36,7 @@
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.EnumDeserializer;
 import edu.uci.ics.asterix.om.types.IAType;
+import edu.uci.ics.asterix.om.types.hierachy.ATypeHierarchy;
 import edu.uci.ics.asterix.om.util.NonTaggedFormatUtil;
 import edu.uci.ics.asterix.om.util.ResettableByteArrayOutputStream;
 import edu.uci.ics.hyracks.algebricks.common.utils.Pair;
@@ -205,6 +206,17 @@
                         optionalFields[reqFnPos] && fieldTypeTag.equals(nullTypeTag))) {
                     fieldPermutation[reqFnPos] = fnPos;
                     openFields[fnPos] = false;
+                } else {
+                    // if mismatch, check whether input type can be promoted to the required type
+                    ATypeTag inputTypeTag = EnumDeserializer.ATYPETAGDESERIALIZER.deserialize(fieldTypeTag
+                            .getByteArray()[fieldTypeTag.getStartOffset()]);
+                    ATypeTag requiredTypeTag = EnumDeserializer.ATYPETAGDESERIALIZER.deserialize(reqFieldTypeTag
+                            .getByteArray()[reqFieldTypeTag.getStartOffset()]);
+
+                    if (ATypeHierarchy.canPromote(inputTypeTag, requiredTypeTag)) {
+                        fieldPermutation[reqFnPos] = fnPos;
+                        openFields[fnPos] = false;
+                    }
                 }
                 fnStart++;
                 reqFnStart++;
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/base/TypeComputerUtilities.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/base/TypeComputerUtilities.java
index 8959f2c..6464c4a 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/base/TypeComputerUtilities.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/base/TypeComputerUtilities.java
@@ -15,8 +15,19 @@
 
 package edu.uci.ics.asterix.om.typecomputer.base;
 
+import java.util.List;
+
+import org.apache.commons.lang3.mutable.Mutable;
+
+import edu.uci.ics.asterix.om.types.ARecordType;
+import edu.uci.ics.asterix.om.types.ATypeTag;
+import edu.uci.ics.asterix.om.types.AbstractCollectionType;
 import edu.uci.ics.asterix.om.types.IAType;
+import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException;
+import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression;
 import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression;
+import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IVariableTypeEnvironment;
+import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression;
 
 public class TypeComputerUtilities {
 
@@ -55,4 +66,55 @@
         } else
             return null;
     }
+
+    public static boolean nullableType(ILogicalExpression expression, IVariableTypeEnvironment env)
+            throws AlgebricksException {
+        AbstractFunctionCallExpression func = (AbstractFunctionCallExpression) expression;
+        if (!(func instanceof ScalarFunctionCallExpression)) {
+            return true;
+        }
+        List<Mutable<ILogicalExpression>> args = func.getArguments();
+        for (Mutable<ILogicalExpression> arg : args) {
+            IAType type = (IAType) env.getType(arg.getValue());
+            if (type.getTypeTag() == ATypeTag.UNION || type.getTypeTag() == ATypeTag.NULL
+                    || type.getTypeTag() == ATypeTag.ANY) {
+                return true;
+            }
+            if (type.getTypeTag() == ATypeTag.RECORD || type.getTypeTag() == ATypeTag.UNORDEREDLIST
+                    || type.getTypeTag() == ATypeTag.ORDEREDLIST) {
+                if (nullableCompositeType(type)) {
+                    return true;
+                }
+            }
+        }
+        return false;
+    }
+
+    private static boolean nullableCompositeType(IAType type) {
+        if (type.getTypeTag() == ATypeTag.UNION || type.getTypeTag() == ATypeTag.NULL
+                || type.getTypeTag() == ATypeTag.ANY) {
+            return true;
+        } else if (type.getTypeTag() == ATypeTag.RECORD) {
+            ARecordType recordType = (ARecordType) type;
+            IAType[] fieldTypes = recordType.getFieldTypes();
+            for (IAType fieldType : fieldTypes) {
+                boolean nullable = nullableCompositeType(fieldType);
+                if (nullable) {
+                    return true;
+                }
+            }
+            return false;
+        } else if (type.getTypeTag() == ATypeTag.UNORDEREDLIST || type.getTypeTag() == ATypeTag.ORDEREDLIST) {
+            AbstractCollectionType collectionType = (AbstractCollectionType) type;
+            IAType itemType = collectionType.getItemType();
+            boolean nullable = nullableCompositeType(itemType);
+            if (nullable) {
+                return true;
+            } else {
+                return false;
+            }
+        } else {
+            return false;
+        }
+    }
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalABooleanTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalABooleanTypeComputer.java
index 71c69dd..764624f 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalABooleanTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalABooleanTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.ABOOLEAN);
-        return new AUnionType(unionList, "OptionalBoolean");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.ABOOLEAN);
+            return new AUnionType(unionList, "OptionalBoolean");
+        } else {
+            return BuiltinType.ABOOLEAN;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalACircleTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalACircleTypeComputer.java
index 411e201..92e26e0 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalACircleTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalACircleTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.ACIRCLE);
-        return new AUnionType(unionList, "OptionalCircle");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.ACIRCLE);
+            return new AUnionType(unionList, "OptionalCircle");
+        } else {
+            return BuiltinType.ACIRCLE;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADateTimeTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADateTimeTypeComputer.java
index 8ff0b1f..f0d2caf 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADateTimeTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADateTimeTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.ADATETIME);
-        return new AUnionType(unionList, "OptionalDatetime");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.ADATETIME);
+            return new AUnionType(unionList, "OptionalDatetime");
+        } else {
+            return BuiltinType.ADATETIME;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADateTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADateTypeComputer.java
index 1b17333..093849d 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADateTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADateTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.ADATE);
-        return new AUnionType(unionList, "OptionalDate");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.ADATE);
+            return new AUnionType(unionList, "OptionalDate");
+        } else {
+            return BuiltinType.ADATE;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADayTimeDurationTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADayTimeDurationTypeComputer.java
index 38f76e3..c3c7c25 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADayTimeDurationTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADayTimeDurationTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -40,10 +41,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.ADAYTIMEDURATION);
-        return new AUnionType(unionList, "OptionalDayTimeDuration");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.ADAYTIMEDURATION);
+            return new AUnionType(unionList, "OptionalDayTimeDuration");
+        } else {
+            return BuiltinType.ADAYTIMEDURATION;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADoubleTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADoubleTypeComputer.java
index 163b6b3..324e078 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADoubleTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADoubleTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,9 +37,13 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.ADOUBLE);
-        return new AUnionType(unionList, "OptionalDouble");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.ADOUBLE);
+            return new AUnionType(unionList, "OptionalDouble");
+        } else {
+            return BuiltinType.ADOUBLE;
+        }
     }
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADurationTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADurationTypeComputer.java
index 48f0715..85556ed 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADurationTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalADurationTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.ADURATION);
-        return new AUnionType(unionList, "OptionalDuration");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.ADURATION);
+            return new AUnionType(unionList, "OptionalDuration");
+        } else {
+            return BuiltinType.ADURATION;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAFloatTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAFloatTypeComputer.java
index 6c93522..d9da2b8 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAFloatTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAFloatTypeComputer.java
@@ -18,9 +18,11 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
+import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException;
 import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression;
 import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IVariableTypeEnvironment;
 import edu.uci.ics.hyracks.algebricks.core.algebra.metadata.IMetadataProvider;
@@ -34,11 +36,15 @@
 
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
-            IMetadataProvider<?, ?> metadataProvider) {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.AFLOAT);
-        return new AUnionType(unionList, "OptionalFloat");
+            IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.AFLOAT);
+            return new AUnionType(unionList, "OptionalFloat");
+        } else {
+            return BuiltinType.AFLOAT;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt16TypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt16TypeComputer.java
index 575748e..a737ed2 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt16TypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt16TypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.AINT16);
-        return new AUnionType(unionList, "OptionalInt16");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.AINT16);
+            return new AUnionType(unionList, "OptionalInt16");
+        } else {
+            return BuiltinType.AINT16;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt32TypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt32TypeComputer.java
index 38aa0f3..c666d36 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt32TypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt32TypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.AINT32);
-        return new AUnionType(unionList, "OptionalInt32");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.AINT32);
+            return new AUnionType(unionList, "OptionalInt32");
+        } else {
+            return BuiltinType.AINT32;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt64TypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt64TypeComputer.java
index 571b266..701b1ae 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt64TypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt64TypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.AINT64);
-        return new AUnionType(unionList, "OptionalInt64");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.AINT64);
+            return new AUnionType(unionList, "OptionalInt64");
+        } else {
+            return BuiltinType.AINT64;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt8TypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt8TypeComputer.java
index 49c2994..ad6b130 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt8TypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAInt8TypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.AINT8);
-        return new AUnionType(unionList, "OptionalInt8");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.AINT8);
+            return new AUnionType(unionList, "OptionalInt8");
+        } else {
+            return BuiltinType.AINT8;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAIntervalTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAIntervalTypeComputer.java
index 6929a80..9c5a7d5 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAIntervalTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAIntervalTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
 
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.AINTERVAL);
-        return new AUnionType(unionList, "OptionalInterval");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.AINTERVAL);
+            return new AUnionType(unionList, "OptionalInterval");
+        } else {
+            return BuiltinType.AINTERVAL;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalALineTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalALineTypeComputer.java
index b7b89a9..e692dbd 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalALineTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalALineTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.ALINE);
-        return new AUnionType(unionList, "OptionalLine");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.ALINE);
+            return new AUnionType(unionList, "OptionalLine");
+        } else {
+            return BuiltinType.ALINE;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAPoint3DTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAPoint3DTypeComputer.java
index 7008ac6..8f0bf7a 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAPoint3DTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAPoint3DTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.APOINT3D);
-        return new AUnionType(unionList, "OptionalPoint3d");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.APOINT3D);
+            return new AUnionType(unionList, "OptionalPoint3d");
+        } else {
+            return BuiltinType.APOINT3D;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAPointTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAPointTypeComputer.java
index c07d4fb..1a93ee6 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAPointTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAPointTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.APOINT);
-        return new AUnionType(unionList, "OptionalPoint");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.APOINT);
+            return new AUnionType(unionList, "OptionalPoint");
+        } else {
+            return BuiltinType.APOINT;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAPolygonTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAPolygonTypeComputer.java
index 398add3..405608c 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAPolygonTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAPolygonTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.APOLYGON);
-        return new AUnionType(unionList, "OptionalPolygon");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.APOLYGON);
+            return new AUnionType(unionList, "OptionalPolygon");
+        } else {
+            return BuiltinType.APOLYGON;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalARectangleTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalARectangleTypeComputer.java
index 936668b..c6a8026 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalARectangleTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalARectangleTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.ARECTANGLE);
-        return new AUnionType(unionList, "OptionalRectangle");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.ARECTANGLE);
+            return new AUnionType(unionList, "OptionalRectangle");
+        } else {
+            return BuiltinType.ARECTANGLE;
+        }
     }
 
 }
\ No newline at end of file
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAStringTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAStringTypeComputer.java
index 3758645..5b0642d 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAStringTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAStringTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.ASTRING);
-        return new AUnionType(unionList, "OptionalString");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.ASTRING);
+            return new AUnionType(unionList, "OptionalString");
+        } else {
+            return BuiltinType.ASTRING;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalATimeTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalATimeTypeComputer.java
index 19e6e30..4d466e7 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalATimeTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalATimeTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -36,10 +37,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.ATIME);
-        return new AUnionType(unionList, "OptionalTime");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.ATIME);
+            return new AUnionType(unionList, "OptionalTime");
+        } else {
+            return BuiltinType.ATIME;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAYearMonthDurationTypeComputer.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAYearMonthDurationTypeComputer.java
index 4c08142..3350674 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAYearMonthDurationTypeComputer.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/typecomputer/impl/OptionalAYearMonthDurationTypeComputer.java
@@ -18,6 +18,7 @@
 import java.util.List;
 
 import edu.uci.ics.asterix.om.typecomputer.base.IResultTypeComputer;
+import edu.uci.ics.asterix.om.typecomputer.base.TypeComputerUtilities;
 import edu.uci.ics.asterix.om.types.AUnionType;
 import edu.uci.ics.asterix.om.types.BuiltinType;
 import edu.uci.ics.asterix.om.types.IAType;
@@ -40,10 +41,14 @@
     @Override
     public IAType computeType(ILogicalExpression expression, IVariableTypeEnvironment env,
             IMetadataProvider<?, ?> metadataProvider) throws AlgebricksException {
-        List<IAType> unionList = new ArrayList<IAType>();
-        unionList.add(BuiltinType.ANULL);
-        unionList.add(BuiltinType.AYEARMONTHDURATION);
-        return new AUnionType(unionList, "OptionalYearMonthDuration");
+        if (TypeComputerUtilities.nullableType(expression, env)) {
+            List<IAType> unionList = new ArrayList<IAType>();
+            unionList.add(BuiltinType.ANULL);
+            unionList.add(BuiltinType.AYEARMONTHDURATION);
+            return new AUnionType(unionList, "OptionalYearMonthDuration");
+        } else {
+            return BuiltinType.AYEARMONTHDURATION;
+        }
     }
 
 }
diff --git a/asterix-om/src/main/java/edu/uci/ics/asterix/om/types/ARecordType.java b/asterix-om/src/main/java/edu/uci/ics/asterix/om/types/ARecordType.java
index 0319c7c..28a41d1 100644
--- a/asterix-om/src/main/java/edu/uci/ics/asterix/om/types/ARecordType.java
+++ b/asterix-om/src/main/java/edu/uci/ics/asterix/om/types/ARecordType.java
@@ -66,6 +66,7 @@
      * @throws AsterixException
      *             if there are duplicate field names or if there is an error serializing the field names
      */
+    @SuppressWarnings("resource")
     public ARecordType(String typeName, String[] fieldNames, IAType[] fieldTypes, boolean isOpen)
             throws AsterixException {
         super(typeName);
@@ -96,6 +97,11 @@
             hashCodeIndexPairs[i] = hashCodeIndexPairs[i] << 32;
             hashCodeIndexPairs[i] = hashCodeIndexPairs[i] | i;
         }
+        try {
+            dos.close();
+        } catch (IOException e) {
+            throw new AsterixException(e);
+        }
         serializedFieldNames = baaos.getByteArray();
 
         Arrays.sort(hashCodeIndexPairs);
@@ -336,7 +342,8 @@
                             break;
                         default:
                             throw new AlgebricksException("The field \"" + fieldName + "\" which is of type "
-                                    + fieldType.getTypeTag() + " cannot be indexed using the Length Partitioned N-Gram index.");
+                                    + fieldType.getTypeTag()
+                                    + " cannot be indexed using the Length Partitioned N-Gram index.");
                     }
                     break;
                 case LENGTH_PARTITIONED_WORD_INVIX:
@@ -348,7 +355,8 @@
                             break;
                         default:
                             throw new AlgebricksException("The field \"" + fieldName + "\" which is of type "
-                                    + fieldType.getTypeTag() + " cannot be indexed using the Length Partitioned Keyword index.");
+                                    + fieldType.getTypeTag()
+                                    + " cannot be indexed using the Length Partitioned Keyword index.");
                     }
                     break;
                 case SINGLE_PARTITION_NGRAM_INVIX:
diff --git a/asterix-runtime/src/main/java/edu/uci/ics/asterix/runtime/operators/file/ADMDataParser.java b/asterix-runtime/src/main/java/edu/uci/ics/asterix/runtime/operators/file/ADMDataParser.java
index b8c8659..7e51ae6 100644
--- a/asterix-runtime/src/main/java/edu/uci/ics/asterix/runtime/operators/file/ADMDataParser.java
+++ b/asterix-runtime/src/main/java/edu/uci/ics/asterix/runtime/operators/file/ADMDataParser.java
@@ -635,11 +635,16 @@
         boolean first = true;
         do {
             token = nextToken();
-            if (token == AdmLexer.TOKEN_END_UNORDERED_LIST) {
-                if (expectingListItem) {
-                    throw new AsterixException("Found END_COLLECTION while expecting a list item.");
+            if (token == AdmLexer.TOKEN_END_RECORD) {
+                if (nextToken() == AdmLexer.TOKEN_END_RECORD) {
+                    if (expectingListItem) {
+                        throw new AsterixException("Found END_COLLECTION while expecting a list item.");
+                    } else {
+                        inList = false;
+                    }
+                } else {
+                    throw new AsterixException("Found END_RECORD while expecting a list item.");
                 }
-                inList = false;
             } else if (token == AdmLexer.TOKEN_COMMA) {
                 if (first) {
                     throw new AsterixException("Found COMMA before any list item.");
diff --git a/asterix-runtime/src/main/java/edu/uci/ics/asterix/runtime/operators/file/DelimitedDataParser.java b/asterix-runtime/src/main/java/edu/uci/ics/asterix/runtime/operators/file/DelimitedDataParser.java
index 5a639dc..23f7aab 100644
--- a/asterix-runtime/src/main/java/edu/uci/ics/asterix/runtime/operators/file/DelimitedDataParser.java
+++ b/asterix-runtime/src/main/java/edu/uci/ics/asterix/runtime/operators/file/DelimitedDataParser.java
@@ -29,6 +29,8 @@
 import edu.uci.ics.asterix.om.base.ANull;
 import edu.uci.ics.asterix.om.types.ARecordType;
 import edu.uci.ics.asterix.om.types.ATypeTag;
+import edu.uci.ics.asterix.om.types.AUnionType;
+import edu.uci.ics.asterix.om.util.NonTaggedFormatUtil;
 import edu.uci.ics.hyracks.api.exceptions.HyracksDataException;
 import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage;
 import edu.uci.ics.hyracks.dataflow.common.data.parsers.IValueParser;
@@ -115,8 +117,9 @@
                         && recordType.getFieldTypes()[i].getTypeTag() != ATypeTag.NULL) {
                     // if the field is empty and the type is optional, insert NULL
                     // note that string type can also process empty field as an empty string
-                    if (recordType.getFieldTypes()[i].getTypeTag() != ATypeTag.UNION) {
-                        throw new AsterixException("Field " + i + " cannot be NULL. ");
+                    if (recordType.getFieldTypes()[i].getTypeTag() != ATypeTag.UNION
+                            || !NonTaggedFormatUtil.isOptionalField((AUnionType) recordType.getFieldTypes()[i])) {
+                        throw new AsterixException("Field " + i + " is not an optional type so it cannot accept null value. ");
                     }
                     fieldValueBufferOutput.writeByte(ATypeTag.NULL.serialize());
                     ANullSerializerDeserializer.INSTANCE.serialize(ANull.NULL, out);
diff --git a/asterix-runtime/src/main/resources/adm.grammar b/asterix-runtime/src/main/resources/adm.grammar
index 80e2cd4..06614d0 100644
--- a/asterix-runtime/src/main/resources/adm.grammar
+++ b/asterix-runtime/src/main/resources/adm.grammar
@@ -45,7 +45,7 @@
 START_ORDERED_LIST   = char([)
 END_ORDERED_LIST     = char(])
 START_UNORDERED_LIST = string({{)
-END_UNORDERED_LIST   = string(}})
+# END_UNORDERED_LIST  = }} is recognized as a double END_RECORD token
 
 STRING_LITERAL       = char("), anythingUntil(")