You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Josh Elser (JIRA)" <ji...@apache.org> on 2019/03/05 18:56:00 UTC

[jira] [Commented] (HBASE-21456) Make WALFactory only used for creating WALProviders

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

Josh Elser commented on HBASE-21456:
------------------------------------

Looking back at the 001 patch,
 * Why have both a public constructor and the static {{getInstance()}} method? Can we consolidate in one direction?

Trying to think about how to help folks like Stack and Reid: what about an issue to start updating the book? A (short) chapter on how we see WALs working that briefly illustrate the design would help (and we'd probably write such things later, anyways). This would be helpful to cover things like:
 * What does a WALProvider do?
 * How do I read to a WAL?
 * How do I write to a WAL?
 * How do I "find"/get my WAL?
 * What happened to WALFactory?

> Make WALFactory only used for creating WALProviders
> ---------------------------------------------------
>
>                 Key: HBASE-21456
>                 URL: https://issues.apache.org/jira/browse/HBASE-21456
>             Project: HBase
>          Issue Type: Sub-task
>          Components: wal
>            Reporter: Josh Elser
>            Assignee: Ankit Singhal
>            Priority: Major
>         Attachments: HBASE-21456.HBASE-20952.001.patch, HBASE-21456.HBASE-20952.wip.patch
>
>
> As a Factory, WALFactory should only have one job: creating instances of WALProvider.
> However, over the years, it has been a landing place for lots of wal-related methods (e.g. constructing readers, WALEntryStream, and more). We want all of this to live in the WALProvider.
> We can do this in two steps: have the WALFactory methods invoke the method on the WALProvider (handled elsewhere), then here we can replace usage of the WALFactory "wrapper methods" with the WALProvider itself.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)