Raspberry Pi Docker Server instance hanging

Operating system

Linux

Joplin version

2.14.20

Sync target

Joplin Server

What issue do you have?

I've stood up a server instance per Guide for Joplin-Server on Raspberry Pi

There were some issues with mounted drives, so I've fallen back to local storage.

What I'm getting now are indiscriminate hangs.

The server will work for a bit, and then just stop responding.

This has happened when syncing from Linux and Windows clients.

Typically I have to power the RPi down and restart.

Any thoughts about possible culprits?

That's not much information to work with.

If the "hang" requires the Pi to be rebooted i.e. the actual computer has crashed, not just the container or docker (which then works after a reboot), what about:

  • Failing MicroSD card?
  • Insufficient power to the RasPi?
  • Worn / damaged / cheap USB power cable?
  • Failing / dirty power supply?
  • RasPi overheating?

What have you tried / eliminated so far?

Well,

It's a true RPi power supply. The SD card is a g4gb Sandisk Ultra that I used to use in a camera. It tests just fine.

Everything is good until I start Joplin. The Windows client is the worst.

The sync will start, and then stall at which point the Pi is hung.

This is a screen grab from the Windows client:

error

The Linux client gets a lot farther in the process, but it stalls as well, but doesn't give an error.

Thanks

Well this is definitely Joplin server hanging the pi.

I've played with sync-ing on Linux, which seems to be better behaved than the Windows client.

With Joplin running and syncing, the Pi goes non-responsive.

As soon as I kill Joplin, the Pi comes back to life.

I've got Joplin set to only use 1 stream, but this really doesn't seem to make a difference.

Is there a way to set up a running log on a SSH connection to the Pi and what what's going on?

Oh well. In playing, I've managed to completely hang the pi....

Time to power off.

cheers

I can help you out on this. Can you run and post:

sudo docker container ps
sudo docker image ls
free -mt
uname -a
dmesg -T

What did you find out from the actual error message?

Do the postgres container logs give any indication as to why it is rolling back to a savepoint?

This doc gives an idea of what a ROLLBACK TO SAVEPOINT is and says,

Description
Roll back all commands that were executed after the savepoint was established and then start a new subtransaction at the same transaction level...

I know next to nothing about postgres so this is all new to me, but if it means that your postgres db is for some reason suddenly "jumping back in time" it may explain why the Joplin Server is freaking out...

EDIT:

  1. SSH into the Raspi

  2. Run docker container ls

  3. Get the 12-character CONTAINER ID of the postgres container (first column), then

  4. Run docker logs CONTAINER ID -f where CONTAINER ID is the 12-character CONTAINER ID you got at step 3.

The -f means that the log will be followed and entries will continue to be shown if it is updated.

CTRL+C gets you back to a prompt.

You could also try the same with the CONTAINER ID for the Joplin Server container.