hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matteo Bertozzi (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HBASE-13651) Handle StoreFileScanner FileNotFoundException
Date Sat, 09 May 2015 13:46:00 GMT

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

Matteo Bertozzi updated HBASE-13651:
------------------------------------
    Description: 
Example:
 * Machine-1 is serving Region-X and start compaction
 * Machine-1 goes in GC pause
 * Region-X gets reassigned to Machine-2
 * Machine-1 exit from the GC pause
 * Machine-1 (re)moves the compacted files
 * Machine-1 get the lease and shutdown

Machine-2 has now tons of FileNotFoundException on scan. If we reassign the region everything
is ok, because we pickup the files compacted by Machine-1.
This problem doesn't happen in the new code 1.0+  (i think but I haven't checked, it may be
1.1) where we write on the WAL the compaction event before (re)moving the files.

A workaround is handling FileNotFoundException and refresh the store files, or shutdown the
region and reassign. the first one is easy in 1.0+ the second one requires more work because
at the moment we don't have the code to notify the master that the RS is closing the region,
alternatively we can shutdown the entire RS (it is not a good solution but the case is rare
enough)

  was:
Example:
 * Machine-1 is serving Region-X and start compaction
 * Machine-1 goes in GC pause
 * Region-X gets reassigned to Machine-2
 * Machine-2 exit from the GC pause
 * Machine-2 (re)moves the compacted files
 * Machine-2 get the lease and shutdown

Machine-2 has now tons of FileNotFoundException on scan. If we reassign the region everything
is ok, because we pickup the files compacted by Machine-1.
This problem doesn't happen in the new code 1.0+  (i think but I haven't checked, it may be
1.1) where we write on the WAL the compaction event before (re)moving the files.

A workaround is handling FileNotFoundException and refresh the store files, or shutdown the
region and reassign. the first one is easy in 1.0+ the second one requires more work because
at the moment we don't have the code to notify the master that the RS is closing the region,
alternatively we can shutdown the entire RS (it is not a good solution but the case is rare
enough)


> Handle StoreFileScanner FileNotFoundException
> ---------------------------------------------
>
>                 Key: HBASE-13651
>                 URL: https://issues.apache.org/jira/browse/HBASE-13651
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.94.27, 0.98.10.1
>            Reporter: Matteo Bertozzi
>            Assignee: Matteo Bertozzi
>            Priority: Minor
>         Attachments: HBASE-13651-0.94-draft.patch, HBASE-13651-draft.patch
>
>
> Example:
>  * Machine-1 is serving Region-X and start compaction
>  * Machine-1 goes in GC pause
>  * Region-X gets reassigned to Machine-2
>  * Machine-1 exit from the GC pause
>  * Machine-1 (re)moves the compacted files
>  * Machine-1 get the lease and shutdown
> Machine-2 has now tons of FileNotFoundException on scan. If we reassign the region everything
is ok, because we pickup the files compacted by Machine-1.
> This problem doesn't happen in the new code 1.0+  (i think but I haven't checked, it
may be 1.1) where we write on the WAL the compaction event before (re)moving the files.
> A workaround is handling FileNotFoundException and refresh the store files, or shutdown
the region and reassign. the first one is easy in 1.0+ the second one requires more work because
at the moment we don't have the code to notify the master that the RS is closing the region,
alternatively we can shutdown the entire RS (it is not a good solution but the case is rare
enough)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message