@@ -11,6 +11,62 @@ It has the data-manipulation functions ``select``, ``insert``, ``replace``,
1111``update ``, ``upsert ``, ``delete ``, ``get ``, ``put ``. It also has members,
1212such as id, and whether or not a space is enabled.
1313
14+ .. WARNING ::
15+
16+ Option 1 global Warning:
17+ The following operations involve full space traversal:
18+
19+ - :doc: `./box_space/create_index `;
20+ - :doc: `./box_space/alter `;
21+ - :doc: `./box_space/format `.
22+
23+ Full traversal is the process of processing every node or element in the space structure exactly once
24+ in a systematic manner. Full traversal may leadThese operations introduce replication lag for both
25+ synchronous and asynchronous replication and make writes with synchronous replication unavailable
26+ for the whole duration of operation when initiated at the following conditions:
27+
28+ - initiated on a space with over 10000 tuples AND
29+ - when the node is under any load (when it processes user requests/performs business operations).
30+
31+ To avoid issues:
32+
33+ - initiate named operations on spaces that do not exceed 10000 tuples OR
34+ - initiate named operations when the node is not under any load;
35+ - instead of the space format change operation, perform the :ref: `box_space-upgrade ` operation.
36+
37+ Safe exceptions for named operations are:
38+
39+ - changing indexed field type to a more generic one («unsigned» to «number», «decimal» to «scalar»);
40+ - turning a unique index into a non-unique one;
41+ - changing some of the index parameters which do not require a rebuild (changing page_size of a vinyl space index).
42+ - changing space format to a more generic one.
43+
44+ Option 2 global Warning:
45+ The following operations involve full space traversal and introduce replication lag for both synchronous
46+ and asynchronous replication and make writes with synchronous replication unavailable for the whole duration
47+ of operation when initiated at certain conditions:
48+
49+ - :doc: `./box_space/create_index `;
50+ - :doc: `./box_space/alter `;
51+ - :doc: `./box_space/format `.
52+
53+ The issues occur when the operations are initiated at the following conditions:
54+
55+ - initiated on a space with over 10000 tuples AND
56+ - when the node is under any load (when it processes user requests/performs business operations).
57+
58+ To avoid issues:
59+
60+ - initiate named operations on spaces that do not exceed 10000 tuples OR
61+ - initiate named operations when the node is not under any load;
62+ - instead of the space format change operation, perform the :ref: `box_space-upgrade ` operation.
63+
64+ Safe exceptions for named operations are:
65+ - changing indexed field type to a more generic one («unsigned» to «number», «decimal» to «scalar»);
66+ - turning a unique index into a non-unique one;
67+ - changing some of the index parameters which do not require a rebuild (changing page_size of a vinyl space index).
68+ - changing space format to a more generic one.
69+
1470Below is a list of all ``box.space `` functions and members.
1571
1672.. container :: table
0 commit comments