Jump to content

Manual:$wgDebugDBTransactions

From mediawiki.org
This page is a translated version of the page Manual:$wgDebugDBTransactions and the translation is 79% complete.
データベースの設定: $wgDebugDBTransactions
デバッグ出力で追加のデータベース トランザクション ライフサイクル追跡を有効にする。
導入されたバージョン:1.20.0 (r113487)(Gerrit change 3700; git #cfb8e9a2)
除去されたバージョン:1.27.0 (Gerrit change 243526; git #a88df43d)
許容される値:(真偽値)
既定値:false

詳細

この設定は、デバッグ出力で追加のデータベース トランザクション ライフサイクル追跡を有効にします:

Transaction state changed from IDLE -> TRANS

Whenever transaction status is changed

IDLE
開かれたデータベース トランザクションがない
TRANS
トランザクションが開かれた
ERROR
トランザクションがエラー状態にある

出力例:

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

This feature is useful in troubleshooting situations where some operations seem to be ignored (phab:T37572) or whenever 25P02: ERROR: current transaction is aborted, commands ignored until end of transaction block error message is returned (phab:T39172) or where it is necessary to understand what was the transaction progress in case of deferred reference check failure (phab:T60189).

An end-to-end transaction logging may help to pinpoint situations where features like localization cache or deferred updates might interfere with the expected state of the transaction during mainline processing.

関連項目