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();

Reply via email to