You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Andrey Mashenkov (Jira)" <ji...@apache.org> on 2021/09/03 14:33:00 UTC

[jira] [Comment Edited] (IGNITE-15341) Table API. Rename confusing method getOrCreateTable.

    [ https://issues.apache.org/jira/browse/IGNITE-15341?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17409533#comment-17409533 ] 

Andrey Mashenkov edited comment on IGNITE-15341 at 9/3/21, 2:32 PM:
--------------------------------------------------------------------

[~vkulichenko]
 1. Actually, Schema name already reserved for smth like a namespace for tables, indices. 
 So, Ignite Table belongs to some Schema and we can reuse the same name for tables in different Schemas. 
 In SQL query it might looks like: {{SELECT PUBLIC.tbl1.col1, OTHER_SCHEMA.tbl1.col1 ....}}
 2. We already have {{org.apache.ignite.table.Table}} interface as a binary view for ignite  table (TableView<Tuple>). So, {{Table}} name will also be confusing.

 Maybe we can rename existed _Table_ interface to a _RecordBinaryView_ (for RecordView) to make them consistent a _KvBinaryView_ for _KvView_. WDYT?


was (Author: amashenkov):
[~vkulichenko]
1. Actually, Schema name already reserved for smth like a namespace for tables, indices. 
So, Ignite Table belongs to some Schema and we can reuse the same name for tables in different Schemas. 
In SQL query it might looks like: {{SELECT PUBLIC.tbl1.col1, OTHER_SCHEMA.tbl1.col1 ....}}
2. We already have {{org.apache.ignite.table.Table}} interface as binary view for ignite table (TableView<Tuple>). So, {{Table}} name will also be confusing.
Maybe we can rename {{org.apache.ignite.table.Table}} to a {{TableBinaryView}} like a KvBinaryView for KvView. WDYT?


> Table API. Rename confusing method getOrCreateTable.
> ----------------------------------------------------
>
>                 Key: IGNITE-15341
>                 URL: https://issues.apache.org/jira/browse/IGNITE-15341
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Andrey Mashenkov
>            Assignee: Andrey Mashenkov
>            Priority: Major
>              Labels: UX, ignite-3
>             Fix For: 3.0.0-alpha3
>
>
> `IgniteTables.getOrCreateTable` method accepts table configuration as an argument.
> However, it is not clear if there is a guarantee the returned table will have the configuration equals to the provided one.
>  
> Let's 
> * rename the method to `createTableIfNotExists` to avoid confusion.
> * replace Consumer<TableChange> with SchemaTable.
> Note: thin client API must be fixed as well (if it is affected).



--
This message was sent by Atlassian Jira
(v8.3.4#803005)