Details
Description
During object creation "StoreFileScanner", it does not increase the refCount whereas while close it decrements the reader refCount. This will cause refCount to -1 and isReadReference method was returning true (refCount.get() != 0 This is causing store file not to be deleted. This may also cause issue in situation when some thread is holding a scanner but it may actually be closed due to above bug. Impact of this would be really high. Attatching patch for the fix which makes sure if reference is held either thru getScanner method or constructor, ref is always updated. Patch also contains a test which validates the issue.
Attachments
Attachments
Issue Links
- is a child of
-
HBASE-21063 IndexHalfStoreFileReaderGenerator.getLocalIndexScanners creates an scanner which would store file reference count to -1
- Resolved
- is a parent of
-
PHOENIX-4852 IndexHalfStoreFileReaderGenerator.getLocalIndexScanners creates an scanner which would store file reference count to -1
- Open