Deceptive query plans (eg. due to very specific write shapes), lack of QoS classes (to priorize OLTP requests over OLAP ones without spawning a read replica), manual partitioning that is way too manual, lack of backpressure during replication (WAL accumulate and Postgres continues accepting writes) and lack of first-class leader-election mechanism (eg. something like what sorintlab/stolon does) are my top 5 issues with PostgreSQL. Glad to see that one of my 5 pain point (that I call "QoS classes") is shared and addressed, I'm sure on-call engineers will thank you, this work addresses real operating issues.
We know about Resource Governor and wanted to bring something as good or better to Postgres. SQL Server classifies whole sessions into a budget. Traffic Control classifies individual queries instead. That's better granularity, especially when a pooler multiplexes multiple different workloads into a session. It also opens up more flexible classification, e.g., based on query plan or based on sqlcommenter tags carrying information about client apps, job queues, priority levels, or release versions.
4 comments
[ 3.5 ms ] story [ 20.5 ms ] threadhttps://learn.microsoft.com/en-us/sql/relational-databases/r...