by giacaglia on 10/2/21, 5:12 PM with 14 comments
by gshulegaard on 10/3/21, 6:13 AM
by lixtra on 10/3/21, 7:06 AM
What is about the other end? Why does vacuum need to be a long running transaction and cannot be cut into shorter transactions ?
by xeromal on 10/3/21, 12:33 AM
by seg_lol on 10/3/21, 6:05 AM
That this would have been an awesome opportunity for gitlab to show how OSS they are and fund a PostgreSQL developer to allow gitlab to design these boundary pushing designs.
by juliangamble on 10/3/21, 2:08 AM
This was the key takeaway for me.
SubtransControlLock indicates that the query is waiting for PostgreSQL to load subtransaction data from disk into shared memory.
I felt the article fell down for two reasons:
(1) It didn't really articulate the need for transactions in the first place (database integrity). Nor did it discuss the implications on integrity with this change.(2) It didn't articulate the possibilities of other architectures (pushing to a read cache other than PostgresSQL like Cassandra).
I got the feeling they were really pushing PostgresSQL to its limits in their cluster with their load - and it was time to consider another design.