loopbackio / loopbackio/loopback-connector-postgresql
Release called on client which has already been released to the pool
Personne n'a encore pris cette issue.
- Langage dominant
- JavaScript
- Étoiles
- 118
- Forks
- 184
- Merge moyen
- 1 j 22 h
- PR mergées (30 j)
- 5
Description
Steps to reproduce
- Use loopback-connector-postgresql 5.5.0 (5.4.0 does not exhibit this issue)
- Commit a transaction with an error (ex: unique key violation)
- Rollback the transaction
Current Behavior
Calling transaction.commit and subsequently transaction.rollback if there is a commit error results in:
The following error from pg-pool in the rollback is uncaught and crashes the server: Release called on client which has already been released to the pool
I would expect the error to be caught (perhaps in PostgreSQL.prototype.releaseConnection?) and passed along without crashing the server
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par PostgreSQL.prototype.releaseConnection et reproduisez l’erreur de commit de la transaction suivie du rollback avec loopback-connector-postgresql 5.5.0. Comparez le chemin de rollback avec le comportement de release de pg-pool ; c’est terminé lorsque l’erreur de release est interceptée et transmise sans faire planter le serveur.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- javascript, nodejs, postgresql
- Domaine
- backend, databases
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100