Details
-
Bug
-
Status: Closed
-
Blocker
-
Resolution: Fixed
-
None
-
None
-
Reviewed
-
Description
We open the RegionServerScanner with STREAM as following:
RegionScannerImpl#initializeScanners |---> HStore#getScanner |----------> StoreScanner() |-------> StoreFileScanner#getScannersForStoreFiles |------> HStoreFile#getStreamScanner #1
In #1, we put the StoreFileReader into a concurrent hash map streamReaders, but not remove the StreamReader from streamReaders until closing the store file.
So if we scan with stream with so many times, the streamReaders hash map will be exploded. we can see the heap dump in the attached heap-dump.jpg.
I found this bug, because when i benchmark the scan performance by using YCSB in a cluster (heap size of RS is 50g), the Rs was easy to occur a long time full gc ( ~ 110 sec)....
Attachments
Attachments
Issue Links
- is caused by
-
HBASE-20704 Sometimes some compacted storefiles are not archived on region close
- Closed
- links to