// Lock all rows with FOR UPDATE
User.findAll({ lock: 'UPDATE' })
// Lock with transaction-level FOR UPDATE
User.findAll({ lock: true, transaction: t })
// Lock only the User table (PostgreSQL)
User.findAll({ lock: { of: User } })
// NOWAIT - return error if lock not available (PostgreSQL/MySQL 8.0+)
User.findAll({ lock: { level: 'UPDATE', nowait: true } })
// SKIP LOCKED - skip locked rows (PostgreSQL/MySQL 8.0+)
User.findAll({ lock: { level: 'UPDATE', skipLocked: true } })
// Modifiers on their own imply FOR UPDATE
User.findAll({ lock: { skipLocked: true } })
Lock options for row-level locking