Transactions and Save Boundaries
Audience
Developers, QA and support engineers, data reviewers, implementation partners, solution architects, privacy reviewers and security reviewers.
Reference Content
Summary
Transactions are context-local. The most important partial-failure window is extracted onboarding completion, where Employee Service commits before Recruitment commits.
Completion sequence
Compatibility saves
Exit creation/decision operations save request state and audit locally. Access revocation updates user, workforce, exit and audit state in one compatibility-context save. Approval notification follows the save and may fail independently.
Consumer saves
Payroll, Leave and other consumers write projections in their own contexts. Where a processed-event ledger exists, it is intended to protect the local consumer boundary; exact atomicity must be verified per handler.
Failure handling
Source shows exceptions and idempotency checks but no lifecycle-wide saga state, compensation record or automatic reconciliation job.
Requires confirmation
Unless explicitly confirmed above, production migration governance, rollback, reconciliation, retention, privacy, performance, concurrency and operational ownership require confirmation.
Source References
microservices/src/recruitment-service/Application/Commands/OnboardingCommands.csControllers/HrOperationsController.cs
Related Articles
See Also
Keywords
- Onboarding database
- Offboarding database
- Lifecycle persistence
Revision Information
- Status: Draft
- Last reviewed: 2026-07-20
- Review cycle: Quarterly