Database problems explained from real production failures
2 posts. All topics
A database is shared by every request your system handles, so one bad query or one long lock can slow down everything else. These failures are often hard to see, because the database itself keeps running.
The posts below start from a symptom, such as a page that gets slower as data grows or a migration that blocks writes. They show how to confirm the cause, what the fixes are, and what each fix can break.
The examples use common relational databases, and each post says where the behaviour differs between products.
Posts on Databases
-
10 min read
HikariPool-1 Connection is not available: pool exhausted
Why a Java app hangs with Connection is not available errors under load, how leaked or hoarded connections cause it, and how to find and fix it.
-
15 min read
N+1 query problem in Hibernate and JPA: find it and fix it
Why a Hibernate or JPA page that is fast in development takes 10 seconds in production, how lazy loading hides hundreds of queries, and how to fix it.