Disaster cases with Joplin

I know this is not a pleasant thing to ask, but it would be nice to learn from other people's problems, so that we can, as much as possible, prevent them from happening with us. What has happened with your Joplin setup that messed, in a significant way, with your data? Something involving database corruption, forced conflicts, files edited directly on the sync target by mistake, database being simply overwritten, etc?

So far I have not faced anything disastrous, thank God, except that I installed on a second PC and pointed to the same synchronisation target. I also had/have Joplin installed on my Android phone. After checking these three installation places, I came across an odd surprise: there was a new "conflicts" notebook with exactly 2000 conflicted attachments. I don't know why or how. I'm sure I didn't mess with the attachments on any device.

2 Likes

This issue has caused data loss for some users:

It's fixed in versions ≥ 2.13.3 (which, for now, are still in prerelease (release cycle)).

1 Like

Joplin does not seem to ever suffer from software related problems, but many times from user induced problems. These include "not following the setup instructions", "not setting up sync as required", "fiddling with database files", "moving to another platform without proper preparation", not implementing proper backup", "using a platform (OS) not supported", "relying solely on a handheld device (Android / iOS)", etc. etc.

I am not saying that Joplin won't have a little bug here and there, often quickly fixed. Such comes with it's complexity, needed library updates, and the like. What I am saying is that I have yet to see a "disaster case" not due to user action or the lack of it.

I have never had any real problems after years of use
Far less than when I used Evernote way back when.

1 Like

Joplin does not seem to ever suffer from software related problems, but many times from user induced problems. These include "not following the setup instructions", "not setting up sync as required", "fiddling with database files", "moving to another platform without proper preparation", not implementing proper backup", "using a platform (OS) not supported", "relying solely on a handheld device (Android / iOS)", etc. etc.

Ouch! Ok, I may have checked a few of those boxes upon trying Joplin before fully commiting my migration from Evernote. :face_with_open_eyes_and_hand_over_mouth:

But you understand my point? The migration was not smooth on Evernote's part; I can see Joplin did everything to make the transition as clean as possible, but Evernote's exported files contained some... formatting spots. I also had to make sure it synchronized well with the Android device via OneDrive.

As for database tinkering, I did open the DB file in DB Browser for SQLite, but that was just to grasp a bit of the schema. Of course I did not use DB Browser as a primary means to search and sort my notes.

And, when I did something that I now don't remember on the markdown files directly, it was before people warned me not to ever edit files on the sync target directly; that could have been prevented by a warning.

So, my whole point is, since Joplin, albeit gaining momentum on its own, was first built as an Evernote replacement, I guess it should treat the new users as they were: Evernote migrants, who aren't, generally, as savvy as Joplin users.

Edit: ah, as for the point I brought about the conflicted attachments: does that behaviour have a known cause which is quick to solve without detouring, or should I create a new topic on support?

2 Likes

My answer was neutral, about what kind of problems I have seen with Joplin over the last two years. I did not mean to say "you did this wrong", "you did that wrong". Just a summary of observations ...

1 Like

No, I didn't take any slaps on my face! I was... reflecting :smiley:

1 Like

My backup strategy is as follows:

Joplin runs on my Mac, which is backed up periodically using Time Machine.

I sync to Joplin Server I have running in an LXC container in Proxmox. In the container I periodically run a backup task of the Postgres database that is the backend for Joplin Server. I encrypt the backups using a Golang program I wrote. Once encrypted, I use rclone to move the files to Google Drive.

Whoa, that sounds advanced; exquisite, even!
Care to share your montly cost with Joplin ops alone?

My setup is similar to @kcrawford's in principle, though the details differ.
The simplest thing you can do right now is install the Simple Backup plugin, which creates daily snapshots in case something goes wrong.

As for failure cases - I'm on this forum since the beginning, and I'd say by far the most often occurring reason for data loss is caused by changing sync settings.
Joplin added safeguards for this, so it's harder to shoot yourself in the foot.

But even still, you will find people here saying they tried doing something with sync, they got a prompt saying "the safeguard triggered; u sure u wanna do this? It will delete all your notes!"
Then they disable the prompt in the settings, all their notes get deleted, then they come here, panicked, asking for help.

So the situation has gotten better, but I'm not sure it completely went away.

Other than that, I haven't noticed anything too bad; either here, or in my ~5-6 years of daily driving Joplin.

Edit:

I run Joplin Server as well. According to ctop, it takes about ~240MB of RAM. The DB it uses takes up ~160MB, but there's maybe 12 other apps running on that one. So I guess you could use a very small VPS.
Or just pay for Joplin Cloud.

A server for syncing, plus a Simple Backup setup, should make your notes pretty safe.

I am running two instances of Joplin Server on the same LXC. They average between 120-140 MB of RAM. I am using Postgres as a database backend and it is using ~120MB. The LXC only has a single core assigned and averages less than 5% usage (Intel Xeon E-2246G @ 3.60 GHz). I am using one Joplin instance to share notes with my household and the second one to share notes with my brother for CTF's we work on together.

My solution is a bit complex and not for everyone. My day job is devops so this kind of thing comes naturally to me.