Steven Jacobs has posted comments on this change.

Change subject: Enhanced Insert AQL
......................................................................


Patch Set 17:

(19 comments)

As far as ASYNC vs ASYNC deferred, I don't actually know the answer. I just 
left things as they were before in this case.

I'm uploading the new patchset with the changes now.

https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/algebra/operators/physical/CommitRuntime.java
File 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/algebra/operators/physical/CommitRuntime.java:

Line 160:     public void fail() throws HyracksDataException {
> Just to be consistent with other places:
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceAutogenerateIDRule.java
File 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/IntroduceAutogenerateIDRule.java:

Line 88:         Stack<AbstractLogicalOperator> opStack = new Stack<>();
> Stack is thread-safe and slower.
Done


Line 123:         //TODO: bug here. will not work for internal datasets with 
filters since the pattern becomes [project-assign-assign-insert]
> MAJOR SonarQube violation:
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/AbstractIntroduceAccessMethodRule.java
File 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/AbstractIntroduceAccessMethodRule.java:

Line 675:             if (expr.getExpressionTag() != 
LogicalExpressionTag.FUNCTION_CALL) {
> Add a comment in the code why this if-check is needed?
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java
File 
asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/LangExpressionToPlanTranslator.java:

Line 702:         ILogicalOperator leafOperator = null;
> MAJOR SonarQube violation:
Done


Line 1588:                     LogicalOperatorDeepCopyWithNewVariablesVisitor 
visitor = new LogicalOperatorDeepCopyWithNewVariablesVisitor(
> MAJOR SonarQube violation:
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
File 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java:

Line 345:                         if ((((InsertStatement) 
stmt).getReturnQuery() != null)) {
> MAJOR SonarQube violation:
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-app/src/test/resources/runtimets/queries/dml/insert-return-records/insert-return-records.1.ddl.aql
File 
asterixdb/asterix-app/src/test/resources/runtimets/queries/dml/insert-return-records/insert-return-records.1.ddl.aql:

Line 1: /*
> ASF copy right header?
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-app/src/test/resources/runtimets/queries/dml/insert-return-records/insert-return-records.3.query.aql
File 
asterixdb/asterix-app/src/test/resources/runtimets/queries/dml/insert-return-records/insert-return-records.3.query.aql:

Line 3:  * Description     : Check records returned on insert
> ASF copyright header?
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-app/src/test/resources/runtimets/queries/dml/insert-returning-fieldname/insert-returning-fieldname.1.ddl.aql
File 
asterixdb/asterix-app/src/test/resources/runtimets/queries/dml/insert-returning-fieldname/insert-returning-fieldname.1.ddl.aql:

Line 9: drop dataverse test if exists;
> ASF copyright header?
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-app/src/test/resources/runtimets/queries/dml/insert-returning-fieldname/insert-returning-fieldname.3.query.aql
File 
asterixdb/asterix-app/src/test/resources/runtimets/queries/dml/insert-returning-fieldname/insert-returning-fieldname.3.query.aql:

Line 3:  * Description     : Check fields returned on insert
> ASF header
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-app/src/test/resources/runtimets/queries/dml/upsert-return-custom-result/upsert-return-custom-result.1.ddl.aql
File 
asterixdb/asterix-app/src/test/resources/runtimets/queries/dml/upsert-return-custom-result/upsert-return-custom-result.1.ddl.aql:

Line 5:  * Date            : Mar 2015
> ASF header
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-app/src/test/resources/runtimets/queries/dml/upsert-return-custom-result/upsert-return-custom-result.3.query.aql
File 
asterixdb/asterix-app/src/test/resources/runtimets/queries/dml/upsert-return-custom-result/upsert-return-custom-result.3.query.aql:

Line 7: 
> ASF header?
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-app/src/test/resources/runtimets/testsuite.xml
File asterixdb/asterix-app/src/test/resources/runtimets/testsuite.xml:

Line 1710:     </test-case>
> add a negative test to check error message if the returning query refers to
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-doc/src/site/markdown/aql/manual.md
File asterixdb/asterix-doc/src/site/markdown/aql/manual.md:

Line 839: The optional "returning Query" allows users to run simple 
queries/functions on the records returned by the insert
> Document that the "returning query" should not refer a dataset.
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-lang-aql/src/main/javacc/AQL.jj
File asterixdb/asterix-lang-aql/src/main/javacc/AQL.jj:

Line 943:   query = Query() ( "returning" returnQuery = Query())?
> Put "returning" into the keyword list and use <RETURNING> here.
Done


Line 945:       query.setTopLevel(true); 
> WS
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/asterixdb/asterix-om/src/main/java/org/apache/asterix/om/base/ADateTime.java
File 
asterixdb/asterix-om/src/main/java/org/apache/asterix/om/base/ADateTime.java:

Line 133:             throw new RuntimeException(e);
> CRITICAL SonarQube violation:
Done


https://asterix-gerrit.ics.uci.edu/#/c/1150/17/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/logical/DelegateOperator.java
File 
hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/operators/logical/DelegateOperator.java:

Line 57:     public boolean 
acceptExpressionTransform(ILogicalExpressionReferenceTransform transform) 
throws AlgebricksException {
> MAJOR SonarQube violation:
Done


-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1150
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I65789d2a861d15232dd29156a6987d0635ec6c94
Gerrit-PatchSet: 17
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Steven Jacobs <sjaco...@ucr.edu>
Gerrit-Reviewer: Jenkins <jenk...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Michael Blow <mb...@apache.org>
Gerrit-Reviewer: Michael Carey <dtab...@gmail.com>
Gerrit-Reviewer: Steven Jacobs <sjaco...@ucr.edu>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-Reviewer: Yingyi Bu <buyin...@gmail.com>
Gerrit-Reviewer: abdullah alamoudi <bamou...@gmail.com>
Gerrit-HasComments: Yes

Reply via email to