Tajo
  1. Tajo
  2. TAJO-92

LogicalNode misses some fields when it converts to json

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Duplicate
    • Affects Version/s: None
    • Fix Version/s: 0.2-incubating
    • Component/s: planner/optimizer
    • Labels:
      None

      Description

      See title. The below code reproduces the error

          PlanningContext context = analyzer.parse(
                  "select table0.age, count(*) as count_age from table0 group by table0.age");
      
          LogicalNode plan = logicalPlanner.createPlan(context);
          plan = LogicalOptimizer.optimize(context, plan);
      
          String planJSON = plan.toJSON();
      
          LogicalNode planFromJSON = GsonCreator.getInstance().fromJson(planJSON, LogicalNode.class);
      
          MasterPlan globalPlan = planner.build(queryId, (LogicalRootNode) planFromJSON);
      
      com.google.protobuf.UninitializedMessageException: Message missing required fields: type
      	at com.google.protobuf.AbstractMessage$Builder.newUninitializedMessageException(AbstractMessage.java:605)
      	at org.apache.tajo.catalog.proto.CatalogProtos$FunctionDescProto$Builder.build(CatalogProtos.java:6999)
      	at org.apache.tajo.catalog.FunctionDesc.mergeLocalToProto(FunctionDesc.java:231)
      	at org.apache.tajo.catalog.FunctionDesc.getProto(FunctionDesc.java:193)
      	at org.apache.tajo.catalog.FunctionDesc.equals(FunctionDesc.java:168)
      	at org.apache.tajo.util.TUtil.checkEquals(TUtil.java:44)
      	at org.apache.tajo.engine.eval.FuncEval.equals(FuncEval.java:93)
      	at org.apache.tajo.engine.planner.PlannerUtil.transformGroupbyTo2P(PlannerUtil.java:196)
      	at org.apache.tajo.engine.planner.PlannerUtil.transformGroupbyTo2PWithStore(PlannerUtil.java:242)
      	at org.apache.tajo.master.GlobalPlanner$GlobalPlanBuilder.visit(GlobalPlanner.java:136)
      	at org.apache.tajo.engine.planner.logical.UnaryNode.postOrder(UnaryNode.java:66)
      	at org.apache.tajo.engine.planner.logical.UnaryNode.postOrder(UnaryNode.java:65)
      	at org.apache.tajo.engine.planner.logical.UnaryNode.postOrder(UnaryNode.java:65)
      	at org.apache.tajo.master.GlobalPlanner.convertTo2Phase(GlobalPlanner.java:279)
      	at org.apache.tajo.master.GlobalPlanner.build(GlobalPlanner.java:99)
      

        Issue Links

          Activity

          Hyunsik Choi made changes -
          Fix Version/s 0.2-incubating [ 12324252 ]
          Hyunsik Choi made changes -
          Status Open [ 1 ] Resolved [ 5 ]
          Resolution Duplicate [ 3 ]
          Hyunsik Choi made changes -
          Link This issue relates to TAJO-95 [ TAJO-95 ]
          hyoungjunkim made changes -
          Field Original Value New Value
          Attachment TAJO-92_TEST.patch [ 12594092 ]
          hyoungjunkim created issue -

            People

            • Assignee:
              Unassigned
              Reporter:
              hyoungjunkim
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development