MySQLIntermediateError 1205 on a simple UPDATE, from code that doesn't even use transactions. Find the blocking session, spot the missing index that's locking too much and stop it coming back.
#locking#transactions#troubleshooting
SQLiteIntermediateWhy Python raises "database is locked", how timeout, isolation_level and autocommit interact, and the working pattern for threads, worker processes, SQLAlchemy, Django and aiosqlite.
#concurrency#locking#orm
SQLiteIntermediateAn ordered procedure for SQLITE_BUSY with a verification for each step, a script that reproduces the contention, and the matching settings for Python, Node and Go drivers.
#concurrency#locking#troubleshooting
SQLiteIntermediateWhat SQLITE_BUSY means, where it is returned in rollback-journal and WAL mode, why a timeout sometimes does nothing, the extended codes, and how to find who holds the lock.
#concurrency#internals#locking
SQL ServerIntermediateNOLOCK doesn't just risk dirty reads. It can skip rows, count rows twice and fail with error 601. Read Committed Snapshot Isolation removes the blocking without the wrong answers.
#concurrency#locking#transactions
PostgreSQLAdvancedA one-line migration can freeze every query on a table. lock_timeout, CREATE INDEX CONCURRENTLY, NOT VALID constraints and expand-and-contract keep schema changes online.
#indexing#locking#migrations
SQLiteBeginnerStill getting SQLITE_BUSY with a timeout set? The default timeout is zero and deferred transactions can't wait. WAL mode, busy_timeout and BEGIN IMMEDIATE fix most cases.
#concurrency#locking#troubleshooting
SQL ServerAdvancedError 1205 again? Pull the deadlock graph from the system_health session, read it like a DBA and fix the access pattern that causes it.
#concurrency#locking#troubleshooting
SQL ServerIntermediateWhat each isolation level protects you from, what it costs, and why so many teams switch on READ_COMMITTED_SNAPSHOT.
#concurrency#locking#transactions