Here, There, Everywhere...
A few users have reported either files missing when they view Live Mesh folders on their computer (but appearing as expected on their Live Desktop) or their computer showing all files but reporting many more conflicts than expected (and their Live Desktop showing duplicate copies of any file with a conflict.) We’ve spent the weekend investigating this, and we have a few details below. But the key news is this:
We're testing a fix for this now and will deploy it as soon as we're confident it’s ready. In the meantime, if you have a Live Mesh folder that appears to be missing files (that is, synchronization appears to be complete but expected files are still not present) or one that has an unexpectedly large number of conflicts, in order to prevent data loss, do not uninstall the Live Mesh software. In addition, do not re-synchronize any folders you had previously stopped synchronizing.
Why is this happening? A technical explanation
In the interest of being open with you, our beloved and valued technology preview testers, we’re happy to provide more detail on what’s causing this behavior. The key to a good synchronization algorithm is understanding the history of all the files in a folder. You want to make sure that any client, even one that hasn’t synchronized in a good long while, can get an accurate list of what changed and what needs to be brought up to date. Part of a complete folder history is keeping track of files or folders that have been deleted, so that if a client comes online and tries to sync a file that doesn’t exist in the up-to-date folder list, we can tell whether it’s a new file or a file someone deleted a while back but is still on this particular client because the file deletion was never synchronized to it. We use the industry jargon tombstone for these deleted files.
What we discovered recently is an interesting edge case around tombstones. Live Mesh performs its synchronization in batches of roughly 50 files at a time. The client asks for the first 50 changes, processes those, then asks for the next 50, and so on. If, through sheer chance, the next batch of 50 items is made up entirely of tombstones—that is, it’s a list of 50 files that have all been deleted since this particular client last synchronized—the storage server gets a little confused. It returns that list of tombstones and then concludes that synchronization has ended. If there are additional file changes, they never get sent to the client. So this can lead to two patterns:
Now, conflicts are an inevitable part of any synchronization system, and so both the server and client are built to understand what a conflict is and to store any conflicting files in a separate holding area, where they remain until the user decides how to resolve the conflicts. While they are in the holding area, the client software might not display the files as being part of the folder, while the Live Desktop instead represents the conflict by showing both files (yes, this is something we are already working on improving and making consistent ;). So the files are all in your mesh; it’s just not obvious where they are or how to access them.
The one catch is that the client holding area is stored in the Live Mesh folder for temporary application files. This directory is something we remove when the Live Mesh software is uninstalled (also something we are already working on improving—either warning you that uninstalling will remove any files in a conflicted state or just copying all conflicts somewhere else where they won’t get removed on uninstall). So if you somehow end up in a state where the folder is present only on one client, uninstalling the Live Mesh software from that client may remove all files in a conflicted state. That’s bad, we know it’s bad, and that’s why we suggest you don’t uninstall until we fix this issue.
Thanks as always for your continued participation and feedback. Ferreting out issues like this is exactly what our technical preview is designed to do, and so while it’s sometimes a bit painful, we appreciate your help and your patience as we work to get the issue fixed.
Technorati Tags: Live Mesh
Nice to hear about progress, gl with the work!
Thank you for being so forthright in describing and addressing this issue. I'm glad these issues are getting sorted out now, rather than after launch (*cough*, Apple).
If you decide to "just copying all conflicts somewhere else where they won’t get removed on uninstall" i think we need to be aware of this so we can remove them if we please. The last thing we need is more files taking up space on our HDD that we do not know about. At least give us a choice to delete or keep them!
Thanks! and great product by the way!
If you read my blog much, you'll know I can't run Live Mesh at the office, so what's the
I have the latest version of the Live Mesh client. For some reason, since the last update, Live Mesh has been repeatedly crashing. It crashes, I get an error message, it restarts, and crashes again. Plus, documents and files are disappearing. I've checked the folders for hidden files, but nothing is there. Is there any way for you to help me?
@ Master Devwi,
There a couple of ways to get help. You can open a bug through our Microsoft Connect site (https://connect.microsoft.com/LiveMesh), or you can email your Live Mesh logs to firstname.lastname@example.org and describe the problem you're having.
Also, while they are currently offline (for just a couple more hours), our forums are a great place to get support for Live Mesh: http://forums.community.microsoft.com/en/LiveMesh/threads/
Thanks. I forgot about Microsoft Connect. I'll go ask the question over there. Thanks for the help!
I'm on 0.9.3103.14 and just noticed that moe.exe is consuming 19,500 handles! That seems a bit excessive.
I would love to see some options to throttle the cpu and bandwidth LiveMesh uses. Moe frequently dominates my processes, and syncing eats up all my upload bandwidth.
This tombstone business is a bummer. I've added a synced folder for the first time to btw my father and I's computer (1.65gb). It stopped 15% of the way and thats it.
A really good feature would be to see what files are even missing. I have 3.65gb worth of school data on your servers, not sure if its all of the 3.65gb. That might have stopped half way.
As a backup utility or everyday reliance there needs to be a way to be sure of the integrity of the data. I'm so excited for this project.
This bug has been doing its damage on my friends computer now for a week. He has officially 11GB of missing data because this bug just keeps on trying to sync and dropping everything from the prior sync. He had all 59GB of data sharing with foldershare flawlessly prior to this.. boy do i feel dumb for trying to help him out. Now for a week all i can say is "Uh yeah they're gonna fix it soon, and you might get your 11GB back" This is a joke
We are working hard on this, and we do apologize for the trouble this has caused your friend. If you could advise your friend to send his/her Live ID to email@example.com, a member of the Live Mesh team will contact him or her immediately.
Last week, we posted about an issue that might cause your Live Mesh Folders to either appear to have
Were you wondering, just like us, why it got so quiet after the last warning about unmap/remap/uninstalling