Manuel:$wgDebugDBTransactions

This page is a translated version of the page Manual:$wgDebugDBTransactions and the translation is 100% complete.
Paramètres de la base de données: $wgDebugDBTransactions
Permet d'avoir des traces supplémentaires concernant le cycle de vie des transactions de la base de données dans la sortie du debogage.
Introduit dans la version :1.20.0 (r113487)(Gerrit change 3700; git #cfb8e9a2)
Retiré dans la version :1.27.0 (Gerrit change 243526; git #a88df43d)
Valeurs autorisées :(booléen)
Valeur par défaut :false

Détails

Permet d'avoir des traces supplémentaires concernant le cycle de vie des transactions de la base de données dans la sortie du debogage.

Transaction state changed from IDLE -> TRANS

A chaque fois que l'état d'une transaction est modifié

IDLE
aucune transaction n'est ouverte avec la base de données
TRANS
une transaction a été ouverte
ERROR
une transaction est en erreur

Exemple de sortie :

Query trunk (15) (slave): BEGIN
Transaction state changed from IDLE -> TRANS
Query trunk (16) (slave): SELECT /* DatabasePostgres::schemaExists  */  1  
            FROM "pg_catalog"."pg_namespace"  WHERE nspname = 'mediawiki'  LIMIT 1  
Query trunk (17) (slave): SELECT /* DatabasePostgres::getSchemas  */ current_schemas(false)
Schema "mediawiki" already in the search path
Query trunk (18) (slave): COMMIT
Transaction state changed from TRANS -> IDLE

Cette fonctionnalité est utile pour dépanner les situations où certaines opérations semblent être ignorées (phab:T37572) ou chaque fois que le message d'erreur 25P02 : ERROR : current transaction is aborted, commands ignored until end of transaction block est renvoyé (phab:T39172) ou lorsqu'il est nécessaire de comprendre quelle était la progression de la transaction en cas d'échec du contrôle de référence différé (phab:T60189).

Un journal de la totalité des opérations peut aider à identifier des situations où des fonctionnalités comme la cache de localisation ou des mises à jour différenciées peuvent interférer avec l'état attendu de la transaction pendant le traitement de la ligne principale.

Voir aussi