FIX: Fix table destructor not being called
Description
ref https://github.com/uxlfoundation/scikit-learn-intelex/issues/1869
This PR fixes an issue with the destructor for table objects not being called when the python objects are deallocated.
The fix needs to be tested more thoroughly through sanitizers and valgrind when possible.
PR should start as a draft, then move to ready for review state after CI is passed and all applicable checkboxes are closed. This approach ensures that reviewers don't spend extra time asking for regular requirements.
You can remove a checkbox as not applicable only if it doesn't relate to this PR in any way. For example, PR with docs update doesn't require checkboxes for performance while PR with any change in actual code should have checkboxes and justify how this code change is expected to affect performance (or justification should be self-evident).
Checklist to comply with before moving PR from draft:
PR completeness and readability
- [x] I have reviewed my changes thoroughly before submitting this pull request.
- [x] Git commit message contains an appropriate signed-off-by string (see CONTRIBUTING.md for details).
- [x] I have added a respective label(s) to PR if I have a permission for that.
- [x] I have resolved any merge conflicts that might occur with the base branch.
Testing
- [x] I have run it locally and tested the changes extensively.
- [x] All CI jobs are green or I have provided justification why they aren't.
Codecov Report
Attention: Patch coverage is 60.00000% with 2 lines in your changes missing coverage. Please review.
| Files with missing lines | Patch % | Lines |
|---|---|---|
| onedal/datatypes/numpy/data_conversion.cpp | 66.66% | 0 Missing and 1 partial :warning: |
| onedal/datatypes/table.cpp | 50.00% | 0 Missing and 1 partial :warning: |
| Flag | Coverage Δ | |
|---|---|---|
| azure | 79.84% <ø> (ø) |
|
| github | 73.65% <60.00%> (+0.04%) |
:arrow_up: |
Flags with carried forward coverage won't be shown. Click here to find out more.
| Files with missing lines | Coverage Δ | |
|---|---|---|
| onedal/datatypes/numpy/data_conversion.cpp | 53.02% <66.66%> (+1.86%) |
:arrow_up: |
| onedal/datatypes/table.cpp | 51.92% <50.00%> (ø) |
:rocket: New features to boost your workflow:
- :snowflake: Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
/intelci: run
/intelci: run
/intelci: run
/intelci: run
@david-cortes-intel please merge in main and re-run private CI
/intelci: run
/intelci: run
Test failure appears to be something about numerical tolerances, and happens also in other PRs, like this: https://github.com/uxlfoundation/scikit-learn-intelex/pull/2555
So not related to the changes here.