This is an automated email from the ASF dual-hosted git repository. alexey pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/kudu.git
The following commit(s) were added to refs/heads/master by this push: new 687bef897 KUDU-3354: Deflake DisableWriteWhenExceedingQuotaTest 687bef897 is described below commit 687bef89764640746deb27b3279e936acae4446e Author: zhangyifan27 <chinazhangyi...@163.com> AuthorDate: Thu Jun 2 22:07:32 2022 +0800 KUDU-3354: Deflake DisableWriteWhenExceedingQuotaTest I noticed that the TestDisableWritePrivilegeWhenExceedingSizeQuota test failed some times in latest code review items because of test timeout. From the test log we can see maintenance manager tends to schedule a high score compact operation of some rowsets but do nothing in the end because 'Compaction resulted in no output rows (all input rows were GCed!)'. This leads to failures to schedule flush operations and to hit the size limit until run out of time. I think this weird high perf score most likely has something to do with not explicitly initializing the 'value_' of RowsetInfo after some debugging. The 'value_' can't be updated in FinalizeCDFVector() either, because in the test scenario it has nearly one key in a rowset, and the 'total_width' of the rowset is 0. I run the test 10 times and see no failure with this fix, compared to 5 failures without the fix but with a DCHECK[1] that indicates the compaction error occurred in the test case. [1] https://gerrit.cloudera.org/c/18584/1/src/kudu/tablet/tablet.cc#2135 Change-Id: Id257a1ce04fb2043d79641f770d03393ec5b844b Reviewed-on: http://gerrit.cloudera.org:8080/18584 Reviewed-by: Yingchun Lai <acelyc1112...@gmail.com> Tested-by: Kudu Jenkins Reviewed-by: Alexey Serbin <ale...@apache.org> --- src/kudu/tablet/rowset_info.cc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/kudu/tablet/rowset_info.cc b/src/kudu/tablet/rowset_info.cc index 37d20167b..661de69e7 100644 --- a/src/kudu/tablet/rowset_info.cc +++ b/src/kudu/tablet/rowset_info.cc @@ -451,6 +451,8 @@ void RowSetInfo::SplitKeyRange(const RowSetTree& tree, RowSetInfo::RowSetInfo(RowSet* rs, double init_cdf) : cdf_min_key_(init_cdf), cdf_max_key_(init_cdf), + value_(0.0), + density_(0.0), extra_(new ExtraData()) { extra_->rowset = rs; extra_->base_and_redos_size_bytes = rs->OnDiskBaseDataSizeWithRedos();