/src/tarantool/src/box/schema_def.h
Line | Count | Source (jump to first uncovered line) |
1 | | #ifndef TARANTOOL_BOX_SCHEMA_DEF_H_INCLUDED |
2 | | #define TARANTOOL_BOX_SCHEMA_DEF_H_INCLUDED |
3 | | /* |
4 | | * Copyright 2010-2016, Tarantool AUTHORS, please see AUTHORS file. |
5 | | * |
6 | | * Redistribution and use in source and binary forms, with or |
7 | | * without modification, are permitted provided that the following |
8 | | * conditions are met: |
9 | | * |
10 | | * 1. Redistributions of source code must retain the above |
11 | | * copyright notice, this list of conditions and the |
12 | | * following disclaimer. |
13 | | * |
14 | | * 2. Redistributions in binary form must reproduce the above |
15 | | * copyright notice, this list of conditions and the following |
16 | | * disclaimer in the documentation and/or other materials |
17 | | * provided with the distribution. |
18 | | * |
19 | | * THIS SOFTWARE IS PROVIDED BY <COPYRIGHT HOLDER> ``AS IS'' AND |
20 | | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED |
21 | | * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
22 | | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL |
23 | | * <COPYRIGHT HOLDER> OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, |
24 | | * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
25 | | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
26 | | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |
27 | | * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
28 | | * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
29 | | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF |
30 | | * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
31 | | * SUCH DAMAGE. |
32 | | */ |
33 | | #include "trivia/util.h" |
34 | | #include "version.h" |
35 | | #include <stdbool.h> |
36 | | |
37 | | #if defined(__cplusplus) |
38 | | extern "C" { |
39 | | #endif /* defined(__cplusplus) */ |
40 | | |
41 | | enum { |
42 | | BOX_ENGINE_MAX = 3, /* + 1 to the actual number of engines */ |
43 | | BOX_FUNCTION_MAX = 32000, |
44 | | BOX_INDEX_MAX = 128, |
45 | | BOX_NAME_MAX = 65000, |
46 | | BOX_INVALID_NAME_MAX = 64, |
47 | | ENGINE_NAME_MAX = 16, |
48 | | FIELD_TYPE_NAME_MAX = 16, |
49 | | GRANT_NAME_MAX = 16, |
50 | | BOX_FIELD_MAX = INT32_MAX, |
51 | | BOX_USER_MAX = 32, |
52 | | /** |
53 | | * A fairly arbitrary limit which is still necessary |
54 | | * to keep tuple_format object small. |
55 | | */ |
56 | | BOX_INDEX_FIELD_MAX = INT16_MAX, |
57 | | /** Yet another arbitrary limit which simply needs to |
58 | | * exist. |
59 | | */ |
60 | | BOX_INDEX_PART_MAX = UINT8_MAX, |
61 | | /** |
62 | | * Start of the range of default temporary space ids. |
63 | | * By default they get ids from a special range to avoid conflicts with |
64 | | * spaces which could arrive via replication. But the user is free to |
65 | | * choose an id from outside this range. |
66 | | */ |
67 | | BOX_SPACE_ID_TEMPORARY_MIN = (1 << 30), |
68 | | }; |
69 | | static_assert(BOX_INVALID_NAME_MAX <= BOX_NAME_MAX, |
70 | | "invalid name max is less than name max"); |
71 | | |
72 | | /** \cond public */ |
73 | | |
74 | | /** |
75 | | * List of system space definitions in the following format: |
76 | | * (name, identifier, is_sync), |
77 | | * where is_sync determines whether synchronous replication is enabled for this |
78 | | * system space when the synchronous queue is claimed. If is_sync is false, a |
79 | | * reason must be supplied after the space definition comment. |
80 | | */ |
81 | | #define SYSTEM_SPACES(_) /* (name, id, is_sync) */ \ |
82 | | /** Space id of _vinyl_deferred_delete. Local space. */ \ |
83 | | _(VINYL_DEFERRED_DELETE, 257, false) \ |
84 | | /** Space id of _schema. */ \ |
85 | | _(SCHEMA, 272, true) \ |
86 | | /** Space id of _collation. */ \ |
87 | | _(COLLATION, 276, true) \ |
88 | | /** Space id of _vcollation. */ \ |
89 | | _(VCOLLATION, 277, true) \ |
90 | | /** Space id of _space. */ \ |
91 | | _(SPACE, 280, true) \ |
92 | | /** Space id of _vspace view. */ \ |
93 | | _(VSPACE, 281, true) \ |
94 | | /** Space id of _sequence. */ \ |
95 | | _(SEQUENCE, 284, true) \ |
96 | | /** Space id of _sequence_data. Synchronized by space operations. */ \ |
97 | | _(SEQUENCE_DATA, 285, false) \ |
98 | | /** Space id of _vsequence view. */ \ |
99 | | _(VSEQUENCE, 286, true) \ |
100 | | /** Space id of _index. */ \ |
101 | | _(INDEX, 288, true) \ |
102 | | /** Space id of _vindex view. */ \ |
103 | | _(VINDEX, 289, true) \ |
104 | | /** Space id of _func. */ \ |
105 | | _(FUNC, 296, true) \ |
106 | | /** Space id of _vfunc view. */ \ |
107 | | _(VFUNC, 297, true) \ |
108 | | /** Space id of _user. */ \ |
109 | | _(USER, 304, true) \ |
110 | | /** Space id of _vuser view. */ \ |
111 | | _(VUSER, 305, true) \ |
112 | | /** Space id of _priv. */ \ |
113 | | _(PRIV, 312, true) \ |
114 | | /** Space id of _vpriv view. */ \ |
115 | | _(VPRIV, 313, true) \ |
116 | | /** Space id of _cluster. */ \ |
117 | | _(CLUSTER, 320, true) \ |
118 | | /** Space id of _trigger. */ \ |
119 | | _(TRIGGER, 328, true) \ |
120 | | /** Space id of _truncate. */ \ |
121 | | _(TRUNCATE, 330, true) \ |
122 | | /** Space id of _space_sequence. */ \ |
123 | | _(SPACE_SEQUENCE, 340, true) \ |
124 | | /** Space id of _vspace_sequence. */ \ |
125 | | _(VSPACE_SEQUENCE, 341, true) \ |
126 | | /** Space id of _fk_constraint. */ \ |
127 | | _(FK_CONSTRAINT, 356, true) \ |
128 | | /** Space id of _ck_contraint. */ \ |
129 | | _(CK_CONSTRAINT, 364, true) \ |
130 | | /** Space id of _func_index. */ \ |
131 | | _(FUNC_INDEX, 372, true) \ |
132 | | /** Space id of _session_settings. */ \ |
133 | | _(SESSION_SETTINGS, 380, true) \ |
134 | | /** Space id of _gc_consumers. */ \ |
135 | | _(GC_CONSUMERS, 388, false) \ |
136 | | |
137 | | /** System space identifier definition. */ |
138 | | #define SYSTEM_SPACE_MEMBER(name, id, ...) BOX_ ## name ## _ID = id, |
139 | | |
140 | | enum { |
141 | | /** Start of the reserved range of system spaces. */ |
142 | | BOX_SYSTEM_ID_MIN = 256, |
143 | | SYSTEM_SPACES(SYSTEM_SPACE_MEMBER) |
144 | | /** End of the reserved range of system spaces. */ |
145 | | BOX_SYSTEM_ID_MAX = 511, |
146 | | BOX_ID_NIL = 2147483647 |
147 | | }; |
148 | | /** \endcond public */ |
149 | | |
150 | | /** Max possible space id. */ |
151 | | extern uint64_t BOX_SPACE_MAX; |
152 | | |
153 | | /** _space fields. */ |
154 | | enum { |
155 | | BOX_SPACE_FIELD_ID = 0, |
156 | | BOX_SPACE_FIELD_UID = 1, |
157 | | BOX_SPACE_FIELD_NAME = 2, |
158 | | BOX_SPACE_FIELD_ENGINE = 3, |
159 | | BOX_SPACE_FIELD_FIELD_COUNT = 4, |
160 | | BOX_SPACE_FIELD_OPTS = 5, |
161 | | BOX_SPACE_FIELD_FORMAT = 6, |
162 | | box_space_field_MAX = 7, |
163 | | }; |
164 | | |
165 | | /** _index fields. */ |
166 | | enum { |
167 | | BOX_INDEX_FIELD_SPACE_ID = 0, |
168 | | BOX_INDEX_FIELD_ID = 1, |
169 | | BOX_INDEX_FIELD_NAME = 2, |
170 | | BOX_INDEX_FIELD_TYPE = 3, |
171 | | BOX_INDEX_FIELD_OPTS = 4, |
172 | | BOX_INDEX_FIELD_IS_UNIQUE_165 = 4, |
173 | | BOX_INDEX_FIELD_PARTS = 5, |
174 | | BOX_INDEX_FIELD_PART_COUNT_165 = 5, |
175 | | BOX_INDEX_FIELD_PARTS_165 = 6, |
176 | | }; |
177 | | |
178 | | /** _user fields. */ |
179 | | enum { |
180 | | BOX_USER_FIELD_ID = 0, |
181 | | BOX_USER_FIELD_UID = 1, |
182 | | BOX_USER_FIELD_NAME = 2, |
183 | | BOX_USER_FIELD_TYPE = 3, |
184 | | BOX_USER_FIELD_AUTH = 4, |
185 | | BOX_USER_FIELD_AUTH_HISTORY = 5, |
186 | | BOX_USER_FIELD_LAST_MODIFIED = 6, |
187 | | }; |
188 | | |
189 | | /** _priv fields. */ |
190 | | enum { |
191 | | BOX_PRIV_FIELD_ID = 0, |
192 | | BOX_PRIV_FIELD_UID = 1, |
193 | | BOX_PRIV_FIELD_OBJECT_TYPE = 2, |
194 | | BOX_PRIV_FIELD_OBJECT_ID = 3, |
195 | | BOX_PRIV_FIELD_ACCESS = 4, |
196 | | }; |
197 | | |
198 | | /** _func fields. */ |
199 | | enum { |
200 | | BOX_FUNC_FIELD_ID = 0, |
201 | | BOX_FUNC_FIELD_UID = 1, |
202 | | BOX_FUNC_FIELD_NAME = 2, |
203 | | BOX_FUNC_FIELD_SETUID = 3, |
204 | | BOX_FUNC_FIELD_LANGUAGE = 4, |
205 | | BOX_FUNC_FIELD_BODY = 5, |
206 | | BOX_FUNC_FIELD_ROUTINE_TYPE = 6, |
207 | | BOX_FUNC_FIELD_PARAM_LIST = 7, |
208 | | BOX_FUNC_FIELD_RETURNS = 8, |
209 | | BOX_FUNC_FIELD_AGGREGATE = 9, |
210 | | BOX_FUNC_FIELD_SQL_DATA_ACCESS = 10, |
211 | | BOX_FUNC_FIELD_IS_DETERMINISTIC = 11, |
212 | | BOX_FUNC_FIELD_IS_SANDBOXED = 12, |
213 | | BOX_FUNC_FIELD_IS_NULL_CALL = 13, |
214 | | BOX_FUNC_FIELD_EXPORTS = 14, |
215 | | BOX_FUNC_FIELD_OPTS = 15, |
216 | | BOX_FUNC_FIELD_COMMENT = 16, |
217 | | BOX_FUNC_FIELD_CREATED = 17, |
218 | | BOX_FUNC_FIELD_LAST_ALTERED = 18, |
219 | | BOX_FUNC_FIELD_TRIGGER = 19, |
220 | | box_func_field_MAX = 20, |
221 | | }; |
222 | | |
223 | | /** _collation fields. */ |
224 | | enum { |
225 | | BOX_COLLATION_FIELD_ID = 0, |
226 | | BOX_COLLATION_FIELD_NAME = 1, |
227 | | BOX_COLLATION_FIELD_UID = 2, |
228 | | BOX_COLLATION_FIELD_TYPE = 3, |
229 | | BOX_COLLATION_FIELD_LOCALE = 4, |
230 | | BOX_COLLATION_FIELD_OPTIONS = 5, |
231 | | }; |
232 | | |
233 | | /** _schema fields. */ |
234 | | enum { |
235 | | BOX_SCHEMA_FIELD_KEY = 0, |
236 | | BOX_SCHEMA_FIELD_VALUE = 1, |
237 | | }; |
238 | | |
239 | | /** _gc_consumers fields. */ |
240 | | enum { |
241 | | BOX_GC_CONSUMERS_FIELD_UUID = 0, |
242 | | BOX_GC_CONSUMERS_FIELD_VCLOCK = 1, |
243 | | BOX_GC_CONSUMERS_FIELD_OPTS = 2, |
244 | | }; |
245 | | |
246 | | /** _cluster fields. */ |
247 | | enum { |
248 | | BOX_CLUSTER_FIELD_ID = 0, |
249 | | BOX_CLUSTER_FIELD_UUID = 1, |
250 | | BOX_CLUSTER_FIELD_NAME = 2, |
251 | | }; |
252 | | |
253 | | /** _truncate fields. */ |
254 | | enum { |
255 | | BOX_TRUNCATE_FIELD_SPACE_ID = 0, |
256 | | BOX_TRUNCATE_FIELD_COUNT = 1, |
257 | | }; |
258 | | |
259 | | /** _sequence fields. */ |
260 | | enum { |
261 | | BOX_SEQUENCE_FIELD_ID = 0, |
262 | | BOX_SEQUENCE_FIELD_UID = 1, |
263 | | BOX_SEQUENCE_FIELD_NAME = 2, |
264 | | BOX_SEQUENCE_FIELD_STEP = 3, |
265 | | BOX_SEQUENCE_FIELD_MIN = 4, |
266 | | BOX_SEQUENCE_FIELD_MAX = 5, |
267 | | BOX_SEQUENCE_FIELD_START = 6, |
268 | | BOX_SEQUENCE_FIELD_CACHE = 7, |
269 | | BOX_SEQUENCE_FIELD_CYCLE = 8, |
270 | | }; |
271 | | |
272 | | /** _sequence_data fields. */ |
273 | | enum { |
274 | | BOX_SEQUENCE_DATA_FIELD_ID = 0, |
275 | | BOX_SEQUENCE_DATA_FIELD_VALUE = 1, |
276 | | }; |
277 | | |
278 | | /** _space_seq fields. */ |
279 | | enum { |
280 | | BOX_SPACE_SEQUENCE_FIELD_ID = 0, |
281 | | BOX_SPACE_SEQUENCE_FIELD_SEQUENCE_ID = 1, |
282 | | BOX_SPACE_SEQUENCE_FIELD_IS_GENERATED = 2, |
283 | | BOX_SPACE_SEQUENCE_FIELD_FIELDNO = 3, |
284 | | BOX_SPACE_SEQUENCE_FIELD_PATH = 4, |
285 | | }; |
286 | | |
287 | | /** _trigger fields. */ |
288 | | enum { |
289 | | BOX_TRIGGER_FIELD_NAME = 0, |
290 | | BOX_TRIGGER_FIELD_SPACE_ID = 1, |
291 | | BOX_TRIGGER_FIELD_OPTS = 2, |
292 | | }; |
293 | | |
294 | | /** _fk_constraint fields. */ |
295 | | enum { |
296 | | BOX_FK_CONSTRAINT_FIELD_NAME = 0, |
297 | | BOX_FK_CONSTRAINT_FIELD_CHILD_ID = 1, |
298 | | BOX_FK_CONSTRAINT_FIELD_PARENT_ID = 2, |
299 | | BOX_FK_CONSTRAINT_FIELD_DEFERRED = 3, |
300 | | BOX_FK_CONSTRAINT_FIELD_MATCH = 4, |
301 | | BOX_FK_CONSTRAINT_FIELD_ON_DELETE = 5, |
302 | | BOX_FK_CONSTRAINT_FIELD_ON_UPDATE = 6, |
303 | | BOX_FK_CONSTRAINT_FIELD_CHILD_COLS = 7, |
304 | | BOX_FK_CONSTRAINT_FIELD_PARENT_COLS = 8, |
305 | | }; |
306 | | |
307 | | /** _ck_constraint fields. */ |
308 | | enum { |
309 | | BOX_CK_CONSTRAINT_FIELD_SPACE_ID = 0, |
310 | | BOX_CK_CONSTRAINT_FIELD_NAME = 1, |
311 | | BOX_CK_CONSTRAINT_FIELD_DEFERRED = 2, |
312 | | BOX_CK_CONSTRAINT_FIELD_LANGUAGE = 3, |
313 | | BOX_CK_CONSTRAINT_FIELD_CODE = 4, |
314 | | BOX_CK_CONSTRAINT_FIELD_IS_ENABLED = 5, |
315 | | }; |
316 | | |
317 | | /** _func_index fields. */ |
318 | | enum { |
319 | | BOX_FUNC_INDEX_FIELD_SPACE_ID = 0, |
320 | | BOX_FUNC_INDEX_FIELD_INDEX_ID = 1, |
321 | | BOX_FUNC_INDEX_FUNCTION_ID = 2, |
322 | | }; |
323 | | |
324 | | /** _session_settings fields. */ |
325 | | enum { |
326 | | BOX_SESSION_SETTINGS_FIELD_NAME = 0, |
327 | | BOX_SESSION_SETTINGS_FIELD_VALUE = 1, |
328 | | }; |
329 | | |
330 | | /* |
331 | | * Different objects which can be subject to access |
332 | | * control. |
333 | | * |
334 | | * Use 0 for unknown to use the same index consistently |
335 | | * even when there are more object types in the future. |
336 | | */ |
337 | | enum schema_object_type { |
338 | | SC_UNKNOWN = 0, |
339 | | SC_UNIVERSE, |
340 | | SC_LUA_CALL, |
341 | | SC_LUA_EVAL, |
342 | | SC_SQL, |
343 | | SC_SPACE, |
344 | | SC_FUNCTION, |
345 | | SC_USER, |
346 | | SC_ROLE, |
347 | | SC_SEQUENCE, |
348 | | SC_COLLATION, |
349 | | schema_object_type_MAX, |
350 | | }; |
351 | | |
352 | | /** SQL Storage engine. */ |
353 | | enum sql_storage_engine { |
354 | | SQL_STORAGE_ENGINE_MEMTX = 0, |
355 | | SQL_STORAGE_ENGINE_VINYL = 1, |
356 | | sql_storage_engine_MAX = 2 |
357 | | }; |
358 | | |
359 | | extern const char *sql_storage_engine_strs[]; |
360 | | |
361 | | enum schema_object_type |
362 | | schema_object_type(const char *name); |
363 | | |
364 | | const char * |
365 | | schema_object_name(enum schema_object_type type); |
366 | | |
367 | | /** |
368 | | * Check that the space id corresponds to a system space, which means that is |
369 | | * has a special meaning for tarantool and has predefined insert/remove |
370 | | * triggers. |
371 | | */ |
372 | | static inline bool |
373 | | space_id_is_system(uint32_t space_id) |
374 | 0 | { |
375 | 0 | return space_id > BOX_SYSTEM_ID_MIN && |
376 | 0 | space_id < BOX_SYSTEM_ID_MAX; |
377 | 0 | } Unexecuted instantiation: error.cc:space_id_is_system(unsigned int) Unexecuted instantiation: box.cc:space_id_is_system(unsigned int) Unexecuted instantiation: gc.c:space_id_is_system Unexecuted instantiation: user.cc:space_id_is_system(unsigned int) Unexecuted instantiation: authentication.c:space_id_is_system Unexecuted instantiation: replication.cc:space_id_is_system(unsigned int) Unexecuted instantiation: recovery.cc:space_id_is_system(unsigned int) Unexecuted instantiation: applier.cc:space_id_is_system(unsigned int) Unexecuted instantiation: sql.c:space_id_is_system Unexecuted instantiation: call.c:space_id_is_system Unexecuted instantiation: alter.c:space_id_is_system Unexecuted instantiation: build.c:space_id_is_system Unexecuted instantiation: expr.c:space_id_is_system Unexecuted instantiation: func.c:space_id_is_system Unexecuted instantiation: global.c:space_id_is_system Unexecuted instantiation: main.c:space_id_is_system Unexecuted instantiation: malloc.c:space_id_is_system Unexecuted instantiation: mem.c:space_id_is_system Unexecuted instantiation: os.c:space_id_is_system Unexecuted instantiation: os_unix.c:space_id_is_system Unexecuted instantiation: parse_def.c:space_id_is_system Unexecuted instantiation: prepare.c:space_id_is_system Unexecuted instantiation: printf.c:space_id_is_system Unexecuted instantiation: random.c:space_id_is_system Unexecuted instantiation: resolve.c:space_id_is_system Unexecuted instantiation: port.c:space_id_is_system Unexecuted instantiation: select.c:space_id_is_system Unexecuted instantiation: tokenize.c:space_id_is_system Unexecuted instantiation: treeview.c:space_id_is_system Unexecuted instantiation: trigger.c:space_id_is_system Unexecuted instantiation: update.c:space_id_is_system Unexecuted instantiation: util.c:space_id_is_system Unexecuted instantiation: vdbe.c:space_id_is_system Unexecuted instantiation: vdbeapi.c:space_id_is_system Unexecuted instantiation: vdbeaux.c:space_id_is_system Unexecuted instantiation: vdbesort.c:space_id_is_system Unexecuted instantiation: walker.c:space_id_is_system Unexecuted instantiation: where.c:space_id_is_system Unexecuted instantiation: wherecode.c:space_id_is_system Unexecuted instantiation: whereexpr.c:space_id_is_system Unexecuted instantiation: console.c:space_id_is_system Unexecuted instantiation: tuple.c:space_id_is_system Unexecuted instantiation: misc.cc:space_id_is_system(unsigned int) Unexecuted instantiation: execute.c:space_id_is_system Unexecuted instantiation: tuple_format.c:space_id_is_system Unexecuted instantiation: iproto.cc:space_id_is_system(unsigned int) Unexecuted instantiation: tuple_convert.c:space_id_is_system Unexecuted instantiation: index.cc:space_id_is_system(unsigned int) Unexecuted instantiation: index_def.c:space_id_is_system Unexecuted instantiation: index_weak_ref.c:space_id_is_system Unexecuted instantiation: memtx_bitset.cc:space_id_is_system(unsigned int) Unexecuted instantiation: memtx_tx.c:space_id_is_system Unexecuted instantiation: memtx_engine.cc:space_id_is_system(unsigned int) Unexecuted instantiation: memtx_space.c:space_id_is_system Unexecuted instantiation: sysview.c:space_id_is_system Unexecuted instantiation: blackhole.c:space_id_is_system Unexecuted instantiation: service_engine.c:space_id_is_system Unexecuted instantiation: session_settings.c:space_id_is_system Unexecuted instantiation: vinyl.c:space_id_is_system Unexecuted instantiation: vy_stmt.c:space_id_is_system Unexecuted instantiation: vy_mem.c:space_id_is_system Unexecuted instantiation: vy_run.c:space_id_is_system Unexecuted instantiation: vy_lsm.c:space_id_is_system Unexecuted instantiation: vy_tx.c:space_id_is_system Unexecuted instantiation: vy_read_iterator.c:space_id_is_system Unexecuted instantiation: vy_point_lookup.c:space_id_is_system Unexecuted instantiation: vy_cache.c:space_id_is_system Unexecuted instantiation: vy_upsert.c:space_id_is_system Unexecuted instantiation: vy_history.c:space_id_is_system Unexecuted instantiation: vy_read_set.c:space_id_is_system Unexecuted instantiation: vy_scheduler.c:space_id_is_system Unexecuted instantiation: vy_regulator.c:space_id_is_system Unexecuted instantiation: space.c:space_id_is_system Unexecuted instantiation: space_cache.c:space_id_is_system Unexecuted instantiation: space_def.c:space_id_is_system Unexecuted instantiation: sequence.c:space_id_is_system Unexecuted instantiation: func_cache.c:space_id_is_system Unexecuted instantiation: field_default_func.c:space_id_is_system Unexecuted instantiation: tuple_constraint_func.c:space_id_is_system Unexecuted instantiation: tuple_constraint_fkey.c:space_id_is_system Unexecuted instantiation: alter.cc:space_id_is_system(unsigned int) Unexecuted instantiation: schema.cc:space_id_is_system(unsigned int) Unexecuted instantiation: schema_def.c:space_id_is_system Unexecuted instantiation: session.c:space_id_is_system Unexecuted instantiation: txn.c:space_id_is_system Unexecuted instantiation: txn_limbo.c:space_id_is_system Unexecuted instantiation: txn_event_trigger.c:space_id_is_system Unexecuted instantiation: user_def.c:space_id_is_system Unexecuted instantiation: bind.c:space_id_is_system Unexecuted instantiation: read_view.c:space_id_is_system Unexecuted instantiation: opcodes.c:space_id_is_system Unexecuted instantiation: parse.c:space_id_is_system Unexecuted instantiation: cursor.c:space_id_is_system Unexecuted instantiation: delete.c:space_id_is_system Unexecuted instantiation: hash.c:space_id_is_system Unexecuted instantiation: insert.c:space_id_is_system Unexecuted instantiation: pragma.c:space_id_is_system Unexecuted instantiation: show.c:space_id_is_system Unexecuted instantiation: iproto.c:space_id_is_system Unexecuted instantiation: space_upgrade.c:space_id_is_system Unexecuted instantiation: memtx_space_upgrade.c:space_id_is_system Unexecuted instantiation: memtx_allocator.cc:space_id_is_system(unsigned int) Unexecuted instantiation: memtx_hash.cc:space_id_is_system(unsigned int) Unexecuted instantiation: memtx_tree.cc:space_id_is_system(unsigned int) Unexecuted instantiation: memtx_rtree.cc:space_id_is_system(unsigned int) Unexecuted instantiation: vy_range.c:space_id_is_system Unexecuted instantiation: vy_write_iterator.c:space_id_is_system Unexecuted instantiation: request.c:space_id_is_system Unexecuted instantiation: key_list.c:space_id_is_system Unexecuted instantiation: func_adapter.c:space_id_is_system Unexecuted instantiation: tuple_format_map.c:space_id_is_system Unexecuted instantiation: tuple_constraint_def.c:space_id_is_system Unexecuted instantiation: tuple_constraint.c:space_id_is_system Unexecuted instantiation: tuple_builder.c:space_id_is_system Unexecuted instantiation: xrow_update.c:space_id_is_system Unexecuted instantiation: xrow_update_field.c:space_id_is_system Unexecuted instantiation: xrow_update_array.c:space_id_is_system Unexecuted instantiation: xrow_update_bar.c:space_id_is_system Unexecuted instantiation: xrow_update_route.c:space_id_is_system Unexecuted instantiation: xrow_update_map.c:space_id_is_system Unexecuted instantiation: tuple_compare.cc:space_id_is_system(unsigned int) Unexecuted instantiation: tuple_extract_key.cc:space_id_is_system(unsigned int) Unexecuted instantiation: tuple_hash.cc:space_id_is_system(unsigned int) Unexecuted instantiation: tuple_bloom.c:space_id_is_system Unexecuted instantiation: key_def.c:space_id_is_system Unexecuted instantiation: field_def.c:space_id_is_system Unexecuted instantiation: mp_tuple.c:space_id_is_system |
378 | | |
379 | | #if defined(__cplusplus) |
380 | | } /* extern "C" */ |
381 | | #endif /* defined(__cplusplus) */ |
382 | | |
383 | | #endif /* TARANTOOL_BOX_SCHEMA_DEF_H_INCLUDED */ |