vrtmrz / obsidian-livesync

MIT License
3.96k stars 134 forks source link

upgrade to V0.20.6 occur "DB -> STORAGE(create,plain) ERROR, could not write" #317

Closed xktder closed 8 months ago

xktder commented 8 months ago

Thank you for providing such an excellent plugin

problem

After I upgrade to V0.20.6,Computer and phone synchronization occur "DB -> STORAGE(create,plain) ERROR, could not write"

image

version

V0.20.6

xktder commented 8 months ago

maybe

It may be related to this reason, as it indicates that there are two Database folders, but there is actually only one Database folder, and lowercase databases do not have this folder.

89)GSLG8 1`QKUTCIH~EA@H

image

xktder commented 8 months ago

difficult problem

Expected results

I originally intended to reset the entire local synchronization record and then pull the remote library information again. Local data is no longer needed, and remote data is directly used to overwrite the local data. I have tried various methods of plugins.

final

My remote library is broken and uncomfortable.

cause

I did the following:

why?

I tried

image image image image image image

dlphnkck commented 8 months ago

I'm sorry to bother you. I am not at all familiar with the LiveSync plugin, but is "Redflag.md" relevant? If not, I'm sorry.

obsidian-livesync/README.md at 280d9e1dd9e7c9cdc6991b7399584294bd34300d · vrtmrz/obsidian-livesync

  • To stop the boot-up sequence (eg. for fixing problems on databases), you can put a redflag.md file (or directory) at the root of your vault. Tip for iOS: a redflag directory can be created at the root of the vault using the File application.
  • Also, with redflag2.md placed, we can automatically rebuild both the local and the remote databases during the boot-up sequence. With redflag3.md, we can discard only the local database and fetch from the remote again.
xktder commented 8 months ago

很抱歉打扰您。我完全不熟悉 LiveSync 插件,但“Redflag.md”相关吗?如果没有,我很抱歉。

黑曜石-livesync/README.md 在 280d9e1dd9e7c9cdc6991b7399584294bd34300d ·VRTMRZ/黑曜石-LiveSync

  • 要停止启动序列(例如,用于修复数据库上的问题),可以将 redflag.md 文件(或目录)放在保管库的根目录下。iOS 提示:可以使用文件应用程序在 Vault 的根目录下创建一个红旗目录。
  • 此外,放置 redflag2.md 后,我们可以在启动序列中自动重建本地和远程数据库。使用 redflag3.md,我们可以只丢弃本地数据库并再次从远程获取。

Thank you for your reply. It's my problem and I haven't read the existing materials carefully. I will continue to try again.

vrtmrz commented 8 months ago

Sorry for being late! Strange behaviour when remote data vaults contain mixed-case files. This is due a specification trouble. I am sorry to make you inconvenient. I am very annoyed about this. We could make /Database/ and /database/ if on Linux or iOS, but could not on Windows. So we could not merge /Database/ and /database/ by unified simple logic. (In other words, there might be some ways, if we could accept overwriting of aaa.md changes to aaA.md and Database/aa.md to database/aa.md)

For now, in such cases, this is just a workaround but following instructions may help us.


Second problem

The file resurrecting problem seems to be caused uncleared local database. The process which you have done Discard local database to reset or uninstall Self-hosted LiveSync does this, but seems to not work in your environment.

As you all mentioned, the Redflag series might be helpful for us. We should use redflag3.md to discard the local and fetch again. However, some good names might be required. Thank you for your support @dlphnkck!

xktder commented 8 months ago

Thank you for your reply. Rebuild the library to address the first issue.