[
https://issues.apache.org/jira/browse/IGNITE-15404?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alexander Lapin updated IGNITE-15404:
-------------------------------------
Description:
Based on prototyping carried out within IGNITE-15374 it's requited to rework
distributed configuration flow processing:
# Use configuration registry instead of meta storage manager.
## Use configuration manager for internal configuration processing. Blocked by
IGNITE-15047
## Use configuration manager in order to retrieve distributed up-to-date
values.
## Use configuration listeners instead of meta storage watches.
# Favor one-step table creation (calculate assignments and inner schema
together with initial table configuration update).
Please pay attention that during prototyping plenty of bugs were found that
should be fixed during refactoring. To name some:
# Columns validation is skipped if column was added or removed during
alterTable() See onConfigurationChanged() for more details.
{code:java}
if (!newTbl.columns().namedListKeys().equals(oldTbl.columns().namedListKeys()))
return true;
{code}
# table identified ignores update counter
{code:java}
UUID tblId = new UUID(ctx.storageRevision(), 0L);
{code}
Of course in addition to fixing known issues we will introduce new bugs during
refactoring.
was:
Based on prototyping carried out within IGNITE-15374 it's requited to rework
distributed configuration flow processing:
# Use configuration registry instead of meta storage manager.
## Use configuration manager for internal configuration processing. Blocked by
IGNITE-15047
## Use configuration manager in order to retrieve distributed up-to-date
values.
## Use configuration listeners instead of meta storage watches.
# Favor one-step table creation (calculate assignments and inner schema
together with initial table configuration update).
Please pay attention that during prototyping plenty of bugs were found that
should be fixed during refactoring. To name some:
# Columns validation is skipped if column was added or removed during
alterTable() See onConfigurationChanged() for more details.
{code:java}
if (!newTbl.columns().namedListKeys().equals(oldTbl.columns().namedListKeys()))
return true;
{code}
# table identified ignores update counter
{code:java}
UUID tblId = new UUID(ctx.storageRevision(), 0L);
{code}
Of course in addition to fixing known issues we will introduce new bugs during
refactoring.
> Rework disctributed configuration flow
> --------------------------------------
>
> Key: IGNITE-15404
> URL: https://issues.apache.org/jira/browse/IGNITE-15404
> Project: Ignite
> Issue Type: Improvement
> Reporter: Alexander Lapin
> Priority: Major
>
> Based on prototyping carried out within IGNITE-15374 it's requited to rework
> distributed configuration flow processing:
> # Use configuration registry instead of meta storage manager.
> ## Use configuration manager for internal configuration processing. Blocked
> by IGNITE-15047
> ## Use configuration manager in order to retrieve distributed up-to-date
> values.
> ## Use configuration listeners instead of meta storage watches.
> # Favor one-step table creation (calculate assignments and inner schema
> together with initial table configuration update).
> Please pay attention that during prototyping plenty of bugs were found that
> should be fixed during refactoring. To name some:
> # Columns validation is skipped if column was added or removed during
> alterTable() See onConfigurationChanged() for more details.
> {code:java}
> if
> (!newTbl.columns().namedListKeys().equals(oldTbl.columns().namedListKeys()))
> return true;
> {code}
> # table identified ignores update counter
> {code:java}
> UUID tblId = new UUID(ctx.storageRevision(), 0L);
> {code}
> Of course in addition to fixing known issues we will introduce new bugs
> during refactoring.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)