Repository navigation
Fix transaction read parity and cache isolation; release 0.2.2 - #59
Merged
Merged
Conversation
Benchmark comparisonThreshold: ±25% (informational, does not block merge)
|
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.
Native transaction handles did not expose the complete database read contract. Consumers performing graph listings inside PostgreSQL transactions could fail on
find_idsorfind_many, while cached entities could escape the transaction's connection or expose uncommitted state.This change completes the shared transaction read API and gives PostgreSQL native reads on its held connection. It serializes concurrent connection operations, preserves tenant settings, bootstraps collections without acquiring another connection, and isolates graph transaction caches. MongoDB retains session-bound fallback reads and awaits session cleanup; cancellation rolls back, and graph transactions reject unavailable native handles. JSON, SQLite, and DynamoDB continue to explicitly reject unsupported native transactions.
Successful database observations no longer emit routine or slow-call logs, or allocate logging payloads. Failure ERROR records and operation/slow-call metrics remain available.
Documentation cleanup adds a transaction guide, corrects backend and observability contracts, replaces obsolete architecture and examples content, refreshes indexes, and repairs local documentation links. Version and release notes advance from 0.2.1 to 0.2.2.
Validation:
twine checkpass; a clean Python 3.12 wheel install verifies version and transaction exports.The release workflow publishes after merge; this PR does not publish or change Integral Core's dependency pin. AWS checks use test doubles, not a live DynamoDB deployment.