Skip to content

Commit

Permalink
chore: update readme for jeltef's talk
Browse files Browse the repository at this point in the history
  • Loading branch information
sunng87 committed Jul 3, 2024
1 parent d7443f6 commit 18a6adb
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,14 +68,17 @@ with its usage.
## About Postgres Wire Protocol

Postgres Wire Protocol is a relatively general-purpose Layer-7 protocol. There
are 3 parts of the protocol:
are 6 parts of the protocol:

- Startup: client-server handshake and authentication.
- Simple Query: The text-based query protocol of postgresql. Query are provided
as string, and server is allowed to stream data in response.
- Extended Query: A new sub-protocol for query which has ability to cache the
query on server-side and reuse it with new parameters. The response part is
identical to Simple Query.
- Copy: the subprotocol to copy data from and to postgresql.
- Replication
- Logical Replication

Also note that Postgres Wire Protocol has no semantics about SQL, so literally
you can use any query language, data formats or even natural language to
Expand All @@ -84,6 +87,9 @@ interact with the backend.
The response are always encoded as data row format. And there is a field
description as header of the data to describe its name, type and format.

[Jelte Fennema-Nio](https://github.com/JelteF)'s on talk on PgConf.dev 2024 has
a great coverage of how the wire protocol works:
https://www.youtube.com/watch?v=nh62VgNj6hY

## Usage

Expand Down

0 comments on commit 18a6adb

Please sign in to comment.