Skip to content

Commit 910fffd

Browse files
Include array schema name when dumping fragment info. (#5257)
[SC-50588](https://app.shortcut.com/tiledb-inc/story/50588/add-array-schema-name-to-fragment-info-dump) --- TYPE: FEATURE DESC: Dumping fragment info now includes the name of each fragment's array schema.
1 parent 7485c93 commit 910fffd

File tree

3 files changed

+36
-14
lines changed

3 files changed

+36
-14
lines changed

test/src/unit-capi-fragment_info.cc

Lines changed: 26 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1526,20 +1526,27 @@ TEST_CASE("C API: Test fragment info, dump", "[capi][fragment_info][dump]") {
15261526

15271527
// Check dump
15281528
const auto ver = std::to_string(tiledb::sm::constants::format_version);
1529+
const char* schema_name;
1530+
rc = tiledb_fragment_info_get_array_schema_name(
1531+
ctx, fragment_info, 0, &schema_name);
1532+
CHECK(rc == TILEDB_OK);
15291533
std::string dump_str =
15301534
std::string("- Fragment num: 3\n") +
15311535
"- Unconsolidated metadata num: 3\n" + "- To vacuum num: 0\n" +
15321536
"- Fragment #1:\n" + " > URI: " + written_frag_uri_1 + "\n" +
1533-
" > Type: dense\n" + " > Non-empty domain: [1, 6]\n" +
1534-
" > Size: 3202\n" + " > Cell num: 10\n" +
1535-
" > Timestamp range: [1, 1]\n" + " > Format version: " + ver + "\n" +
1537+
" > Schema name: " + schema_name + "\n" + " > Type: dense\n" +
1538+
" > Non-empty domain: [1, 6]\n" + " > Size: 3202\n" +
1539+
" > Cell num: 10\n" + " > Timestamp range: [1, 1]\n" +
1540+
" > Format version: " + ver + "\n" +
15361541
" > Has consolidated metadata: no\n" + "- Fragment #2:\n" +
1537-
" > URI: " + written_frag_uri_2 + "\n" + " > Type: dense\n" +
1542+
" > URI: " + written_frag_uri_2 + "\n" +
1543+
" > Schema name: " + schema_name + "\n" + " > Type: dense\n" +
15381544
" > Non-empty domain: [1, 4]\n" + " > Size: 3151\n" +
15391545
" > Cell num: 5\n" + " > Timestamp range: [2, 2]\n" +
15401546
" > Format version: " + ver + "\n" +
15411547
" > Has consolidated metadata: no\n" + "- Fragment #3:\n" +
1542-
" > URI: " + written_frag_uri_3 + "\n" + " > Type: dense\n" +
1548+
" > URI: " + written_frag_uri_3 + "\n" +
1549+
" > Schema name: " + schema_name + "\n" + " > Type: dense\n" +
15431550
" > Non-empty domain: [5, 6]\n" + " > Size: 3202\n" +
15441551
" > Cell num: 10\n" + " > Timestamp range: [3, 3]\n" +
15451552
" > Format version: " + ver + "\n" +
@@ -1710,13 +1717,18 @@ TEST_CASE(
17101717
CHECK(rc == TILEDB_OK);
17111718

17121719
// Check dump
1720+
const char* schema_name;
1721+
rc = tiledb_fragment_info_get_array_schema_name(
1722+
ctx, fragment_info, 0, &schema_name);
1723+
CHECK(rc == TILEDB_OK);
17131724
const auto ver = std::to_string(tiledb::sm::constants::format_version);
17141725
std::string dump_str =
17151726
std::string("- Fragment num: 1\n") +
17161727
"- Unconsolidated metadata num: 1\n" + "- To vacuum num: 3\n" +
17171728
"- To vacuum URIs:\n" + " > " + written_frag_uri_1 + "\n > " +
17181729
written_frag_uri_2 + "\n > " + written_frag_uri_3 + "\n" +
1719-
"- Fragment #1:\n" + " > URI: " + uri + "\n" + " > Type: dense\n" +
1730+
"- Fragment #1:\n" + " > URI: " + uri + "\n" +
1731+
" > Schema name: " + schema_name + "\n" + " > Type: dense\n" +
17201732
" > Non-empty domain: [1, 6]\n" + " > Size: 3208\n" +
17211733
" > Cell num: 10\n" + " > Timestamp range: [1, 3]\n" +
17221734
" > Format version: " + ver + "\n" +
@@ -1821,13 +1833,18 @@ TEST_CASE(
18211833

18221834
// Check dump
18231835
const auto ver = std::to_string(tiledb::sm::constants::format_version);
1836+
const char* schema_name;
1837+
rc = tiledb_fragment_info_get_array_schema_name(
1838+
ctx, fragment_info, 0, &schema_name);
1839+
CHECK(rc == TILEDB_OK);
18241840
std::string dump_str =
18251841
std::string("- Fragment num: 1\n") +
18261842
"- Unconsolidated metadata num: 1\n" + "- To vacuum num: 0\n" +
18271843
"- Fragment #1:\n" + " > URI: " + written_frag_uri + "\n" +
1828-
" > Type: sparse\n" + " > Non-empty domain: [a, ddd]\n" +
1829-
" > Size: 3439\n" + " > Cell num: 4\n" +
1830-
" > Timestamp range: [1, 1]\n" + " > Format version: " + ver + "\n" +
1844+
" > Schema name: " + schema_name + "\n" + " > Type: sparse\n" +
1845+
" > Non-empty domain: [a, ddd]\n" + " > Size: 3439\n" +
1846+
" > Cell num: 4\n" + " > Timestamp range: [1, 1]\n" +
1847+
" > Format version: " + ver + "\n" +
18311848
" > Has consolidated metadata: no\n";
18321849
FILE* gold_fout = fopen("gold_fout.txt", "w");
18331850
const char* dump = dump_str.c_str();

test/src/unit-cppapi-fragment_info.cc

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1096,20 +1096,24 @@ TEST_CASE(
10961096

10971097
// Check dump
10981098
const auto ver = std::to_string(tiledb::sm::constants::format_version);
1099+
auto schema_name = fragment_info.array_schema_name(0);
10991100
std::string dump_str =
11001101
std::string("- Fragment num: 3\n") +
11011102
"- Unconsolidated metadata num: 3\n" + "- To vacuum num: 0\n" +
11021103
"- Fragment #1:\n" + " > URI: " + written_frag_uri_1 + "\n" +
1103-
" > Type: dense\n" + " > Non-empty domain: [1, 6]\n" +
1104-
" > Size: 3202\n" + " > Cell num: 10\n" +
1105-
" > Timestamp range: [1, 1]\n" + " > Format version: " + ver + "\n" +
1104+
" > Schema name: " + schema_name + "\n" + " > Type: dense\n" +
1105+
" > Non-empty domain: [1, 6]\n" + " > Size: 3202\n" +
1106+
" > Cell num: 10\n" + " > Timestamp range: [1, 1]\n" +
1107+
" > Format version: " + ver + "\n" +
11061108
" > Has consolidated metadata: no\n" + "- Fragment #2:\n" +
1107-
" > URI: " + written_frag_uri_2 + "\n" + " > Type: dense\n" +
1109+
" > URI: " + written_frag_uri_2 + "\n" +
1110+
" > Schema name: " + schema_name + "\n" + " > Type: dense\n" +
11081111
" > Non-empty domain: [1, 4]\n" + " > Size: 3151\n" +
11091112
" > Cell num: 5\n" + " > Timestamp range: [2, 2]\n" +
11101113
" > Format version: " + ver + "\n" +
11111114
" > Has consolidated metadata: no\n" + "- Fragment #3:\n" +
1112-
" > URI: " + written_frag_uri_3 + "\n" + " > Type: dense\n" +
1115+
" > URI: " + written_frag_uri_3 + "\n" +
1116+
" > Schema name: " + schema_name + "\n" + " > Type: dense\n" +
11131117
" > Non-empty domain: [5, 6]\n" + " > Size: 3202\n" +
11141118
" > Cell num: 10\n" + " > Timestamp range: [3, 3]\n" +
11151119
" > Format version: " + ver + "\n" +

tiledb/sm/fragment/single_fragment_info.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,7 @@ class SingleFragmentInfo {
125125

126126
std::stringstream ss;
127127
ss << " > URI: " << uri_.c_str() << "\n";
128+
ss << " > Schema name: " << array_schema_name_ << "\n";
128129
ss << " > Type: " << (sparse_ ? "sparse" : "dense") << "\n";
129130
ss << " > Non-empty domain: " << non_empty_domain_str(dim_types).c_str()
130131
<< "\n";

0 commit comments

Comments
 (0)