AI-assisted — how our quizzes are made
Advanced PostgreSQL behavior that affects application correctness: NULL semantics, constraints, data types, CTEs, UPSERTs, RETURNING, timestamps, and query patterns.
20 questionsIndex selection and design, composite and covering indexes, partial and expression indexes, EXPLAIN, planner behavior, pagination, and diagnosing slow application queries.
25 questionsMVCC, isolation levels, row locking, SELECT FOR UPDATE, optimistic concurrency, deadlocks, serialization failures, work queues, and race-condition-safe backend patterns.
25 questionsConstraints, keys, normalization trade-offs, JSONB vs relational modeling, arrays, generated values, foreign keys, uniqueness, and designing schemas that remain safe under concurrency.
25 questionsBackend-relevant operations: safe schema migrations, transaction boundaries, connection pools, long transactions, VACUUM implications, replicas, timeouts, and production failure modes. DBA-only administration is intentionally excluded.
25 questionsBackend-relevant PostgreSQL infrastructure: physical replication, read replicas, replication lag and consistency, failover implications, connection and read scaling, partitioning and hotspots, plus logical replication and CDC with WAL, publications, replication slots, WAL retention, replica identity, and Debezium failure modes.
25 questionsWhy is partitioning not the same as sharding?
PostgreSQL declarative partitions are normally parts of one logical database/server topology, while sharding distributes data across independent nodes
Partitioning cannot split data at all
Sharding uses only one table
They are exact synonyms in PostgreSQL
Why should a backend often cancel the database context/query when the incoming request is cancelled?
To stop unnecessary database work and release resources sooner
To disable WAL generation
To rebuild the connection pool
To guarantee the transaction commits