Skip to content

fea: memtable#41

Merged
reiase merged 7 commits into
masterfrom
feature/cluster
Apr 26, 2026
Merged

fea: memtable#41
reiase merged 7 commits into
masterfrom
feature/cluster

Conversation

@reiase

@reiase reiase commented Apr 26, 2026

Copy link
Copy Markdown
Contributor

No description provided.

reiase added 6 commits April 4, 2026 00:11
- Introduced a new Rust crate `probing-memtable` for a self-describing columnar memory table with a ring buffer.
- Added `Cargo.toml` for package configuration and dependencies, including `xxhash-rust`.
- Implemented core library functionality in `lib.rs`, detailing memory layout, concurrency handling, and row format.
- Included comprehensive documentation and examples for usage and structure of the memory table.
- Added `memmap2` and `libc` dependencies to `Cargo.toml` for improved memory mapping and C interoperability.
- Introduced a new `README.md` file detailing the library's purpose, usage, and core concepts.
- Implemented a benchmarking suite in `benches/memtable_report.rs` to evaluate performance metrics.
- Refactored `CachedReader` for better cache management and performance optimizations.
- Added a new `discover` module for filesystem-based memtable discovery, enabling cross-process access.
- Updated memory layout structures to support new features and improve clarity in the codebase.
- Added `memtable` as a new member to the workspace in `Cargo.toml`.
- Updated the version of the workspace package to `0.2.4`.
- Introduced a new benchmarking report `memh_report` in `probing/memtable/benches` to evaluate performance.
- Enhanced `Cargo.toml` for `probing/memtable` with additional dependencies and configurations.
- Implemented new layout and codec utilities for the MEMH v3 hash table in `probing/memtable/src/memh`.
- Added `memtable_ext` module in the server to integrate `probing-memtable` functionalities, including new API endpoints for handling memtable data.
- Improved error handling and data conversion for seamless interaction between memtable and server components.
- Added a new `build.rs` file to configure PyO3 build settings.
- Updated `Cargo.lock` to reflect version changes for several dependencies, including upgrading `probing` packages to version `0.2.4`.
- Introduced `pyo3-build-config` as a build dependency in `Cargo.toml`.
- Updated documentation to reflect the new version of the `probing` package.
- Enhanced the `installation` documentation to show the updated version output.
- Added a new `pulsing_sync` module in the server to facilitate cluster synchronization with Pulsing.
- Implemented a background task for periodic synchronization of cluster membership from Pulsing.
- Updated Python integration to support the new cluster synchronization features.
- Simplified function signatures and formatting in `engine.rs`, `memh_report.rs`, and `memtable` modules for better clarity.
- Enhanced code structure by aligning braces and indentation across various functions.
- Removed unnecessary comments and improved existing ones for better understanding.
- Updated the `pulsing.rs` file to remove unused variable declarations, streamlining the code.
- Ensured consistent formatting in test cases and utility functions for better maintainability.
@codecov

codecov Bot commented Apr 26, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 40.35088% with 68 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
python/probing/cluster.py 30.68% 61 Missing ⚠️
python/probing/hooks/import_hook.py 73.07% 7 Missing ⚠️
Files with missing lines Coverage Δ
python/probing/hooks/import_hook.py 83.51% <73.07%> (ø)
python/probing/cluster.py 30.68% <30.68%> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

- Introduced a new design document for cluster management utilizing Pulsing's distributed capabilities, detailing automatic node discovery and liveness detection.
- Updated `mkdocs.yml` to include navigation for the new cluster management documentation.
- Created `cluster-pulsing.md` and `cluster-pulsing.zh.md` files to provide comprehensive guidelines in both English and Chinese on integrating Pulsing with the probing cluster module.
- Ensured existing APIs and business semantics are preserved while enhancing cluster functionality.
@reiase reiase merged commit ff35785 into master Apr 26, 2026
12 of 13 checks passed
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.

1 participant