You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@phoenix.apache.org by Marcin Januszkiewicz <ja...@gmail.com> on 2017/10/30 11:19:31 UTC

Querying table with index fails in some configurations.

We have a phoenix table created with:

CREATE TABLE traces (
rowkey VARCHAR PRIMARY KEY,
time VARCHAR,
number VARCHAR,
security VARCHAR);

CREATE LOCAL INDEX t0
ON traces (UPPER(number))
INCLUDE (security,  time);

UPSERT INTO traces values (
  'BXRFW10BK-$d2affbaf',
  '2017-09-26T07:43:01.152Z',
  'PO X',
  'test');

The query:
SELECT rowkey
FROM traces
WHERE (UPPER(number) LIKE 'PO %')
  AND (security = 'test')
ORDER BY time;

causes an exception:

Error: org.apache.phoenix.exception.PhoenixIOException:
org.apache.hadoop.hbase.DoNotRetryIOException:
TRACES,,1509360217824.b44920f7875ef688c3224ce1681d1035.: null
        at org.apache.phoenix.util.ServerUtil.createIOException(ServerUtil.java:96)
        at org.apache.phoenix.util.ServerUtil.throwIOException(ServerUtil.java:62)
        at org.apache.phoenix.iterate.RegionScannerFactory$1.nextRaw(RegionScannerFactory.java:212)
        at org.apache.phoenix.iterate.RegionScannerResultIterator.next(RegionScannerResultIterator.java:61)
        at org.apache.phoenix.iterate.OrderedResultIterator.getResultIterator(OrderedResultIterator.java:255)
        at org.apache.phoenix.iterate.OrderedResultIterator.next(OrderedResultIterator.java:199)
        at org.apache.phoenix.iterate.NonAggregateRegionScannerFactory.getTopNScanner(NonAggregateRegionScannerFactory.java:320)
        at org.apache.phoenix.iterate.NonAggregateRegionScannerFactory.getRegionScanner(NonAggregateRegionScannerFactory.java:162)
        at org.apache.phoenix.coprocessor.ScanRegionObserver.doPostScannerOpen(ScanRegionObserver.java:72)
        at org.apache.phoenix.coprocessor.BaseScannerRegionObserver$RegionScannerHolder.overrideDelegate(BaseScannerRegionObserver.java:236)
        at org.apache.phoenix.coprocessor.BaseScannerRegionObserver$RegionScannerHolder.nextRaw(BaseScannerRegionObserver.java:284)
        at org.apache.hadoop.hbase.regionserver.RSRpcServices.scan(RSRpcServices.java:2541)
        at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:33648)
        at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2183)
        at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:112)
        at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:183)
        at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:163)
Caused by: java.lang.NullPointerException (state=08000,code=101)

However, the following queries succeed:

SELECT rowkey, security
FROM traces
WHERE (UPPER(number) LIKE 'PO %')
  AND (security = 'test')
ORDER BY time;

SELECT rowkey
FROM traces
WHERE (UPPER(number) LIKE 'PO %')
ORDER BY time;

SELECT rowkey
FROM traces
WHERE (UPPER(number) LIKE 'PO %')
  AND (security = 'test');


We're using Phoenix 4.12 adapted for CDH-5.12, so we would appreciate
if someone verified if this is actually an upstream bug before we file
JIRA ticket.

-- 
Pozdrawiam,
Marcin Januszkiewicz

Re: Querying table with index fails in some configurations.

Posted by Sergey Soldatov <se...@gmail.com>.
It's reproducible on my box which is maybe several days behind the master
branch, so feel free to file a JIRA.

Thanks,
Sergey