Skip to content
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

Feat/cuckoo filter #1209

Draft
wants to merge 10 commits into
base: master
Choose a base branch
from

Conversation

ashutoshdhande
Copy link
Contributor

Overview
This PR implements the core functionalities for the Cuckoo Filter commands CF.RESERVE, CF.ADD, and CF.EXISTS.

Current Status

  • The main functionalities are working as expected.
  • There are several TODOs remaining that I plan to address in future updates, including:
    • Proper error handling
    • Code refactoring for improved readability and maintainability

This PR is a work in progress and serves as a draft. Additional enhancements will be made before finalizing.

@JyotinderSingh
Copy link
Collaborator

@ashutoshdhande are you still working on this PR? Are you blocked by anything?

@ashutoshdhande
Copy link
Contributor Author

@ashutoshdhande are you still working on this PR? Are you blocked by anything?

@JyotinderSingh Yup, there’s some progress, but expect a slight delay. Support has now been added for the following commands:
CF.EXISTS, CF.MEXISTS
CF.ADD, CF.ADDNX
CF.INSERT, CF.INSERTNX
CF.DEL
CF.RESERVE

One challenge I faced was ensuring consistent output. I've been manually verifying this by comparing results between one Dice DB session and one Redis session. Can you suggest a more efficient way to handle this?

Next on the hit list is examining how the filter behaves as it approaches capacity specifically, how it grows and whether it still functions correctly when items are displaced from their primary and secondary indices.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants