Lars Volker has posted comments on this change. Change subject: IMPALA-3643/IMPALA-5344: Fix FE tests on Java 8 ......................................................................
Patch Set 2: (6 comments) Thank you for the review. Please see my inline comments and PS4. http://gerrit.cloudera.org:8080/#/c/7073/2//COMMIT_MSG Commit Message: PS2, Line 10: replacing > Did you use a script to do a global replace in fe or did you pick-and-choos I picked the ones in files related to tests that were failing, and replaced those that occurred in loops or otherwise looked suspicious. PS2, Line 10: LinkedHashMap > I assume LinkedHashThing takes more memory than HashThing. Is this somethin Yes, LinkedHashThing has two references for the linked list, so it takes a bit more space. In return, it provides faster iteration. Here are the sources of the Node element for HashMap and LinkedHashMap: http://hg.openjdk.java.net/jdk8/jdk8/jdk/file/687fd7c7986d/src/share/classes/java/util/HashMap.java#l278 http://hg.openjdk.java.net/jdk8/jdk8/jdk/file/687fd7c7986d/src/share/classes/java/util/LinkedHashMap.java#l192 I couldn't find benchmarks on the web, let me know if you think we should do one. PS2, Line 13: a > long line Done PS2, Line 13: Java 7 and Java 8 > OpenJDK or Oracle or both? I ran tests for both, so I clarified it in the commit message. http://gerrit.cloudera.org:8080/#/c/7073/2/testdata/workloads/functional-planner/queries/PlannerTest/order.test File testdata/workloads/functional-planner/queries/PlannerTest/order.test: Line 694: | pass-through-operands: all > Are these plans functionally the same? If not, which one is better? I suspect the new one is better, since it skips the extra materialization step. However, Taras may want to have a look at this since having less plans with non-all pass-through-operands may reduce coverage. http://gerrit.cloudera.org:8080/#/c/7073/2/testdata/workloads/functional-planner/queries/PlannerTest/tpch-nested.test File testdata/workloads/functional-planner/queries/PlannerTest/tpch-nested.test: Line 2411: predicates on o: !empty(o.o_lineitems), o_orderstatus = 'F' > Does this difference show up also in the execution? If so, should we pick o My assumption was that we only do cost based ordering for join predicates and that normal conjuncts are evaluated on the materialized tuples as a whole. -- To view, visit http://gerrit.cloudera.org:8080/7073 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: Iad8e1dccec3a51293a109c420bd2b88b9d1e0625 Gerrit-PatchSet: 2 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Lars Volker <[email protected]> Gerrit-Reviewer: Jim Apple <[email protected]> Gerrit-Reviewer: Lars Volker <[email protected]> Gerrit-HasComments: Yes
