Orders Stuck in Confirming

Incident Report for Grayza Health

Postmortem

Root Cause

The issue was caused by database locking during queue processing, where concurrent jobs attempted to update order lines individually. This resulted in record contention and orders becoming stuck in a confirming state.

The deployment the next evening evening included changes to optimise these updates and prevent recurrence.

Resolution

  • Locked database processes were cleared.
  • Queue processing was restored.
  • A code update was deployed to prevent row-by-row update locking.

Unexpected Consequences

  • Affected orders were transitioned to approved status instead of expired.

Preventative Actions

  • Refactored order line updates to execute as a single database query instead of individual updates.
  • Reduced database lock contention risk.
  • Improved internal monitoring of queue processing and database locks.
  • Review of incident communication process to ensure operational impacts (e.g. payment clearing behaviour) are clearly communicated in future.
  • Current development effort includes re-writing parts of the core order flow with a focus on reliability and fault tolerance.
  • Current development effort includes adding better visibility, recovery and proactive notification options for venues.

Current Status

The issue has been resolved and we are confident the fix prevents recurrence of this specific locking condition.

We apologise for the inconvenience caused and are committed to improving both system stability and communication during incidents.

Posted Feb 26, 2026 - 08:55 AEST

Resolved

On 17 February 2026 at approximately 2:00 PM (AEST), we experienced a queue processing issue that caused a small number of orders to become stuck in a “confirming” state.

The issue was identified and rectified shortly after detection, allowing new incoming orders to process and confirm normally.

However, the orders created during the impacted window remained stuck in the confirming state. During a scheduled system update at approximately 11:00 PM on the 18 February, these stuck orders were transitioned to an approved status. This status change subsequently triggered the associated POS actions for printing tickets and capturing payment for the orders.
Posted Feb 17, 2026 - 14:00 AEST