You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Guanghao Zhang (Jira)" <ji...@apache.org> on 2019/12/11 00:33:00 UTC

[jira] [Updated] (HBASE-22917) Proc-WAL roll fails always saying someone else has already created log

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

Guanghao Zhang updated HBASE-22917:
-----------------------------------
    Fix Version/s:     (was: 2.2.3)
                   2.2.4

> Proc-WAL roll fails always saying someone else has already created log
> ----------------------------------------------------------------------
>
>                 Key: HBASE-22917
>                 URL: https://issues.apache.org/jira/browse/HBASE-22917
>             Project: HBase
>          Issue Type: Bug
>          Components: proc-v2, wal
>            Reporter: Pankaj Kumar
>            Assignee: Pankaj Kumar
>            Priority: Critical
>             Fix For: 3.0.0, 2.3.0, 2.2.4
>
>
> Recently we met a weird scenario where Procedure WAL roll fails as it is already created by someone else.
> Later while going through the logs and code, observed that during Proc-WAL roll it failed to write the header. On failure file stream is just closed,
> {code}
>  try {
>  ProcedureWALFormat.writeHeader(newStream, header);
>  startPos = newStream.getPos();
>  } catch (IOException ioe) {
>  LOG.warn("Encountered exception writing header", ioe);
>  newStream.close();
>  return false;
>  }
> {code}
> Since we don't delete the corrupted file or increment the *flushLogId*, so on each retry it is trying to create the same *flushLogId* file. However Hmaster failover will resolve this issue, but we should handle it.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)