Josh Elser created CALCITE-919:
----------------------------------
Summary: ArithmeticException when querying against decimal field.
Key: CALCITE-919
URL: https://issues.apache.org/jira/browse/CALCITE-919
Project: Calcite
Issue Type: Bug
Components: avatica
Reporter: Josh Elser
Assignee: Josh Elser
Fix For: 1.5.0-incubating
Running against Phoenix:
{code}
DROP TABLE IF EXISTS foo;
CREATE TABLE IF NOT EXISTS foo (ID INTEGER PRIMARY KEY,decimal_id DECIMAL);
UPSERT INTO foo VALUES (0,13.7);
UPSERT INTO foo VALUES (1,13.7);
UPSERT INTO foo VALUES (2,13.7);
SELECT * FROM foo;
{code}
Nets an exception on the client side:
{code}
java.lang.ArithmeticException: Rounding necessary
at java.math.BigDecimal.divideAndRound(BigDecimal.java:1452)
at java.math.BigDecimal.setScale(BigDecimal.java:2402)
at
org.apache.calcite.avatica.util.AbstractCursor$NumberAccessor.getBigDecimal(AbstractCursor.java:704)
at
org.apache.calcite.avatica.util.AbstractCursor$NumberAccessor.getBigDecimal(AbstractCursor.java:708)
at org.apache.calcite.avatica.AvaticaSite.get(AvaticaSite.java:327)
at
org.apache.calcite.avatica.AvaticaResultSet.getObject(AvaticaResultSet.java:381)
at sqlline.Rows$Row.<init>(Rows.java:157)
at sqlline.IncrementalRows.hasNext(IncrementalRows.java:63)
at sqlline.TableOutputFormat.print(TableOutputFormat.java:33)
at sqlline.SqlLine.print(SqlLine.java:1653)
at sqlline.Commands.execute(Commands.java:833)
at sqlline.Commands.sql(Commands.java:732)
at sqlline.SqlLine.dispatch(SqlLine.java:808)
at sqlline.SqlLine.begin(SqlLine.java:681)
at sqlline.SqlLine.start(SqlLine.java:398)
at sqlline.SqlLine.main(SqlLine.java:292)
{code}
The above works without Avatica in the picture, so I'm assuming that something
isn't working as it should in the Accessors.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)