Details
-
Improvement
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
0.94.1
-
None
Description
Running a workload with a high query rate against a dataset that fits in cache, I saw a lot of CPU being used in IdLock.getLockEntry, being called by HFileReaderV2.readBlock. Even though it was all cache hits, it was wasting a lot of CPU doing lock management here. I wrote a quick patch to switch to a double-checked locking and it improved throughput substantially for this workload.
Attachments
Attachments
Issue Links
- is related to
-
HBASE-7336 HFileBlock.readAtOffset does not work well with multiple threads
- Closed
-
HBASE-5987 HFileBlockIndex improvement
- Closed
- relates to
-
HBASE-7160 Improve IdLock and remove its minor defects
- Closed