Closed Bug 966530 Opened 11 years ago Closed 5 years ago

Current sync options, data merge/replaceAll/replace self, are not exposed to user

Categories

(Firefox :: Sync, enhancement, P3)

29 Branch
enhancement

Tracking

()

RESOLVED WONTFIX
Firefox 42

People

(Reporter: edwong, Unassigned)

References

Details

(Whiteboard: [qa+])

Attachments

(2 files)

In sync 1.1, there are sync options:
* merge data
* replace All other clients
* replace this client's data

Fxa sync 1.5 doesn't have that in the UX mocks and not currently exposed.
Blocks: 799726, 905997
Whiteboard: [qa+]
No longer blocks: 799726
Summary: Currently sync options, data merge/replaceAll/replace self, are not exposed to user → Current sync options, data merge/replaceAll/replace self, are not exposed to user
IIRC we chose to just always Merge, right?
Not so much "chose" as "that's the default".

I think being able to choose initial behavior still covers a not-uncommon user desire (as does Reset Sync, for that matter), particularly when Sync is so buggy that users really do have to fix their data occasionally.
moving to firefox:fxa group
Component: Firefox Sync: UI → FxA
Product: Mozilla Services → Firefox
Target Milestone: --- → Firefox 29
Version: unspecified → 29 Branch
I had opened 972673 for this.

My only use of introducing a new firefox to sync is when I install a new machine - and of course I want to reproduce my working configuration on the new machine - not merge the install defaults with my working configuration.  I really can't image why this isn't the default behavior.
> My only use of introducing a new firefox to sync is when I install a new machine - and of course I want to reproduce my working configuration on the new machine - not merge the install defaults with my working configuration.  I really can't image why this isn't the default behavior.

> I think being able to choose initial behavior still covers a not-uncommon user desire (as does Reset Sync, for that matter), particularly when Sync is so buggy that users really do have to fix their data occasionally.

I'm sympathetic with both of these use cases. Not going to happen for Fx29 though.
No longer blocks: 969593
OK - so you're not going to fix it.  I assume that's means you'll ship it broken.  So I need to return to old sync

But I can't see how to reset my aurora to old sync for the time being.  Is that also not supported?  Am I trapped with a new feature you're not planning to correct before ship?
If you want to revert to Legacy Sync for current Aurora:

1) Download Fx28.
2) Attach your profile to Legacy Sync.
3) Run that profile in Aurora.
setting blocks bug 969593 so this can be discussed in Triage.  bug 978574 also asks for 'reset' functionality.
Depends on: 969593
blocking-b2g: --- → koi?
No longer depends on: 969593
blocking-b2g: koi? → ---
Well I definitely think this needs looking at!  I agree with the previous comments by Marc Auslander, I was doing exactly the same as him and installing Firefox on a newly installed Windows 7 box and found that the sync was different between that and my other Firefox running on a different Windows 7 box, even though they are both the 29.0.1 version.

I did a post in the support forums titled "Options, Sync are different between 2 PCs running 29.0.1" at this URL: https://support.mozilla.org/en-US/questions/1000315

I have since manually copied my bookmarks from the old to new boxes, but have not decided what to do about the sync problem right now as I don't really want to downgrade my version of Firefox.

Please, please, fix this in the next release! Bring back the options: 1) Recommended: Merge this device's data with my Sync data. 2) Replace all data on this device with my Sync data. 3) Replace all other devices with this device's data.
(In reply to Richard Benton from comment #11)
> Well I definitely think this needs looking at!  I agree with the previous
> comments by Marc Auslander, I was doing exactly the same as him and
> installing Firefox on a newly installed Windows 7 box and found that the
> sync was different between that and my other Firefox running on a different
> Windows 7 box, even though they are both the 29.0.1 version.
> 
> I did a post in the support forums titled "Options, Sync are different
> between 2 PCs running 29.0.1" at this URL:
> https://support.mozilla.org/en-US/questions/1000315

From that question, it looks like you are still running the old sync on one of the devices.  Even though both are on 29, if one of the devices was previously setup for the "old" sync, it will remain on the old sync even after the upgrade - you need to "unlink" that device in the Sync setup, then re-configure it for your Firefox account.

> Please, please, fix this in the next release! Bring back the options: 1) Recommended:
> Merge this device's data with my Sync data. 2) Replace all data on this device with
> my Sync data. 3) Replace all other devices with this device's data.

Given the support question above, I don't believe this would help you in any way.
:gavin I think it would be nice to get some forward momentum on this. It's begin suggested by some that the inclusion of this functionality in FxA Sync should be considered a blocker for the sunsetting of old Sync, which I tend to agree with. Technically, I don't think it should be that hard, since it was already a feature of old Sync. We need some UX treatment though.
Flags: needinfo?(gavin.sharp)
:markh Well I used "Plan B" which worked fine for me, so I am using the latest Firefox now on my new machine, but with the "old sync" which provides the facilities that I want!  This is what I did:

1) I downloaded v28.0 of Firefox from here:

https://support.mozilla.org/en-US/kb/install-older-version-of-firefox

2) I de-installed v29.0.1 (keeping my dataa)

3) I installed v38.0

4) I synced that install with the v29.0.1 on my old machine.

5) I did a Help -> About Firefox on my new machine. This caused an automatic download of v29.0.1, which was then installed.

I am a happy bunny now (at least for the moment).  I am not going to update to the dysfunctional "new sync" unless they update and fix it, or I am forced to do so.
Step 3) should have read "I installed v28.0"
(In reply to Chris Karlof [:ckarlof] from comment #13)
> :gavin I think it would be nice to get some forward momentum on this. It's
> begin suggested by some that the inclusion of this functionality in FxA Sync
> should be considered a blocker for the sunsetting of old Sync, which I tend
> to agree with. Technically, I don't think it should be that hard, since it
> was already a feature of old Sync. We need some UX treatment though.

I rather like the simplicity of the new setup, and it doesn't seem to me like the other options have enough demand to be worth supporting explicitly. The "merge new profile defaults into existing profile" scenario is perhaps not ideal, but also doesn't seem like a big deal generally (only adds a couple of bookmarks in practice, right?).
Flags: needinfo?(gavin.sharp)
And does what to preferences?
I have a user asking about the demand of having the option to choose the sync direction, or these options explicitly. [https://support.mozilla.org/en-US/questions/1004653] Is there a chance we can revisit the demand for this option? I would be interested to see the impact of this demand if possible? Thank you.
Flags: needinfo?(gavin.sharp)
Flags: needinfo?(gavin.sharp)
What is the current estimate for when Legacy Sync support goes away?  And is there any consideration of adding this feature to FxA Sync before that time?
Flags: needinfo?(gavin.sharp)
We do not have a fixed timeline for eliminating "legacy sync" client code, though I expect we'll have one relatively soon.

I would love for a set of use cases to be laid out that this is very important for. The behavior of "merge" in the use case from comment 4 seems acceptable (pending an answer to comment 17, anyhow). Marc, do you have an answer to comment 17?

If the real driver for this is a desire from a small set of users who want to have total control over the syncing behavior, there are ways to solve that problem that don't involve changing Firefox proper - wiki page explaining the prefs to flip, or an add-on that exposes them, for example.
Flags: needinfo?(gavin.sharp)
I had hoped one of you would know the prefs answer - I'm just a user.  I'll play tonight.

But the real issue is that the effect is unknown - I'll never know if some add-on has been changed, or something else, until I stumble on to it.  I do know that anytime I add a machine, I have to go fix up my bookmarks again.  This isn't a big deal since I know to look, but ...

What really bemuses me is why anyone would want to merge!  That implies two modified installations that are now going to be converged using sync.  This is really the dominant use case?

Or is it just that merge falls out of the wash of the implementation and the other options are not worth the implementation cost?  Because that's a position I can understand.
As far as I can tell, sync merge does NOT affect preferences in any important way. So the issue comes down to the nuisance of again removing the bookmark bloatware that firefox creates in a new profile.
Well it is just under 4 months since my last comment and my Windows machines are now mostly running Firefox 32.0, but with the old sync still, which I am happy with, that has the Sync Options:

* Recommended: Merge this device's data with my Sync data
* Replace all data on this device with my Sync data
* Replace all other devices with this device's data

I will say again, that for me at least, I want to retain these options, unless and until the latest Firefox has something similar.  OK, so not everyone has hundreds of bookmarks, organized in a tree folder structure on the Bookmarks Toolbar, and also displayed on the Bookmarks Sidebar, like me.  But for me, I often find myself having to do maintenance to remove duplicates, due to the default Merge action after a little used computer has merged its partly obsolete data back into the sync (when I have not done a "Reset Sync" with the second option to update it, before it has the chance to do that.

As it is, I had a problem again today with a sync using the Mercury Desktop Extension, which I needed to install again to get my bookmarks synced with Mercury on a new iPad Air (they previously used to sync using Firefox sync, not their own version).  If there was a genuine Firefox for iOS that might help... 

Anyway, the point of all of that blurb is to clarify a bit more why some users (well at least me anyway, even if I am part of a tiny minority?) do want this issue resolved, not just ignored, hoping that enough users will have forgotten about the previous functionality by the time that someone decides to stop the old sync working entirely?

Gavin Sharp seems to understand, in his post of 2014-08-06 16:15:29 PDT.

I personally would accept what he says here, even if there is not a more mainstream fix:

"If the real driver for this is a desire from a small set of users who want to have total control over the syncing behavior, there are ways to solve that problem that don't involve changing Firefox proper - wiki page explaining the prefs to flip, or an add-on that exposes them, for example."

Yes, I want Total Control of Sync.  In fact I would like to be able to control named machines that are synced to my "sync account" removing ones that I am getting rid of and adding new ones that I am just setting up, etc.

Thanks for reading!
I would like to have the old settings at the new sync also.
I loose EVERYTHING in a single click, years of bookmarking.

Log to my account @ Work
Sync @ Work
Log to account @ Home
Try to sync, nothing is retrieved
Sync the data this morning from Work

It retrieved the wrong data from Home ! Where are the options to tell Sync to Merge and not to erase?

More over, are my full data completely deleted, i can't believe.

SIC.
Today I needed to investigate an incompatibility between something in my settings and a web site I needed to access.

I created another profile, copied my existing one to it and proceeded to remove add-ons to find the culprit (some add-ons still seem to affect the operation of FF even when disabled, I had this problem with either NoScript or HTTPSE a while ago, so now I remove instead of just disabling)

Unfortunately, I forgot to disable sync on the copied profile before I started removing, and when I returned to my original profile, Sync happily proceeded to remove all add-ons on it, as well as from all other devices.

I had several hours of "fun" reinstalling add-ons on one machine only to have Sync delete them because it decided that the other machine is newer, then it would delete them from the other machine as well, because the first one would be more "up to date".  I dread turning my work machine on tomorrow since I don't know if the process will continue.

Having an option to reset Sync to one of the machines would have saved me a lot of time and frustration.  Please bring this functionality back.
Bill and Ryan, please help us prioritize this one.
Flags: needinfo?(wmaggs)
Flags: needinfo?(rfeeley)
Looking at problems logged on input.mozilla.org it appears that this is a persistent but uncommon complaint problem, especially among former users of the old version of Sync

The solution should be adding UI to warn users about what will actually happen if they add a new device to Sync. I believe that this would be best included in the FxA onboarding flow.
Priority: -- → P1
Target Milestone: Firefox 29 → Firefox 42
Flags: needinfo?(wmaggs)
Priority: P1 → P2
This is almost a dupe of bug 1177516 - the idea here is that a new profile being added to Sync would be able to have all it's stuff replaced by the server copy, which would not only avoid the default bookmarks, but any other defaults or incidental local changes that aren't desired after a sync.
I don't think we should present UI to the user. Other major browsers handle with without UI, and we should too.
Flags: needinfo?(rfeeley)
After talking to Ryan F I agree that the current approach is probably the least problemmatic.
Today I started getting extremely frequent "sync has encountered an error" bars.

(Aside, the error was:

1440338514355	Sync.Engine.Bookmarks	WARN	Got exception "[Exception... "Component returned failure code: 0x804b000a (NS_ERROR_MALFORMED_URI) [nsINavBookmarksService.getBookmarkURI]"  nsresult: "0x804b000a (NS_ERROR_MALFORMED_URI)"  location: "JS frame :: resource://gre/modules/services-sync/engines/bookmarks.js :: _buildGUIDMap :: line 275"  data: no] Stack trace: _buildGUIDMap()@resource://gre/modules/services-sync/engines/bookmarks.js:275 < _syncStart/<()@resource://gre/modules/services-sync/engines/bookmarks.js:402 < _mapDupe()@resource://gre/modules/services-sync/engines/bookmarks.js:342 < _createRecord()@resource://gre/modules/services-sync/engines/bookmarks.js:442 < SyncEngine.prototype._reconcile()@resource://services-sync/engines.js:1374 < SyncEngine.prototype._processIncoming/newitems.recordHandler()@resource://services-sync/engines.js:1080 < Collection.prototype.recordHandler/this._onProgress()@resource://services-sync/record.js:624 < Channel_onDataAvail()@resource://services-sync/resource.js:558 < waitForSyncCallback()@resource://services-common/async.js:102 < Res__request()@resource://services-sync/resource.js:405 < Res_get()@resource://services-sync/resource.js:429 < SyncEngine.prototype._processIncoming()@resource://services-sync/engines.js:1108 < BookmarksEngine.prototype._processIncoming()@resource://gre/modules/services-sync/engines/bookmarks.js:419 < SyncEngine.prototype._sync()@resource://services-sync/engines.js:1520 < wrappedSync()@resource://gre/modules/services-sync/engines/bookmarks.js:229 < _sync()@resource://gre/modules/services-sync/engines/bookmarks.js:226 < WrappedNotify()@resource://services-sync/util.js:148 < Engine.prototype.sync()@resource://services-sync/engines.js:668 < _syncEngine()@resource://services-sync/stages/enginesync.js:199 < sync()@resource://services-sync/stages/enginesync.js:149 < onNotify()@resource://gre/modules/services-sync/service.js:1298 < WrappedNotify()@resource://services-sync/util.js:148 < WrappedLock()@resource://services-sync/util.js:103 < _lockedSync()@resource://gre/modules/services-sync/service.js:1288 < sync/<()@resource://gre/modules/services-sync/service.js:1280 < WrappedCatch()@resource://services-sync/util.js:77 < sync()@resource://gre/modules/services-sync/service.js:1268 < <file:unknown>" building GUID map. Skipping all other incoming items.
1440338514355	Sync.Engine.Bookmarks	WARN	Reconciliation failed: aborting incoming processing.
)

I couldn't do anything about it.  On old sync, I would have just done a "replace" operation.  That option is now gone?

Just a +1 for somehow having the option to merge/replace exposed again, somewhere.
No longer blocks: 905997
Flags: firefox-backlog+
Priority: P2 → P3
Severity: normal → enhancement
Priority: P3 → --
Priority: -- → P3

Not likely to be addressed.

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: