You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@asterixdb.apache.org by im...@apache.org on 2021/05/26 23:43:14 UTC

[asterixdb] 08/38: [NO ISSUE][OTH] Add operator field to subplan json plan

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

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

commit d5eb016761601e66a2fdd66c8cd8cc72cf248a03
Author: Murtadha Hubail <mh...@apache.org>
AuthorDate: Wed Apr 21 18:28:38 2021 +0300

    [NO ISSUE][OTH] Add operator field to subplan json plan
    
    - user model changes: no
    - storage format changes: no
    - interface changes: no
    
    Details:
    
    - Add "operator" field to subplan operators json format
      plan.
    
    Change-Id: I1df5a97367286663b002547997c555b20e56697d
    Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/11123
    Integration-Tests: Jenkins <je...@fulliautomatix.ics.uci.edu>
    Tested-by: Jenkins <je...@fulliautomatix.ics.uci.edu>
    Reviewed-by: Murtadha Hubail <mh...@apache.org>
    Reviewed-by: Ali Alsuliman <al...@gmail.com>
---
 .../prettyprint/LogicalOperatorPrettyPrintVisitorJson.java       | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/prettyprint/LogicalOperatorPrettyPrintVisitorJson.java b/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/prettyprint/LogicalOperatorPrettyPrintVisitorJson.java
index f404058..6ba4c0c 100644
--- a/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/prettyprint/LogicalOperatorPrettyPrintVisitorJson.java
+++ b/hyracks-fullstack/algebricks/algebricks-core/src/main/java/org/apache/hyracks/algebricks/core/algebra/prettyprint/LogicalOperatorPrettyPrintVisitorJson.java
@@ -411,8 +411,13 @@ public class LogicalOperatorPrettyPrintVisitorJson extends AbstractLogicalOperat
 
     @Override
     public Void visitSubplanOperator(SubplanOperator op, Void indent) throws AlgebricksException {
-        if (!op.getNestedPlans().isEmpty()) {
-            writeNestedPlans(op, indent);
+        try {
+            if (!op.getNestedPlans().isEmpty()) {
+                jsonGenerator.writeStringField(OPERATOR_FIELD, "subplan");
+                writeNestedPlans(op, indent);
+            }
+        } catch (IOException e) {
+            throw AlgebricksException.create(ErrorCode.ERROR_PRINTING_PLAN, e, String.valueOf(e));
         }
         return null;
     }