logoalt Hacker News

SigmundAyesterday at 10:52 AM2 repliesview on HN

Postgresql uses a process per connection model and it has no way to serialize a query plan to some form that can be shared between processes, so the time it takes to make the plan including JIT is very important.

Most other DB's cache query plans including jitted code so they are basically precompiled from one request to the next with the same statement.


Replies

zaphirplaneyesterday at 11:25 AM

What do you mean ? Cause the obvious thing is a shared cache and if there is one thing the writers of a db know it is locking

show 1 reply
hans_castorpyesterday at 11:37 AM

> and it has no way to serialize a query plan to some form that can be shared between processes

https://www.postgresql.org/docs/current/parallel-query.html

"PostgreSQL can devise query plans that can leverage multiple CPUs in order to answer queries faster."

show 1 reply