author | Bruce Momjian | |
Tue, 4 Sep 2012 16:38:33 +0000 (12:38 -0400) | ||
committer | Bruce Momjian | |
Tue, 4 Sep 2012 16:38:33 +0000 (12:38 -0400) |
src/tools/backend/README | [deleted file] | patch | blob | blame | history |
src/tools/backend/backend_dirs.html | [deleted file] | patch | blob | blame | history |
src/tools/backend/flow.fig | [deleted file] | patch | blob | blame | history |
src/tools/backend/flow.gif | [deleted file] | patch | blob | blame | history |
src/tools/backend/index.html | [deleted file] | patch | blob | blame | history |
Click on any of the section headings to see the source code
Because PostgreSQL requires access to system tables for almost
This checks the process name(argv[0]) and various flags, and
This creates shared memory, and then goes into a loop waiting
This handles communication to the client processes.
This contains the postgres backend main handler, as well
This converts SQL queries coming from libpq into
This uses the parser output to generate an optimal plan for the
This takes the parser query output, and generates all possible
optimizer/path evaluates all possible ways to join the
This takes the optimizer/path output, chooses the path
This does special plan processing.
This contains support routines used by other parts of the
This handles select, insert, update, and delete
These process SQL commands that do not require complex handling.
This contains functions that manipulate the system tables or
These allow uniform resource access by the backend.
These control the way data is accessed in heap, indexes, and
PostgreSQL stores information about SQL queries in structures
This contains all the PostgreSQL builtin data types.
PostgreSQL supports arbitrary data types, so no data types are
Reports backend errors to the front end.
This handles the calling of dynamically-loaded functions, and
These hash routines are used by the cache and memory-manager
When PostgreSQL allocates memory, it does so in an explicit
When statement output must be sorted as part of a backend
These routines do checking of tuple internal columns to
There are include directories for each subsystem.
This houses several generic routines.
This is used for regular expression handling in the backend,
A query comes to the backend via data packets arriving through
The statement is then identified as complex (SELECT / INSERT /
The parser takes a complex query, and creates a
Certain queries, like SELECT, return columns of data. Other query elements, like aggregates(SUM()), GROUP The next step is for the Query to be modified by any The optimizer takes the The Plan is then passed to the
There are many other modules that support this basic Another area of interest is the shared memory area, which Each data structure is created by calling