Thanks for investigating. I think you should file a bug report with everything 
you know about this issue. It passes my threshold of “undesirable behavior”. If 
we later get a reproducible test case and a fix that’s a bonus.

> On Oct 2, 2017, at 7:58 AM, Marc Prud'hommeaux <[email protected]> wrote:
> 
> 
> Interestingly, it turns out this only happens when I re-use a RelBuilder than 
> I’ve used for a bunch of other operations, even though I call clear() on it. 
> When I use a fresh new RelBuilder, I’m able to select from a multi-values 
> values call.
> 
> I’ll look into it some more and file a bug report if it turns out to be 
> easily reproducible.
> 
> 
>> On Oct 1, 2017, at 5:32 PM, Marc Prud'hommeaux <[email protected]> wrote:
>> 
>> 
>> 
>> I notice that if I create inline values using: 
>> 
>> RelBuilder.values(Iterable<? extends List<RexLiteral>> tupleList, 
>> RelDataType rowType)
>> 
>> I lose the field names that I put in the RelDataType, and the fields are 
>> named "EXPR$0”, “EXPR$1”, ...
>> 
>> This is also seen if I create a Rel from the SQL string "SELECT X.A FROM 
>> (VALUES 1) AS X(A)” via Planner.parse, Planner.validate, then Planner.rel, 
>> whose JSON representation winds up looking like:
>> 
>> {
>> "rels": [
>>   {
>>     "id": "0",
>>     "relOp": "LogicalValues",
>>     "type": [
>>       {
>>         "type": "INTEGER",
>>         "nullable": false,
>>         "name": "EXPR$0"
>>       }
>>     ],
>>     "tuples": [
>>       [
>>         1
>>       ]
>>     ],
>>     "inputs": []
>>   },
>>   {
>>     "id": "1",
>>     "relOp": "LogicalProject"
>>   }
>> ]
>> }
>> 
>> However, in sqlline, I can perform the same query:
>> 
>> 0: jdbc:calcite:model=inline:{"version":1.0,"> SELECT X.A FROM (VALUES 1) AS 
>> X(A);
>> +------------+
>> |     A      |
>> +------------+
>> | 1          |
>> +------------+
>> 1 row selected (0.02 seconds)
>> 
>> and the column name “A” is preserved. 
>> 
>> Is there some mechanism for retaining the column name when using 
>> RelBuilder.values() other than putting the column name in the RelDataType?
>> 
>> 
>> 
>> 
>> 
> 

Reply via email to