Joplin Server sync Knex connection timeout errors

Operating system

Windows

Joplin version

2.14.20

Desktop version info

Client ID: eba2a33801514ac8bef0317674931c79
Sync Version: 3
Profile Version: 46
Keychain Supported: Yes

Revision: cfd98e3

Backup: 1.4.0

Sync target

Joplin Server

What issue do you have?

Hello,

I have recently switched from Nextcloud synchronization to Joplin Server syncronization. Its working well except that i am now having some synchronization errors which sometimes block the synchronization process for a while.
Here is example of some errors that i have copied from the console :

JoplinServerApi: curl -v -X GET -H "X-API-AUTH: ******" -H "X-API-MIN-VERSION: 2.6.0" '/api/items/root:/:/delta?cursor=e8WmJ0wQXTpgic3mMuyV1k
JoplinServerApi: Code: 500
JoplinServerApi: Error: Knex: Timeout acquiring a connection. The pool is probably full. Are you missing a .transacting(trx) call?
JoplinServerApi: curl -v -X DELETE -H "X-API-AUTH: ******" -H "X-API-MIN-VERSION: 2.6.0" '/api/items/root:/temp/timeCheck497368.txt:'
JoplinServerApi: Code: 500
JoplinServerApi: Error: Knex: Timeout acquiring a connection. The pool is probably full. Are you missing a .transacting(trx) call?
JoplinServerApi: curl -v -X GET -H "X-API-AUTH: ******" -H "X-API-MIN-VERSION: 2.6.0" '/api/items/root:/ab38a61….md:/content'
JoplinServerApi: Code: 500
JoplinServerApi: Error: Knex: Timeout acquiring a connection. The pool is probably full. Are you missing a .transacting(trx) call?

Do you have an idea why i am having these errors and how can i fix them ?

Thank you.

I'm having the same problem. Joplin Server is running on Debian 12 and I'm running the Android client. Otherwise identical issue.

Hello,

I have solved this issue by switching to filesystem storage.

You can find the setup for this in the official documentation : joplin/packages/server/README.md at dev · laurent22/joplin · GitHub.

I basically just added STORAGE_DRIVER=Type=Filesystem; Path=/path/to/dir to the environment variables of my docker-compose.yml. You also need to add a docker volume ./data:/path/to/dir to persist the data on server.

I have heavy files in my joplin notebook which, i think, were putting heavy load on the database. With filesystem storage, synchronization seems much faster and no more errors :slight_smile: