[
https://issues.apache.org/jira/browse/BOOKKEEPER-137?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13194789#comment-13194789
]
[email protected] commented on BOOKKEEPER-137:
----------------------------------------------------------
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/3661/
-----------------------------------------------------------
Review request for bookkeeper.
Summary
-------
This is an optimization to speed up the case where we have many ledgers and are
writing to them at random (a benchmark case we currently have). Currently, we
create the ledger index file and write the first 1k of it to disk immediately.
With a lot of ledgers being randomly written to, this means a lot of random
writes on the ledger disk. This fix postpones the creation of the index file
and writing of the first 1k until the first flush of the ledger.
This patch includes BOOKKEEPER-136, as they both deal in the same area, and I
found it difficult to separate them.
BOOKKEEPER-135 is not required for this patch, and will need modifications
after this goes in.
This addresses bug BOOKKEEPER-137.
https://issues.apache.org/jira/browse/BOOKKEEPER-137
Diffs
-----
bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/Bookie.java
cb3bb26
bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/FileInfo.java
fa713c8
bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/LedgerCache.java
d2f959b
bookkeeper-server/src/main/java/org/apache/bookkeeper/bookie/LedgerDescriptor.java
728d729
bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieServer.java
beab5e8
bookkeeper-server/src/main/java/org/apache/bookkeeper/util/LocalBookKeeper.java
5706dd8
bookkeeper-server/src/test/java/org/apache/bookkeeper/bookie/BookieLayoutVersionTest.java
c7b07e6
bookkeeper-server/src/test/java/org/apache/bookkeeper/client/BookieRecoveryTest.java
8526db5
bookkeeper-server/src/test/java/org/apache/bookkeeper/test/BaseTestCase.java
7403604
Diff: https://reviews.apache.org/r/3661/diff
Testing
-------
Thanks,
Ivan
> Do not create Ledger index files until absolutely necessary.
> ------------------------------------------------------------
>
> Key: BOOKKEEPER-137
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-137
> Project: Bookkeeper
> Issue Type: Bug
> Reporter: Ivan Kelly
> Assignee: Ivan Kelly
> Fix For: 4.1.0
>
> Attachments: BOOKKEEPER-137.diff, BOOKKEEPER-137.diff
>
>
> This is an optimization to speed up the case where we have many ledgers and
> are writing to them at random (a benchmark case we currently have).
> Currently, we create the ledger index file and write the first 1k of it to
> disk immediately. With a lot of ledgers being randomly written to, this means
> a lot of random writes on the ledger disk. This fix postpones the creation of
> the index file and writing of the first 1k until the first flush of the
> ledger.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira