-
Notifications
You must be signed in to change notification settings - Fork 2.2k
feat(enrichment tables): add cuckoo filter to memory table #25143
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
Open
esensar
wants to merge
45
commits into
vectordotdev:master
Choose a base branch
from
esensar:feature/memory-enrichment-table-cuckoo-filter
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
45 commits
Select commit
Hold shift + click to select a range
c4e16f8
feat(enrichment tables): add cuckoo filter to memory table
esensar 8993198
Add changelog entry
esensar 2d295b5
Prevent ttl_val from being zero
esensar 4fe95ea
Remove commented out test code
esensar c33d602
Set lower limit on ttl override as well
esensar 90ff070
Merge branch 'master' into feature/memory-enrichment-table-cuckoo-filter
esensar 610b97f
Deny unknown fields in enrichment table memory config
esensar 1f43d0b
Fix CounterName issues
esensar 4f6a752
Apply default tll if ttl_field is not defined
esensar 92bbe47
Cargo.lock update
esensar 9929710
Prevent intervals from firing off at boot
esensar be6e123
Return null value to make value field present
esensar 8df4f87
Properly calculate default ttl when ttl_field is not present
esensar a0b64fa
Use empty streams instead of Duration::MAX for uncofigured intervals
esensar 3ebe905
Prevent using source functionality when filter is used
esensar 3189194
Discard configuration if cuckoo filter can't be restored
esensar 171ede7
Merge branch 'master' into feature/memory-enrichment-table-cuckoo-filter
esensar 9a18e49
Validate ttl_bits before building the cuckoo filter
esensar ffe915f
Use div_ceil when calculating TTL ticks
esensar beb9e0a
Warn when provided ttl is larger than defined ttl_bits
esensar 170f5ea
Update table size stats on scan too
esensar a938de7
Validate counter_bits on insert
esensar 5be7277
Revert "Validate counter_bits on insert"
esensar e0f47a5
Reject configuration on failed import too
esensar 4f70866
Document removal for cuckoo
esensar 47077f8
Add note about flush interval in cuckoo
esensar df7ff0c
Only start with a fresh filter on NotFound error
esensar a825382
Run `make build-licenses`
esensar 42a7582
Export only when temp file export works
esensar 51702fd
Validate config before importing persisted state
esensar 9b4a2d2
Merge branch 'master' into feature/memory-enrichment-table-cuckoo-filter
esensar f9fedfc
Add a way to parallelize scan and update for cuckoo table
esensar a3ab4a7
Bump cuckoo-clock to fix partitioned scanning
esensar d15eca9
Prevent dropping scanning tasks when using concurrent_scanning
esensar 5ae9694
Merge branch 'master' into feature/memory-enrichment-table-cuckoo-filter
esensar 9f6c1e7
Bump cuckoo-clock to fix partition indices
esensar 110c320
Remove nested serde typetag
esensar 120e334
Track failed insertions
esensar a4dfda8
Add deny_unknown_fields for cuckoo_table
esensar 90df75f
Track number of scans in progress to prevent piling up of scan tasks
esensar 8daa72c
Prevent 0 export interval for cuckoo_table
esensar ff66dad
Reject cuckoo configurations that produce filters higher than defined…
esensar 79d6cb8
Merge branch 'master' into feature/memory-enrichment-table-cuckoo-filter
esensar 463ac9a
Calculate cuckoo filter size before building it to prevent needless a…
esensar 0ac29fb
Use `in_current_span` for scanning tasks
esensar File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
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
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
3 changes: 3 additions & 0 deletions
3
changelog.d/25143_enrichment_table_memory_cuckoo_filter.feature.md
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| Added cuckoo filter support for `memory` enrichment table, to provide an efficient way to store and check presence of keys with a low memory footprint at the cost of false positives. | ||
|
|
||
| authors: esensar Quad9DNS |
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.