Reproduction: 1. New profile, roaming bookmarks (exists) and address book (doesn't exist) 2. Roam against server with a different version of bookmarks and no abook either 3. Start browser 4. Conflict dialog comes up, asking you to select which version of bookmarks to use, abook doesn't appear. That's correct. Select server version. 5. Close browser (select server version, of conflict comes up) 6. Start browser (select server version, of conflict comes up) 7. Repeat 5.-7. Assuming no other browser runs in parallel against the same server profile. Actual result: In step 5 and 6, the conflict dialog comes up just like in step 4. Expected result: The user already chose the server version in step 4, don't ask again. In step 5, just upload the local version (which has the server version plus recent modifications). In step 6, we have the same most recent version locally and on the server, no need to ask. Implementation: This is a logic error. I shortcut the logic, if *all* files match. However, non-existant files never match. Need to figure out a solution.
Assignee: nobody → ben.bucksch
Priority: -- → P2
Target Milestone: --- → mozilla1.8alpha2
yay, I have this fixed. The problem was that I (intentionally, for other reasons) didn't make 2 empty files (on both server and locally) return as matching. To make sure I don't break these "other reasons", I carefully checked the logic for these cases, and while doing so made a number of changes to the logic. I think they substantially improve the logic, but some bugs may have slipped in by that, and I didn't have time to test carefully (yet?). There are now less conflicts (IIRC), if some files don't exist yet, and a few needless transfers may be avoided. There's a problem remaining (existed before and still exists): A (spurious) conflict is shown again during download, if there was a conflict during upload and the user chose the server version. We should detect / remember that somehow and just download silently.
Status: NEW → ASSIGNED
Target Milestone: mozilla1.8alpha2 → ---
Fix checked in.
Status: ASSIGNED → RESOLVED
Last Resolved: 15 years ago
Resolution: --- → FIXED
Component: Profile: BackEnd → Profile: Roaming
QA Contact: core.profile-manager-backend → core.profile-roaming
Summary: [Roaming] Infinitely repeating conflicts, if other files missing → Infinitely repeating conflicts, if other files missing
You need to log in before you can comment on or make changes to this bug.