diff --git a/src/box/alter.cc b/src/box/alter.cc
index 681b00484afe005dea8efcd7850f62bf60dba697..e9a3ab0dfa082a4baba805487dcbb4e3a75b39f2 100644
--- a/src/box/alter.cc
+++ b/src/box/alter.cc
@@ -81,19 +81,16 @@ access_check_ddl(uint32_t owner_uid, enum schema_object_type type)
  * Support function for index_def_new_from_tuple(..)
  * Checks tuple (of _index space) and throws a nice error if it is invalid
  * Checks only types of fields and their count!
- * Additionally determines version of tuple structure
- * is_166plus is set as true if tuple structure is 1.6.6+
- * is_166plus is set as false if tuple structure is 1.6.5-
  */
 static void
-index_def_check_tuple(const struct tuple *tuple, bool *is_166plus)
+index_def_check_tuple(const struct tuple *tuple)
 {
-	*is_166plus = true;
-	const mp_type common_template[] = {MP_UINT, MP_UINT, MP_STR, MP_STR};
+	const mp_type common_template[] =
+		{MP_UINT, MP_UINT, MP_STR, MP_STR, MP_MAP, MP_ARRAY};
 	const char *data = tuple_data(tuple);
 	uint32_t field_count = mp_decode_array(&data);
 	const char *field_start = data;
-	if (field_count < 6)
+	if (field_count != 6)
 		goto err;
 	for (size_t i = 0; i < lengthof(common_template); i++) {
 		enum mp_type type = mp_typeof(*data);
@@ -101,33 +98,6 @@ index_def_check_tuple(const struct tuple *tuple, bool *is_166plus)
 			goto err;
 		mp_next(&data);
 	}
-	if (mp_typeof(*data) == MP_UINT) {
-		/* old 1.6.5- version */
-		/* TODO: removed it in newer versions, find all 1.6.5- */
-		*is_166plus = false;
-		mp_next(&data);
-		if (mp_typeof(*data) != MP_UINT)
-			goto err;
-		if (field_count % 2)
-			goto err;
-		mp_next(&data);
-		for (uint32_t i = 6; i < field_count; i += 2) {
-			if (mp_typeof(*data) != MP_UINT)
-				goto err;
-			mp_next(&data);
-			if (mp_typeof(*data) != MP_STR)
-				goto err;
-			mp_next(&data);
-		}
-	} else {
-		if (field_count != 6)
-			goto err;
-		if (mp_typeof(*data) != MP_MAP)
-			goto err;
-		mp_next(&data);
-		if (mp_typeof(*data) != MP_ARRAY)
-			goto err;
-	}
 	return;
 
 err:
@@ -137,39 +107,11 @@ index_def_check_tuple(const struct tuple *tuple, bool *is_166plus)
 	for (uint32_t i = 0; i < field_count && p < e; i++) {
 		enum mp_type type = mp_typeof(*data);
 		mp_next(&data);
-		const char *type_name;
-		switch (type) {
-		case MP_UINT:
-			type_name = "number";
-			break;
-		case MP_STR:
-			type_name = "string";
-			break;
-		case MP_ARRAY:
-			type_name = "array";
-			break;
-		case MP_MAP:
-			type_name = "map";
-			break;
-		default:
-			type_name = "unknown";
-			break;
-		}
-		p += snprintf(p, e - p, i ? ", %s" : "%s", type_name);
-	}
-	const char *expected;
-	if (*is_166plus) {
-		expected = "space id (number), index id (number), "
-			"name (string), type (string), "
-			"options (map), parts (array)";
-	} else {
-		expected = "space id (number), index id (number), "
-			"name (string), type (string), "
-			"is_unique (number), part count (number) "
-			"part0 field no (number), "
-			"part0 field type (string), ...";
+		p += snprintf(p, e - p, i ? ", %s" : "%s", mp_type_strs[type]);
 	}
-	tnt_raise(ClientError, ER_WRONG_INDEX_RECORD, got, expected);
+	tnt_raise(ClientError, ER_WRONG_INDEX_RECORD, got,
+		  "space id (unsigned), index id (unsigned), name (string), "\
+		  "type (string), options (map), parts (array)");
 }
 
 static int
@@ -285,8 +227,6 @@ opts_create_from_field(void *opts, const struct opt_def *reg, const char *map,
 }
 
 /**
- * Support function for index_def_new_from_tuple(..)
- * 1.6.6+
  * Decode distance type from message pached string to enum
  * Does not check message type, MP_STRING expected
  * Throws an error if the the value does not correspond to any enum value
@@ -311,8 +251,6 @@ index_opts_decode_distance(const char *str)
 }
 
 /**
- * Support function for index_def_new_from_tuple(..)
- * 1.6.6+
  * Fill index_opts structure from opts field in tuple of space _index
  * Throw an error is unrecognized option.
  *
@@ -352,8 +290,7 @@ index_opts_create(struct index_opts *opts, const char *map)
 extern "C" struct index_def *
 index_def_new_from_tuple(struct tuple *tuple, struct space *old_space)
 {
-	bool is_166plus;
-	index_def_check_tuple(tuple, &is_166plus);
+	index_def_check_tuple(tuple);
 
 	struct index_opts opts;
 	uint32_t id = tuple_field_u32_xc(tuple, BOX_INDEX_FIELD_SPACE_ID);
@@ -364,43 +301,20 @@ index_def_new_from_tuple(struct tuple *tuple, struct space *old_space)
 	uint32_t name_len;
 	const char *name = tuple_field_str_xc(tuple, BOX_INDEX_FIELD_NAME,
 					      &name_len);
-	uint32_t part_count;
-	const char *parts;
-	if (is_166plus) {
-		/* 1.6.6+ _index space structure */
-		const char *opts_field =
-			tuple_field(tuple, BOX_INDEX_FIELD_OPTS);
-		index_opts_create(&opts, opts_field);
-		parts = tuple_field(tuple, BOX_INDEX_FIELD_PARTS);
-		part_count = mp_decode_array(&parts);
-	} else {
-		/* 1.6.5- _index space structure */
-		/* TODO: remove it in newer versions, find all 1.6.5- */
-		opts = index_opts_default;
-		opts.is_unique =
-			tuple_field_u32_xc(tuple,
-					   BOX_INDEX_FIELD_IS_UNIQUE_165);
-		part_count = tuple_field_u32_xc(tuple,
-						BOX_INDEX_FIELD_PART_COUNT_165);
-		parts = tuple_field(tuple, BOX_INDEX_FIELD_PARTS_165);
-	}
-	if (name_len > BOX_NAME_MAX)
+	if (name_len > BOX_NAME_MAX) {
 		tnt_raise(ClientError, ER_MODIFY_INDEX,
 			  tt_cstr(name, BOX_INVALID_NAME_MAX),
 			  space_name(old_space), "index name is too long");
+	}
+	index_opts_create(&opts, tuple_field(tuple, BOX_INDEX_FIELD_OPTS));
+	const char *parts = tuple_field(tuple, BOX_INDEX_FIELD_PARTS);
+	uint32_t part_count = mp_decode_array(&parts);
 	struct key_def *key_def = key_def_new(part_count);
 	if (key_def == NULL)
 		diag_raise();
 	auto key_def_guard = make_scoped_guard([=] { box_key_def_delete(key_def); });
-	if (is_166plus) {
-		/* 1.6.6+ */
-		if (key_def_decode_parts(key_def, &parts) != 0)
-			diag_raise();
-	} else {
-		/* 1.6.5- TODO: remove it in newer versions, find all 1.6.5- */
-		if (key_def_decode_parts_165(key_def, &parts) != 0)
-			diag_raise();
-	}
+	if (key_def_decode_parts(key_def, &parts) != 0)
+		diag_raise();
 	struct index_def *index_def =
 		index_def_new(id, index_id, name, name_len, type,
 			      &opts, key_def, space_index_key_def(old_space, 0));
@@ -428,25 +342,8 @@ space_opts_create(struct space_opts *opts, struct tuple *tuple)
 		return;
 
 	const char *data = tuple_field(tuple, BOX_SPACE_FIELD_OPTS);
-	bool is_170_plus = (mp_typeof(*data) == MP_MAP);
-	if (!is_170_plus) {
-		/* Tarantool < 1.7.0 compatibility */
-		const char *flags =
-			tuple_field_cstr_xc(tuple, BOX_SPACE_FIELD_OPTS);
-		while (flags && *flags) {
-			while (isspace(*flags)) /* skip space */
-				flags++;
-			if (strncmp(flags, "temporary", strlen("temporary")) == 0)
-				opts->temporary = true;
-			flags = strchr(flags, ',');
-			if (flags)
-				flags++;
-		}
-	} else {
-		opts_create_from_field(opts, space_opts_reg, data,
-				       ER_WRONG_SPACE_OPTIONS,
-				       BOX_SPACE_FIELD_OPTS);
-	}
+	opts_create_from_field(opts, space_opts_reg, data,
+			       ER_WRONG_SPACE_OPTIONS, BOX_SPACE_FIELD_OPTS);
 }
 
 /**
diff --git a/src/box/key_def.cc b/src/box/key_def.cc
index 65709b515588787552cc0e7350a5b8ff7202a4cf..35ae6740421718cb663cd725e1b43abb51cd0588 100644
--- a/src/box/key_def.cc
+++ b/src/box/key_def.cc
@@ -607,26 +607,6 @@ key_def_decode_parts(struct key_def *key_def, const char **data)
 	return 0;
 }
 
-int
-key_def_decode_parts_165(struct key_def *key_def, const char **data)
-{
-	char buf[FIELD_TYPE_NAME_MAX];
-	for (uint32_t i = 0; i < key_def->part_count; i++) {
-		uint32_t field_no = (uint32_t) mp_decode_uint(data);
-		uint32_t len;
-		const char *str = mp_decode_str(data, &len);
-		snprintf(buf, sizeof(buf), "%.*s", len, str);
-		enum field_type field_type = field_type_by_name(buf);
-		if (field_type == field_type_MAX) {
-			diag_set(ClientError, ER_WRONG_INDEX_PARTS,
-				 "unknown field type");
-			return -1;
-		}
-		key_def_set_part(key_def, i, field_no, field_type);
-	}
-	return 0;
-}
-
 const struct key_part *
 key_def_find(const struct key_def *key_def, uint32_t fieldno)
 {
diff --git a/src/box/key_def.h b/src/box/key_def.h
index 6126123a273428f6be97514f8d4e9dc852f14ebd..5c4067f322d31c874ff026f764f8df5f0c2ed392 100644
--- a/src/box/key_def.h
+++ b/src/box/key_def.h
@@ -623,7 +623,6 @@ char *
 key_def_encode_parts(char *data, const struct key_def *key_def);
 
 /**
- * 1.6.6+
  * Decode parts array from tuple field and write'em to index_def structure.
  * Throws a nice error about invalid types, but does not check ranges of
  *  resulting values field_no and field_type
@@ -633,17 +632,6 @@ key_def_encode_parts(char *data, const struct key_def *key_def);
 int
 key_def_decode_parts(struct key_def *key_def, const char **data);
 
-/**
- * 1.6.5-
- * TODO: Remove it in newer version, find all 1.6.5-
- * Decode parts array from tuple fieldw and write'em to index_def structure.
- * Does not check anything since tuple must be validated before
- * Parts expected to be a sequence of <part_count> 2 * arrays values this:
- *  NUM, STR, NUM, STR, ..,
- */
-int
-key_def_decode_parts_165(struct key_def *key_def, const char **data);
-
 /**
  * Returns the part in index_def->parts for the specified fieldno.
  * If fieldno is not in index_def->parts returns NULL.
diff --git a/src/box/schema.h b/src/box/schema.h
index 21e4dbccb437a7ac4f9ee4cae6b70847eba73855..6c5e0d97d14b6bc6b810234ab6026c697914da84 100644
--- a/src/box/schema.h
+++ b/src/box/schema.h
@@ -86,10 +86,7 @@ enum {
 	BOX_INDEX_FIELD_NAME = 2,
 	BOX_INDEX_FIELD_TYPE = 3,
 	BOX_INDEX_FIELD_OPTS = 4,
-	BOX_INDEX_FIELD_IS_UNIQUE_165 = 4,
 	BOX_INDEX_FIELD_PARTS = 5,
-	BOX_INDEX_FIELD_PART_COUNT_165 = 5,
-	BOX_INDEX_FIELD_PARTS_165 = 6,
 };
 
 /** _user fields. */
diff --git a/test/box/alter.result b/test/box/alter.result
index b82666ac3c7285d8768ed66f6392f8f666133f5f..6bebfc468e9554edc6f2cb4d38146adf9942503a 100644
--- a/test/box/alter.result
+++ b/test/box/alter.result
@@ -148,32 +148,32 @@ space:replace{0}
 ---
 - error: Space '331' does not exist
 ...
-_index:insert{_space.id, 0, 'primary', 'tree', 1, 1, 0, 'unsigned'}
+_index:insert{_space.id, 0, 'primary', 'tree', {unique=true}, {{0, 'unsigned'}}}
 ---
 - error: Duplicate key exists in unique index 'primary' in space '_index'
 ...
-_index:replace{_space.id, 0, 'primary', 'tree', 1, 1, 0, 'unsigned'}
+_index:replace{_space.id, 0, 'primary', 'tree', {unique=true}, {{0, 'unsigned'}}}
 ---
-- [280, 0, 'primary', 'tree', 1, 1, 0, 'unsigned']
+- [280, 0, 'primary', 'tree', {'unique': true}, [[0, 'unsigned']]]
 ...
-_index:insert{_index.id, 0, 'primary', 'tree', 1, 2, 0, 'unsigned', 1, 'unsigned'}
+_index:insert{_index.id, 0, 'primary', 'tree', {unique=true}, {{0, 'unsigned'}, {1, 'unsigned'}}}
 ---
 - error: Duplicate key exists in unique index 'primary' in space '_index'
 ...
-_index:replace{_index.id, 0, 'primary', 'tree', 1, 2, 0, 'unsigned', 1, 'unsigned'}
+_index:replace{_index.id, 0, 'primary', 'tree', {unique=true}, {{0, 'unsigned'}, {1, 'unsigned'}}}
 ---
-- [288, 0, 'primary', 'tree', 1, 2, 0, 'unsigned', 1, 'unsigned']
+- [288, 0, 'primary', 'tree', {'unique': true}, [[0, 'unsigned'], [1, 'unsigned']]]
 ...
 _index:select{}
 ---
 - - [272, 0, 'primary', 'tree', {'unique': true}, [[0, 'string']]]
-  - [280, 0, 'primary', 'tree', 1, 1, 0, 'unsigned']
+  - [280, 0, 'primary', 'tree', {'unique': true}, [[0, 'unsigned']]]
   - [280, 1, 'owner', 'tree', {'unique': false}, [[1, 'unsigned']]]
   - [280, 2, 'name', 'tree', {'unique': true}, [[2, 'string']]]
   - [281, 0, 'primary', 'tree', {'unique': true}, [[0, 'unsigned']]]
   - [281, 1, 'owner', 'tree', {'unique': false}, [[1, 'unsigned']]]
   - [281, 2, 'name', 'tree', {'unique': true}, [[2, 'string']]]
-  - [288, 0, 'primary', 'tree', 1, 2, 0, 'unsigned', 1, 'unsigned']
+  - [288, 0, 'primary', 'tree', {'unique': true}, [[0, 'unsigned'], [1, 'unsigned']]]
   - [288, 2, 'name', 'tree', {'unique': true}, [[0, 'unsigned'], [2, 'string']]]
   - [289, 0, 'primary', 'tree', {'unique': true}, [[0, 'unsigned'], [1, 'unsigned']]]
   - [289, 2, 'name', 'tree', {'unique': true}, [[0, 'unsigned'], [2, 'string']]]
@@ -211,9 +211,9 @@ _space:insert{1000, ADMIN, 'hello', 'memtx', 0}
 ---
 - [1000, 1, 'hello', 'memtx', 0]
 ...
-_index:insert{1000, 0, 'primary', 'tree', 1, 1, 0, 'unsigned'}
+_index:insert{1000, 0, 'primary', 'tree', {unique=true}, {{0, 'unsigned'}}}
 ---
-- [1000, 0, 'primary', 'tree', 1, 1, 0, 'unsigned']
+- [1000, 0, 'primary', 'tree', {'unique': true}, [[0, 'unsigned']]]
 ...
 box.space[1000]:insert{0, 'hello, world'}
 ---
diff --git a/test/box/alter.test.lua b/test/box/alter.test.lua
index e88b78773e55b5c3c34ef81b931cc3e40da201bb..af0f468bb69404e5c8a1daeac8935b5cadcd1c3d 100644
--- a/test/box/alter.test.lua
+++ b/test/box/alter.test.lua
@@ -59,15 +59,15 @@ t = _space:delete{space.id}
 space_deleted = box.space[t[1]]
 space_deleted
 space:replace{0}
-_index:insert{_space.id, 0, 'primary', 'tree', 1, 1, 0, 'unsigned'}
-_index:replace{_space.id, 0, 'primary', 'tree', 1, 1, 0, 'unsigned'}
-_index:insert{_index.id, 0, 'primary', 'tree', 1, 2, 0, 'unsigned', 1, 'unsigned'}
-_index:replace{_index.id, 0, 'primary', 'tree', 1, 2, 0, 'unsigned', 1, 'unsigned'}
+_index:insert{_space.id, 0, 'primary', 'tree', {unique=true}, {{0, 'unsigned'}}}
+_index:replace{_space.id, 0, 'primary', 'tree', {unique=true}, {{0, 'unsigned'}}}
+_index:insert{_index.id, 0, 'primary', 'tree', {unique=true}, {{0, 'unsigned'}, {1, 'unsigned'}}}
+_index:replace{_index.id, 0, 'primary', 'tree', {unique=true}, {{0, 'unsigned'}, {1, 'unsigned'}}}
 _index:select{}
 -- modify indexes of a system space
 _index:delete{_index.id, 0}
 _space:insert{1000, ADMIN, 'hello', 'memtx', 0}
-_index:insert{1000, 0, 'primary', 'tree', 1, 1, 0, 'unsigned'}
+_index:insert{1000, 0, 'primary', 'tree', {unique=true}, {{0, 'unsigned'}}}
 box.space[1000]:insert{0, 'hello, world'}
 box.space[1000]:drop()
 box.space[1000]
diff --git a/test/box/rtree_misc.result b/test/box/rtree_misc.result
index f7878369891b96886c633c222d58dd1c7bd75618..e2c3c02f68ce77cefa1764088627d44e78844bea 100644
--- a/test/box/rtree_misc.result
+++ b/test/box/rtree_misc.result
@@ -547,29 +547,21 @@ f(box.space._index:insert{s.id, 2, 's', 'rtree', {unique = false}, {{2, 'array'}
 s.index.s:drop()
 ---
 ...
--- support of 1.6.5 _index structure
-f(box.space._index:insert{s.id, 2, 's', 'rtree', 0, 1, 2, 'array'})
----
-- [0, 2, 's', 'rtree', 0, 1, 2, 'array']
-...
-s.index.s:drop()
----
-...
 -- with wrong args
 empty_map = setmetatable({}, {__serialize = 'map'})
 ---
 ...
 box.space._index:insert{s.id, 2, 's', 'rtree', nil, {{2, 'array'}}}
 ---
-- error: 'Wrong record in _index space: got {number, number, string, string, unknown,
-    array}, expected {space id (number), index id (number), name (string), type (string),
-    options (map), parts (array)}'
+- error: 'Wrong record in _index space: got {unsigned, unsigned, string, string, nil,
+    array}, expected {space id (unsigned), index id (unsigned), name (string), type
+    (string), options (map), parts (array)}'
 ...
 box.space._index:insert{s.id, 2, 's', 'rtree', {}, {{2, 'array'}}}
 ---
-- error: 'Wrong record in _index space: got {number, number, string, string, array,
-    array}, expected {space id (number), index id (number), name (string), type (string),
-    options (map), parts (array)}'
+- error: 'Wrong record in _index space: got {unsigned, unsigned, string, string, array,
+    array}, expected {space id (unsigned), index id (unsigned), name (string), type
+    (string), options (map), parts (array)}'
 ...
 box.space._index:insert{s.id, 2, 's', 'rtree', empty_map, {{2, 'array'}}}
 ---
@@ -613,21 +605,20 @@ box.space._index:insert{s.id, 2, 's', 'rtree', {unique = false}, {{}}}
 - error: 'Wrong index parts: expected a non-empty array; expected field1 id (number),
     field1 type (string), ...'
 ...
-box.space._index:insert{s.id, 2, 's', 'rtree', 0, 1, 2, 'thing'}
+box.space._index:insert{s.id, 2, 's', 'rtree', {unique = false}, {{2, 'thing'}}}
 ---
 - error: 'Wrong index parts: unknown field type; expected field1 id (number), field1
     type (string), ...'
 ...
-box.space._index:insert{s.id, 2, 's', 'rtree', 0, 1, 2, 'array', 'wtf'}
+box.space._index:insert{s.id, 2, 's', 'rtree', {unique = false}, {{2, 'array'},{'wtf'}}}
 ---
-- error: 'Wrong record in _index space: got {number, number, string, string, number,
-    number, number, string, string}, expected {space id (number), index id (number),
-    name (string), type (string), is_unique (number), part count (number) part0 field
-    no (number), part0 field type (string), ...}'
+- error: 'Wrong index parts: a field type is missing; expected field1 id (number),
+    field1 type (string), ...'
 ...
-box.space._index:insert{s.id, 2, 's', 'rtree', 0, 0}
+box.space._index:insert{s.id, 2, 's', 'rtree', {unique = false}, {{}}}
 ---
-- error: 'Can''t create or modify index ''s'' in space ''s'': part count must be positive'
+- error: 'Wrong index parts: expected a non-empty array; expected field1 id (number),
+    field1 type (string), ...'
 ...
 -- unknown args checked
 f(box.space._index:insert{s.id, 2, 's', 'rtree', {unique = false, holy = 'cow'}, {{2, 'array'}}})
diff --git a/test/box/rtree_misc.test.lua b/test/box/rtree_misc.test.lua
index 7f84d589496c6242465f675301a1f6cbdc09b18c..83f54be2e8b2f57edd8f564b08e7956c48f2ae5d 100644
--- a/test/box/rtree_misc.test.lua
+++ b/test/box/rtree_misc.test.lua
@@ -199,9 +199,6 @@ function f(t) local r = {} for i, v in ipairs(t) do r[i] = v end r[1] = 0 return
 -- new index through inserting to _index space
 f(box.space._index:insert{s.id, 2, 's', 'rtree', {unique = false}, {{2, 'array'}}})
 s.index.s:drop()
--- support of 1.6.5 _index structure
-f(box.space._index:insert{s.id, 2, 's', 'rtree', 0, 1, 2, 'array'})
-s.index.s:drop()
 
 -- with wrong args
 empty_map = setmetatable({}, {__serialize = 'map'})
@@ -216,9 +213,9 @@ box.space._index:insert{s.id, 2, 's', 'rtree', {unique = false}, {{'no','time'}}
 box.space._index:insert{s.id, 2, 's', 'rtree', {unique = false, distance = 'lobachevsky'}, {{2, 'array'}}}
 box.space._index:insert{s.id, 2, 's', 'rtee', {unique = false}, {{2, 'array'}}}
 box.space._index:insert{s.id, 2, 's', 'rtree', {unique = false}, {{}}}
-box.space._index:insert{s.id, 2, 's', 'rtree', 0, 1, 2, 'thing'}
-box.space._index:insert{s.id, 2, 's', 'rtree', 0, 1, 2, 'array', 'wtf'}
-box.space._index:insert{s.id, 2, 's', 'rtree', 0, 0}
+box.space._index:insert{s.id, 2, 's', 'rtree', {unique = false}, {{2, 'thing'}}}
+box.space._index:insert{s.id, 2, 's', 'rtree', {unique = false}, {{2, 'array'},{'wtf'}}}
+box.space._index:insert{s.id, 2, 's', 'rtree', {unique = false}, {{}}}
 
 -- unknown args checked
 f(box.space._index:insert{s.id, 2, 's', 'rtree', {unique = false, holy = 'cow'}, {{2, 'array'}}})
diff --git a/test/box/temp_spaces.result b/test/box/temp_spaces.result
index f0d9a684ef458fb816e59f9cdce5ef7c979143f7..eb4bdb3423a0a1a80f57871e725863e1b5a89ed0 100644
--- a/test/box/temp_spaces.result
+++ b/test/box/temp_spaces.result
@@ -56,14 +56,14 @@ s:len()
 ---
 - 1
 ...
-_ = _space:update(s.id, {{'=', FLAGS, 'temporary'}})
+_ = _space:update(s.id, {{'=', FLAGS, {temporary = true}}})
 ---
 ...
 s.temporary
 ---
 - true
 ...
-_ = _space:update(s.id, {{'=', FLAGS, ''}})
+_ = _space:update(s.id, {{'=', FLAGS, {temporary = false}}})
 ---
 - error: 'Can''t modify space ''t'': can not switch temporary flag on a non-empty
     space'
@@ -106,12 +106,6 @@ test_run = env.new()
 ---
 ...
 test_run:cmd('restart server default')
-FLAGS = 6
----
-...
-_space = box.space._space
----
-...
 s = box.space.t
 ---
 ...
@@ -123,66 +117,6 @@ s.temporary
 ---
 - true
 ...
--- <!-- Tarantool < 1.7.0 compatibility
-_ = _space:update(s.id, {{'=', FLAGS, 'no-temporary'}})
----
-...
-s.temporary
----
-- false
-...
-_ = _space:update(s.id, {{'=', FLAGS, ',:asfda:temporary'}})
----
-...
-s.temporary
----
-- false
-...
-_ = _space:update(s.id, {{'=', FLAGS, 'a,b,c,d,e'}})
----
-...
-s.temporary
----
-- false
-...
-_ = _space:update(s.id, {{'=', FLAGS, 'temporary'}})
----
-...
-s.temporary
----
-- true
-...
-s:get{1}
----
-...
-s:insert{1, 2, 3}
----
-- [1, 2, 3]
-...
-_ = _space:update(s.id, {{'=', FLAGS, 'temporary'}})
----
-...
-s.temporary
----
-- true
-...
-_ = _space:update(s.id, {{'=', FLAGS, 'no-temporary'}})
----
-- error: 'Can''t modify space ''t'': can not switch temporary flag on a non-empty
-    space'
-...
-s.temporary
----
-- true
-...
-s:delete{1}
----
-- [1, 2, 3]
-...
-_ = _space:update(s.id, {{'=', FLAGS, 'no-temporary'}})
----
-...
--- Tarantool < 1.7.0 compatibility //-->
 s:drop()
 ---
 ...
diff --git a/test/box/temp_spaces.test.lua b/test/box/temp_spaces.test.lua
index c485b42f1f70cda00cbeb6699a22cc4730f0cefb..4d9f680bd7a3a2d18a85cc07866c2b5118c1fcde 100644
--- a/test/box/temp_spaces.test.lua
+++ b/test/box/temp_spaces.test.lua
@@ -23,9 +23,9 @@ s:insert{1, 2, 3}
 s:get{1}
 s:len()
 
-_ = _space:update(s.id, {{'=', FLAGS, 'temporary'}})
+_ = _space:update(s.id, {{'=', FLAGS, {temporary = true}}})
 s.temporary
-_ = _space:update(s.id, {{'=', FLAGS, ''}})
+_ = _space:update(s.id, {{'=', FLAGS, {temporary = false}}})
 s.temporary
 
 -- check that temporary space can be modified in read-only mode (gh-1378)
@@ -41,34 +41,8 @@ env = require('test_run')
 test_run = env.new()
 test_run:cmd('restart server default')
 
-FLAGS = 6
-_space = box.space._space
-
 s = box.space.t
 s:len()
 s.temporary
-
--- <!-- Tarantool < 1.7.0 compatibility
-_ = _space:update(s.id, {{'=', FLAGS, 'no-temporary'}})
-s.temporary
-_ = _space:update(s.id, {{'=', FLAGS, ',:asfda:temporary'}})
-s.temporary
-_ = _space:update(s.id, {{'=', FLAGS, 'a,b,c,d,e'}})
-s.temporary
-_ = _space:update(s.id, {{'=', FLAGS, 'temporary'}})
-s.temporary
-
-s:get{1}
-s:insert{1, 2, 3}
-
-_ = _space:update(s.id, {{'=', FLAGS, 'temporary'}})
-s.temporary
-_ = _space:update(s.id, {{'=', FLAGS, 'no-temporary'}})
-s.temporary
-
-s:delete{1}
-_ = _space:update(s.id, {{'=', FLAGS, 'no-temporary'}})
--- Tarantool < 1.7.0 compatibility //-->
-
 s:drop()
 s = nil