为什么 PostgreSQL 中有 2 个 libpq 文件夹

Why are there 2 libpq folders in PostgreSQL

PostgreSQL 源代码中有 2 个 libpq 文件夹:

它们有什么区别?

据我所知,只有 interfaces 文件夹中的那个被编译和引用了。

一个用于后端(用于服务器接收连接 -- src/backend/libpq),一个用于前端(用于客户端与服务器建立连接 -- src/interfaces/libpq

披露:我为 EnterpriseDB (EDB)

工作

src/interfaces/libpq 包含 libpq 客户端共享库的代码。

src/backend/libpq 包含 frontend/backend protocol.

的服务器端实现