Skip to content

Persist subkey in MongoDB storage - #753

Open
rkistner wants to merge 6 commits into
mainfrom
persist-subkey
Open

Persist subkey in MongoDB storage#753
rkistner wants to merge 6 commits into
mainfrom
persist-subkey

Conversation

@rkistner

Copy link
Copy Markdown
Contributor

The further addresses the performance issue identified in #749. By persisting the subkey when replicating, we avoid re-computing on every sync, leading to lower overhead and increased throughput for sync.

For V3 storage we'll always have this persisted, while V1 storage would only have it for new operations. This is backwards-compatible for V1: If the field is not present, we derive it as before. And if the service is downgraded, the additional field has no effect on older service versions.

Also note that deriving the subkey is deterministic: The same input values will always give the same subkey. So re-deriving the subkey would always give the same value as the persisted subkey.

AI Usage

Used Codex gpt-5.6 to implement the changes. Manually guided and reviewed.

@changeset-bot

changeset-bot Bot commented Aug 13, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 2638b34

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 12 packages
Name Type
@powersync/service-module-mongodb-storage Patch
@powersync/service-schema Patch
@powersync/service-module-convex Patch
@powersync/service-module-mongodb Patch
@powersync/service-module-mssql Patch
@powersync/service-module-mysql Patch
@powersync/service-module-postgres Patch
@powersync/service-image Patch
@powersync/service-core Patch
@powersync/service-module-core Patch
@powersync/service-module-postgres-storage Patch
test-client Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: d06563f09e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@rkistner
rkistner marked this pull request as draft August 13, 2026 12:40
@rkistner
rkistner marked this pull request as ready for review August 13, 2026 13:10
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