[
https://issues.apache.org/jira/browse/BOOKKEEPER-153?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13187686#comment-13187686
]
Sijie Guo commented on BOOKKEEPER-153:
--------------------------------------
yes parseLedgerConfig did throw an IOException.
since the bug is found in hub server, topic can't be acquired due to hub server
can't closing such kind ledger. if we don't add code in LedgerOpenOp, we have
to find all such kind ledgers and handle them manually (maybe delete them).
throwing IOException here is OK for me. but I am not sure do we need to keep
backward compatibility to handle data/metadata produced by old version. what is
your opinion?
> Ledger can't be opened or closed due to zero-length metadata
> ------------------------------------------------------------
>
> Key: BOOKKEEPER-153
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-153
> Project: Bookkeeper
> Issue Type: Bug
> Components: bookkeeper-client
> Affects Versions: 4.0.0
> Reporter: Sijie Guo
> Assignee: Sijie Guo
> Fix For: 4.1.0
>
> Attachments: BK-153.patch
>
>
> Currently creating ledger path and writing ledger metadata are not in a
> transaction. so if the bookkeeper client (hub server uses bookkeeper client)
> is crashed, we have a ledger existed in zookeeper with zero-length metadata.
> we can't open/close it.
> we should create the ledger path with initial metadata to avoid such case.
> besides that, we need to add code in openLedgerOp to handle zero-length
> metadata for backward compatibility.
--
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