Documentation
2. A Brief History of PostgreSQL
PREPARE TRANSACTION - prepare the current transaction for two-phase commit
https://www.highgo.ca/2020/01/28/understanding-prepared-transactions-and-handling-the-orphans
13.2.1. Read Committed Isolation Level
13.2.2. Repeatable Read Isolation Level
13.2.3. Serializable Isolation Level
https://www.postgresql.org/docs/current/explicit-locking.html
All Postgres Locks Explained | A Deep Dive - YouTube
13.4. Data Consistency Checks at the Application Level
13.4.1. Enforcing Consistency with Serializable Transactions
13.4.2. Enforcing Consistency with Explicit Blocking Locks
16. Installation from Source Code
17. Installation from Source Code onWindows
18. Server Setup and Operation
24. Routine Database Maintenance Tasks
27. Monitoring Database Activity
29. Reliability and the Write-Ahead Log
31. Just-in-Time Compilation (JIT)
38. Triggers
A trigger is a specification that the database should automatically execute a particular function whenever a certain type of operation is performed. Triggers can be defined to execute either before or after any INSERT, UPDATE, or DELETE operation, either once per modified row, or once per SQL statement. If a trigger event occurs, the trigger's function is called at the appropriate time to handle the event.
PostgreSQL offers both per-row triggers and per-statement triggers. With a per-row trigger, the trigger function is invoked once for each row that is affected by the statement that fired the trigger. In contrast, a per-statement trigger is invoked only once when an appropriate statement is executed, regardless of the number of rows affected by that statement. In particular, a statement that affects zero rows will still result in the execution of any applicable per-statement triggers. These two types of triggers are sometimes called row-level triggers and statement-level triggers, respectively.
42.PL/pgSQL-SQLProcedural Language
43. PL/Tcl - Tcl Procedural Language
44. PL/Perl - Perl Procedural Language
45. PL/Python - Python Procedural Language
46. Server Programming Interface
47. Background Worker Processes
II. PostgreSQL Client Applications
III. PostgreSQL Server Applications
50. Overview of PostgreSQL Internals
53. PostgreSQL Coding Conventions
55. Writing a Procedural Language Handler
56. Writing a Foreign Data Wrapper
57. Writing a Table Sampling Method
58. Writing a Custom Scan Provider
60. Table Access Method Interface Definition
61. Index Access Method Interface Definition
69. System Catalog Declarations and Initial Contents
70. How the Planner Uses Statistics
F. Additional Supplied Modules