Comments (3)
Hatch
From here, everything is under the hood. Please handle it with care.
When there are problems with synchronization, the warning message is shown Under this section header.
Pattern 1
This message is shown when the remote database is locked and your device is not marked as "resolved".
Almost it is happened by enabling End-to-End encryption or History has been dropped.
If you enabled End-to-End encryption, you can unlock the remote database by "Apply and receive" automatically. Or "Drop and receive" when you dropped. If you want to unlock manually, click "mark this device as resolved".Pattern 2
The remote database indicates that has been unlocked Pattern 1.
When you mark all devices as resolved, you can unlock the database.
But, there's no problem even if you leave it as it is.
If the above explanation in settings.md is not clear enough , please refer to the Code, TypeScript, markRemoteLocked()
, markRemoteUnlocked()
, and markRemoteResolved()
sections.
This will help you understand the code of the LiveSync plugin.
from obsidian-livesync.
I think the confusion comes from the Lock remote database button is on the Maintain database page, but the unlock database is done from the Hatch page.
Maybe grey out the Lock button when the database is already locked and indicate somehow that the database can be unlocked elsewhere. Better yet, just combine Hatch and Maintain database pages. Them being separate is confusing.
from obsidian-livesync.
Sorry for being late! As you mentioned, we do not have to unlock the database.
The purpose of Lock
is to prevent the connection of another non-empty device, and to avoid unexpected conflicts of files.
The device whose connection is prevented will be needed to mark itself as resolved
on the remote. (Actually, the device which has no resolved
mark disconnects itself).
One of the ways of marking resolved
is @dlphnkick mentioned at first. However, as a note, it is a very manual feature and not recommended for casual usage.
Instead of that, while replicating to the rebuilt remote database (Locked
and
the device not resolved
), we can decide to unlock the remote by fetching the remote again.
When fetching, the remote is marked resolved
by the fetching device. When rebuilding a remote database, it is always locked and marked resolved
only by the rebuilding device.
Therefore, once the remote database has been locked, it usually should not be unlocked before all your synchronised devices have been resolved. And, owning each device would not know about the past connected other devices, it could not be unlocked automatically instead of resolving.
In summary, Locking the database is a usual operation to prevent corruption. But resolving should be automatically performed and the manual operation should be under the bonnet. (And, fetching, overwriting, rebuild all is on the Maintain database
).
I hope this provides you with the insight you were seeking!
from obsidian-livesync.
Related Issues (20)
- missing system database _users HOT 2
- Why make it so complex ? HOT 8
- Reducing Time for _changes Request in CouchDB HOT 1
- Run replicate now automatically? HOT 2
- Renaming or deleting notes cause sync to be stuck, showing β³ Working read storage processes and/or π« Pending read storage processes HOT 6
- Notes with quoted strings in their name are synced as if they are deleted HOT 2
- FileWatching STORAGE -> DB (plain) updates lead to lag on mobile devices like iPad HOT 4
- Default ignore pattern settings for hidden files sync doesn't work HOT 2
- θ½ε¦ε’ε δΈζζ―ζ HOT 5
- no sync when couchdb sits behind a /location
- Remote database is 7 times larger than the vault HOT 1
- Some hidden files fail to sync and may cause sync paused HOT 4
- [Feature request] Can we customize the HTTP request header?
- CORS errors in remote database connection HOT 1
- Click on the upper right corner but cannot close HOT 1
- Live sync won't start HOT 27
- The request may have failed. The reason sent by the server: 404: HOT 2
- Ask for "Reload Obsidian" when it is safe to do HOT 5
- Feature Request: Canarie and LTS versions of the plugin HOT 2
- Issue with large MD files HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from obsidian-livesync.