Firebird-transacties in detail
Firebird-transacties in detail gaat over multi-versioning: isolatie, markers, commit en rollback, garbage collection, sweep, en hoe u transactieproblemen in applicaties kunt diagnosticeren.
Syllabus
- Hoe recordversies worden gemaakt
- Transactiestatussen: actief, gecommit, teruggedraaid, limbo
- Zichtbaarheid van versies; Read Committed versus Snapshot
- Triggers bij transactiestart/-stop; transactieniveau-contextvariabelen
- Wat gebeurt er bij transactiestart; globale markers OAT, OST, OIT
- Commit; standaard rollback met cache-flush versus geforceerde rollback zonder flush
- Rollback met en zonder undo-log; behoudende transacties
- Tijdelijke BLOBs; undo-log; auto-commit
- Geheugen voor transacties; lokale TIP en gerelateerde problemen
- Hoe transacties interageren; conflicten; sjablonen voor applicaties
- Scenario's: lezers/lezers, lezers/schrijvers, schrijvers/schrijvers; best practices
- Garbage collection versus sweep; voor- en nadelen van autosweep
- Applicatiefouten die overmatige garbage veroorzaken
- Problemen diagnosticeren: OIT/OST/OAT/NEXT-combinaties; wanneer GC niet draait
- Hoeveel garbage; lange transacties vinden met MON$
- Monitoring met MON$ en Trace API
- Workarounds voor legacy-applicaties met gebroken transactieafhandeling