Skip to content

Fix non-string transactions in AOF - #2071

Merged
kevin-montrose merged 3 commits into
mainfrom
users/kmontrose/transactionFixes
Aug 18, 2026
Merged

Fix non-string transactions in AOF#2071
kevin-montrose merged 3 commits into
mainfrom
users/kmontrose/transactionFixes

Conversation

@kevin-montrose

Copy link
Copy Markdown
Contributor

AOF tracks transaction by client session id.

Unfortunately, unified and object sessions end up with different session ids than the "main" (ie. string) session.

This changes StorageSession to explicitly set session ids on object, unified, and vector (although vector does not participate in AOF) sessions.

This makes some small changes to revivification stat tracking, moving to a ConcurrentDictionary keyed by object identity rather than by session id.

Copilot AI balanced review requested due to automatic review settings August 17, 2026 20:42

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Aligns related Tsavorite session IDs so non-string transactional AOF entries replay correctly.

Changes:

  • Adds optional session ID overrides.
  • Shares IDs across string, object, unified, and vector sessions.
  • Tracks active sessions by object identity.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
ManageClientSessions.cs Adds ID overrides and identity-based tracking.
ClientSession.cs Removes sessions by object reference.
StorageSession.cs Assigns the main session ID to related sessions.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread libs/server/Storage/Session/StorageSession.cs
Comment thread libs/storage/Tsavorite/cs/src/core/ClientSession/ManageClientSessions.cs Outdated
@kevin-montrose
kevin-montrose merged commit 33a2e5b into main Aug 18, 2026
446 of 449 checks passed
@kevin-montrose
kevin-montrose deleted the users/kmontrose/transactionFixes branch August 18, 2026 15:19
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.

3 participants