Elliott Clark created HBASE-15014:
-------------------------------------
Summary: filterCellByStore in WALsplitter is awful for performance
Key: HBASE-15014
URL: https://issues.apache.org/jira/browse/HBASE-15014
Project: HBase
Issue Type: Bug
Reporter: Elliott Clark
Testing the latest 1.2 I see this when there is a regionserver that crashes.
{code}
Thread 921 (RS_LOG_REPLAY_OPS-hbase2698:16020-0-Writer-1):
State: RUNNABLE
Blocked count: 6354
Waited count: 6249
Stack:
org.apache.hadoop.hbase.KeyValue.equals(KeyValue.java:1128)
java.util.ArrayList.indexOf(ArrayList.java:317)
java.util.ArrayList.contains(ArrayList.java:300)
java.util.ArrayList.batchRemove(ArrayList.java:720)
java.util.ArrayList.removeAll(ArrayList.java:690)
org.apache.hadoop.hbase.wal.WALSplitter$LogRecoveredEditsOutputSink.filterCellByStore(WALSplitter.java:1529)
org.apache.hadoop.hbase.wal.WALSplitter$LogRecoveredEditsOutputSink.append(WALSplitter.java:1557)
org.apache.hadoop.hbase.wal.WALSplitter$WriterThread.writeBuffer(WALSplitter.java:1113)
org.apache.hadoop.hbase.wal.WALSplitter$WriterThread.doRun(WALSplitter.java:1105)
org.apache.hadoop.hbase.wal.WALSplitter$WriterThread.run(WALSplitter.java:1075)
Thread 920 (RS_LOG_REPLAY_OPS-hbase2698:16020-0-Writer-0):
State: TIMED_WAITING
Blocked count: 17560
Waited count: 19695
Stack:
java.lang.Object.wait(Native Method)
org.apache.hadoop.hbase.wal.WALSplitter$WriterThread.doRun(WALSplitter.java:1093)
org.apache.hadoop.hbase.wal.WALSplitter$WriterThread.run(WALSplitter.java:1075)
Thread 919 (RS_LOG_REPLAY_OPS-hbase2698:16020-0):
State: TIMED_WAITING
Blocked count: 115
Waited count: 976
Stack:
java.lang.Object.wait(Native Method)
org.apache.hadoop.hbase.wal.WALSplitter$EntryBuffers.appendEntry(WALSplitter.java:944)
org.apache.hadoop.hbase.wal.WALSplitter.splitLogFile(WALSplitter.java:365)
org.apache.hadoop.hbase.wal.WALSplitter.splitLogFile(WALSplitter.java:236)
org.apache.hadoop.hbase.regionserver.SplitLogWorker$1.exec(SplitLogWorker.java:104)
org.apache.hadoop.hbase.regionserver.handler.WALSplitterHandler.process(WALSplitterHandler.java:72)
org.apache.hadoop.hbase.executor.EventHandler.run(EventHandler.java:128)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
java.lang.Thread.run(Thread.java:745)
{code}
This has been going on for >10 mins.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)