Manual:$wgDebugDBTransactions
この機能は、バージョン 1.27.0 で完全に除去されました。 |
データベースの設定: $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.