deardeng opened a new pull request, #67317:
URL: https://github.com/apache/doris/pull/67317

   remove() bumped _queue_evict_size_metrics and _total_evict_size_metrics 
unconditionally, while the physical delete happened only for DOWNLOADED blocks. 
Removing an EMPTY or SKIP_CACHE block therefore charged a full range().size() 
-- for an EMPTY block the entire preallocated block size -- while freeing 
nothing on disk. That is why the reported eviction rate ran far above read plus 
write traffic combined: 300MiB/s average against 70MiB/s of real traffic, with 
the difference coming from blocks created and dropped without ever being 
downloaded.
   
   Read the block state once, move both counters into the DOWNLOADED branch, 
and add evict_not_downloaded_size / evict_not_downloaded_num so that churn 
becomes measurable instead of hiding inside the eviction rate. DOWNLOADING 
blocks are not counted here: they are only tagged for deletion and get counted 
on the removal that actually frees them.
   
   test_evict_metrics_only_count_downloaded_blocks covers both directions, 
including the per-queue counter, which the total alone would not catch. The 
evict_in_advance test now restores the two configs it changes, so it cannot 
leave background eviction enabled for whatever runs after it under 
--gtest_shuffle.
   
   ### What problem does this PR solve?
   
   Issue Number: close #xxx
   
   Related PR: #xxx
   
   Problem Summary:
   
   ### Release note
   
   None
   
   ### Check List (For Author)
   
   - Test <!-- At least one of them must be included. -->
       - [ ] Regression test
       - [x] Unit Test
       - [ ] Manual test (add detailed scripts or steps below)
       - [ ] No need to test or manual test. Explain why:
           - [ ] This is a refactor/code format and no logic has been changed.
           - [ ] Previous test can cover this change.
           - [ ] No code files have been changed.
           - [ ] Other reason <!-- Add your reason?  -->
   
   - Behavior changed:
       - [x] No.
       - [ ] Yes. <!-- Explain the behavior change -->
   
   - Does this need documentation?
       - [x] No.
       - [ ] Yes. <!-- Add document PR link here. eg: 
https://github.com/apache/doris-website/pull/1214 -->
   
   ### Check List (For Reviewer who merge this PR)
   
   - [ ] Confirm the release note
   - [ ] Confirm test cases
   - [ ] Confirm document
   - [ ] Add branch pick label <!-- Add branch pick label that this PR should 
merge into -->
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to