fix: fix string size calculation BED-7260#28
Merged
Conversation
WalkthroughThese changes correct the memory size calculation for strings in the size utility package by switching from multiplication to addition, and update corresponding test expectations to reflect the revised calculations. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
🧪 Generate unit tests (beta)
Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Describe your changes in detail
This PR fixes calculation of string size in memory. Currently the string header size is multiplied by the length of the string, leading to a significant overestimation in size. Instead, the string header size should be added to the length of the string as len(str) already returns the number of bytes in the string. See: https://pkg.go.dev/builtin#len
Motivation and Context
Why is this change required? What problem does it solve?
This fix resolves a bug discovered investigating BED-7260. Specifically, it was discovered that memory consumption was being overreported by DAWGs due to incorrectly calculating string size in memory, causing traversals to be cancelled.
How Has This Been Tested?
This has been tested locally with unit tests and observationally running graph queries.
Screenshots (optional):
Types of changes