Skip to main content

Attendance Event Publishing Flow

Summary

Attendance event publication is decoupled from request processing through a transactional outbox.

Audience

  • Backend developers, integration engineers, QA engineers, and architects

Confirmed sequence

Mapping runs before EF’s base save, so tracked business and outbox rows share the same local transaction. The relay resolves the shared processor periodically, selects a bounded batch, and publishes in occurrence order from the store.

Successful broker publication leads to a processed outbox state; failure records retry state and leaves the row eligible. Consumer commits are separate and cannot roll back Attendance. Some Attendance workflows use more than one save for identifier allocation, so only each individual save is atomic.

Source References

  • microservices/src/attendance-service/Infrastructure/AttendanceDbContext.cs
  • microservices/src/attendance-service/Infrastructure/Persistence.cs
  • microservices/src/attendance-service/Infrastructure/OutboxRelayHostedService.cs
  • microservices/src/shared-kernel/Messaging/OutboxProcessor.cs

See Also

Keywords

  • Attendance events
  • Integration contracts
  • Eventual consistency

Revision Information

  • Status: Draft
  • Last reviewed: 2026-07-15
  • Review cycle: Quarterly