Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/19281 )
Change subject: KUDU-3406 memory budgeting for CompactRowSetsOp ...................................................................... Patch Set 8: (7 comments) http://gerrit.cloudera.org:8080/#/c/19281/8//COMMIT_MSG Commit Message: http://gerrit.cloudera.org:8080/#/c/19281/8//COMMIT_MSG@65 PS8, Line 65: metric is yet available (default is 3.0) > nit: default is 5.0 right now Ah, good catch! Updated. http://gerrit.cloudera.org:8080/#/c/19281/8/src/kudu/tablet/compaction.cc File src/kudu/tablet/compaction.cc: http://gerrit.cloudera.org:8080/#/c/19281/8/src/kudu/tablet/compaction.cc@748 PS8, Line 748: // Since 'max_memory_usage_' isn't protected against concurrent access, : // this method should be invoked from the same thread that performs merge : // compaction. > Can we make use of compact_flush_lock here? I don't think compact_flush_lock isn't for this purpose. If trying to against concurrent access, the alternative would be either making max_memory_usage_ an atomic or adding a spinlock to acquire when setting or reading. Most importantly, currently there isn't a need to protect from concurrent access here since this method is called from one thread only. If something changes in that regard, this code can be updated accordingly. http://gerrit.cloudera.org:8080/#/c/19281/7/src/kudu/tablet/compaction_policy.cc File src/kudu/tablet/compaction_policy.cc: http://gerrit.cloudera.org:8080/#/c/19281/7/src/kudu/tablet/compaction_policy.cc@174 PS7, Line 174: > nit: implemented in such Done http://gerrit.cloudera.org:8080/#/c/19281/8/src/kudu/tablet/compaction_policy.cc File src/kudu/tablet/compaction_policy.cc: http://gerrit.cloudera.org:8080/#/c/19281/8/src/kudu/tablet/compaction_policy.cc@77 PS8, Line 77: postone > nit:postpone Done http://gerrit.cloudera.org:8080/#/c/19281/8/src/kudu/tablet/compaction_policy.cc@112 PS8, Line 112: false > Just an observation: During server startup, even if --rowset_compaction_enforce_preset_factor=true, the --rowset_compaction_delta_memory_factor is used as a factor for the memory estimation since not enough stats is yet available through the compact_rs_mem_usage_to_deltas_size_ratio. http://gerrit.cloudera.org:8080/#/c/19281/8/src/kudu/tablet/tablet.cc File src/kudu/tablet/tablet.cc: http://gerrit.cloudera.org:8080/#/c/19281/8/src/kudu/tablet/tablet.cc@2187 PS8, Line 2187: > nit: extra space Done http://gerrit.cloudera.org:8080/#/c/19281/8/src/kudu/tablet/tablet.cc@2190 PS8, Line 2190: revelant > nit: relevant Done -- To view, visit http://gerrit.cloudera.org:8080/19281 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I89c171284944831e95c45a993d85fbefe89048cf Gerrit-Change-Number: 19281 Gerrit-PatchSet: 8 Gerrit-Owner: Alexey Serbin <[email protected]> Gerrit-Reviewer: Abhishek Chennaka <[email protected]> Gerrit-Reviewer: Alexey Serbin <[email protected]> Gerrit-Reviewer: Ashwani Raina <[email protected]> Gerrit-Reviewer: Attila Bukor <[email protected]> Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Kurt Deschler <[email protected]> Gerrit-Reviewer: Tidy Bot (241) Gerrit-Reviewer: Yifan Zhang <[email protected]> Gerrit-Reviewer: Yingchun Lai <[email protected]> Gerrit-Comment-Date: Tue, 20 Dec 2022 20:51:39 +0000 Gerrit-HasComments: Yes
