[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-836?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jia Zhai updated BOOKKEEPER-836:
--------------------------------
    Attachment: BOOKKEEPER-836-v2.patch

Thanks a lot for the comments from Flavio and Sijie.
>From my understanding, the way "progressively release old logs instead of 
>waiting until the end of the process" may involve more waiting time in 
>doCompactEntryLogs(), we may need more investigate and test, so not do it 
>here, If possiable we could open another ticket in Jira for this way. 

The changes in this new patch:
1, Added a new param to choose whether do force GC or suspend GC, when disk is 
full or almost full.
2, Remove unnecessary "synchronized" in method suspend and resume GC.


> disable compaction when disk becomes full, otherwise compaction will fill up 
> disk quickly
> -----------------------------------------------------------------------------------------
>
>                 Key: BOOKKEEPER-836
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-836
>             Project: Bookkeeper
>          Issue Type: Improvement
>          Components: bookkeeper-server
>    Affects Versions: 4.2.3
>            Reporter: Jia Zhai
>            Assignee: Jia Zhai
>             Fix For: 4.4.0, 4.3.2
>
>         Attachments: BOOKKEEPER-836-v2.patch, BOOKKEEPER-836.patch
>
>
> In doCompactEntryLogs, Entries are added to new logs, while all old logs were 
> not released until the end of handling.  So during the process, a lot of 
> space will be used. Need to disable compaction when disk becomes full, 
> otherwise compaction will fill up disk quickly.
> I would like to change old "forced garbage collection" logic, and suspend 
> major compaction when it reaches warn threshold, suspend minor compaction 
> when it reaches critical threshold.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to