[ 
https://issues.apache.org/jira/browse/PHOENIX-3797?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16031966#comment-16031966
 ] 

Lars Hofhansl commented on PHOENIX-3797:
----------------------------------------

Some more ideas that [~jamestaylor] and I were brainstorming. Essentially we 
need to find the two region start keys for the local index rows that got merged 
together into one.
One solution is to find the first key, extract its region start key, then 
create a second scanner that is guaranteed to start after all keys that start 
with that region key (so that scanner will find the rows from the 2nd former 
region that got merged).
Or we can use a reverse scanner to find the last key, and then extract the 2nd 
region start key from there.

Perhaps there are easier ways to find the start keys of the previous regions 
that got merged?

In either cases we'd have a scanner that wraps these two scanners and does a 
mergesort between them.

> Local Index - Compaction fails on table with local index due to 
> non-increasing bloom keys
> -----------------------------------------------------------------------------------------
>
>                 Key: PHOENIX-3797
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-3797
>             Project: Phoenix
>          Issue Type: Bug
>         Environment: Head of 4.x-HBase-0.98 with PHOENIX-3796 patch applied. 
> HBase 0.98.23-hadoop2
>            Reporter: Mujtaba Chohan
>            Assignee: Ankit Singhal
>            Priority: Blocker
>             Fix For: 4.11.0
>
>         Attachments: PHOENIX-3797.patch, PHOENIX-3797_v2.patch
>
>
> Compaction fails on table with local index.
> {noformat}
> 2017-04-19 16:37:56,521 ERROR 
> [RS:0;host:59455-smallCompactions-1492644947594] 
> regionserver.CompactSplitThread: Compaction failed Request = 
> regionName=FHA,00Dxx0000001gES005001xx000003DGPd,1492644985470.92ec6436984981cdc8ef02388005a957.,
>  storeName=L#0, fileCount=3, fileSize=44.4 M (23.0 M, 10.7 M, 10.8 M), 
> priority=7, time=7442973347247614
> java.io.IOException: Non-increasing Bloom keys: 
> 00Dxx0000001gES005001xx000003DGPd\x00\x00\x80\x00\x01H+&\xA1(00Dxx0000001gER001001xx000003DGPb01739544DCtf
>     after 
> 00Dxx0000001gES005001xx000003DGPd\x00\x00\x80\x00\x01I+\xF4\x9Ax00Dxx0000001gER001001xx000003DGPa017115434KTM
>    
>       at 
> org.apache.hadoop.hbase.regionserver.StoreFile$Writer.appendGeneralBloomfilter(StoreFile.java:960)
>       at 
> org.apache.hadoop.hbase.regionserver.StoreFile$Writer.append(StoreFile.java:996)
>       at 
> org.apache.hadoop.hbase.regionserver.compactions.Compactor.performCompaction(Compactor.java:428)
>       at 
> org.apache.hadoop.hbase.regionserver.compactions.Compactor.compact(Compactor.java:276)
>       at 
> org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor.compact(DefaultCompactor.java:64)
>       at 
> org.apache.hadoop.hbase.regionserver.DefaultStoreEngine$DefaultCompactionContext.compact(DefaultStoreEngine.java:121)
>       at org.apache.hadoop.hbase.regionserver.HStore.compact(HStore.java:1154)
>       at 
> org.apache.hadoop.hbase.regionserver.HRegion.compact(HRegion.java:1559)
>       at 
> org.apache.hadoop.hbase.regionserver.CompactSplitThread$CompactionRunner.doCompaction(CompactSplitThread.java:502)
>       at 
> org.apache.hadoop.hbase.regionserver.CompactSplitThread$CompactionRunner.run(CompactSplitThread.java:540)
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>       at java.lang.Thread.run(Thread.java:722)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to