java.lang.IllegalArgumentException: offset (0) + length (4) exceed the capacity of the array: 1

GitHub | finch0001 | 7 months ago
tip
Your exception is missing from the Samebug knowledge base.
Here are the best solutions we found on the Internet.
Click on the to mark the helpful solution and get rewards for you help.
  1. 0

    hbase-indexer cant convert numberic column to solr numberic field ???

    GitHub | 7 months ago | finch0001
    java.lang.IllegalArgumentException: offset (0) + length (4) exceed the capacity of the array: 1
  2. 0

    I was exposed to an exception in the tracing code, during my test setup of Phoenix in the following code: {code} 58062 [defaultRpcServer.handler=2,queue=0,port=53950] WARN org.apache.hadoop.ipc.RpcServer - defaultRpcServer.handler=2,queue=0,port=53950: caught: java.lang.IllegalArgumentException: offset (0) + length (4) exceed the capacity of the array: 3 at org.apache.hadoop.hbase.util.Bytes.explainWrongLengthOrOffset(Bytes.java:600) at org.apache.hadoop.hbase.util.Bytes.toInt(Bytes.java:749) at org.apache.hadoop.hbase.util.Bytes.toInt(Bytes.java:725) at org.apache.phoenix.trace.TracingCompat.readAnnotation(TracingCompat.java:56) at org.apache.phoenix.trace.TraceMetricSource.receiveSpan(TraceMetricSource.java:121) at org.cloudera.htrace.Tracer.deliver(Tracer.java:81) at org.cloudera.htrace.impl.MilliSpan.stop(MilliSpan.java:70) at org.cloudera.htrace.TraceScope.close(TraceScope.java:70) at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:106) at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:114) at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:94) at java.lang.Thread.run(Thread.java:744) {code} It is related to the following line of code where we interpret all KV annotation values as byte-wise integers here: https://github.com/apache/phoenix/blob/v4.1.0/phoenix-hadoop-compat/src/main/java/org/apache/phoenix/trace/TracingCompat.java#L56 Here is where HBase is adding a non-integer KV annotation: https://github.com/apache/hbase/blob/0.98.5/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/RequestContext.java#L105 The fix should be simple, but I am not aware of all the related issues in changing this. cc [~jesse_yates], [~samarth.jain@gmail.com], [~giacomotaylor]

    Apache's JIRA Issue Tracker | 2 years ago | Dan Di Spaltro
    java.lang.IllegalArgumentException: offset (0) + length (4) exceed the capacity of the array: 3
  3. 0

    I have create a table via hive in hbase. When I insert integer data into the table, it can be retrieved by hive or hbase, but can not be retrieved correctly via phoenix, and the error is : java.lang.IllegalArgumentException: offset (715) + length (8) exceed the capacity of the array: 720 at org.apache.hadoop.hbase.util.Bytes.explainWrongLengthOrOffset(Bytes.java:543) at org.apache.hadoop.hbase.util.Bytes.toLong(Bytes.java:521) at org.apache.hadoop.hbase.util.Bytes.toDouble(Bytes.java:620) at com.salesforce.phoenix.schema.PDataType$UnsignedDoubleCodec.decodeDouble(PDataType.java:4152) at com.salesforce.phoenix.schema.PDataType$18.toObject(PDataType.java:2756) at com.salesforce.phoenix.schema.PDataType.toObject(PDataType.java:4585) at com.salesforce.phoenix.schema.PDataType.toObject(PDataType.java:4564) at com.salesforce.phoenix.schema.PDataType.toObject(PDataType.java:4573) at com.salesforce.phoenix.compile.ExpressionProjector.getValue(ExpressionProjector.java:85) at com.salesforce.phoenix.jdbc.PhoenixResultSet.getObject(PhoenixResultSet.java:476) at sqlline.SqlLine$Rows$Row.<init>(SqlLine.java:2314) at sqlline.SqlLine$IncrementalRows.hasNext(SqlLine.java:2430) at sqlline.SqlLine$TableOutputFormat.print(SqlLine.java:2074) at sqlline.SqlLine.print(SqlLine.java:1735) at sqlline.SqlLine$Commands.execute(SqlLine.java:3683) at sqlline.SqlLine$Commands.sql(SqlLine.java:3584) at sqlline.SqlLine.dispatch(SqlLine.java:821) at sqlline.SqlLine.begin(SqlLine.java:699) at sqlline.SqlLine.mainWithInputRedirection(SqlLine.java:441) at sqlline.SqlLine.main(SqlLine.java:424) The data type in hive is integer and the data type in phoenix is unsigned_int. Also, if insert data by phoenix, it will be displayed correctly in phoenix but null in hive or hbase. How can I resolve this problem? Any help will be appreciated.

    Apache's JIRA Issue Tracker | 3 years ago | liuziliang
    java.lang.IllegalArgumentException: offset (75) + length (4) exceed the capacity of the array: 76
  4. Speed up your debug routine!

    Automated exception search integrated into your IDE

    3 unregistered visitors

    Root Cause Analysis

    1. java.lang.IllegalArgumentException

      offset (0) + length (4) exceed the capacity of the array: 1

      at org.apache.hadoop.hbase.util.Bytes.explainWrongLengthOrOffset()
    2. HBase
      Bytes.toInt
      1. org.apache.hadoop.hbase.util.Bytes.explainWrongLengthOrOffset(Bytes.java:625)
      2. org.apache.hadoop.hbase.util.Bytes.toInt(Bytes.java:795)
      3. org.apache.hadoop.hbase.util.Bytes.toInt(Bytes.java:771)
      3 frames
    3. com.ngdata.hbaseindexer
      ExtractHBaseCellsBuilder$ExtractHBaseCells.doProcess
      1. com.ngdata.hbaseindexer.parse.ByteArrayValueMappers$1.mapInternal(ByteArrayValueMappers.java:37)
      2. com.ngdata.hbaseindexer.parse.ByteArrayValueMappers$AbstractByteValueMapper.map(ByteArrayValueMappers.java:157)
      3. com.ngdata.hbaseindexer.morphline.ExtractHBaseCellsBuilder$Mapping.extractWithSingleOutputField(ExtractHBaseCellsBuilder.java:204)
      4. com.ngdata.hbaseindexer.morphline.ExtractHBaseCellsBuilder$Mapping.apply(ExtractHBaseCellsBuilder.java:197)
      5. com.ngdata.hbaseindexer.morphline.ExtractHBaseCellsBuilder$ExtractHBaseCells.doProcess(ExtractHBaseCellsBuilder.java:83)
      5 frames
    4. Kite Morphlines Core
      AbstractCommand.process
      1. org.kitesdk.morphline.base.AbstractCommand.process(AbstractCommand.java:161)
      2. org.kitesdk.morphline.base.AbstractCommand.doProcess(AbstractCommand.java:186)
      3. org.kitesdk.morphline.base.AbstractCommand.process(AbstractCommand.java:161)
      3 frames
    5. com.ngdata.hbaseindexer
      IndexingEventListener.processEvents
      1. com.ngdata.hbaseindexer.morphline.LocalMorphlineResultToSolrMapper.map(LocalMorphlineResultToSolrMapper.java:242)
      2. com.ngdata.hbaseindexer.morphline.MorphlineResultToSolrMapper.map(MorphlineResultToSolrMapper.java:145)
      3. com.ngdata.hbaseindexer.indexer.Indexer$RowBasedIndexer.calculateIndexUpdates(Indexer.java:289)
      4. com.ngdata.hbaseindexer.indexer.Indexer.indexRowData(Indexer.java:144)
      5. com.ngdata.hbaseindexer.indexer.IndexingEventListener.processEvents(IndexingEventListener.java:99)
      5 frames
    6. com.ngdata.sep
      SepEventExecutor$1.run
      1. com.ngdata.sep.impl.SepEventExecutor$1.run(SepEventExecutor.java:97)
      1 frame
    7. Java RT
      Thread.run
      1. java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
      2. java.util.concurrent.FutureTask.run(FutureTask.java:262)
      3. java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      4. java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      5. java.lang.Thread.run(Thread.java:745)
      5 frames