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

Rakesh R commented on BOOKKEEPER-564:
-------------------------------------

[[email protected]], thanks for pointing out the cyclic dependency. Also, I 
agree to keep the checkpointing inside the LedgerStorage, as he is owning the 
entrylogger.

bq.Journal implements CheckpointListener
Are you thinking like, EntryLogListener#onRotateEntryLog will trigger the 
checkpointing and after the successful completion will notify the Journal about 
the flushedLogMark, which inturn moves the "lastmark" pointer. 

Will have the following interfaces to generalize the checkpointing algo.

InterLeavedStorage implements EntryLogListener#onRotateEntryLog() to do the 
checkpointing.
Journal implements CheckpointListener#checkpointOccurred(CheckPoint) which 
moves the "lastmark" pointer.

Am I missing anything?

Also, it would be good to move EntryLogListener outside, presently its with 
EntryLogger.

                
> 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