Remove Firestore key migration - #69590
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 0eac4c527c
ℹ️ About Codex in GitHub
Codex has been enabled to automatically 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 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
| if err := doc.DataTo(&r); err != nil { | ||
| return nil, ConvertGRPCError(err) |
There was a problem hiding this comment.
Keep decoding legacy Firestore records during upgrade
For Firestore clusters that were upgraded through v18 but did not remain there until the background key migration completed, existing documents can still have the old string/array key or string value schema; the removed migration was delayed by jitter and ran in batches, so a normal sequential upgrade can leave such records behind. With this fallback gone, every Get, range read, and watcher path that calls newRecordFromDoc now returns the Firestore decode error for those documents, making existing cluster state unreadable and causing the watcher to keep retrying. Please keep the compatibility decode/migration through the v19 upgrade path or add a synchronous upgrade gate before requiring the bytes schema.
AGENTS.md reference: AGENTS.md:L14-L17
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
This is technically possible but customers had two major versions to correctly run the migrations. I believe it won't be a big concern
|
Is this related to #67655? |
In preparation for 19.0.0 this removes all references to legacy or broken record keys. The background key conversion will have already converted all legacy or broken keys thus allowing the removal of the migration and the key types.
0eac4c5 to
704ee2d
Compare
In preparation for 19.0.0 this removes all references to legacy or broken record keys. The background key conversion will have already converted all legacy or broken keys thus allowing the removal of the migration and the key types.
Manual Test Plan
Test Environment
Local cluster off this branch with a Firestore backend.
Test Cases