diff --git a/src/executor/admin/SpaceExecutor.cpp b/src/executor/admin/SpaceExecutor.cpp index 08e4723acd0db56aa097bf387340c49ff6db3ed4..9932d8a87a1f605fed0f97691467c382db74a881 100644 --- a/src/executor/admin/SpaceExecutor.cpp +++ b/src/executor/admin/SpaceExecutor.cpp @@ -56,6 +56,7 @@ folly::Future<Status> DescSpaceExecutor::execute() { "Charset", "Collate", "Vid Type", + "Atomic Edge", "Group"}; Row row; row.values.emplace_back(spaceId); @@ -65,6 +66,12 @@ folly::Future<Status> DescSpaceExecutor::execute() { row.values.emplace_back(properties.get_charset_name()); row.values.emplace_back(properties.get_collate_name()); row.values.emplace_back(SchemaUtil::typeToString(properties.get_vid_type())); + std::string sAtomicEdge{"false"}; + if (properties.__isset.isolation_level && + (*properties.get_isolation_level() == meta::cpp2::IsolationLevel::TOSS)) { + sAtomicEdge = "true"; + } + row.values.emplace_back(sAtomicEdge); if (properties.__isset.group_name) { row.values.emplace_back(properties.get_group_name()); } else { @@ -149,8 +156,13 @@ folly::Future<Status> ShowCreateSpaceExecutor::execute() { DataSet dataSet({"Space", "Create Space"}); Row row; row.values.emplace_back(properties.get_space_name()); + std::string sAtomicEdge{"false"}; + if (properties.__isset.isolation_level && + (*properties.get_isolation_level() == meta::cpp2::IsolationLevel::TOSS)) { + sAtomicEdge = "true"; + } auto fmt = "CREATE SPACE `%s` (partition_num = %d, replica_factor = %d, " - "charset = %s, collate = %s, vid_type = %s) ON %s"; + "charset = %s, collate = %s, vid_type = %s, atomic_edge = %s) ON %s"; row.values.emplace_back(folly::stringPrintf( fmt, properties.get_space_name().c_str(), @@ -159,6 +171,7 @@ folly::Future<Status> ShowCreateSpaceExecutor::execute() { properties.get_charset_name().c_str(), properties.get_collate_name().c_str(), SchemaUtil::typeToString(properties.get_vid_type()).c_str(), + sAtomicEdge.c_str(), properties.__isset.group_name ? properties.get_group_name()->c_str() : "default")); dataSet.rows.emplace_back(std::move(row)); diff --git a/tests/admin/test_space.py b/tests/admin/test_space.py index a941f22fa323a837a9bdeebd5fce64ec8e192a9f..c5fda7f10ee663ff8945f0a2e98b55356e098f56 100644 --- a/tests/admin/test_space.py +++ b/tests/admin/test_space.py @@ -23,7 +23,8 @@ class TestSpace(NebulaTestSuite): # check result resp = self.client.execute('DESC SPACE space_with_default_options') - expect_result = [['space_with_default_options', 100, 1, 'utf8', 'utf8_bin', 'FIXED_STRING(8)', 'default']] + expect_result = [['space_with_default_options', 100, 1, 'utf8', 'utf8_bin', + 'FIXED_STRING(8)', 'false', 'default']] self.check_result(resp, expect_result, {0}) # drop space @@ -42,7 +43,8 @@ class TestSpace(NebulaTestSuite): # desc space resp = self.client.execute('DESC SPACE default_space') self.check_resp_succeeded(resp) - expect_result = [['default_space', 9, 1, 'utf8', 'utf8_bin', 'FIXED_STRING(8)', 'default']] + expect_result = [['default_space', 9, 1, 'utf8', 'utf8_bin', 'FIXED_STRING(8)', + 'false', 'default']] self.check_result(resp, expect_result, {0}) # show create space @@ -55,7 +57,8 @@ class TestSpace(NebulaTestSuite): 'replica_factor = 1, '\ 'charset = utf8, '\ 'collate = utf8_bin, '\ - 'vid_type = FIXED_STRING(8)) '\ + 'vid_type = FIXED_STRING(8), '\ + 'atomic_edge = false) '\ 'ON default' expect_result = [['default_space', create_space_str]] @@ -83,7 +86,7 @@ class TestSpace(NebulaTestSuite): resp = self.client.execute('DESC SPACE space_charset_collate') self.check_resp_succeeded(resp) - expect_result = [['space_charset_collate', 9, 1, 'utf8', 'utf8_bin', 'FIXED_STRING(8)', 'default']] + expect_result = [['space_charset_collate', 9, 1, 'utf8', 'utf8_bin', 'FIXED_STRING(8)', 'false', 'default']] self.check_result(resp, expect_result, {0}) # drop space @@ -96,7 +99,7 @@ class TestSpace(NebulaTestSuite): resp = self.client.execute('DESC SPACE space_charset') self.check_resp_succeeded(resp) - expect_result = [['space_charset', 9, 1, 'utf8', 'utf8_bin', 'FIXED_STRING(8)', 'default']] + expect_result = [['space_charset', 9, 1, 'utf8', 'utf8_bin', 'FIXED_STRING(8)', 'false', 'default']] self.check_result(resp, expect_result, {0}) # drop space @@ -109,7 +112,7 @@ class TestSpace(NebulaTestSuite): resp = self.client.execute('DESC SPACE space_collate') self.check_resp_succeeded(resp) - expect_result = [['space_collate', 9, 1, 'utf8', 'utf8_bin', 'FIXED_STRING(8)', 'default']] + expect_result = [['space_collate', 9, 1, 'utf8', 'utf8_bin', 'FIXED_STRING(8)', 'false', 'default']] self.check_result(resp, expect_result, {0}) # drop space @@ -146,7 +149,8 @@ class TestSpace(NebulaTestSuite): resp = self.client.execute('DESC SPACE space_capital') self.check_resp_succeeded(resp) - expect_result = [['space_capital', 9, 1, 'utf8', 'utf8_bin', 'FIXED_STRING(8)', 'default']] + expect_result = [['space_capital', 9, 1, 'utf8', 'utf8_bin', 'FIXED_STRING(8)', + 'false', 'default']] self.check_result(resp, expect_result, {0}) # drop space @@ -198,7 +202,7 @@ class TestSpace(NebulaTestSuite): resp = self.client.execute('DESC SPACE space_string_vid') self.check_resp_succeeded(resp) - expect_result = [['space_string_vid', 9, 1, 'utf8', 'utf8_bin', 'FIXED_STRING(30)', 'default']] + expect_result = [['space_string_vid', 9, 1, 'utf8', 'utf8_bin', 'FIXED_STRING(30)', 'false', 'default']] self.check_result(resp, expect_result, {0}) def test_create_space_with_int_vid(self): @@ -209,5 +213,5 @@ class TestSpace(NebulaTestSuite): resp = self.client.execute('DESC SPACE space_int_vid') self.check_resp_succeeded(resp) - expect_result = [['space_int_vid', 9, 1, 'utf8', 'utf8_bin', 'INT64', 'default']] + expect_result = [['space_int_vid', 9, 1, 'utf8', 'utf8_bin', 'INT64', 'false', 'default']] self.check_result(resp, expect_result, {0})