silverbulletmd / silverbullet

The knowledge hacker's notebook
https://silverbullet.md
MIT License
2.3k stars 167 forks source link

Renaming a note seemed to delete all content #1067

Open Kwikxilver opened 2 weeks ago

Kwikxilver commented 2 weeks ago

Hi there,

I've been using Silverbullet for a while now, selfhosting via Docker. I use it to have a web interface for my notes I can access from anywhere, and am really enjoying it.

I had a really frustrating issue this afternoon. I was editing a note where I'd written a story and decided to rename it when I was finished. Upon renaming the note, the web interface threw up an error and returned a blank page. I tried to navigate back to the old name, but it was also blank. I've checked my space folder and can't find the note there as a file at all.

This is my log from Docker when the issue happened. I've also attached my full log exported from the Docker console to this post. If there's any way to get my writing back, it'd be great if you could let me know as I had put quite a bit on there!

_silverbullet_logs.txt

Requested file The Genesis Loop.md Requested file The Genesis Loop.md Requested file Library/Core/Widget/Table of Contents.md Requested file The Genesis Loop.md Requested file SETTINGS.md Requested file Time Agency: Genesis Loop.md Error GETting file Time Agency: Genesis Loop.md Could not get meta for Time Agency: Genesis Loop.md Requested file The Genesis Loop.md Writing file Time Agency: Genesis Loop.md Error while writing file Time Agency: Genesis Loop.md TypeError: Invalid argument (os error 22): open '/space/Time Agency: Genesis Loop.md' at async Object.open (ext:deno_fs/30_fs.js:633:15) at async ux.writeFile (file:///silverbullet.js:2369:256222) at async vX.writeFile (file:///silverbullet.js:65:3131) at async file:///silverbullet.js:2379:12599 at async c (file:///silverbullet.js:26:4231) at async file:///silverbullet.js:26:11381 at async c (file:///silverbullet.js:26:4231) at async c (file:///silverbullet.js:26:4231) at async c (file:///silverbullet.js:26:4231) at async file:///silverbullet.js:26:9763 { code: "EINVAL" } Write failed Error: Could not write Time Agency: Genesis Loop.md at ux.writeFile (file:///silverbullet.js:2369:256455) at eventLoopTick (ext:core/01_core.js:168:7) at async vX.writeFile (file:///silverbullet.js:65:3131) at async file:///silverbullet.js:2379:12599 at async c (file:///silverbullet.js:26:4231) at async file:///silverbullet.js:26:11381 at async c (file:///silverbullet.js:26:4231) at async c (file:///silverbullet.js:26:4231) at async c (file:///silverbullet.js:26:4231) at async file:///silverbullet.js:26:9763 Requested file Time Agency: Genesis Loop.md Error GETting file Time Agency: Genesis Loop.md Not found Requested file The Genesis Loop.md Requested file Library/Core/Widget/Table of Contents.md Requested file Library/Core/Widget/Linked Mentions.md Requested file The Genesis Loop.md Deleting file The Genesis Loop.md Booting up worker for query Requested file Time Agency: Genesis Loop.md Error GETting file Time Agency: Genesis Loop.md Could not get meta for Time Agency: Genesis Loop.md Requested file SETTINGS.md

zefhemel commented 2 weeks ago

I'm sorry this happened. I don't know anything can be done here though to recover. I suspect the problem is the colon in the name although that should work on most operating systems. What os are you running this on?

Kwikxilver commented 2 weeks ago

It's okay - I've accepted I can't recover it now. I should have set up a backup system, which I have now done using Git! Thank you for your guide on the forums.

That said, it would be good if we can figure out how to stop this happening in future!

I was running Silverbullet through Docker. The bare metal machine is Ubuntu 22.04.04 LTS Jammy Jellyfish though. Does that help?

I don't know if this changes anything, but the actual space itself is stored on an external hard drive that's permanently mounted to the host machine.

Let me know if you need any more info!

zefhemel commented 2 weeks ago

What type of filesystem is it you're mounting?