Any stacktrace? An error message on its own isn't too helpful (as it
could come from any number of places).
We have lots of unit tests in the project. Ideally, a unit test which
illustrates the error is the best way for someone to start poking at the
problem. Figuring out if it's a problem unique to the thin-client or if
it affects both the thin-client and thick-client is important.
On 7/31/20 9:10 PM, Simon Mottram wrote:
Hi Josh
Thanks very much for the reply, I did share the error at the top of the
email
SQL Error [00000]: Error -1 (00000) : Error while executing SQL "ESELECT
PERCENTILE_DISC (0.5) WITHIN GROUP (ORDER BY DECIMALCOLUMN ASC) FROM
TEST.TESTEXCEPTIONS": Remote driver error:
ArrayIndexOutOfBoundsException: (null exception message)
There's a few SQL statements to reliably reproduce the error, I thought
that would be enough but I'm very open to providing any assistance I
can. What further info would be helpful?
Cheers
S
------------------------------------------------------------------------
*From:* Josh Elser <els...@apache.org>
*Sent:* 01 August 2020 2:26 AM
*To:* user@phoenix.apache.org <user@phoenix.apache.org>
*Subject:* Re: Unable to use some functions on DECIMAL columns
Simon,
If you have clear bug report, please open up a Jira issue for it. Keep
in mind that as much information as you can provide to indicate the
problem you see, the better. Assume that whoever might read your Jira
issue is coming from zero-context. Right now, you haven't shared any
error, so you're expecting a bit from someone to both help you by first
reproducing the code you've shared, analyze if an error is expected, and
then fix it.
Ideally, you can submit a patch to try to fix the issues you're seeing ;)
On 7/29/20 10:18 PM, Simon Mottram wrote:
If you try the queries marked with BUG below, you get an exception
SQL Error [00000]: Error -1 (00000) : Error while executing SQL "ESELECT
PERCENTILE_DISC (0.5) WITHIN GROUP (ORDER BY DECIMALCOLUMN ASC) FROM
TEST.TESTEXCEPTIONS": Remote driver error:
ArrayIndexOutOfBoundsException: (null exception message)
As far as I can tell I am using the functions correctly.
Best Regards
Simon
To reproduce:
Using HBase
HBASE_VERSION=2.0.0
HBASE_MINOR_VERSION=2.0
PHOENIX_VERSION=5.0.0
Connecting using thin client: phoenix-5.0.0-HBase-2.0-thin-client.jar
NOTE: We can't use thick client as I haven't resolved issues connecting
my API which runs inside docker. That's another story.
CREATE TABLE IF NOT EXISTS TEST.TESTEXCEPTIONS ( KEYCOL VARCHAR NOT NULL
PRIMARY KEY, INTEGERCOLUMN INTEGER , DECIMALCOLUMN DECIMAL);
UPSERT INTO TEST.TESTEXCEPTIONS(KEYCOL, INTEGERCOLUMN, DECIMALCOLUMN)
VALUES('A', 1, 1.1);
UPSERT INTO TEST.TESTEXCEPTIONS(KEYCOL, INTEGERCOLUMN, DECIMALCOLUMN)
VALUES('B', 2, 2.2);
UPSERT INTO TEST.TESTEXCEPTIONS(KEYCOL, INTEGERCOLUMN, DECIMALCOLUMN)
VALUES('C', 3, 3.3);
-- PERCENTILE_DISC
-- Integer columns works
SELECT PERCENTILE_DISC (0.5) WITHIN GROUP (ORDER BY INTEGERCOLUMN ASC)
FROM TEST.TESTEXCEPTIONS;
-- BUG: Decimal columns throws NPE
SELECT PERCENTILE_DISC (0.5) WITHIN GROUP (ORDER BY DECIMALCOLUMN ASC)
FROM TEST.TESTEXCEPTIONS;
-- STDDEV_POP
-- Integer columns works
SELECT STDDEV_POP(INTEGERCOLUMN) FROM TEST.TESTEXCEPTIONS;
-- BUG: Decimal columns throws NPE
SELECT STDDEV_POP(DECIMALCOLUMN) FROM TEST.TESTEXCEPTIONS;
-- STDDEV_SAMP
-- Integer columns works
SELECT STDDEV_SAMP(INTEGERCOLUMN) FROM TEST.TESTEXCEPTIONS;
-- BUG: Decimal columns throws NPE
SELECT STDDEV_SAMP(DECIMALCOLUMN) FROM TEST.TESTEXCEPTIONS;
-- PERCENTILE_CONT
-- Integer columns works
SELECT PERCENTILE_CONT (0.5) WITHIN GROUP (ORDER BY INTEGERCOLUMN ASC)
FROM TEST.TESTEXCEPTIONS;
-- Decimal columns works
SELECT PERCENTILE_CONT (0.5) WITHIN GROUP (ORDER BY DECIMALCOLUMN ASC)
FROM TEST.TESTEXCEPTIONS;