Skip to content

Commit 2c7812a

Browse files
Update LoadedFragmentMetadata::create to return a shared pointer. (#5214)
[SC-51612](https://app.shortcut.com/tiledb-inc/story/51612/use-make-shared-to-create-loadedfragmentmetadata) Using `make_shared` to create the shared pointer is more efficient because the control plane is located next to the object. --- TYPE: NO_HISTORY
1 parent bcf0144 commit 2c7812a

File tree

2 files changed

+5
-4
lines changed

2 files changed

+5
-4
lines changed

tiledb/sm/fragment/loaded_fragment_metadata.cc

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -75,15 +75,16 @@ LoadedFragmentMetadata::LoadedFragmentMetadata(
7575
/* API */
7676
/* ********************************* */
7777

78-
LoadedFragmentMetadata* LoadedFragmentMetadata::create(
78+
shared_ptr<LoadedFragmentMetadata> LoadedFragmentMetadata::create(
7979
FragmentMetadata& parent,
8080
shared_ptr<MemoryTracker> memory_tracker,
8181
format_version_t version) {
8282
if (version <= 2) {
83-
return tdb_new(V1V2PreloadedFragmentMetadata, parent, memory_tracker);
83+
return make_shared<V1V2PreloadedFragmentMetadata>(
84+
HERE(), parent, memory_tracker);
8485
}
8586

86-
return tdb_new(OndemandFragmentMetadata, parent, memory_tracker);
87+
return make_shared<OndemandFragmentMetadata>(HERE(), parent, memory_tracker);
8788
}
8889

8990
uint64_t LoadedFragmentMetadata::persisted_tile_size(

tiledb/sm/fragment/loaded_fragment_metadata.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ class LoadedFragmentMetadata {
9595
* metadata corresponds to.
9696
* @param version The format version of the fragment
9797
*/
98-
static LoadedFragmentMetadata* create(
98+
static shared_ptr<LoadedFragmentMetadata> create(
9999
FragmentMetadata& parent,
100100
shared_ptr<MemoryTracker> memory_tracker,
101101
format_version_t version);

0 commit comments

Comments
 (0)