[ 
https://issues.apache.org/jira/browse/IGNITE-15901?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrey Mashenkov updated IGNITE-15901:
--------------------------------------
    Component/s: sql

> Drop Live schema support.
> -------------------------
>
>                 Key: IGNITE-15901
>                 URL: https://issues.apache.org/jira/browse/IGNITE-15901
>             Project: Ignite
>          Issue Type: Bug
>          Components: sql
>            Reporter: Andrey Mashenkov
>            Priority: Major
>              Labels: iep-54, ignite-3
>             Fix For: 3.0.0-alpha4
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> h3. Motivation.
> The Live-schema concept looks like a very disputable thing. It may cause 
> unwanted schema change if a new/outdated/broken client puts the data to the 
> grid. Implicit schema changes may lead to unpredicted behaviour from the user 
> perspective.
> In most cases, user application and schema are mutually dependent things. 
> Thus, the application model and schema must be changed consistently.
> In the general case, it is impossible to keep the consistency and the 
> decision on that must be taken on the user side.
> Actually, there are 2 different use cases for the schema-last approach:
> * The first one, when a user creates a table without specifying a schema and 
> Ignite automatically create the initial schema version on the first 'put' 
> operation. This may be useful for PoC or tests.
> * The second one, when a user changes data model classes, and Ignite update 
> the schema implicitly on the next 'put' operation to make schema match the 
> new data model. Here are many limitations we can do transparently without any 
> additional configuration from the user side.
> Thus, the first case may be a not too bad idea. However, the second case 
> looks error-prone.
> h3. Suggestion.
> Drop LiveSchema mode and remove all the related code. 
> Postpone all the related tasks unless we will have clear explanation on how 
> it should work and how a user should use it.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to