| This feature was removed completely in version 1.27.0. |
| Database settings: $wgDebugDBTransactions | |
|---|---|
| Enable additional database transaction lifecycle tracing in the debug output. |
|
| Introduced in version: | 1.20.0 (r113487)(Gerrit change 3700; git #cfb8e9a2) |
| Removed in version: | 1.27.0 (Gerrit change 243526; git #a88df43d) |
| Allowed values: | (boolean) |
| Default value: | false |
| Other settings: Alphabetical | By function | |
Details
This setting enables additional database transaction lifecycle tracing in the debug output:
Transaction state changed from IDLE -> TRANS
Whenever transaction status is changed
- IDLE
- no database transaction is open
- TRANS
- a transaction has been open
- ERROR
- a transaction is in an error state
Example output:
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.
See also
- Database transactions
This article is issued from Mediawiki. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.