Bonjour à tous,
J’utilise PostgreSQL avec n8n, et j’essaie de comprendre la meilleure façon de gérer plusieurs workflows mettant à jour le même enregistrement simultanément.
Par exemple, deux exécutions de webhook pourraient essayer de mettre à jour la même ligne en même temps :
UPDATE orders
SET status = ‘processed’
WHERE order_id = 1001;
Mes préoccupations sont d’éviter les problèmes suivants :
Pertes de mises à jour
Conditions de course
Traitements en doublon
Données incohérentes
J’ai lu des articles sur le verrouillage au niveau des lignes (FOR UPDATE), le verrouillage optimiste et les transactions, mais je ne suis pas sûr quelle approche fonctionne le mieux dans un environnement n8n de production.
Pour ceux qui exécutent PostgreSQL avec des workflows à haute concurrence :
• Comptiez-vous uniquement sur les transactions, ou utilisez-vous également des verrous au niveau des lignes ?
• Quand choisiriez-vous le verrouillage optimiste plutôt que le verrouillage pessimiste ?
• Avez-vous expérimenté des blocages circulaires, et comment les avez-vous gérés ?
• Des conseils de production pour maintenir la cohérence des données sans affecter les performances ?
J’aimerais entendre ce qui a bien fonctionné pour d’autres dans des déploiements n8n réels.
Décrivez le problème/l’erreur/la question
Quel est le message d’erreur (le cas échéant) ?
Veuillez partager votre workflow
(Sélectionnez les nœuds sur votre canevas et utilisez les raccourcis clavier CMD+C/CTRL+C et CMD+V/CTRL+V pour copier et coller le workflow.)
Partagez la sortie renvoyée par le dernier nœud
Informations sur votre configuration n8n
- Version n8n :
- Base de données (par défaut : SQLite) :
- Paramètre n8n EXECUTIONS_PROCESS (par défaut : own, main) :
- Exécution de n8n via (Docker, npm, n8n cloud, application de bureau) :
- Système d’exploitation :