Actions
Anomalie #5282
fermé[taskrequest] PostgreSQL Error : {DB0001} query error : ERROR: null value in column "tid" violates not-null constraint
Début:
17/12/2014
Echéance:
% réalisé:
100%
Temps estimé:
Version source:
Solution proposée:
Les pb de connexion ou échange avec le TE doivent être loggués (système) :
- pour ce cas (distinct de la connexion TE)
- à prendre en compte pour la connexion TE (si pas fait)
Principaux fichiers impactés:
Complexité:
Contrôle:
Thème:
Socle technique
Régression:
Description
Lors de l'envoi d'une requête au serveur de transformation (méthode TEClient::sendTransformation()), si le serveur répond avec une réponse vide (ou ferme la connexion sans envoyer de réponse), alors la méthode retourne un $err et un $info vide. Par la suite, $info["tid"] (qui est aussi vide) est utilisé pour insérer la demande dans la table taskrequest et génère alors l'erreur de contrainte suivante :
Dynacase:DbObj:taskrequest : exec_query :insert into taskrequest(tid,fkey,uid,uname,status,comment) values (null,E'404899',E'1',E'Prod Master',null,null)
Dynacase:DbObj:taskrequest : PostgreSQL Error : {DB0001} query error : ERROR: null value in column "tid" violates not-null constraint
0) /.../WHAT/Class.DbObj.php:769 DbObj::setError()
1) /.../WHAT/Class.DbObj.php:432 DbObj::exec_query()
2) /.../FDL/Lib.Vault.php:209 DbObj::Add()
3) /.../FDL/Class.Doc.php:3726 ::sendTextTransformation()
4) /.../FDL/Class.Doc.php:992 Doc::sendTextToEngine()
5) /.../WHAT/Class.DbObj.php:493 Doc::PostUpdate()
6) /.../FDL/Class.Doc.php:5781 DbObj::modify()
[...]
{DB0001} query error : ERROR: null value in column "tid" violates not-null constraint
insert into taskrequest(tid,fkey,uid,uname,status,comment) values (null,E'404899',E'1',E'Prod Master',null,null)
Erreur : {DB0001} query error : ERROR: null value in column "tid" violates not-null constraint
insert into taskrequest(tid,fkey,uid,uname,status,comment) values (null,E'404899',E'1',E'Prod Master',null,null)
Il faudrait mieux gérer ce cas (réponse vide ou qui ne contient pas <comment>(.*)</comment>) et traiter celui-ci comme une erreur.
Actions