This is an automated email from the ASF dual-hosted git repository.

alsuliman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/asterixdb.git


The following commit(s) were added to refs/heads/master by this push:
     new ff93c3ac96 [NO ISSUE][COMP] Upsert into select fails on dataset with 
atogenerated PK
ff93c3ac96 is described below

commit ff93c3ac96b4d3f63b6980d6b035eabea531e7a4
Author: Peeyush Gupta <[email protected]>
AuthorDate: Sat Sep 23 23:40:55 2023 -0700

    [NO ISSUE][COMP] Upsert into select fails on dataset with atogenerated PK
    
    - user model changes: no
    - storage format changes: no
    - interface changes: no
    
    Details:
    An error can occur in cases when IntroduceDynamicTypeCastRule is
    fired on a variable which was previously used to get type
    information to apply ByNameToByIndexFieldAccessRule to change a
    field access by name function to field access by index function.
    With this change we modify the field access by name function to
    field access by index function only after all the normalization
    rules have applied.
    
    Change-Id: Id30bf0110fc12b760edbc5ae45effa9d38044abe
    Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/17802
    Integration-Tests: Jenkins <[email protected]>
    Tested-by: Jenkins <[email protected]>
    Reviewed-by: Peeyush Gupta <[email protected]>
    Reviewed-by: Ali Alsuliman <[email protected]>
---
 .../compiler/provider/DefaultRuleSetFactory.java   |  6 +++--
 .../asterix/optimizer/base/RuleCollections.java    |  7 +++---
 .../rules/ByNameToByIndexFieldAccessRule.java      | 14 ++++++++---
 .../index-through-object.9.plan                    |  4 ++--
 .../create-dataset-4/create-dataset-4.01.ddl.sqlpp | 28 ++++++++++++++++++++++
 .../create-dataset-4.02.update.sqlpp               | 24 +++++++++++++++++++
 .../create-dataset-4/create-dataset-4.03.ddl.sqlpp | 25 +++++++++++++++++++
 .../create-dataset-4.04.update.sqlpp               | 24 +++++++++++++++++++
 .../create-dataset-4.05.query.sqlpp                | 22 +++++++++++++++++
 .../create-dataset-4.06.query.sqlpp                | 22 +++++++++++++++++
 .../create-dataset-4.07.query.sqlpp                | 22 +++++++++++++++++
 .../create-dataset-4/create-dataset-4.08.ddl.sqlpp | 23 ++++++++++++++++++
 .../ddl/create-dataset-4/create-dataset-4.05.adm   |  2 ++
 .../ddl/create-dataset-4/create-dataset-4.06.adm   |  2 ++
 .../ddl/create-dataset-4/create-dataset-4.07.adm   |  2 ++
 .../test/resources/runtimets/testsuite_sqlpp.xml   |  5 ++++
 16 files changed, 222 insertions(+), 10 deletions(-)

diff --git 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/compiler/provider/DefaultRuleSetFactory.java
 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/compiler/provider/DefaultRuleSetFactory.java
index 67b79103b2..6634e56e5a 100644
--- 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/compiler/provider/DefaultRuleSetFactory.java
+++ 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/compiler/provider/DefaultRuleSetFactory.java
@@ -70,12 +70,14 @@ public class DefaultRuleSetFactory implements 
IRuleSetFactory {
                 .add(new Pair<>(seqCtrlFullDfs, 
RuleCollections.buildNormalizationRuleCollection(appCtx)));
         defaultLogicalRewrites
                 .add(new Pair<>(seqCtrlNoDfs, 
RuleCollections.buildCondPushDownAndJoinInferenceRuleCollection()));
-        defaultLogicalRewrites.add(new Pair<>(seqCtrlFullDfs, 
RuleCollections.buildLoadFieldsRuleCollection(appCtx)));
+        defaultLogicalRewrites
+                .add(new Pair<>(seqCtrlFullDfs, 
RuleCollections.buildLoadFieldsRuleCollection(appCtx, false)));
         defaultLogicalRewrites
                 .add(new Pair<>(seqCtrlFullDfs, 
RuleCollections.buildNormalizationRuleCollection(appCtx)));
         defaultLogicalRewrites
                 .add(new Pair<>(seqCtrlNoDfs, 
RuleCollections.buildCondPushDownAndJoinInferenceRuleCollection()));
-        defaultLogicalRewrites.add(new Pair<>(seqCtrlFullDfs, 
RuleCollections.buildLoadFieldsRuleCollection(appCtx)));
+        defaultLogicalRewrites
+                .add(new Pair<>(seqCtrlFullDfs, 
RuleCollections.buildLoadFieldsRuleCollection(appCtx, true)));
         defaultLogicalRewrites.add(new Pair<>(seqOnceCtrl, 
RuleCollections.buildFulltextContainsRuleCollection()));
         defaultLogicalRewrites.add(new Pair<>(seqOnceCtrl, 
RuleCollections.buildDataExchangeRuleCollection()));
         defaultLogicalRewrites.add(new Pair<>(seqOnceCtrl, 
RuleCollections.buildCBORuleCollection()));
diff --git 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/base/RuleCollections.java
 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/base/RuleCollections.java
index f7572954c1..bf86cc5e80 100644
--- 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/base/RuleCollections.java
+++ 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/base/RuleCollections.java
@@ -271,13 +271,14 @@ public final class RuleCollections {
         return condPushDownAndJoinInference;
     }
 
-    public static List<IAlgebraicRewriteRule> 
buildLoadFieldsRuleCollection(ICcApplicationContext appCtx) {
+    public static List<IAlgebraicRewriteRule> 
buildLoadFieldsRuleCollection(ICcApplicationContext appCtx,
+            boolean includeNameToIndexRewrite) {
         List<IAlgebraicRewriteRule> fieldLoads = new LinkedList<>();
         fieldLoads.add(new LoadRecordFieldsRule());
         fieldLoads.add(new PushFieldAccessRule());
         // fieldLoads.add(new ByNameToByHandleFieldAccessRule()); -- disabled
         fieldLoads.add(new ReinferAllTypesRule());
-        fieldLoads.add(new ByNameToByIndexFieldAccessRule());
+        fieldLoads.add(new 
ByNameToByIndexFieldAccessRule(includeNameToIndexRewrite));
         fieldLoads.add(new RemoveRedundantVariablesRule());
         fieldLoads.add(new AsterixInlineVariablesRule());
         fieldLoads.add(new RemoveUnusedAssignAndAggregateRule());
@@ -360,7 +361,7 @@ public final class RuleCollections {
         // Needs to invoke ByNameToByIndexFieldAccessRule as the last logical 
optimization rule because
         // some rules can push a FieldAccessByName to a place where the name 
it tries to access is in the closed part.
         // For example, a possible scenario is that a field-access-by-name can 
be pushed down through UnionAllOperator.
-        planCleanupRules.add(new ByNameToByIndexFieldAccessRule());
+        planCleanupRules.add(new ByNameToByIndexFieldAccessRule(true));
         return planCleanupRules;
     }
 
diff --git 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/ByNameToByIndexFieldAccessRule.java
 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/ByNameToByIndexFieldAccessRule.java
index abc434f3f1..a4bc50bf87 100644
--- 
a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/ByNameToByIndexFieldAccessRule.java
+++ 
b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/ByNameToByIndexFieldAccessRule.java
@@ -50,6 +50,12 @@ import org.apache.hyracks.api.exceptions.SourceLocation;
 
 public class ByNameToByIndexFieldAccessRule implements IAlgebraicRewriteRule {
 
+    private final boolean includeNameToIndexRewrite;
+
+    public ByNameToByIndexFieldAccessRule(boolean includeNameToIndexRewrite) {
+        this.includeNameToIndexRewrite = includeNameToIndexRewrite;
+    }
+
     @Override
     public boolean rewritePre(Mutable<ILogicalOperator> opRef, 
IOptimizationContext context)
             throws AlgebricksException {
@@ -86,9 +92,11 @@ public class ByNameToByIndexFieldAccessRule implements 
IAlgebraicRewriteRule {
             return changed;
         }
         changed |= extractFirstArg(fce, op, context);
-        IVariableTypeEnvironment env = 
context.getOutputTypeEnvironment(op.getInputs().get(0).getValue());
-        IAType t = (IAType) env.getType(fce.getArguments().get(0).getValue());
-        changed |= rewriteFieldAccess(exprRef, fce, 
TypeComputeUtils.getActualType(t));
+        if (includeNameToIndexRewrite) {
+            IVariableTypeEnvironment env = 
context.getOutputTypeEnvironment(op.getInputs().get(0).getValue());
+            IAType t = (IAType) 
env.getType(fce.getArguments().get(0).getValue());
+            changed |= rewriteFieldAccess(exprRef, fce, 
TypeComputeUtils.getActualType(t));
+        }
         return changed;
     }
 
diff --git 
a/asterixdb/asterix-app/src/test/resources/optimizerts/results/index-through-object/index-through-object.9.plan
 
b/asterixdb/asterix-app/src/test/resources/optimizerts/results/index-through-object/index-through-object.9.plan
index 9b51cb089b..660af61788 100644
--- 
a/asterixdb/asterix-app/src/test/resources/optimizerts/results/index-through-object/index-through-object.9.plan
+++ 
b/asterixdb/asterix-app/src/test/resources/optimizerts/results/index-through-object/index-through-object.9.plan
@@ -13,7 +13,7 @@
                         -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                           -- BTREE_SEARCH (Test.Users.Users)  |PARTITIONED|
                             -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-                              -- STABLE_SORT [$$110(ASC)]  |PARTITIONED|
+                              -- STABLE_SORT [$$111(ASC)]  |PARTITIONED|
                                 -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                   -- STREAM_PROJECT  |PARTITIONED|
                                     -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
@@ -29,7 +29,7 @@
                         -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                           -- BTREE_SEARCH (Test.Users.Users)  |PARTITIONED|
                             -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
-                              -- STABLE_SORT [$$114(ASC)]  |PARTITIONED|
+                              -- STABLE_SORT [$$115(ASC)]  |PARTITIONED|
                                 -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                   -- STREAM_PROJECT  |PARTITIONED|
                                     -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.01.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.01.ddl.sqlpp
new file mode 100644
index 0000000000..0ddd4562d4
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.01.ddl.sqlpp
@@ -0,0 +1,28 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+drop dataverse test if exists;
+create dataverse test;
+use test;
+
+create dataset ds0 primary key (oid: uuid) autogenerated;
+
+create dataset ds1 primary key (name: string);
+
+create dataset ds2 primary key (oid: uuid, name:string);
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.02.update.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.02.update.sqlpp
new file mode 100644
index 0000000000..7901e355ea
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.02.update.sqlpp
@@ -0,0 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+use test;
+
+upsert into ds1 ([
+    {  "name": "abc"},
+    {  "name": "xyz"}
+]);
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.03.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.03.ddl.sqlpp
new file mode 100644
index 0000000000..8c43db3e51
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.03.ddl.sqlpp
@@ -0,0 +1,25 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+use test;
+
+create dataset ds3 primary key (oid: uuid) autogenerated as
+select value x from ds1 x
+
+
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.04.update.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.04.update.sqlpp
new file mode 100644
index 0000000000..63144f34cc
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.04.update.sqlpp
@@ -0,0 +1,24 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+use test;
+
+upsert into ds0 select value x from ds1 x;
+
+upsert into ds2 select value x from ds0 x;
+
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.05.query.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.05.query.sqlpp
new file mode 100644
index 0000000000..377bd83970
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.05.query.sqlpp
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+use test;
+
+select value name from ds0 order by name;
\ No newline at end of file
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.06.query.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.06.query.sqlpp
new file mode 100644
index 0000000000..cf215921a4
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.06.query.sqlpp
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+use test;
+
+select value name from ds2 order by name;
\ No newline at end of file
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.07.query.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.07.query.sqlpp
new file mode 100644
index 0000000000..ef235ba157
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.07.query.sqlpp
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+use test;
+
+select value name from ds3 order by name;
\ No newline at end of file
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.08.ddl.sqlpp
 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.08.ddl.sqlpp
new file mode 100644
index 0000000000..b42598a471
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/ddl/create-dataset-4/create-dataset-4.08.ddl.sqlpp
@@ -0,0 +1,23 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+use test;
+
+drop dataverse test;
+
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/results/ddl/create-dataset-4/create-dataset-4.05.adm
 
b/asterixdb/asterix-app/src/test/resources/runtimets/results/ddl/create-dataset-4/create-dataset-4.05.adm
new file mode 100644
index 0000000000..2bd047d76d
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/results/ddl/create-dataset-4/create-dataset-4.05.adm
@@ -0,0 +1,2 @@
+"abc"
+"xyz"
\ No newline at end of file
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/results/ddl/create-dataset-4/create-dataset-4.06.adm
 
b/asterixdb/asterix-app/src/test/resources/runtimets/results/ddl/create-dataset-4/create-dataset-4.06.adm
new file mode 100644
index 0000000000..2bd047d76d
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/results/ddl/create-dataset-4/create-dataset-4.06.adm
@@ -0,0 +1,2 @@
+"abc"
+"xyz"
\ No newline at end of file
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/results/ddl/create-dataset-4/create-dataset-4.07.adm
 
b/asterixdb/asterix-app/src/test/resources/runtimets/results/ddl/create-dataset-4/create-dataset-4.07.adm
new file mode 100644
index 0000000000..2bd047d76d
--- /dev/null
+++ 
b/asterixdb/asterix-app/src/test/resources/runtimets/results/ddl/create-dataset-4/create-dataset-4.07.adm
@@ -0,0 +1,2 @@
+"abc"
+"xyz"
\ No newline at end of file
diff --git 
a/asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml 
b/asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
index 73740281f2..2980fa3dbf 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/testsuite_sqlpp.xml
@@ -4170,6 +4170,11 @@
         <expected-error>ASX1001: Syntax error: Invalid primary key 
specification</expected-error>
       </compilation-unit>
     </test-case>
+    <test-case FilePath="ddl">
+      <compilation-unit name="create-dataset-4">
+        <output-dir compare="Clean-JSON">create-dataset-4</output-dir>
+      </compilation-unit>
+    </test-case>
     <test-case FilePath="ddl">
       <compilation-unit name="analyze-dataset-1">
         <output-dir compare="Text">analyze-dataset-1</output-dir>

Reply via email to