Příručka:$wgDebugDBTransactions
Appearance
Tato funkce byla ve verzi 1.27.0 zcela odstraněna. |
| Nastavení databáze: $wgDebugDBTransactions | |
|---|---|
| Povolit další trasování životního cyklu transakcí databáze ve výstupu ladění. |
|
| Zavedeno od verze: | 1.20.0 (r113487)(Gerrit change 3700; git #cfb8e9a2) |
| Odstraněno od verze: | 1.27.0 (Gerrit change 243526; git #a88df43d) |
| Povolené hodnoty: | (boolean) |
| Výchozí hodnota: | false |
| Další nastavení: Podle abecedy | Podle funkce | |
Podrobnosti
Toto nastavení povoluje další trasování životního cyklu transakcí databáze ve výstupu ladění:
Transaction state changed from IDLE -> TRANS
Kdykoli se změní stav transakce
- IDLE
- není otevřena žádná databázová transakce
- TRANS
- transakce byla otevřena
- ERROR
- transakce je v chybovém stavu
Příklad výstupu:
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
Tato funkce je užitečná v situacích odstraňování problémů, kdy se některé operace zdají být ignorovány (phab:T37572), nebo kdykoli je vrácena chybová zpráva 25P02: ERROR: Aktuální transakce je přerušena, příkazy jsou ignorovány až do konce bloku transakce. (phab:T39172), nebo kde je nutné pochopit průběh transakce v případě selhání odložené kontroly referencí (phab:T60189).
Komplexní protokolování transakcí může pomoci přesně určit situace, kdy funkce, jako je lokalizační mezipaměť nebo odložené aktualizace, mohou narušit očekávaný stav transakce během hlavního zpracování.