You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Bryan Beaudreault (Jira)" <ji...@apache.org> on 2023/09/12 19:49:00 UTC

[jira] [Assigned] (HBASE-28079) Unhandled TableExistsException and NamespaceExistException in BackupSystemTable

     [ https://issues.apache.org/jira/browse/HBASE-28079?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bryan Beaudreault reassigned HBASE-28079:
-----------------------------------------

    Assignee: Bryan Beaudreault

> Unhandled TableExistsException and NamespaceExistException in BackupSystemTable
> -------------------------------------------------------------------------------
>
>                 Key: HBASE-28079
>                 URL: https://issues.apache.org/jira/browse/HBASE-28079
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Bryan Beaudreault
>            Assignee: Bryan Beaudreault
>            Priority: Major
>              Labels: patch-available
>
> Most backup-related operations instantiate a BackupSystemTable object. The first thing it does is check that the {{backup}} namespace and backup-related tables exist, and create them if not. One way in which this can be triggered is via LoadIncrementalHFiles, which can load files with a configurable number of threads. When bulkLoadHFile is called, a preCommitHFile hook is triggered which does the above. With a certain level of concurrency, one can easily trigger a race condition on creating the namespace or tables. This exception bubbles up and fails the bulkload.
> We should catch TableExistsException and NamespaceExistException in BackupSystemTable initialization so that these do not cause client pain.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)