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)