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

chenglei updated HBASE-26658:
-----------------------------
    Description: 
When {{ASyncFSWAL}} synced to HDFS failed, in {{AsyncFSWAL.syncFailed}} , 
{{AsyncFSWAL.unackedAppends}} are transfered to {{AsyncFSWAL.toWriteAppends}} 
to avoid data loss, but {{AsyncFSWAL.unackedAppends}} itself is not cleared. I 
think there is no need to continue retain them in {{AsyncFSWAL.unackedAppends}} 
because we would open a new HDFS pipeline to resend the 
{{AsyncFSWAL.unackedAppends}}.To make the things worse, if syncing to HDFS 
failed all the time,{{AsyncFSWAL.unackedAppends}} would be overwhelmed with 
repetitive data.
BTW :  It would also simplify the logic for fixing HBASE-25905, current fix for 
HBASE-25905 is somewhat hard to understand. I think the problem to cause 
HBASE-25905 is  that {{AsyncFSWAL.unackedAppends}}  could not exactly reflect 
the *unacked* for current HDFS pipeline. If we clear 
{{AsyncFSWAL.unackedAppends}} after transferring them to 
{{AsyncFSWAL.toWriteAppends}}, HBASE-25905 could also avoid.

  was:When ASyncFSWAL synced to HDFS failed, in {{AsyncFSWAL.syncFailed}} 
{{AsyncFSWAL.unackedAppends}} are transfered to {{}}


> AsyncFSWAL.unackedAppends should clear after  transfered to  
> AsyncFSWAL.toWriteAppends
> --------------------------------------------------------------------------------------
>
>                 Key: HBASE-26658
>                 URL: https://issues.apache.org/jira/browse/HBASE-26658
>             Project: HBase
>          Issue Type: Bug
>          Components: wal
>    Affects Versions: 3.0.0-alpha-2, 2.4.9
>            Reporter: chenglei
>            Priority: Major
>
> When {{ASyncFSWAL}} synced to HDFS failed, in {{AsyncFSWAL.syncFailed}} , 
> {{AsyncFSWAL.unackedAppends}} are transfered to {{AsyncFSWAL.toWriteAppends}} 
> to avoid data loss, but {{AsyncFSWAL.unackedAppends}} itself is not cleared. 
> I think there is no need to continue retain them in 
> {{AsyncFSWAL.unackedAppends}} because we would open a new HDFS pipeline to 
> resend the {{AsyncFSWAL.unackedAppends}}.To make the things worse, if syncing 
> to HDFS failed all the time,{{AsyncFSWAL.unackedAppends}} would be 
> overwhelmed with repetitive data.
> BTW :  It would also simplify the logic for fixing HBASE-25905, current fix 
> for HBASE-25905 is somewhat hard to understand. I think the problem to cause 
> HBASE-25905 is  that {{AsyncFSWAL.unackedAppends}}  could not exactly reflect 
> the *unacked* for current HDFS pipeline. If we clear 
> {{AsyncFSWAL.unackedAppends}} after transferring them to 
> {{AsyncFSWAL.toWriteAppends}}, HBASE-25905 could also avoid.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to