Commit 312eacb
feat: improve transaction safety in CompleteJob function (coder#17970)
This PR refactors the CompleteJob function to use database transactions
more consistently for better atomicity guarantees. The large function
was broken down into three specialized handlers:
- completeTemplateImportJob
- completeWorkspaceBuildJob
- completeTemplateDryRunJob
Each handler now uses the Database.InTx wrapper to ensure all database
operations for a job completion are performed within a single
transaction, preventing partial updates in case of failures.
Added comprehensive tests for transaction behavior for each job type.
Fixes coder#17694
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-authored-by: Claude <noreply@anthropic.com>1 parent 1727e42 commit 312eacb
File tree
2 files changed
+569
-292
lines changed- coderd/provisionerdserver
2 files changed
+569
-292
lines changed
0 commit comments