diff --git a/doc/src/sgml/arch-dev.sgml b/doc/src/sgml/arch-dev.sgml
index e56a13283fa..7aff059e824 100644
--- a/doc/src/sgml/arch-dev.sgml
+++ b/doc/src/sgml/arch-dev.sgml
@@ -27,7 +27,7 @@
The Path of a Query
- Here we give a short overview of the stages a query has to pass
+ Here we give a short overview of the stages a query has to pass
to obtain a result.
@@ -114,21 +114,25 @@
How Connections Are Established
- PostgreSQL is implemented using a
- simple process per user
client/server model. In this model
- there is one client process connected to
- exactly one server process. As we do not
- know ahead of time how many connections will be made, we have to
- use a supervisor process (also
- master process) that spawns a new
- server process every time a connection is requested. This supervisor
- process is called postmaster and listens at a
- specified TCP/IP port for incoming connections. Whenever a request
- for a connection is detected the postmaster
- process spawns a new server process. The server processes
- communicate with each other using semaphores and
- shared memory to ensure data integrity
- throughout concurrent data access.
+ PostgreSQL implements a
+ process per user
client/server model.
+ In this model, every
+ client process
+ connects to exactly one
+ backend process.
+ As we do not know ahead of time how many connections will be made,
+ we have to use a supervisor process
that spawns a new
+ backend process every time a connection is requested. This supervisor
+ process is called
+ postmaster
+ and listens at a specified TCP/IP port for incoming connections.
+ Whenever it detects a request for a connection, it spawns a new
+ backend process. Those backend processes communicate with each
+ other and with other processes of the
+ instance
+ using semaphores and
+ shared memory
+ to ensure data integrity throughout concurrent data access.
@@ -141,11 +145,11 @@
- Once a connection is established the client process can send a query
- to the backend (server). The query is transmitted using plain text,
- i.e., there is no parsing done in the frontend (client). The
- server parses the query, creates an execution plan,
- executes the plan and returns the retrieved rows to the client
+ Once a connection is established, the client process can send a query
+ to the backend process it's connected to. The query is transmitted using
+ plain text, i.e., there is no parsing done in the client. The backend
+ process parses the query, creates an execution plan,
+ executes the plan, and returns the retrieved rows to the client
by transmitting them over the established connection.