hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anoop Sam John (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-18030) Negative tag length for hbase block/hfile
Date Fri, 12 May 2017 09:53:04 GMT

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

Anoop Sam John commented on HBASE-18030:
----------------------------------------

Yes.  The op performed here is Increments.  Each of the increment Mutation will have a TTL
associated with it. The per cell TTL info will be written to Cell as tag. So say for the 1st
Cell we have one TTL tag in it. WHen we increment this, we will write a new Cell and in that
we will copy all tags from existing old cell and as the new Mutation having a TTL, we will
add a new Tag also to it and finally the new Cell will have 2 tags. (Duplicated TTL tags)..
This will grow with every incr op.  Within a Cell , the total tags length is written in 2
bytes.  So once this duplicated tags increase to a level and total tags bytes exceed Short.MAX_Value,
we will write the tags len as -ve.  

> Negative tag length for hbase block/hfile
> -----------------------------------------
>
>                 Key: HBASE-18030
>                 URL: https://issues.apache.org/jira/browse/HBASE-18030
>             Project: HBase
>          Issue Type: Bug
>          Components: hbase, regionserver
>    Affects Versions: 1.1.2
>            Reporter: Abhishek Kumar
>            Assignee: Anoop Sam John
>            Priority: Critical
>         Attachments: HBASE-18030_initial.patch
>
>
> 2017-04-29 14:24:14,135 ERROR [B.fifo.QRpcServer.handler=49,queue=1,port=16020] ipc.RpcServer:
Unexpected throwable object java.lang.IllegalStateException: Invalid currTagsLen -32712. Block
offset: 3707853, block length: 72841, position: 0 (without header). at org.apache.hadoop.hbase.io.hfile.HFileReaderV3$ScannerV3.checkTagsLen(HFileReaderV3.java:226)
> I am not not using any hbase tags feature.
> The Increment operation from the application side is triggering this error. The same
is happening when scanner is run on this table. It feels that one or more particular HFile
block is corrupt (with negative tagLength).
> hbase(main):007:0> scan 'table-name', {LIMIT=>1,STARTROW=>'ad:event_count:a'}
> Returning the result
> hbase(main):008:0> scan 'table-name', {LIMIT=>1,STARTROW=>'ad:event_count:b'}
> ROW                                                         COLUMN+CELL             
                                                                                      
> ERROR: java.io.IOException: java.lang.IllegalStateException: Invalid currTagsLen -32701.
Block offset: 272031, block length: 72441, position: 32487 (without header).
> 	at org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.handleException(HRegion.java:5607)
> 	at org.apache.hadoop.hbase.regionserver.HRegion$RegionScannerImpl.<init>(HRegion.java:5579)
> 	at org.apache.hadoop.hbase.regionserver.HRegion.instantiateRegionScanner(HRegion.java:2627)
> 	at org.apache.hadoop.hbase.regionserver.HRegion.getScanner(HRegion.java:2613)
> 	at org.apache.hadoop.hbase.regionserver.HRegion.getScanner(HRegion.java:2595)
> 	at org.apache.hadoop.hbase.regionserver.RSRpcServices.scan(RSRpcServices.java:2282)
> 	at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:32295)



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

Mime
View raw message