[
https://issues.apache.org/jira/browse/BOOKKEEPER-246?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13426631#comment-13426631
]
Sijie Guo commented on BOOKKEEPER-246:
--------------------------------------
I had several comments about this jira.
1) the test case you added is for testing ZkLedgerUnderreplicationManager. As
my understanding, we had a clean interface. So I think the tests are using this
interface not depends on a specific implementation. so why not make the test
generic at first time, so we don't need to change it in future.
2) from the experiences on LedgerManager, putting too many entries into a
single znode is not a good idea, so we had HierarchicalLedgerManager. for now,
we are building a new zookeeper layout for under-replication ledgers, we should
not let it to become a new problem. so we'd consider hierarchical for
under-replication ledgers, since we could not assume a too-big znode would not
happen in reality.
3) I am thinking is there any relationship between LedgerManagerFactory and
LedgerUnderreplicationManager. since metadata could be store in other storage
like HBase, it doesn't make sense if we store ledger metadata in HBase while
putting underreplication ledgers in ZookKeeper. so is it possible to add an
interface in LedgerManagerFactory to return its underreplication ledger manager.
{code}
public interface LedgerManagerFactory {
...
public LedgerUnderreplicationManager newLedgerUnderreplicationManager();
}
{code}
so for HierarchicalLedgerManagerFactory and FlatLedgerManagerFactory, they
could use same ZkLedgerUnderreplicationManager.
for other implementation of LedgerManagerFactory, we force them to consider
implementing their underreplication manager. of course, they could also
leverage existed ZkUnderreplicationManager as its solution.
> Recording of underreplication of ledger entries
> -----------------------------------------------
>
> Key: BOOKKEEPER-246
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-246
> Project: Bookkeeper
> Issue Type: Sub-task
> Components: bookkeeper-client, bookkeeper-server
> Reporter: Ivan Kelly
> Assignee: Ivan Kelly
> Fix For: 4.2.0
>
> Attachments: BOOKKEEPER-246.diff, BOOKKEEPER-246.diff,
> BOOKKEEPER-246.diff
>
>
> This JIRA is to decide how to record that entries in a ledger are
> underreplicated.
> I think there is a common understanding (correct me if im wrong), that
> rereplication can be broken into two logically distinct phases. A) Detection
> of entry underreplication & B) Rereplication.
> This subtask is to handle the interaction between these two stages. Stage B
> needs to know what to rereplicate; how should Stage A inform it?
--
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