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

Andrey Mashenkov updated IGNITE-15414:
--------------------------------------
    Description: 
1. TableValidator code exists, but validator is never registered. Let's fix 
this.
2. ColumnType configuration is not validated. Let's mark all properties as 
immutable and add a validator for ColumnType to verify all linked properties 
and the whole type can be built correctly.
3. Some values make no sense in some cases (e.g. precision for non-numeric 
types). It is ok as the will be removed once the polymorphic validator will be 
implemented. These values don't affect configuration correctness as they will 
be never used.
4. Because of table configuration public keys and internal keys are written 
within the same transaction, and validation happens just before the transaction 
commit, it is possible internal keys calculation will be failed with 
IllegalArgumentException.
Let's 

  was:
1. TableValidator code exists, but validator is never registered. Let's fix 
this.
2. ColumnType configuration is not validated. Let's mark all properties as 
immutable and add a validator for ColumnType to verify all linked properties 
and the whole type can be built correctly.
3. Some values make no sense in some cases (e.g. precision for non-numeric 
types). It is ok as the will be removed once the polymorphic validator will be 
implemented. These values don't affect configuration correctness as they will 
be never used.



> Schema validation refactoring with configuration validators
> -----------------------------------------------------------
>
>                 Key: IGNITE-15414
>                 URL: https://issues.apache.org/jira/browse/IGNITE-15414
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Alexander Lapin
>            Assignee: Andrey Mashenkov
>            Priority: Major
>              Labels: ignite-3, tech-debt
>             Fix For: 3.0
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> 1. TableValidator code exists, but validator is never registered. Let's fix 
> this.
> 2. ColumnType configuration is not validated. Let's mark all properties as 
> immutable and add a validator for ColumnType to verify all linked properties 
> and the whole type can be built correctly.
> 3. Some values make no sense in some cases (e.g. precision for non-numeric 
> types). It is ok as the will be removed once the polymorphic validator will 
> be implemented. These values don't affect configuration correctness as they 
> will be never used.
> 4. Because of table configuration public keys and internal keys are written 
> within the same transaction, and validation happens just before the 
> transaction commit, it is possible internal keys calculation will be failed 
> with IllegalArgumentException.
> Let's 



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

Reply via email to