You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@asterixdb.apache.org by "Till Westmann (Code Review)" <de...@asterixdb.apache.org> on 2019/05/06 15:53:40 UTC

Change in asterixdb[master]: [ASTERIXDB-2532][RT] per-operator profiling

Till Westmann has posted comments on this change. ( https://asterix-gerrit.ics.uci.edu/3226 )

Change subject: [ASTERIXDB-2532][RT] per-operator profiling
......................................................................


Patch Set 36:

(11 comments)

https://asterix-gerrit.ics.uci.edu/#/c/3226/36/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryServiceServlet.java
File asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryServiceServlet.java:

https://asterix-gerrit.ics.uci.edu/#/c/3226/36/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryServiceServlet.java@362
PS36, Line 362: ObjectMapper om = new ObjectMapper();
Do the other printers use Jackson as well?


https://asterix-gerrit.ics.uci.edu/#/c/3226/36/asterixdb/asterix-app/src/test/resources/runtimets/results/profile/full-scan/full-scan.3.regexjson
File asterixdb/asterix-app/src/test/resources/runtimets/results/profile/full-scan/full-scan.3.regexjson:

https://asterix-gerrit.ics.uci.edu/#/c/3226/36/asterixdb/asterix-app/src/test/resources/runtimets/results/profile/full-scan/full-scan.3.regexjson@61
PS36, Line 61:      
looks wrong


https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/aggreg/NestedPlansRunningAggregatorFactory.java
File hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/aggreg/NestedPlansRunningAggregatorFactory.java:

https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/aggreg/NestedPlansRunningAggregatorFactory.java@68
PS36, Line 68: IFrameWriter fw = outputWriter;
             :         if (profile) {
             :             fw = TimedFrameWriter.time(outputWriter, ctx, "Aggregate Writer");
             :         } else if (enforce) {
             :             fw = EnforceFrameWriter.enforce(outputWriter);
             :         }
need to test different combinations of profile and enforce


https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/meta/PipelineAssembler.java
File hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/meta/PipelineAssembler.java:

https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/algebricks/algebricks-runtime/src/main/java/org/apache/hyracks/algebricks/runtime/operators/meta/PipelineAssembler.java@108
PS36, Line 108: start = (enforce && !profile) 
What is the relationship between profile and enforce?


https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/profiling/IStatsCollector.java
File hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/profiling/IStatsCollector.java:

https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/job/profiling/IStatsCollector.java@43
PS36, Line 43: HyracksDataException
I think that this is not needed.


https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/rewriter/runtime/SuperActivityOperatorNodePushable.java
File hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/rewriter/runtime/SuperActivityOperatorNodePushable.java:

https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/rewriter/runtime/SuperActivityOperatorNodePushable.java@157
PS36, Line 157: (enforce && !profile)
again, what's the relationship? we should have (and enforce) one policy


https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-nc/src/main/java/org/apache/hyracks/control/nc/work/StartTasksWork.java
File hyracks-fullstack/hyracks/hyracks-control/hyracks-control-nc/src/main/java/org/apache/hyracks/control/nc/work/StartTasksWork.java:

https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-nc/src/main/java/org/apache/hyracks/control/nc/work/StartTasksWork.java@183
PS36, Line 183: (enforce && !profile)
clarify relationship


https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/group/sort/SortGroupByOperatorDescriptor.java
File hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/group/sort/SortGroupByOperatorDescriptor.java:

https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/group/sort/SortGroupByOperatorDescriptor.java@149
PS36, Line 149: IRunGenerator
no "enforce" for run generators?


https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/sort/ExternalSortOperatorDescriptor.java
File hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/sort/ExternalSortOperatorDescriptor.java:

https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/sort/ExternalSortOperatorDescriptor.java@84
PS36, Line 84: IRunGenerator
No enforce?


https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/sort/IRunGenerator.java
File hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/sort/IRunGenerator.java:

https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/sort/IRunGenerator.java@37
PS36, Line 37: getSorter
Trying to make sense of this interface. What's the relationship between the sorter and the runs?


https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/sort/TimedRunGenerator.java
File hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/sort/TimedRunGenerator.java:

https://asterix-gerrit.ics.uci.edu/#/c/3226/36/hyracks-fullstack/hyracks/hyracks-dataflow-std/src/main/java/org/apache/hyracks/dataflow/std/sort/TimedRunGenerator.java@53
PS36, Line 53: catch (HyracksDataException e)
I think that this is not needed.



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

Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Ie16f3901ae5b32920d8552d5fd1ec8bb6e2ec8ae
Gerrit-Change-Number: 3226
Gerrit-PatchSet: 36
Gerrit-Owner: Ian Maxon <im...@uci.edu>
Gerrit-Reviewer: Ali Alsuliman <al...@gmail.com>
Gerrit-Reviewer: Anon. E. Moose (1000171)
Gerrit-Reviewer: Ian Maxon <im...@uci.edu>
Gerrit-Reviewer: Jenkins <je...@fulliautomatix.ics.uci.edu>
Gerrit-Reviewer: Till Westmann <ti...@apache.org>
Gerrit-Comment-Date: Mon, 06 May 2019 15:53:40 +0000
Gerrit-HasComments: Yes