Some questions about PostgreSQL’s design.

From: 陈宗志 <baotiao(at)gmail(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Some questions about PostgreSQL’s design.
Date: 2024-08-20 08:46:37
Message-ID: CAGbZs7hbJeUe7xY4QD25QW6VSnNFk1e3cwbCa8_R+2+YnoYRKw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I’ve recently started exploring PostgreSQL implementation. I used to
be a MySQL InnoDB developer, and I find the PostgreSQL community feels
a bit strange.

There are some areas where they’ve done really well, but there are
also some obvious issues that haven’t been improved.

For example, the B-link tree implementation in PostgreSQL is
particularly elegant, and the code is very clean.
But there are some clear areas that could be improved but haven’t been
addressed, like the double memory problem where the buffer pool and
page cache store the same page, using full-page writes to deal with
torn page writes instead of something like InnoDB’s double write
buffer.

It seems like these issues have clear solutions, such as using
DirectIO like InnoDB instead of buffered IO, or using a double write
buffer instead of relying on the full-page write approach.
Can anyone replay why?

However, the PostgreSQL community’s mailing list is truly a treasure
trove, where you can find really interesting discussions. For
instance, this discussion on whether lock coupling is needed for
B-link trees, etc.
https://www.postgresql.org/message-id/flat/CALJbhHPiudj4usf6JF7wuCB81fB7SbNAeyG616k%2Bm9G0vffrYw%40mail.gmail.com

--
---
Blog: https://baotiao.github.io/
Twitter: https://twitter.com/baotiao
Git: https://github.com/baotiao

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2024-08-20 08:47:57 Re: define PG_REPLSLOT_DIR
Previous Message Amit Kapila 2024-08-20 08:42:25 Re: Adding clarification to description of IPC wait events XactGroupUpdate and ProcArrayGroupUpdate