diff --git a/docs/source/restore/_common/restore-raft-schema-warn.rst b/docs/source/restore/_common/restore-raft-schema-warn.rst new file mode 100644 index 0000000000..db7a48c1fc --- /dev/null +++ b/docs/source/restore/_common/restore-raft-schema-warn.rst @@ -0,0 +1 @@ +.. warning:: Restoring schema into a cluster with ScyllaDB **5.4.X** or **2024.1.X** with ``consistent_cluster_management: true`` isn't supported. Please see the following :ref:`workaround `. diff --git a/docs/source/restore/compatibility-matrix.rst b/docs/source/restore/compatibility-matrix.rst index 705c8275b4..bb62044254 100644 --- a/docs/source/restore/compatibility-matrix.rst +++ b/docs/source/restore/compatibility-matrix.rst @@ -3,6 +3,7 @@ Compatibility Matrix The following table shows which version of Scylla Manager restore task supports which versions of Scylla. +.. include:: _common/restore-raft-schema-warn.rst .. list-table:: :widths: 25 25 25 diff --git a/docs/source/restore/restore-schema.rst b/docs/source/restore/restore-schema.rst index f25602a3ac..38795d20a8 100644 --- a/docs/source/restore/restore-schema.rst +++ b/docs/source/restore/restore-schema.rst @@ -6,6 +6,8 @@ Restore schema .. note:: Because of small size of schema files, resuming schema restoration always starts from scratch. +.. include:: _common/restore-raft-schema-warn.rst + In order to restore Scylla cluster schema use :ref:`sctool restore ` with ``--restore-schema`` flag. Prerequisites @@ -25,8 +27,10 @@ After successful restore it is important to perform necessary follow-up action. you should make a `rolling restart `_ of an entire cluster. Without the restart, the restored schema might not be visible, and querying it can return various errors. -Process -======= +Procedure +========= + +This section contains a description of the restore-schema procedure performed by ScyllaDB Manager. Because of being unable to alter schema tables ``tombstone_gc`` option, restore procedure "simulates ad-hoc repair" by duplicating data from **each backed-up node into each node** in restore destination cluster. @@ -47,4 +51,17 @@ Fortunately, the small size of schema files makes this overhead negligible. * Download all SSTables * For all nodes in restore destination cluster: - * `nodetool refresh `_ on all downloaded schema tables (full parallel) \ No newline at end of file + * `nodetool refresh `_ on all downloaded schema tables (full parallel) + +.. _restore-schema-workaround: + +Restoring schema into a cluster with ScyllaDB **5.4.X** or **2024.1.X** with **consistent_cluster_management** +============================================================================================================== + +Restoring schema when using ScyllaDB **5.4.X** or **2024.1.X** with ``consistent_cluster_management: true`` in ``scylla.yaml`` +is not supported. In such case, you should perform the following workaround: + + * Create a fresh cluster with ``consistent_cluster_management: false`` configured in ``scylla.yaml`` and a desired ScyllaDB version. + * Restore schema via :ref:`sctool restore ` with ``--restore-schema`` flag. + * Perform `rolling restart `_ of an entire cluster. + * Follow the steps of the `Enable Raft procedure `_. \ No newline at end of file