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

Josh Elser commented on HBASE-20952:
------------------------------------

{quote}I'd think this is how we'd lead off? In a write-up. The shiny new WAL 
interface that has had all FS/Path/File purged from it. Tah-dah!
{quote}
 
{quote}A write-up that talked up how existing Provider notion is being 
doubled-down on would help with navigation.
{quote}
 
{quote}the high-level design was more ecumenical
{quote}
 
{quote}I defer to you fellows that are doing the hard work. I'd like to benefit 
from what you've learned though from reviewing existing implementations. I 
don't think I will get this reading a fat patch only.
{quote}
Fantastic. Thanks much, Stack, for penning this. I think this is all "in 
vision". We can draw a better line between things that we need to build in 
HBase and things that a WAL would provide.

> Re-visit the WAL API
> --------------------
>
>                 Key: HBASE-20952
>                 URL: https://issues.apache.org/jira/browse/HBASE-20952
>             Project: HBase
>          Issue Type: Sub-task
>          Components: wal
>            Reporter: Josh Elser
>            Priority: Major
>         Attachments: 20952.v1.txt
>
>
> Take a step back from the current WAL implementations and think about what an 
> HBase WAL API should look like. What are the primitive calls that we require 
> to guarantee durability of writes with a high degree of performance?
> The API needs to take the current implementations into consideration. We 
> should also have a mind for what is happening in the Ratis LogService (but 
> the LogService should not dictate what HBase's WAL API looks like RATIS-272).
> Other "systems" inside of HBase that use WALs are replication and 
> backup&restore. Replication has the use-case for "tail"'ing the WAL which we 
> should provide via our new API. B&R doesn't do anything fancy (IIRC). We 
> should make sure all consumers are generally going to be OK with the API we 
> create.
> The API may be "OK" (or OK in a part). We need to also consider other methods 
> which were "bolted" on such as {{AbstractFSWAL}} and 
> {{WALFileLengthProvider}}. Other corners of "WAL use" (like the 
> {{WALSplitter}} should also be looked at to use WAL-APIs only).
> We also need to make sure that adequate interface audience and stability 
> annotations are chosen.



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

Reply via email to