Closed Bug 1540894 Opened 11 months ago Closed 11 months ago

Follow-ups for fixing invalid remote items

Categories

(Firefox :: Sync, defect, P1)

defect

Tracking

()

RESOLVED FIXED
Firefox 68
Tracking Status
firefox68 --- fixed

People

(Reporter: Lina, Assigned: Lina)

References

Details

Attachments

(2 files)

I missed a few things in bug 1482608:

  • mirror.structure needs a compound primary key, so that it can store diverged structure.
  • Multiple parent handling and reuploading/replacing needs tests.

This depends on https://github.com/mozilla/dogear/pull/34. Once that's merged, we can cut a Dogear release, bump the version, and re-vendor.

This commit:

  • Uses chunking to insert child GUIDs in storeRemoteFolder.
  • Changes the mirror schema to store diverging structure, so that it
    can be passed to Dogear.
  • Sorts remote items by GUID, so that diverging ones can be reparented
    in a deterministic order.
  • Measures and logs the time taken to run the Rust merger.
  • Adds tests for multiple parents and replacing invalid remote items.
  • Fixes two tests in test_bookmark_structure_changes to ensure the
    remote structure is consistent.

Depends on D26274

Pushed by kcambridge@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/eea220d8fd4c
Vendor Dogear v0.2.3. r=tcsc
https://hg.mozilla.org/integration/autoland/rev/39c9c1e5dd57
Store diverging structure in the bookmarks mirror. r=tcsc
Status: ASSIGNED → RESOLVED
Closed: 11 months ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 68
You need to log in before you can comment on or make changes to this bug.