It works very well !
Thank you

Enrico

2017-11-14 14:57 GMT+01:00 Enrico Olivelli <[email protected]>:

> ok so I can create the rootSchema, populate with all the schemas and then
> give to the config builder the "default schema"
> I will give it a try
> it sounds tricky to me, maybe I will file an issue
>
> Cheers
> Enrico
>
> 2017-11-14 14:55 GMT+01:00 Luis Fernando Kauer <
> [email protected]>:
>
>>  When you set a defaultSchema in FrameworkConfig, internally Calcite uses
>> defaultSchema.getParentSchema() if not null as the root schema.
>> So if you set a default schema you don't need to set the root schema
>> elsewhere.
>> Did you try?    Em terça-feira, 14 de novembro de 2017 11:38:24 BRST,
>> Enrico Olivelli <[email protected]> escreveu:
>>
>>  But actually I am setting the "rootSchema" there.
>>
>> Unfortunately there is no notion of "root schema" in FrameworkConfig, can
>> you point me how to set this different "root schema" ?
>>
>> Enrico
>>
>> 2017-11-14 14:32 GMT+01:00 Luis Fernando Kauer
>> <[email protected]
>> >:
>>
>> > Hi,
>> > FrameworkConfig has getDefaultSchema(), from javadoc "Returns the
>> default
>> > schema that should be checked before looking at the root schema.
>> Returns
>> > null to only consult the root schema".
>> > So, if you are using Frameworks.newConfigBuilder(), you can set it using
>> > ".defaultSchema( rootSchema.getSubSchema( "one" ))", for example.  Em
>> > terça-feira, 14 de novembro de 2017 10:59:33 BRST, Enrico Olivelli <
>> > [email protected]> escreveu:
>> >
>> >  Hi,
>> > (I am playing with the planner, you know)
>> > I have several "schema" in my system, like "one", "two"
>> > So my root schema is built this way:
>> > final SchemaPlus rootSchema = Frameworks.createRootSchema(true);
>> >        for (String tableSpace : listTableSpaces()) {
>> >            SchemaPlus schema = rootSchema.add(tableSpace, new
>> > AbstractSchema());
>> > }
>> >
>> > Queries like
>> > SELECT * from one.mytable
>> > SELECT * from two.mytable
>> >
>> > get parsed and validated.
>> >
>> > But I would like to set a "default" schema to be used when the query
>> does
>> > not explicitly refer to a schema, like
>> > default-schema='one'
>> > SELECT * from mytable
>> >
>> > which I would expect to be parsed as
>> > SELECT * from one.mytable
>> >
>> > Is it possible ?
>> >
>> >
>> > Bonus question, separate from the former, it seems that the parser
>> > complaints if I try to use a schema with name "default", using MYSQL5_5
>> > compatinility for instance. Is there any tweak to make it work ?
>> >
>> > Calcite is really great!
>> > Enrico
>> >
>> >
>>
>
>

Reply via email to