[ 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)