Syncing seems not really being a sync, but rather a "force pull". This leads into data loss if used incorrectly.
Steps to reproduce:
Expected behavior:
Actual behavior:
Possible solutions:
There are plans to improve syncs and make them more real-time (similar to how the mobile apps work by pushing).
Thank you! :)
keep up with the good work! I just migrated from Lastpass, suffering data loss and bad User interfaces. Bitwarden does a way better Job!
Had experienced TOTP loss a couple of times. was about to enter a ticket but I'm +1 this one.
Steps to reproduce (in my case):
I found a way around this behavior -> relaunch the app after changing values from the mobile app.
I see the same thing. It would be nice if you were notified when there was a conflict and offered a way to merge the data. Instead of silently overwriting the data with the latest version.
@kspearrin
Even post-sync-fixes (these really help a lot, making this problem less prevalent) I have experience this when something prevents the sync from happening. IE mobile has problems getting signal etc.
There should be a merge logic where each client stores:
Then works on the logic:
If a new sync is initiated and the remote state trying to be pulled is not equal to the state identified in number 1 (the state at the end of the last sync) then show a window that diffs the two and ask the user what to do.
I can confirm I have lost data (Having to go run around trying to restore accounts) due to this issue. I would like to point out that you don't even have to edit the item on the second device. If you simply sync, it will over-ride the new data with the old data.
I confirm this behavior. I lost a TOTP key today.
This is absolutely terrible. Sync conflicts have to be managed somehow. I wish I could help.
Even if a diff is not shown to the user, at the very least duplicating the item with " (duplicate 1)" at the end etc. will prevent data loss.
At the very least a sync should not overwrite the entire entry saved on the server but only the fields that were changed.
This totally needs to be fixed. Just keep a copy of the conflicting entry as a quick fix until you find a way to display these conflicts in a way for the user to fix the conflict.
Most helpful comment
Even if a diff is not shown to the user, at the very least duplicating the item with " (duplicate 1)" at the end etc. will prevent data loss.