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

Ivan Kelly commented on BOOKKEEPER-564:
---------------------------------------

{quote}
I don't see how we need to reimplement the sync thread for the new ledger 
storage. we used the same sync thread for both interleaved and skiplist ledger 
storage.
{quote}
We would need to reimplement it in any benchmark/test as the logic for flushing 
is distributed across the two places. And any reimplementation would have to 
behave exactly like the original SyncThread for the bench to be valid. And this 
will drift over time.

{quote}
As I said in last comment, you could use the checkpointer interface to do 
periodical sync as before or based on the calculation of number of bytes 
unflushed (if you don't like the way let ledger storage offering the hint). but 
this interface allowed us and it already helped us to use such hint to optimize 
the bookie to get a sustained higher throughput.{quote}
My point was that there's nothing inherent in the checkpointer interface which 
makes this possible. Syncing periodically can already be done calling #flush, 
by size can be done by comparing marks. Adding the checkpointer interface 
doesn't make any of this easier to do.
                
> 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