[
https://issues.apache.org/jira/browse/IGNITE-15414?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17436779#comment-17436779
]
Yury Gerzhedovich commented on IGNITE-15414:
--------------------------------------------
[~amashenkov], LGTM
> 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: 1h 40m
> 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.
> It is expected the only Validation exception will be thrown, but there is no
> way, for now, to force configuration validation on incomplete change.
> Let's just rethrow the correct exception and left a TODO with a link to
> IGNITE-15747.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)