Palash Chauhan created PHOENIX-7524:
---------------------------------------
Summary: CDC Query with OFFSET can throw IndexOutOfBoundsException
Key: PHOENIX-7524
URL: https://issues.apache.org/jira/browse/PHOENIX-7524
Project: Phoenix
Issue Type: Bug
Reporter: Palash Chauhan
Steps to reproduce
{code:java}
conn.createStatement().execute("CREATE TABLE IF NOT EXISTS MYTABLE (k VARCHAR
NOT NULL PRIMARY KEY, v1 INTEGER, v2 INTEGER)");
conn.createStatement().execute("CREATE CDC CDC_MYTABLE ON MYTABLE");
conn.createStatement().executeUpdate("UPSERT INTO MYTABLE VALUES
('a', 1, 2)");
conn.commit(); {code}
Error:
{code:java}
org.apache.phoenix.exception.PhoenixIOException:
org.apache.hadoop.hbase.DoNotRetryIOException:
PHOENIX_CDC_INDEX_CDC_MYTABLE,,1738877812042.2c10806ae665db7e6da9613791d9298f.:
Index 0 out of bounds for length 0
at org.apache.phoenix.util.ClientUtil.createIOException(ClientUtil.java:174)
at org.apache.phoenix.util.ClientUtil.throwIOException(ClientUtil.java:182)
at
org.apache.phoenix.iterate.NonAggregateRegionScannerFactory$1.next(NonAggregateRegionScannerFactory.java:523)
at
org.apache.phoenix.iterate.NonAggregateRegionScannerFactory$1.nextRaw(NonAggregateRegionScannerFactory.java:531)
at
org.apache.phoenix.coprocessor.DelegateRegionScanner.next(DelegateRegionScanner.java:110)
at
org.apache.phoenix.coprocessor.DelegateRegionScanner.nextRaw(DelegateRegionScanner.java:77)
at
org.apache.phoenix.coprocessor.DelegateRegionScanner.next(DelegateRegionScanner.java:110)
at
org.apache.phoenix.coprocessor.DelegateRegionScanner.nextRaw(DelegateRegionScanner.java:77)
at
org.apache.phoenix.coprocessor.BaseScannerRegionObserver$RegionScannerHolder.nextRaw(BaseScannerRegionObserver.java:271)
at
org.apache.hadoop.hbase.regionserver.RSRpcServices.scan(RSRpcServices.java:3402)
at
org.apache.hadoop.hbase.regionserver.RSRpcServices.scan(RSRpcServices.java:3668)
at
org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:45006)
at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:415)
at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:124)
at org.apache.hadoop.hbase.ipc.RpcHandler.run(RpcHandler.java:102)
at org.apache.hadoop.hbase.ipc.RpcHandler.run(RpcHandler.java:82)
Caused by: java.lang.IndexOutOfBoundsException: Index 0 out of bounds for
length 0
at
java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
at
java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
at
java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248)
at java.base/java.util.Objects.checkIndex(Objects.java:372)
at java.base/java.util.ArrayList.get(ArrayList.java:459)
at
org.apache.phoenix.schema.tuple.MultiKeyValueTuple.getKey(MultiKeyValueTuple.java:51)
at
org.apache.phoenix.iterate.NonAggregateRegionScannerFactory.getOffsetKvWithLastScannedRowKey(NonAggregateRegionScannerFactory.java:570)
at
org.apache.phoenix.iterate.NonAggregateRegionScannerFactory.access$000(NonAggregateRegionScannerFactory.java:95)
at
org.apache.phoenix.iterate.NonAggregateRegionScannerFactory$1.next(NonAggregateRegionScannerFactory.java:507)
... 13 more
{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)