Enhance server diagnostics, resource limits, and SQL conformance#54
Merged
ganeshwhere merged 19 commits intomainfrom Mar 18, 2026
Merged
Enhance server diagnostics, resource limits, and SQL conformance#54ganeshwhere merged 19 commits intomainfrom
ganeshwhere merged 19 commits intomainfrom
Conversation
- add cross-field config validation for memtable sizing and flush timing - add startup diagnostics model with stable key=value rendering - document config check usage and expected outputs in docs
- add lsmdb-admin binary with config check and diagnostics bundle commands - capture redacted config, storage snapshot, optional logs, and CRC checksums - register the new binary in Cargo and document bundle format/exit codes
- extend request/response protocol with health, readiness, and admin status payloads - track runtime connection/uptime counters and expose MVCC metrics through admin status - add CLI meta-commands and integration coverage for new operational endpoints
…s fixes - add fixture-driven SQL conformance tests and compatibility report generation - document conformance workflow and link subset coverage from SQL docs - fix catalog/planner/projection/WAL/MVCC edge cases discovered during suite integration
- add open_persistent/with_storage_engine constructors for persistent MVCC startup - persist committed MVCC state into StorageEngine and restore commit timeline on restart - add restart durability tests for MVCC state and SQL/catalog execution path - document in-memory vs durable MVCC modes in docs
feat(mvcc): add durable store mode backed by storage engine
- formalize durability and acknowledgment points in MVCC lifecycle docs - add crash-before-ack, rollback, and uncommitted restart recovery tests - track recovered MVCC keys/versions metrics after durable store restart - preserve atomic commit visibility by reverting in-memory state on persistence failure
feat(mvcc): harden durable commit and recovery boundaries
- register integration suites under tests/integration as explicit Cargo test targets - add CI integration gate script that verifies target registration before running cargo test --tests - split CI into quality, unit, and integration jobs on main and staging - document reliable local test commands in README and docs/testing.md - harden compaction/planner integration coverage so hidden regressions surface consistently
- add a dedicated release-gate GitHub workflow for build, unit, integration, and blocker checks - add a critical high-priority blocker script that fails releases when risk-class issues remain open - document versioned release readiness criteria and operator-facing gate usage - add engineering/ops release sign-off issue template for manual approvals - wire README release-gate entry points for local and CI usage
- remove unused planner imports in runtime code while keeping test-only imports scoped to tests - drop unreachable CLI loop statement to keep build output warning-free for touched files - re-validate baseline with cargo check, cargo test --lib, and integration gate
build: finalize green baseline checks
- add config-backed server limits and structured error payloads for busy and resource-limit responses - reject excess connections, oversized request frames, and multi-statement requests deterministically - add executor and MVCC guardrails for scan, sort, join, and query-result cardinality - expose runtime rejection counters in admin status and extend overload integration coverage
feat(server): enforce runtime resource limits and backpressure
…quotas - add statement deadlines and cooperative cancellation across executor and MVCC scan paths - expose active statement listing and cancel requests in the server protocol and CLI - enforce per-identity concurrent query quotas and query result byte limits - add integration coverage for timeout, cancellation, quota rejection, and transaction cleanup
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.
This pull request introduces significant improvements to release management, testing infrastructure, documentation, and some targeted code quality and correctness updates. The main themes are: establishing a robust release gating process (both automated and manual), enhancing test registration and conformance reporting, expanding documentation for operational and developer workflows, and making minor code correctness fixes.
Release Management and CI/CD Enhancements
.github/workflows/release-gate.yml) that enforces build, test, integration, and critical issue checks before a release can proceed. This is documented in detail indocs/release_gate.mdand supported by a new release sign-off issue template (.github/ISSUE_TEMPLATE/release-signoff.md). [1] [2] [3].github/workflows/ci.yml) to split quality checks, unit tests, and integration tests into separate jobs, added caching, and ensured coverage on bothmainandstagingbranches.Testing Infrastructure and Documentation
Cargo.tomlto prevent silent skips, and documented the integration target policy indocs/testing.md. [1] [2]Operational Documentation
docs/config_preflight.md) and diagnostics bundle generation (docs/diagnostics_bundle.md), describing commands, output, exit codes, and redaction policies for operational readiness. [1] [2]README.mdwith testing and release gate instructions for quick reference.MVCC and Catalog Improvements
Dependency Updates
tokio-rustlsandrustls-pemfileas new dependencies in preparation for future secure transport features.Release Management and CI/CD
.github/workflows/release-gate.yml,docs/release_gate.md,.github/ISSUE_TEMPLATE/release-signoff.md) [1] [2] [3].github/workflows/ci.yml)Testing Infrastructure
Cargo.tomland documented the policy to prevent silent test skips. (Cargo.toml,docs/testing.md) [1] [2]docs/sql_conformance.md,docs/sql_subset.md) [1] [2]Operational Documentation
docs/config_preflight.md,docs/diagnostics_bundle.md) [1] [2]README.mdwith new testing and release gate instructions. (README.md)Code Quality and Correctness
src/catalog/mod.rs,src/executor/delete.rs,src/executor/filter.rs,docs/mvcc.md) [1] [2] [3] [4] [5] [6] [7] [8] [9]Dependencies
tokio-rustlsandrustls-pemfileto dependencies for future secure transport support. (Cargo.toml)