Thomas Tauber-Marshall has posted comments on this change. ( http://gerrit.cloudera.org:8080/7793 )
Change subject: IMPALA-4252: Min-max runtime filters for Kudu ...................................................................... Patch Set 8: (10 comments) > I noticed that - BloomFilterBytes is always 0 in the query > profiles. > Can you please veirfy? Yes. This line is always printed to the profile, even if there are no bloom filters being built. We don't expose the mem used by min-max filters in the profile as its negligible. http://gerrit.cloudera.org:8080/#/c/7793/7//COMMIT_MSG Commit Message: http://gerrit.cloudera.org:8080/#/c/7793/7//COMMIT_MSG@26 PS7, Line 26: > Might be worth mentioning why the runtime filters were renumbered in all th Done http://gerrit.cloudera.org:8080/#/c/7793/7/be/src/exec/filter-context.h File be/src/exec/filter-context.h: http://gerrit.cloudera.org:8080/#/c/7793/7/be/src/exec/filter-context.h@106 PS7, Line 106: Status CloneFrom(const FilterContext& from, ObjectPool* pool, RuntimeState* state, > Long lines Done http://gerrit.cloudera.org:8080/#/c/7793/7/be/src/util/min-max-filter.h File be/src/util/min-max-filter.h: http://gerrit.cloudera.org:8080/#/c/7793/7/be/src/util/min-max-filter.h@140 PS7, Line 140: virtual void* GetMax() override { return &max_; } > Nit: not sure why this is using underscores while AlwaysTrue() is using cam Done http://gerrit.cloudera.org:8080/#/c/7793/7/be/src/util/min-max-filter.h@176 PS7, Line 176: StringValue min_; > Can you briefly mention what it means when these are empty - that the value Done http://gerrit.cloudera.org:8080/#/c/7793/6/be/src/util/min-max-filter.cc File be/src/util/min-max-filter.cc: http://gerrit.cloudera.org:8080/#/c/7793/6/be/src/util/min-max-filter.cc@291 PS6, Line 291: out->__isset.min = true; > Oh ok, thanks for clarifying. It looked superficially like a last line copy Done http://gerrit.cloudera.org:8080/#/c/7793/7/be/src/util/min-max-filter.cc File be/src/util/min-max-filter.cc: http://gerrit.cloudera.org:8080/#/c/7793/7/be/src/util/min-max-filter.cc@137 PS7, Line 137: DCHECK(thrift.__isset.max); > Do we have end-to-end tests for these code paths? I think we could generall I've now added e2e and unit tests for all of the truncation scenarios. http://gerrit.cloudera.org:8080/#/c/7793/7/be/src/util/min-max-filter.cc@143 PS7, Line 143: CopyToBuffer(&max_buffer_, &max_, max_.len); > This has a fairly large number of edge cases - it would be good to unit tes Done http://gerrit.cloudera.org:8080/#/c/7793/7/be/src/util/min-max-filter.cc@143 PS7, Line 143: uff > static_cast instead of int()? Done http://gerrit.cloudera.org:8080/#/c/7793/7/be/src/util/min-max-filter.cc@150 PS7, Line 150: > I would have expected that we would modify the trailing values that overflo Done http://gerrit.cloudera.org:8080/#/c/7793/7/be/src/util/min-max-filter.cc@207 PS7, Line 207: out->min.__set_string_val(in.min.string_val); > It seems tricky to test these various error paths in end-to-end tests. Coul As you say, its difficult to test the oom scenario in an e2e test, since the max amount of mem being used here is so small, but its covered with a unit test now. -- To view, visit http://gerrit.cloudera.org:8080/7793 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I02bad890f5b5f78388a3041bf38f89369b5e2f1c Gerrit-Change-Number: 7793 Gerrit-PatchSet: 8 Gerrit-Owner: Thomas Tauber-Marshall <tmarsh...@cloudera.com> Gerrit-Reviewer: Anonymous Coward #345 Gerrit-Reviewer: Lars Volker <l...@cloudera.com> Gerrit-Reviewer: Matthew Jacobs <mjac...@apache.org> Gerrit-Reviewer: Michael Ho <k...@cloudera.com> Gerrit-Reviewer: Mostafa Mokhtar <mmokh...@cloudera.com> Gerrit-Reviewer: Thomas Tauber-Marshall <tmarsh...@cloudera.com> Gerrit-Reviewer: Tim Armstrong <tarmstr...@cloudera.com> Gerrit-Reviewer: Todd Lipcon <t...@apache.org> Gerrit-Comment-Date: Thu, 26 Oct 2017 20:52:06 +0000 Gerrit-HasComments: Yes