Sergey Chugunov created IGNITE-18733:
----------------------------------------

             Summary: Mechanism to synchronize database schema changes between 
nodes
                 Key: IGNITE-18733
                 URL: https://issues.apache.org/jira/browse/IGNITE-18733
             Project: Ignite
          Issue Type: Epic
          Components: persistence
            Reporter: Sergey Chugunov


Usability of Apache Ignite as a distributed database to a large extent depends 
on a solid support of dynamic schema changes.
DDL operations like adding of deleting columns of a table or (more importantly) 
adding or dropping indexes require proper syncronization between nodes and 
integration with a number of other components.

Regardless of implementation details synchronization mechanism:
 * should allow (most) user operations and schema change operations to execute 
concurrently;
 * should allow access to the data despite of the version of its schema;
 * should shorten periods of time when certain types of operations are 
suspended or work ineffectively (e.g. because of rebuilding of an index).

Schema synchronization needs integration with the following components (the 
list may not be exhaustive):
 * SQL engine - provide information about start and stop of operations, notify 
about [un]availability of certain indexes;
 * TX engine - e.g. if a transaction is started concurrently with DDL 
operations;
 * GC for MV storages - garbage collector needs to be aware of schema changes.



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

Reply via email to