[
https://issues.apache.org/jira/browse/BOOKKEEPER-137?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13201173#comment-13201173
]
Ivan Kelly commented on BOOKKEEPER-137:
---------------------------------------
{quote}suppose the code running in journalLayoutVersion=1 directory. the first
time is OK, since there would be no meta entries. but the code would add meta
entries then. the next time bookie restarts, journalLayoutVersion is still 1,
it would throw IOException.
so do we need to upgrade the layout version when we run new code in old data
directories? {quote}
This is true, I need to add upgrade logic. I may separate this out into another
JIRA.
{quote}
if a ledger existed before, getHandle would checkAccess of masterKey, which
would call FileInfo#readHeader. Then isMasterKeyPersisted would call
FileInfo#readHeader again, which is not necessary.
I think it would be easy to avoid readHeader twice.
{quote}
Im not clear on this point. checkAccess doesn't call #readHeader at all.
> 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,
> 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