Skip to content

Scale Lab — Interview problem: concert ticketing Advanced

Estimated reading time: 1 min read

Ticketing differs from every earlier problem: the database is not CPU-bound, yet it still chokes. Every purchase decrements the same seats_left row, and a row lets only one transaction hold its lock at a time.

  • Click the Database to choose how to decrement inventory and how to split it. The Database box shows an extra “hot row” line: row lock utilization.
  • Lock hold times are round assumptions (500 / 20 / 2 ms) meant to show the trend; measure on real hardware.

A real measured demo of 5 ways to write it, with 50 requests competing for 10 products, is in Writing transactions in code.