You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Chia-Ping Tsai (JIRA)" <ji...@apache.org> on 2017/12/13 06:39:00 UTC
[jira] [Updated] (HBASE-19502) Make sure we have closed all
StoreFileScanner if we fail to open any StoreFileScanners
[ https://issues.apache.org/jira/browse/HBASE-19502?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Chia-Ping Tsai updated HBASE-19502:
-----------------------------------
Fix Version/s: 1.2.7
1.4.1
> Make sure we have closed all StoreFileScanner if we fail to open any StoreFileScanners
> --------------------------------------------------------------------------------------
>
> Key: HBASE-19502
> URL: https://issues.apache.org/jira/browse/HBASE-19502
> Project: HBase
> Issue Type: Sub-task
> Components: regionserver, Scanners
> Reporter: Chia-Ping Tsai
> Assignee: Chia-Ping Tsai
> Fix For: 2.0.0, 1.4.1, 1.2.7, 1.3.3
>
>
> {code:title=StoreFileScanner.java}
> public static List<StoreFileScanner> getScannersForStoreFiles(Collection<StoreFile> files,
> boolean cacheBlocks, boolean usePread, boolean isCompaction, boolean canUseDrop,
> ScanQueryMatcher matcher, long readPt, boolean isPrimaryReplica) throws IOException {
> List<StoreFileScanner> scanners = new ArrayList<StoreFileScanner>(files.size());
> List<StoreFile> sorted_files = new ArrayList<>(files);
> Collections.sort(sorted_files, StoreFile.Comparators.SEQ_ID);
> for (int i = 0; i < sorted_files.size(); i++) {
> StoreFile.Reader r = sorted_files.get(i).createReader(canUseDrop);
> r.setReplicaStoreFile(isPrimaryReplica);
> StoreFileScanner scanner = r.getStoreFileScanner(cacheBlocks, usePread, isCompaction, readPt,
> i, matcher != null ? !matcher.hasNullColumnInQuery() : false);
> scanners.add(scanner);
> }
> return scanners;
> }
> {code}
> The missed decrement of ref count will obstruct the cleanup of compacted files.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)