[ 
https://issues.apache.org/jira/browse/BOOKKEEPER-564?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13635940#comment-13635940
 ] 

Sijie Guo commented on BOOKKEEPER-564:
--------------------------------------

{quote}
We don't. We always construct a full bookie, because it's impossible to test 
the ledger storage without the bookie.
Another place I came across this was with the bkvhbase benchmark. I had to 
implement my own SyncThread.
{quote}

you could use ledger storage add/read/flush independently. it is a 
full-functioned module. You could use it as an independent module in other 
place if you like for different purpose. I don't understand how is bad as you 
said.

{quote}
It's a command rather than a guide. And how the ledger storage behaves is 
dependent on the sync thread. This is coupling.
{quote}

if its behavior is part to a bookie's behavior, I don't think it is coupling. 
so I don't know what behaviors that is just belonged to ledger storage and not 
belonged to bookie.

again, why I think it is a guide rather than a command. in checkpointer 
interface, ledger storage just tell a better pointer to the implementation. the 
really execution is decided by checkpointer itself (bookie), it could use the 
guide offered by ledger storage, or could use a different checkpoint based on 
other condition (for example, CheckPoint.MAX), so the control part is up to 
checkpointer. 
                
> Better checkpoint mechanism
> ---------------------------
>
>                 Key: BOOKKEEPER-564
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-564
>             Project: Bookkeeper
>          Issue Type: Improvement
>          Components: bookkeeper-server
>            Reporter: Sijie Guo
>            Assignee: Sijie Guo
>             Fix For: 4.3.0
>
>         Attachments: 0001-BOOKKEEPER-564-Better-checkpoint-mechanism.patch, 
> 0001-BOOKKEEPER-564-Better-checkpoint-mechanism.patch, 
> 0002-BOOKKEEPER-564-Better-checkpoint-mechanism.patch, BOOKKEEPER-564.patch, 
> BOOKKEEPER-564.patch
>
>
> Currently, SyncThread made a checkpoint too frequently, which affects 
> performance. data is writing to entry logger file might be blocked by syncing 
> same entry logger file, which affect bookie to achieve higher throughput. We 
> could schedule checkpoint only when rotating an entry log file. so new 
> incoming entries would be written to newer entry log file and old entry log 
> file could be synced.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to