I don’t know whether we ever officially supported the Java ‘char’ type. It’s 
worth checking whether there are any tests for it.

More generally: if your organization is using Calcite in an unconventional way, 
consider writing some tests for that area of functionality and contributing 
them. You will be helping yourself and Calcite.

Julian


> On Aug 12, 2022, at 7:06 AM, Ruben Q L <rube...@gmail.com> wrote:
> 
> Hello Dmitry,
> 
> At first glance, it looks like a regression. Could you please create a Jira
> ticket (ideally with a unit test that runs fine 1.30 but fails in 1.31)?
> 
> Best,
> Ruben
> 
> 
> On Fri, Aug 12, 2022 at 2:48 PM Dmitry Sysolyatin <dm.sysolya...@gmail.com>
> wrote:
> 
>> Hi!
>> I have a problem with char data type after upgrading from 1.30 to 1.31. I
>> tried to execute a simple query "SELECT c.relkind FROM pg_catalog.pg_class
>> c" (relkind is JavaType(char) NOT NULL) and got an exception:
>> 
>> Unable to implement EnumerableCalc(expr#0..32=[{inputs}], relkind=[$t16]):
>> rowcount = 100.0, cumulative cost = {200.0 rows, 3501.0 cpu, 0.0 io}, id =
>> 28
>>  EnumerableTableScan(table=[[default, pg_catalog, pg_class]]): rowcount =
>> 100.0, cumulative cost = {100.0 rows, 101.0 cpu, 0.0 io}, id = 19
>> 
>> Suppressed: java.lang.RuntimeException: while resolving method
>> 'toChar[class java.lang.Object]' in class class
>> org.apache.calcite.runtime.SqlFunctions
>> at org.apache.calcite.linq4j.tree.Types.lookupMethod(Types.java:318)
>> at org.apache.calcite.linq4j.tree.Expressions.call(Expressions.java:448)
>> at org.apache.calcite.linq4j.tree.Expressions.call(Expressions.java:460)
>> 
>> Queries with char literal work OK: "SELECT 'r';"
>> Does someone have an idea what can be wrong ?
>> 

Reply via email to