ROX-31831: optimize ProcessIndicator similarity filter memory#17984
ROX-31831: optimize ProcessIndicator similarity filter memory#17984johannes94 merged 7 commits intomasterfrom
Conversation
|
Images are ready for the commit at 12dfedf. To use with deploy scripts, first |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #17984 +/- ##
=======================================
Coverage 49.47% 49.47%
=======================================
Files 2699 2699
Lines 198163 198168 +5
=======================================
+ Hits 98042 98050 +8
+ Misses 92521 92519 -2
+ Partials 7600 7599 -1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
Added SensEco and in particular @janisz to the reviewers after discussing team assignment of this PR briefly with @dashrews78 |
Co-authored-by: Tomasz Janiszewski <tomek@redhat.com>
f3a6175 to
cca864c
Compare
Could be worth an experiment. I'm not sure how easy that will be, given that we use the actual string to compute "Jaccard Similarity" for them, as opposed to sensor where IIUC we only did hash comparison. I'd live with this improvement for now, see how it performs in actual deployments of central and based on that make a decision whether even more improvement is necessary. |
Signed-off-by: Tomasz Janiszewski <tomek@redhat.com>
|
Keeping fingers crossed for this change to improve the situation on Central 🤞 |
Signed-off-by: Tomasz Janiszewski <tomek@redhat.com> Co-authored-by: Tomasz Janiszewski <tomek@redhat.com>
Description
The PI filter is holding the majority of heap memory of central for the biggest CS tenants. Analysis of a heap profile showed that
scanPlanBinaryBytesToBytes.Scanis holding most of it, though table scans for the filter are only executed on startup of central. This indicates that we're holding on to entire Process Indicator proto object in memory though that is not necessary for the filter to work.This PR:
Potential Improvement:
User-facing documentation
Testing and quality
Automated testing
How I validated my change