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

   Problem:  
   
   When execute a sql query, FE will send a request to BE. The request contains 
tablets and their partitions' visible versions.  BE need to obtains the 
tablet's rowsets in range [0,  visible version].  But sometimes BE may had 
compacted visible version rowset with large version rowsets,  so it can not 
return rowsets just in range [0, visible version]. Then BE will return error 
VERSION_ALREADY_MERGED -230.
   
   Fix:
   
   1. For cumulative and base compaction, BE should compact only those rowsets 
which version is equal or less than visible version.  But if there are a lot of 
 invisible versions,  BE should also compact them to avoid use too memory;
   2. When publish txn succ,  FE will send request to BE to update  partitions 
visible versions;
   3. BE will send its partitions visible versions to FE every one minute.  FE 
will diff them with latest visible versions,  if BE's are fall behind,  FE will 
send request to BE to update  partitions visible versions;
   
   ## Proposed changes
   
   Issue Number: close #xxx
   
   <!--Describe your changes.-->
   
   ## Further comments
   
   If this is a relatively large or complex change, kick off the discussion at 
[d...@doris.apache.org](mailto:d...@doris.apache.org) by explaining why you 
chose the solution you did and what alternatives you considered, etc...
   
   


-- 
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: commits-unsubscr...@doris.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to