ramkrishna.s.vasudevan created HBASE-15991:
----------------------------------------------
Summary: CompactingMemstore#InMemoryFlushRunnable should implement
Comparable/Comparator
Key: HBASE-15991
URL: https://issues.apache.org/jira/browse/HBASE-15991
Project: HBase
Issue Type: Bug
Affects Versions: 2.0.0
Reporter: ramkrishna.s.vasudevan
Assignee: ramkrishna.s.vasudevan
Priority: Critical
Fix For: 2.0.0
Configuring CompactingMemstore for a table fails due to the following error
{code}
2016-06-08 23:27:03,761 ERROR [B.defaultRpcServer.handler...
2016-06-08 23:27:03,761 ERROR
[B.defaultRpcServer.handler=38,queue=8,port=16041] ipc.RpcServer: Unexpected
throwable object
java.lang.ClassCastException:
org.apache.hadoop.hbase.regionserver.CompactingMemStore$InMemoryFlushRunnable
cannot be cast to java.lang.Comparable
at
java.util.concurrent.PriorityBlockingQueue.siftUpComparable(PriorityBlockingQueue.java:357)
at
java.util.concurrent.PriorityBlockingQueue.offer(PriorityBlockingQueue.java:489)
at
org.apache.hadoop.hbase.util.StealJobQueue$1.offer(StealJobQueue.java:56)
at
java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1361)
at
org.apache.hadoop.hbase.regionserver.CompactingMemStore.checkActiveSize(CompactingMemStore.java:258)
at
org.apache.hadoop.hbase.regionserver.AbstractMemStore.internalAdd(AbstractMemStore.java:403)
at
org.apache.hadoop.hbase.regionserver.AbstractMemStore.add(AbstractMemStore.java:113)
at org.apache.hadoop.hbase.regionserver.HStore.add(HStore.java:630)
at
org.apache.hadoop.hbase.regionserver.HRegion.applyToMemstore(HRegion.java:3769)
at
org.apache.hadoop.hbase.regionserver.HRegion.applyFamilyMapToMemstore(HRegion.java:3740)
at
org.apache.hadoop.hbase.regionserver.HRegion.doMiniBatchMutate(HRegion.java:3222)
at
org.apache.hadoop.hbase.regionserver.HRegion.batchMutate(HRegion.java:2954)
at
org.apache.hadoop.hbase.regionserver.HRegion.batchMutate(HRegion.java:2896)
at
org.apache.hadoop.hbase.regionserver.RSRpcServices.doBatchOp(RSRpcServices.java:868)
at
org.apache.hadoop.hbase.regionserver.RSRpcServices.doNonAtomicRegionMutation(RSRpcServices.java:830)
at
org.apache.hadoop.hbase.regionserver.RSRpcServices.multi(RSRpcServices.java:2307)
at
org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:34826)
{code}
It is a straight forward fix. But If we implement the Comparable the
compareTo() should be based on what attribute? Should be based on the time?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)