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

Mirza Aliev updated IGNITE-20916:
---------------------------------
    Description: 
After some changes, the map {{TableManager#tableCreateFuts}} is used in single 
place only: {{TableManager#completeApiCreateFuture}} which makes no sense. It 
should be removed along with {{TableManager#completeApiCreateFuture}}

-Basically, there should be a rework of partition start and moving 
responsibility for partitions from tables to zones, and the table start process 
will have to look completely different and it will be split between different 
meta storage revision (unlike now: everything related to the table start 
happens within single revision updates).-

-For example:-
 * -some distribution zone "zone0" is created on meta storage revision {_}5{_};-
 * zone creation process writes assignment changes to meta storage with 
revision {_}5+x{_}, so the zone partitions will be started on revision _5+x_
 * some table "table0" is created within zone0 on revision {_}y{_}. This 
revision y can be either less or greater than _5+x_ (but still greater than 5 
and never equal to {_}5+x{_}). API future should wait for completion of all 
listeners for the revision _max(5+x, y).

 

  was:
After some changes, the map {{TableManager#tableCreateFuts}} is used in single 
place only: {{TableManager#completeApiCreateFuture}} which makes no sense. It 
should be removed along with {{TableManager#completeApiCreateFuture}}

-Basically, there should be a rework of partition start and moving 
responsibility for partitions from tables to zones, and the table start process 
will have to look completely different and it will be split between different 
meta storage revision (unlike now: everything related to the table start 
happens within single revision updates).-

For example:
 * some distribution zone "zone0" is created on meta storage revision {_}5{_};
 * zone creation process writes assignment changes to meta storage with 
revision {_}5+x{_}, so the zone partitions will be started on revision _5+x_
 * some table "table0" is created within zone0 on revision {_}y{_}. This 
revision y can be either less or greater than _5+x_ (but still greater than 5 
and never equal to {_}5+x{_}). API future should wait for completion of all 
listeners for the revision _max(5+x, y).

 


> Remove API future related code from TableManager
> ------------------------------------------------
>
>                 Key: IGNITE-20916
>                 URL: https://issues.apache.org/jira/browse/IGNITE-20916
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Denis Chudov
>            Priority: Major
>              Labels: ignite-3
>
> After some changes, the map {{TableManager#tableCreateFuts}} is used in 
> single place only: {{TableManager#completeApiCreateFuture}} which makes no 
> sense. It should be removed along with 
> {{TableManager#completeApiCreateFuture}}
> -Basically, there should be a rework of partition start and moving 
> responsibility for partitions from tables to zones, and the table start 
> process will have to look completely different and it will be split between 
> different meta storage revision (unlike now: everything related to the table 
> start happens within single revision updates).-
> -For example:-
>  * -some distribution zone "zone0" is created on meta storage revision 
> {_}5{_};-
>  * zone creation process writes assignment changes to meta storage with 
> revision {_}5+x{_}, so the zone partitions will be started on revision _5+x_
>  * some table "table0" is created within zone0 on revision {_}y{_}. This 
> revision y can be either less or greater than _5+x_ (but still greater than 5 
> and never equal to {_}5+x{_}). API future should wait for completion of all 
> listeners for the revision _max(5+x, y).
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to