New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Integrate std::pmr memory tracking for class ArraySchema. #4696
Integrate std::pmr memory tracking for class ArraySchema. #4696
Conversation
This pull request has been linked to Shortcut Story #40462: Integrate std::prm memory tracking for class |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks pretty good overall, but when you go to rebase this you'll end up with two main issues. First, all the test code that's currently calling make_shared<MemoryTracker>
is going to need to be updated to use tiledb::test::create_test_memory_tracker()
. Secondly, the deserialization code paths will quickly show that you'll need to add a shared_ptr<MemoryTracker>
argument in a number of places.
Given all of that is my fault, feel free to ask for any help with making those changes.
Also, given the base branch setup, its vaguely odd that this contains the |
d7c80de
to
084b2a3
Compare
0f136fd
to
1711586
Compare
06776da
to
7676d6e
Compare
7676d6e
to
2e0e36d
Compare
1711586
to
a0b1fbe
Compare
- Deleted default constructor of class tiledb::sm::ArraySchema - Changed copy_with_new_memory_tracker to clone - Deleted constructor with pmr vector. Problems remaining: - had to make copy constructor public since a protected one does not work with our version of make_shared.
a0b1fbe
to
ee51025
Compare
841f930
to
e80e797
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks pretty good overall. I can not stress enough that the ArraySchema constructor argument is absolutely not something you have to do yourself. I can handle it after we merge as a follow up since its grunt work and mostly just to start following a pattern I hadn't decided on when you started this work.
Let me know if you need any help fixing up the last of those CI errors.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 Awesome work!
Adding PMR tracking for all vector and unordered map variables of the ArraySchema class.
TYPE: NO_HISTORY
DESC: Integrate std::pmr memory tracking for class
ArraySchema
.