[
https://issues.apache.org/jira/browse/HBASE-16964?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15627758#comment-15627758
]
ramkrishna.s.vasudevan commented on HBASE-16964:
------------------------------------------------
Overall looks good. Few nits
FailedArchiveException - Pls add InterfaceAudience to this class.
bq./ TODO: should this throw FailedArchiveException instead, so we don't lose
which files failed?
This TODO is needed I feel. Infact that is where I too thought of changing it.
bq.catch (FileNotFoundException fnfe) {
This am not very sure. I added when I was doing this asynchronous compacted
files discharger but later removed it as I was not sure of other consequences.
For eg, Mob and probably secondary region may want those files to be available
and in case of FNFE throwing excepiton is better or not I was not sure. But as
far as I am concerned it is fine I believe considering we have asynchronous
archival in place.
Test looks good to me.
And not you - HFileArchiver does not have IA interface specified. Is it private
or public ? We can add that too in this patch?
> Successfully archived files are not cleared from compacted store file list if
> archiving of any file fails
> ---------------------------------------------------------------------------------------------------------
>
> Key: HBASE-16964
> URL: https://issues.apache.org/jira/browse/HBASE-16964
> Project: HBase
> Issue Type: Bug
> Components: regionserver
> Reporter: Gary Helmling
> Assignee: Gary Helmling
> Priority: Blocker
> Fix For: 2.0.0, 1.3.0, 1.4.0
>
> Attachments: HBASE-16964.patch
>
>
> In HStore.removeCompactedFiles(), we only clear archived files from
> StoreFileManager's list of compactedfiles if _all_ files were archived
> successfully. If we encounter an error archiving any of the files, then any
> files which were already archived will remain in the list of compactedfiles.
> Even worse, this means that all subsequent attempts to archive the list of
> compacted files will fail (as the previously successfully archived files
> still in the list will now throw FileNotFoundException), and the list of
> compactedfiles will never be cleared from that point on.
> Finally, when the region closes, we will again throw an exception out of
> HStore.removeCompactedFiles(), in this case causing a regionserver abort.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)