You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Todd Lipcon (JIRA)" <ji...@apache.org> on 2019/03/30 05:34:00 UTC
[jira] [Created] (HBASE-22134) JIT deoptimization in Cell.write
Todd Lipcon created HBASE-22134:
-----------------------------------
Summary: JIT deoptimization in Cell.write
Key: HBASE-22134
URL: https://issues.apache.org/jira/browse/HBASE-22134
Project: HBase
Issue Type: Bug
Components: Performance
Affects Versions: 2.0.2
Reporter: Todd Lipcon
I was looking at a profile of a workload which was running compaction very slowly, and saw that the top CPU consumers were from JVM internals regarding deoptimization. I managed to write a little systemtap script to extract the deoptimization log and got the following in a tight loop:
"Uncommon trap: trap_request=0xffffff67 fr.pc=0x00007f85bcdb8644"
"Uncommon trap: reason=unstable_if action=none pc=0x00007f85bcdb8644 method=org.apache.hadoop.hbase.io.encoding.NoneEncoder.write(Lorg/apache/hadoop/hbase/Cell;)I @ 67"
"DEOPT PACKING pc=0x00007f85bcdb8644 sp=0x00007f84d3d83080"
"DEOPT UNPACKING pc=0x00007f85b5005229 sp=0x00007f84d3d82f30 mode 2"
The java stack is spending most of its time at:
java.lang.Thread.State: RUNNABLE
at org.apache.hadoop.hbase.io.encoding.NoneEncoder.write(NoneEncoder.java:57)
at org.apache.hadoop.hbase.io.hfile.NoOpDataBlockEncoder.encode(NoOpDataBlockEncoder.java:55)
at org.apache.hadoop.hbase.io.hfile.HFileBlock$Writer.write(HFileBlock.java:983)
at org.apache.hadoop.hbase.io.hfile.HFileWriterImpl.append(HFileWriterImpl.java:740)
This was with Oracle JDK 1.8.0_112. Likely a JDK bug but perhaps some reorganization of this code path could help avoid triggering the bug.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)