Bases de données
SQLite : « database is locked »
À corriger Ça marche à moitié, ou ça cassera plus tard.
Le message tel qu'il apparaît dans les logs :
database is lockedCe que ça veut dire
Deux programmes ont voulu écrire en même temps dans la même base SQLite. Ponctuel, ce n'est pas grave ; répété, l'application ralentit ou perd des écritures.
Pourquoi ça arrive
- Deux conteneurs utilisent le même fichier de base.
- La base est sur un disque réseau (NFS, SMB) : SQLite le supporte mal.
- Une sauvegarde copie le fichier pendant que l'application tourne.
Comment corriger
Gardez la base sur le disque local du serveur, et arrêtez l'application pendant la copie de sauvegarde (c'est ce que fait la sauvegarde de Mon serveur).