Skip to content

Conversation

timvisee
Copy link
Member

@timvisee timvisee commented May 20, 2025

Add a new dense vector storage type. The storage is volatile, being purely in memory, and is intended for use in testing.

This brings us a tiny step closer to fully removing RocksDB from our code base.

We were using the RocksDB based dense vector storage as baseline in many of our tests. It must be replaced so that RocksDB can be removed at some point.

It is possible to replace them with the appendable mmap storage. However, I prefer this volatile storage because it is much simpler and doesn't require any IO.

If we deem this acceptable, I'll also implement this for other storage types if necessary.

All Submissions:

  • Contributions should target the dev branch. Did you create your branch from dev?
  • Have you followed the guidelines in our Contributing document?
  • Have you checked to ensure there aren't other open Pull Requests for the same update/change?

New Feature Submissions:

  1. Does your submission pass tests?
  2. Have you formatted your code locally using cargo +nightly fmt --all command prior to submission?
  3. Have you checked your code using cargo clippy --all --all-features command?

Comment on lines +6 to +7
#[cfg(test)]
pub mod volatile_dense_vector_storage;
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New storage is marked with #[cfg(test)] so that we cannot use it in a release build.

This comment was marked as resolved.

coderabbitai[bot]

This comment was marked as resolved.

Copilot

This comment was marked as resolved.

@timvisee timvisee added this to the Remove RocksDB milestone May 21, 2025
@timvisee timvisee merged commit 8c2eba2 into dev May 21, 2025
17 checks passed
@timvisee timvisee deleted the vector-storage-dense-volatile-test branch May 21, 2025 12:07
@coderabbitai coderabbitai bot mentioned this pull request May 21, 2025
9 tasks
generall pushed a commit that referenced this pull request May 22, 2025
* Add volatile dense vector storage

* Use volatile dense vector storage in tests

* Fix compilation error in GPU module

* Simplify constructor

* Use volatile storage in more tests
n0x29a pushed a commit that referenced this pull request May 23, 2025
* Add volatile dense vector storage

* Use volatile dense vector storage in tests

* Fix compilation error in GPU module

* Simplify constructor

* Use volatile storage in more tests
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