PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 03/01/2012 12:48:46

cbeau
Membre

Log d’événements : message systématique 'WARNING: there is no tran...

Bonjour.

Savez-vous comment ne pas remonter de message dans le log de journalisation d’événements PostgreSql lorsqu’il n’y a pas d’évènements particuliers ?

Dans une application Client/serveur, lorsqu’un client est connecté à la base, cela génère une quantité innombrable de messages à la seconde dans le journal Log (voir ci-dessous).

Merci.

Exemple :
Avec le paramètre Log_line_prefix désactivé
WARNING:  there is no transaction in progress
WARNING:  there is no transaction in progress
WARNING:  there is no transaction in progress
WARNING:  there is no transaction in progress
WARNING:  there is no transaction in progress
WARNING:  there is no transaction in progress

Hors ligne

#2 03/01/2012 12:58:07

rjuju
Administrateur

Re : Log d’événements : message systématique 'WARNING: there is no tran...

Bonjour.

Ce type de message n'est pas normal, et il s'agit probablement d'un problème sur le client. Ce message est par exemple renvoyé si une instruction COMMIT est envoyé au serveur alors qu'il n'y a pas eu de BEGIN au préalable. Il faudrait donc voir si c'est bien la cause de ces messages et si c'est le cas corriger le client.

Hors ligne

#3 03/01/2012 12:58:31

gleu
Administrateur

Re : Log d’événements : message systématique 'WARNING: there is no tran...

C'est un événement important. Cela veut dire qu'il y a un client de la base de données qui fait des COMMIT sans avoir fait de BEGIN. Autrement dit, s'il essayait de faire un ROLLBACK, cela ne fonctionnerait pas non plus et les données modifiées resteraient modifiées. Je trouve que c'est un problème important.

Maintenant, si vous voulez le désactiver, vous devez désactiver tous les messages de niveau WARNING dans les traces. Pour cela, il vous faut configurer log_min_messages à error au minimum. Mais, encore une fois, plutôt que de cacher l'erreur, il serait mieux de la corriger (si c'est possible).


Guillaume.

Hors ligne

#4 03/01/2012 13:08:29

flo
Membre

Re : Log d’événements : message systématique 'WARNING: there is no tran...

Cela signifie qu'il a été fait un COMMIT ou un ROLLBACK inutile.
Cela dépend donc de l'application (il faudrait voir comment l'application gère les transactions).

Le log_line_prefix gère juste le préfixe, c'est plutôt du côté de log_min_messages que vous devriez regarder si vous voulez ne pas voir les warnings.
http://docs.postgresqlfr.org/9.1/runtim … gging.html

Hors ligne

#5 03/01/2012 13:08:59

cbeau
Membre

Re : Log d’événements : message systématique 'WARNING: there is no tran...

Merci.

Mais quelle est la valeur minimal de log_min_messages (DEBUG1, LOG, NOTICE, ...) ?

Sachant que j'ai paramétré <log_statement=mod> afin de ne recueillir que les modifications effectuées dans la base et sans les SELECT.

Hors ligne

#6 03/01/2012 14:49:50

gleu
Administrateur

Re : Log d’événements : message systématique 'WARNING: there is no tran...

La valeur minimale est DEBUG5 mais je ne vois pas bien le lien avec votre problème.


Guillaume.

Hors ligne

#7 03/01/2012 15:00:26

cbeau
Membre

Re : Log d’événements : message systématique 'WARNING: there is no tran...

Merci.

J'ai essayé avec LOG, ça fonctionne en attendant que l'éditeur de l'application client/serveur (GéoConcept) que nous utilisons, corrige ce problème.

Encore merci.

Hors ligne

#8 03/01/2012 15:50:30

gleu
Administrateur

Re : Log d’événements : message systématique 'WARNING: there is no tran...

Si vous mettez le niveau LOG, vous ne verrez aucune erreur. Ce qui est, à mon avis, une terrible erreur de votre part. Le moindre problème que PostgreSQL détectera ne sera pas enregistré dans les traces. Pourquoi ne mettez-vous pas error comme je vous indiquais ci-dessus ?


Guillaume.

Hors ligne

#9 03/01/2012 16:02:08

cbeau
Membre

Re : Log d’événements : message systématique 'WARNING: there is no tran...

Oui effectivement, je vais mettre ERROR.

Encore merci.

Hors ligne

Pied de page des forums