You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Viacheslav Blinov (Jira)" <ji...@apache.org> on 2026/04/30 11:59:00 UTC

[jira] [Updated] (IGNITE-28401) TableManager constructor simplification

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

Viacheslav Blinov updated IGNITE-28401:
---------------------------------------
    Description: 
Ticket https://issues.apache.org/jira/browse/IGNITE-28632 decouples sub-component lifecycles from TableManager's busyLock. 
The remaining barrier to fully completing GG-47856 ("move sub-object construction out of TableManager into IgniteImpl") is shared state: TableRegistry and the 3 IncrementalVersionedValues are mutated by multiple sub-components (TableLifecycleHandler, TableZoneCoordinator, TableDestructionCoordinator) but happen to live inside TableManager because TableManager came first historically. They are not really TableManager's private state — they are the table-management module's shared state.

TableManager itself implements IgniteTablesInternal (16-method public API). That facade responsibility is unrelated to TableManager's "manager of sub-components" responsibility.

Goal

Extract the public-API facade and shared state into a slim IgniteTablesImpl. Move recovery to TableLifecycleHandler. Convert PartitionReplicatorNodeRecovery to a proper IgniteComponent. Hoist all sub-component construction to IgniteImpl.

  was:Move sub-object construction out of TableManager and into IgniteImpl.


> TableManager constructor simplification
> ---------------------------------------
>
>                 Key: IGNITE-28401
>                 URL: https://issues.apache.org/jira/browse/IGNITE-28401
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Viacheslav Blinov
>            Assignee: Viacheslav Blinov
>            Priority: Major
>              Labels: ignite-3
>
> Ticket https://issues.apache.org/jira/browse/IGNITE-28632 decouples sub-component lifecycles from TableManager's busyLock. 
> The remaining barrier to fully completing GG-47856 ("move sub-object construction out of TableManager into IgniteImpl") is shared state: TableRegistry and the 3 IncrementalVersionedValues are mutated by multiple sub-components (TableLifecycleHandler, TableZoneCoordinator, TableDestructionCoordinator) but happen to live inside TableManager because TableManager came first historically. They are not really TableManager's private state — they are the table-management module's shared state.
> TableManager itself implements IgniteTablesInternal (16-method public API). That facade responsibility is unrelated to TableManager's "manager of sub-components" responsibility.
> Goal
> Extract the public-API facade and shared state into a slim IgniteTablesImpl. Move recovery to TableLifecycleHandler. Convert PartitionReplicatorNodeRecovery to a proper IgniteComponent. Hoist all sub-component construction to IgniteImpl.



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