Skip to main content
Ctrl+K

Tantor Special Edition 16.10 documentation

Table of contents:

  • Preface
    • 1.  What Is Tantor SE?
    • 2. A Brief History of PostgreSQL
    • 3. What are the differences between Tantor SE 16 and PostgreSQL 16
    • 4. Conventions
    • 5. Bug Reporting Guidelines
  • Part I. Tutorial
    • Chapter 1. Synopsis
      • 1.1. Synopsis
      • 1.2. Architectural Fundamentals
      • 1.3. Creating a Database
      • 1.4. Accessing a Database
    • Chapter 2. The SQL Language
      • 2.1. Introduction
      • 2.2. Concepts
      • 2.3. Creating a New Table
      • 2.4. Populating a Table With Rows
      • 2.5. Querying a Table
      • 2.6. Joins Between Tables
      • 2.7. Aggregate Functions
      • 2.8. Updates
      • 2.9. Deletions
    • Chapter 3. Advanced Features
      • 3.1. Introduction
      • 3.2. Views
      • 3.3. Foreign Keys
      • 3.4. Transactions
      • 3.5. Window Functions
      • 3.6. Inheritance
      • 3.7. Conclusion
  • Part II. The SQL Language
    • Chapter 4. SQL Syntax
      • 4.1. Lexical Structure
      • 4.2. Value Expressions
      • 4.3. Calling Functions
    • Chapter 5. Data Definition
      • 5.1. Table Basics
      • 5.2. Default Values
      • 5.3. Generated Columns
      • 5.4. Constraints
      • 5.5. System Columns
      • 5.6. Modifying Tables
      • 5.7. Privileges
      • 5.8. Row Security Policies
      • 5.9. Schemas
      • 5.10. Inheritance
      • 5.11. Table Partitioning
      • 5.12. Foreign Data
      • 5.13. Other Database Objects
      • 5.14. Dependency Tracking
    • Chapter 6. Data Manipulation
      • 6.1. Inserting Data
      • 6.2. Updating Data
      • 6.3. Deleting Data
      • 6.4. Returning Data from Modified Rows
    • Chapter 7. Queries
      • 7.1. Overview
      • 7.2. Table Expressions
      • 7.3. Select Lists
      • 7.4. Combining Queries (UNION, INTERSECT, EXCEPT)
      • 7.5. Sorting Rows (ORDER BY)
      • 7.6. LIMIT and OFFSET
      • 7.7. VALUES Lists
      • 7.8. WITH Queries (Common Table Expressions)
    • Chapter 8. Data Types
      • 8.1. Numeric Types
      • 8.2. Monetary Types
      • 8.3. Character Types
      • 8.4. Binary Data Types
      • 8.5. Date/Time Types
      • 8.6. Boolean Type
      • 8.7. Enumerated Types
      • 8.8. Geometric Types
      • 8.9. Network Address Types
      • 8.10. Bit String Types
      • 8.11. Text Search Types
      • 8.12. UUID Type
      • 8.13. XML Type
      • 8.14. JSON Types
      • 8.15. Arrays
      • 8.16. Composite Types
      • 8.17. Range Types
      • 8.18. Domain Types
      • 8.19. Object Identifier Types
      • 8.20. pg_lsn Type
      • 8.21. Pseudo-Types
    • Chapter 9. Functions and Operators
      • 9.1. Logical Operators
      • 9.2. Comparison Functions and Operators
      • 9.3. Mathematical Functions and Operators
      • 9.4. String Functions and Operators
      • 9.5. Binary String Functions and Operators
      • 9.6. Bit String Functions and Operators
      • 9.7. Pattern Matching
      • 9.8. Data Type Formatting Functions
      • 9.9. Date/Time Functions and Operators
      • 9.10. Enum Support Functions
      • 9.11. Geometric Functions and Operators
      • 9.12. Network Address Functions and Operators
      • 9.13. Text Search Functions and Operators
      • 9.14. UUID Functions
      • 9.15. XML Functions
      • 9.16. JSON Functions and Operators
      • 9.17. Sequence Manipulation Functions
      • 9.18. Conditional Expressions
      • 9.19. Array Functions and Operators
      • 9.20. Range/Multirange Functions and Operators
      • 9.21. Aggregate Functions
      • 9.22. Window Functions
      • 9.23. Subquery Expressions
      • 9.24. Row and Array Comparisons
      • 9.25. Set Returning Functions
      • 9.26. System Information Functions and Operators
      • 9.27. System Administration Functions
      • 9.28. Trigger Functions
      • 9.29. Event Trigger Functions
      • 9.30. Statistics Information Functions
    • Chapter 10. Type Conversion
      • 10.1. Overview
      • 10.2. Operators
      • 10.3. Functions
      • 10.4. Value Storage
      • 10.5. UNION, CASE, and Related Constructs
      • 10.6. SELECT Output Columns
    • Chapter 11. Indexes
      • 11.1. Introduction
      • 11.2. Index Types
      • 11.3. Multicolumn Indexes
      • 11.4. Indexes and ORDER BY
      • 11.5. Combining Multiple Indexes
      • 11.6. Unique Indexes
      • 11.7. Indexes on Expressions
      • 11.8. Partial Indexes
      • 11.9. Index-Only Scans and Covering Indexes
      • 11.10. Operator Classes and Operator Families
      • 11.11. Indexes and Collations
      • 11.12. Examining Index Usage
    • Chapter 12. Full Text Search
      • 12.1. Introduction
      • 12.2. Tables and Indexes
      • 12.3. Controlling Text Search
      • 12.4. Additional Features
      • 12.5. Parsers
      • 12.6. Dictionaries
      • 12.7. Configuration Example
      • 12.8. Testing and Debugging Text Search
      • 12.9. Preferred Index Types for Text Search
      • 12.10. psql Support
      • 12.11. Limitations
    • Chapter 13. Concurrency Control
      • 13.1. Introduction
      • 13.2. Transaction Isolation
      • 13.3. Explicit Locking
      • 13.4. Data Consistency Checks at the Application Level
      • 13.5. Serialization Failure Handling
      • 13.6. Caveats
      • 13.7. Locking and Indexes
    • Chapter 14. Performance Tips
      • 14.1. Using EXPLAIN
      • 14.2. Statistics Used by the Planner
      • 14.3. Controlling the Planner with Explicit JOIN Clauses
      • 14.4. Populating a Database
      • 14.5. Non-Durable Settings
    • Chapter 15. Parallel Query
      • 15.1. How Parallel Query Works
      • 15.2. When Can Parallel Query Be Used?
      • 15.3. Parallel Plans
      • 15.4. Parallel Safety
    • Chapter 16. Autonomous Transactions
      • 16.1. Overview
      • 16.2. Usage
      • 16.3. Examples
      • 16.4. Implementation
      • 16.5. Usage Notes
      • 16.6. Limitations
  • Part III. Server Administration
    • Chapter 17. Installation from Binaries
      • 17.1. Downloading and Executing the Installer
      • 17.2. Installer Options
    • Chapter 18. Server Setup and Operation
      • 18.1. The Tantor SE User Account
      • 18.2. Creating a Database Cluster
      • 18.3. Starting the Database Server
      • 18.4. Managing Kernel Resources
      • 18.5. Shutting Down the Server
      • 18.6. Upgrading a Tantor SE Cluster
      • 18.7. Preventing Server Spoofing
      • 18.8. Encryption Options
      • 18.9. Secure TCP/IP Connections with SSL
      • 18.10. Secure TCP/IP Connections with GSSAPI Encryption
      • 18.11. Secure TCP/IP Connections with SSH Tunnels
      • 18.12. Registering Event Log on Windows
    • Chapter 19. Server Configuration
      • 19.1. Setting Parameters
      • 19.2. File Locations
      • 19.3. Connections and Authentication
      • 19.4. Resource Consumption
      • 19.5. Write Ahead Log
      • 19.6. Replication
      • 19.7. Query Planning
      • 19.8. Error Reporting and Logging
      • 19.9. Run-time Statistics
      • 19.10. Automatic Vacuuming
      • 19.11. Client Connection Defaults
      • 19.12. Lock Management
      • 19.13. Version and Platform Compatibility
      • 19.14. Error Handling
      • 19.15. Preset Options
      • 19.16. Customized Options
      • 19.17. Developer Options
      • 19.18. Short Options
    • Chapter 20. Client Authentication
      • 20.1. The pg_hba.conf File
      • 20.2. User Name Maps
      • 20.3. Authentication Methods
      • 20.4. Trust Authentication
      • 20.5. Password Authentication
      • 20.6. GSSAPI Authentication
      • 20.7. SSPI Authentication
      • 20.8. Ident Authentication
      • 20.9. Peer Authentication
      • 20.10. LDAP Authentication
      • 20.11. RADIUS Authentication
      • 20.12. Certificate Authentication
      • 20.13. PAM Authentication
      • 20.14. BSD Authentication
      • 20.15. Authentication Problems
    • Chapter 21. Database Roles
      • 21.1. Database Roles
      • 21.2. Role Attributes
      • 21.3. Role Membership
      • 21.4. Dropping Roles
      • 21.5. Predefined Roles
      • 21.6. Function Security
    • Chapter 22. Managing Databases
      • 22.1. Overview
      • 22.2. Creating a Database
      • 22.3. Template Databases
      • 22.4. Database Configuration
      • 22.5. Destroying a Database
      • 22.6. Tablespaces
    • Chapter 23. Localization
      • 23.1. Locale Support
      • 23.2. Collation Support
      • 23.3. Character Set Support
    • Chapter 24. Routine Database Maintenance Tasks
      • 24.1. Routine Vacuuming
      • 24.2. Routine Reindexing
      • 24.3. Log File Maintenance
    • Chapter 25. Backup and Restore
      • 25.1. SQL Dump
      • 25.2. File System Level Backup
      • 25.3. Continuous Archiving and Point-in-Time Recovery (PITR)
    • Chapter 26. High Availability, Load Balancing, and Replication
      • 26.1. Comparison of Different Solutions
      • 26.2. Log-Shipping Standby Servers
      • 26.3. Failover
      • 26.4. Hot Standby
    • Chapter 27. Monitoring Database Activity
      • 27.1. Standard Unix Tools
      • 27.2. The Cumulative Statistics System
      • 27.3. Viewing Locks
      • 27.4. Progress Reporting
      • 27.5. Dynamic Tracing
    • Chapter 28. Monitoring Disk Usage
      • 28.1. Determining Disk Usage
      • 28.2. Disk Full Failure
    • Chapter 29. Reliability and the Write-Ahead Log
      • 29.1. Reliability
      • 29.2. Data Checksums
      • 29.3. Write-Ahead Logging (WAL)
      • 29.4. Asynchronous Commit
      • 29.5. WAL Configuration
      • 29.6. WAL Internals
    • Chapter 30. Logical Replication
      • 30.1. Publication
      • 30.2. Subscription
      • 30.3. Row Filters
      • 30.4. Column Lists
      • 30.5. Conflicts
      • 30.6. Restrictions
      • 30.7. Architecture
      • 30.8. Monitoring
      • 30.9. Security
      • 30.10. Configuration Settings
      • 30.11. Quick Setup
    • Chapter 31. Just-in-Time Compilation (JIT)
      • 31.1. What Is JIT compilation?
      • 31.2. When to JIT?
      • 31.3. Configuration
      • 31.4. Extensibility
  • Part IV. Client Interfaces
    • Chapter 32. libpq — C Library
      • 32.1. Database Connection Control Functions
      • 32.2. Connection Status Functions
      • 32.3. Command Execution Functions
      • 32.4. Asynchronous Command Processing
      • 32.5. Pipeline Mode
      • 32.6. Retrieving Query Results Row-by-Row
      • 32.7. Canceling Queries in Progress
      • 32.8. The Fast-Path Interface
      • 32.9. Asynchronous Notification
      • 32.10. Functions Associated with the COPY Command
      • 32.11. Control Functions
      • 32.12. Miscellaneous Functions
      • 32.13. Notice Processing
      • 32.14. Event System
      • 32.15. Environment Variables
      • 32.16. The Password File
      • 32.17. The Connection Service File
      • 32.18. LDAP Lookup of Connection Parameters
      • 32.19. SSL Support
      • 32.20. Behavior in Threaded Programs
      • 32.21. Building libpq Programs
      • 32.22. Example Programs
    • Chapter 33. Large Objects
      • 33.1. Introduction
      • 33.2. Implementation Features
      • 33.3. Client Interfaces
      • 33.4. Server-Side Functions
      • 33.5. Example Program
    • Chapter 34. ECPG — Embedded SQL in C
      • 34.1. The Concept
      • 34.2. Managing Database Connections
      • 34.3. Running SQL Commands
      • 34.4. Using Host Variables
      • 34.5. Dynamic SQL
      • 34.6. pgtypes Library
      • 34.7. Using Descriptor Areas
      • 34.8. Error Handling
      • 34.9. Preprocessor Directives
      • 34.10. Processing Embedded SQL Programs
      • 34.11. Library Functions
      • 34.12. Large Objects
      • 34.13. C++ Applications
      • 34.14. Embedded SQL Commands
      • 34.15. Informix Compatibility Mode
      • 34.16. Oracle Compatibility Mode
      • 34.17. Internals
    • Chapter 35. The Information Schema
      • 35.1. The Schema
      • 35.2. Data Types
      • 35.3. information_schema_catalog_name
      • 35.4. administrable_role_​authorizations
      • 35.5. applicable_roles
      • 35.6. attributes
      • 35.7. character_sets
      • 35.8. check_constraint_routine_usage
      • 35.9. check_constraints
      • 35.10. collations
      • 35.11. collation_character_set_​applicability
      • 35.12. column_column_usage
      • 35.13. column_domain_usage
      • 35.14. column_options
      • 35.15. column_privileges
      • 35.16. column_udt_usage
      • 35.17. columns
      • 35.18. constraint_column_usage
      • 35.19. constraint_table_usage
      • 35.20. data_type_privileges
      • 35.21. domain_constraints
      • 35.22. domain_udt_usage
      • 35.23. domains
      • 35.24. element_types
      • 35.25. enabled_roles
      • 35.26. foreign_data_wrapper_options
      • 35.27. foreign_data_wrappers
      • 35.28. foreign_server_options
      • 35.29. foreign_servers
      • 35.30. foreign_table_options
      • 35.31. foreign_tables
      • 35.32. key_column_usage
      • 35.33. parameters
      • 35.34. referential_constraints
      • 35.35. role_column_grants
      • 35.36. role_routine_grants
      • 35.37. role_table_grants
      • 35.38. role_udt_grants
      • 35.39. role_usage_grants
      • 35.40. routine_column_usage
      • 35.41. routine_privileges
      • 35.42. routine_routine_usage
      • 35.43. routine_sequence_usage
      • 35.44. routine_table_usage
      • 35.45. routines
      • 35.46. schemata
      • 35.47. sequences
      • 35.48. sql_features
      • 35.49. sql_implementation_info
      • 35.50. sql_parts
      • 35.51. sql_sizing
      • 35.52. table_constraints
      • 35.53. table_privileges
      • 35.54. tables
      • 35.55. transforms
      • 35.56. triggered_update_columns
      • 35.57. triggers
      • 35.58. udt_privileges
      • 35.59. usage_privileges
      • 35.60. user_defined_types
      • 35.61. user_mapping_options
      • 35.62. user_mappings
      • 35.63. view_column_usage
      • 35.64. view_routine_usage
      • 35.65. view_table_usage
      • 35.66. views
  • Part V. Server Programming
    • Chapter 36. Extending SQL
      • 36.1. How Extensibility Works
      • 36.2. The Tantor SE Type System
      • 36.3. User-Defined Functions
      • 36.4. User-Defined Procedures
      • 36.5. Query Language (SQL) Functions
      • 36.6. Function Overloading
      • 36.7. Function Volatility Categories
      • 36.8. Procedural Language Functions
      • 36.9. Internal Functions
      • 36.10. Function Optimization Information
      • 36.11. User-Defined Aggregates
      • 36.12. User-Defined Types
      • 36.13. User-Defined Operators
      • 36.14. Operator Optimization Information
      • 36.15. Interfacing Extensions to Indexes
      • 36.16. Packaging Related Objects into an Extension
      • 36.17. Extension Building Infrastructure
    • Chapter 37. Triggers
      • 37.1. Overview of Trigger Behavior
      • 37.2. Visibility of Data Changes
      • 37.3. Writing Trigger Functions in C
      • 37.4. A Complete Trigger Example
    • Chapter 38. Event Triggers
      • 38.1. Overview of Event Trigger Behavior
      • 38.2. Event Trigger Firing Matrix
      • 38.3. Writing Event Trigger Functions in C
      • 38.4. A Complete Event Trigger Example
      • 38.5. A Table Rewrite Event Trigger Example
    • Chapter 39. The Rule System
      • 39.1. The Query Tree
      • 39.2. Views and the Rule System
      • 39.3. Materialized Views
      • 39.4. Rules on INSERT, UPDATE, and DELETE
      • 39.5. Rules and Privileges
      • 39.6. Rules and Command Status
      • 39.7. Rules Versus Triggers
    • Chapter 40. Procedural Languages
      • 40.1. Installing Procedural Languages
    • Chapter 41. PL/pgSQL — SQL Procedural Language
      • 41.1. Overview
      • 41.2. Structure of PL/pgSQL
      • 41.3. Declarations
      • 41.4. Expressions
      • 41.5. Basic Statements
      • 41.6. Control Structures
      • 41.7. Cursors
      • 41.8. Transaction Management
      • 41.9. Errors and Messages
      • 41.10. Trigger Functions
      • 41.11. PL/pgSQL under the Hood
      • 41.12. Tips for Developing in PL/pgSQL
      • 41.13. Porting from Oracle PL/SQL
    • Chapter 42. PL/Tcl — Tcl Procedural Language
      • 42.1. Overview
      • 42.2. PL/Tcl Functions and Arguments
      • 42.3. Data Values in PL/Tcl
      • 42.4. Global Data in PL/Tcl
      • 42.5. Database Access from PL/Tcl
      • 42.6. Trigger Functions in PL/Tcl
      • 42.7. Event Trigger Functions in PL/Tcl
      • 42.8. Error Handling in PL/Tcl
      • 42.9. Explicit Subtransactions in PL/Tcl
      • 42.10. Transaction Management
      • 42.11. PL/Tcl Configuration
      • 42.12. Tcl Procedure Names
    • Chapter 43. PL/Perl — Perl Procedural Language
      • 43.1. PL/Perl Functions and Arguments
      • 43.2. Data Values in PL/Perl
      • 43.3. Built-in Functions
      • 43.4. Global Values in PL/Perl
      • 43.5. Trusted and Untrusted PL/Perl
      • 43.6. PL/Perl Triggers
      • 43.7. PL/Perl Event Triggers
      • 43.8. PL/Perl Under the Hood
    • Chapter 44. PL/Python — Python Procedural Language
      • 44.1. PL/Python Functions
      • 44.2. Data Values
      • 44.3. Sharing Data
      • 44.4. Anonymous Code Blocks
      • 44.5. Trigger Functions
      • 44.6. Database Access
      • 44.7. Explicit Subtransactions
      • 44.8. Transaction Management
      • 44.9. Utility Functions
      • 44.10. Python 2 vs. Python 3
      • 44.11. Environment Variables
    • Chapter 45. Server Programming Interface
      • 45.1. Interface Functions
      • 45.2. Interface Support Functions
      • 45.3. Memory Management
      • 45.4. Transaction Management
      • 45.5. Visibility of Data Changes
      • 45.6. Examples
    • Chapter 46. Background Worker Processes
    • Chapter 47. Logical Decoding
      • 47.1. Logical Decoding Examples
      • 47.2. Logical Decoding Concepts
      • 47.3. Streaming Replication Protocol Interface
      • 47.4. Logical Decoding SQL Interface
      • 47.5. System Catalogs Related to Logical Decoding
      • 47.6. Logical Decoding Output Plugins
      • 47.7. Logical Decoding Output Writers
      • 47.8. Synchronous Replication Support for Logical Decoding
      • 47.9. Streaming of Large Transactions for Logical Decoding
      • 47.10. Two-phase Commit Support for Logical Decoding
    • Chapter 48. Replication Progress Tracking
    • Chapter 49. Archive Modules
      • 49.1. Initialization Functions
      • 49.2. Archive Module Callbacks
  • Part VI. Reference
    • SQL Commands
    • PostgreSQL Client Applications
    • PostgreSQL Server Applications
  • Part VII. Internals
    • Chapter 50. Overview of PostgreSQL Internals
      • 50.1. The Path of a Query
      • 50.2. How Connections Are Established
      • 50.3. The Parser Stage
      • 50.4. The Tantor SE Rule System
      • 50.5. Planner/Optimizer
      • 50.6. Executor
    • Chapter 51. System Catalogs
      • 51.1. Overview
      • 51.2. pg_aggregate
      • 51.3. pg_am
      • 51.4. pg_amop
      • 51.5. pg_amproc
      • 51.6. pg_attrdef
      • 51.7. pg_attribute
      • 51.8. pg_authid
      • 51.9. pg_auth_members
      • 51.10. pg_cast
      • 51.11. pg_class
      • 51.12. pg_collation
      • 51.13. pg_constraint
      • 51.14. pg_conversion
      • 51.15. pg_database
      • 51.16. pg_db_role_setting
      • 51.17. pg_default_acl
      • 51.18. pg_depend
      • 51.19. pg_description
      • 51.20. pg_enum
      • 51.21. pg_event_trigger
      • 51.22. pg_extension
      • 51.23. pg_foreign_data_wrapper
      • 51.24. pg_foreign_server
      • 51.25. pg_foreign_table
      • 51.26. pg_index
      • 51.27. pg_inherits
      • 51.28. pg_init_privs
      • 51.29. pg_language
      • 51.30. pg_largeobject
      • 51.31. pg_largeobject_metadata
      • 51.32. pg_namespace
      • 51.33. pg_opclass
      • 51.34. pg_operator
      • 51.35. pg_opfamily
      • 51.36. pg_parameter_acl
      • 51.37. pg_partitioned_table
      • 51.38. pg_policy
      • 51.39. pg_proc
      • 51.40. pg_publication
      • 51.41. pg_publication_namespace
      • 51.42. pg_publication_rel
      • 51.43. pg_range
      • 51.44. pg_replication_origin
      • 51.45. pg_rewrite
      • 51.46. pg_seclabel
      • 51.47. pg_sequence
      • 51.48. pg_shdepend
      • 51.49. pg_shdescription
      • 51.50. pg_shseclabel
      • 51.51. pg_statistic
      • 51.52. pg_statistic_ext
      • 51.53. pg_statistic_ext_data
      • 51.54. pg_subscription
      • 51.55. pg_subscription_rel
      • 51.56. pg_tablespace
      • 51.57. pg_transform
      • 51.58. pg_trigger
      • 51.59. pg_ts_config
      • 51.60. pg_ts_config_map
      • 51.61. pg_ts_dict
      • 51.62. pg_ts_parser
      • 51.63. pg_ts_template
      • 51.64. pg_type
      • 51.65. pg_user_mapping
    • Chapter 52. System Views
      • 52.1. Overview
      • 52.2. pg_available_extensions
      • 52.3. pg_available_extension_versions
      • 52.4. pg_backend_memory_contexts
      • 52.5. pg_config
      • 52.6. pg_cursors
      • 52.7. pg_file_settings
      • 52.8. pg_group
      • 52.9. pg_hba_file_rules
      • 52.10. pg_ident_file_mappings
      • 52.11. pg_indexes
      • 52.12. pg_locks
      • 52.13. pg_matviews
      • 52.14. pg_policies
      • 52.15. pg_prepared_statements
      • 52.16. pg_prepared_xacts
      • 52.17. pg_publication_tables
      • 52.18. pg_replication_origin_status
      • 52.19. pg_replication_slots
      • 52.20. pg_roles
      • 52.21. pg_rules
      • 52.22. pg_seclabels
      • 52.23. pg_sequences
      • 52.24. pg_settings
      • 52.25. pg_shadow
      • 52.26. pg_shmem_allocations
      • 52.27. pg_stats
      • 52.28. pg_stats_ext
      • 52.29. pg_stats_ext_exprs
      • 52.30. pg_tables
      • 52.31. pg_timezone_abbrevs
      • 52.32. pg_timezone_names
      • 52.33. pg_user
      • 52.34. pg_user_mappings
      • 52.35. pg_views
    • Chapter 53. Frontend/Backend Protocol
      • 53.1. Overview
      • 53.2. Message Flow
      • 53.3. SASL Authentication
      • 53.4. Streaming Replication Protocol
      • 53.5. Logical Streaming Replication Protocol
      • 53.6. Message Data Types
      • 53.7. Message Formats
      • 53.8. Error and Notice Message Fields
      • 53.9. Logical Replication Message Formats
      • 53.10. Summary of Changes since Protocol 2.0
    • Chapter 54. PostgreSQL Coding Conventions
      • 54.1. Formatting
      • 54.2. Reporting Errors Within the Server
      • 54.3. Error Message Style Guide
      • 54.4. Miscellaneous Coding Conventions
    • Chapter 55. Native Language Support
      • 55.1. For the Translator
      • 55.2. For the Programmer
    • Chapter 56. Writing a Procedural Language Handler
    • Chapter 57. Writing a Foreign Data Wrapper
      • 57.1. Foreign Data Wrapper Functions
      • 57.2. Foreign Data Wrapper Callback Routines
      • 57.3. Foreign Data Wrapper Helper Functions
      • 57.4. Foreign Data Wrapper Query Planning
      • 57.5. Row Locking in Foreign Data Wrappers
    • Chapter 58. Writing a Table Sampling Method
      • 58.1. Sampling Method Support Functions
    • Chapter 59. Writing a Custom Scan Provider
      • 59.1. Creating Custom Scan Paths
      • 59.2. Creating Custom Scan Plans
      • 59.3. Executing Custom Scans
    • Chapter 60. Genetic Query Optimizer
      • 60.1. Query Handling as a Complex Optimization Problem
      • 60.2. Genetic Algorithms
      • 60.3. Genetic Query Optimization (GEQO) in PostgreSQL
      • 60.4. Further Reading
    • Chapter 61. Table Access Method Interface Definition
    • Chapter 62. Index Access Method Interface Definition
      • 62.1. Basic API Structure for Indexes
      • 62.2. Index Access Method Functions
      • 62.3. Index Scanning
      • 62.4. Index Locking Considerations
      • 62.5. Index Uniqueness Checks
      • 62.6. Index Cost Estimation Functions
    • Chapter 63. Generic WAL Records
    • Chapter 64. Custom WAL Resource Managers
    • Chapter 65. B-Tree Indexes
      • 65.1. Introduction
      • 65.2. Behavior of B-Tree Operator Classes
      • 65.3. B-Tree Support Functions
      • 65.4. Implementation
    • Chapter 66. GiST Indexes
      • 66.1. Introduction
      • 66.2. Built-in Operator Classes
      • 66.3. Extensibility
      • 66.4. Implementation
      • 66.5. Examples
    • Chapter 67. SP-GiST Indexes
      • 67.1. Introduction
      • 67.2. Built-in Operator Classes
      • 67.3. Extensibility
      • 67.4. Implementation
      • 67.5. Examples
    • Chapter 68. GIN Indexes
      • 68.1. Introduction
      • 68.2. Built-in Operator Classes
      • 68.3. Extensibility
      • 68.4. Implementation
      • 68.5. GIN Tips and Tricks
      • 68.6. Limitations
      • 68.7. Examples
    • Chapter 69. BRIN Indexes
      • 69.1. Introduction
      • 69.2. Built-in Operator Classes
      • 69.3. Extensibility
    • Chapter 70. Hash Indexes
      • 70.1. Overview
      • 70.2. Implementation
    • Chapter 71. Database Physical Storage
      • 71.1. Database File Layout
      • 71.2. TOAST
      • 71.3. Free Space Map
      • 71.4. Visibility Map
      • 71.5. The Initialization Fork
      • 71.6. Database Page Layout
      • 71.7. Heap-Only Tuples (HOT)
    • Chapter 72. Transaction Processing
      • 72.1. Transactions and Identifiers
      • 72.2. Transactions and Locking
      • 72.3. Subtransactions
      • 72.4. Two-Phase Transactions
    • Chapter 73. System Catalog Declarations and Initial Contents
      • 73.1. System Catalog Declaration Rules
      • 73.2. System Catalog Initial Data
      • 73.3. BKI File Format
      • 73.4. BKI Commands
      • 73.5. Structure of the Bootstrap BKI File
      • 73.6. BKI Example
    • Chapter 74. How the Planner Uses Statistics
      • 74.1. Row Estimation Examples
      • 74.2. Multivariate Statistics Examples
      • 74.3. Planner Statistics and Security
    • Chapter 75. Backup Manifest Format
      • 75.1. Backup Manifest Top-level Object
      • 75.2. Backup Manifest File Object
      • 75.3. Backup Manifest WAL Range Object
  • Part VIII. Appendixes
    • Appendix A. Tantor SE Error Codes
    • Appendix B. Date/Time Support
      • B.1. Date/Time Input Interpretation
      • B.2. Handling of Invalid or Ambiguous Timestamps
      • B.3. Date/Time Key Words
      • B.4. Date/Time Configuration Files
      • B.5. POSIX Time Zone Specifications
      • B.6. History of Units
      • B.7. Julian Dates
    • Appendix C. SQL Key Words
    • Appendix D. SQL Conformance
      • D.1. Supported Features
      • D.2. Unsupported Features
      • D.3. XML Limits and Conformance to SQL/XML
    • Appendix E. Release Notes
      • E.1. Release Notes for Tantor SE 16.10.2
      • E.2. Release Notes for Tantor SE 16.10.1
      • E.3. Release Notes for Tantor SE 16.8.1
      • E.4. Release Notes for Tantor SE 16.8.0
      • E.5. Release Notes for Tantor SE 16.6.2
      • E.6. Release Notes for Tantor SE 16.6.1
      • E.7. Release Notes for Tantor SE 16.6.0
      • E.8. Release Notes for Tantor SE 16.4.0
      • E.9. Release Notes for Tantor SE 16.2.1
      • E.10. Release 16.10
      • E.11. Release 16.9
      • E.12. Release 16.8
      • E.13. Release 16.7
      • E.14. Release 16.6
      • E.15. Release 16.5
      • E.16. Release 16.4
      • E.17. Release 16.3
      • E.18. Release 16.2
      • E.19. Release 16.1
      • E.20. Release 16
      • E.21. Prior Releases
    • Appendix F. Additional Supplied Modules and Extensions
      • F.1. adminpack — pgAdmin support toolpack
      • F.2. amcheck — tools to verify table and index consistency
      • F.3. auth_delay — pause on authentication failure
      • F.4. auto_explain — log execution plans of slow queries
      • F.5. basebackup_to_shell — example “shell” pg_basebackup module
      • F.6. basic_archive — an example WAL archive module
      • F.7. bloom — bloom filter index access method
      • F.8. btree_gin — GIN operator classes with B-tree behavior
      • F.9. btree_gist — GiST operator classes with B-tree behavior
      • F.10. citext — a case-insensitive character string type
      • F.11. spi — Server Programming Interface features/examples
      • F.12. credcheck
      • F.13. cube — a multi-dimensional cube data type
      • F.14. dblink — connect to other PostgreSQL databases
      • F.15. dict_int — example full-text search dictionary for integers
      • F.16. dict_xsyn — example synonym full-text search dictionary
      • F.17. earthdistance — calculate great-circle distances
      • F.18. file_fdw — access data files in the server’s file system
      • F.19. fuzzystrmatch — determine string similarities and distance
      • F.20. hstore — hstore key/value datatype
      • F.21. Hydra Optimized Row Columnar (ORC)
      • F.22. HypoPG
      • F.23. intagg — integer aggregator and enumerator
      • F.24. intarray — manipulate arrays of integers
      • F.25. isn — data types for international standard numbers (ISBN, EAN, UPC, etc.)
      • F.26. lo — manage large objects
      • F.27. ltree — hierarchical tree-like data type
      • F.28. old_snapshot — inspect old_snapshot_threshold state
      • F.29. Orafce Documentation
      • F.30. pageinspect — low-level inspection of database pages
      • F.31. page_repair
      • F.32. passwordcheck — verify password strength
      • F.33. pg_archive
      • F.34. pgAudit
      • F.35. pgAudit Log to File
      • F.36. pg_background
      • F.37. pg_buffercache — inspect Tantor SE buffer cache state
      • F.38. pg_cron
      • F.39. pgcrypto — cryptographic functions
      • F.40. pg_freespacemap — examine the free space map
      • F.41. pg_hint_plan
      • F.42. Transparent Logical DDL Replication (pgl_ddl_deploy)
      • F.43. pg_partman
      • F.44. pg_prewarm — preload relation data into buffer caches
      • F.45. PGQ
      • F.46. pg_qualstats
      • F.47. pg_repack
      • F.48. pgrowlocks — show a table’s row locking information
      • F.49. pgsql-http PostgreSQL HTTP Client
      • F.50. pg_stat_kcache
      • F.51. pg_stat_statements — track statistics of SQL planning and execution
      • F.52. pgstattuple — obtain tuple-level statistics
      • F.53. pg_store_plans
      • F.54. pg_surgery — perform low-level surgery on relation data
      • F.55. pg_throttle
      • F.56. pg_trace
      • F.57. pg_trgm — support for similarity of text using trigram matching
      • F.58. pg_uuidv7
      • F.59. pg_variables
      • F.60. pg_visibility — visibility map information and utilities
      • F.61. pg_wait_sampling
      • F.62. pg_walinspect — low-level WAL inspection
      • F.63. postgres_fdw — access data stored in external Tantor SE servers
      • F.64. seg — a datatype for line segments or floating point intervals
      • F.65. sepgsql — SELinux-, label-based mandatory access control (MAC) security module
      • F.66. sslinfo — obtain client SSL information
      • F.67. tablefunc — functions that return tables (crosstab and others)
      • F.68. tcn — a trigger function to notify listeners of changes to table content
      • F.69. test_decoding — SQL-based test/example module for WAL logical decoding
      • F.70. transp_anon
      • F.71. tsm_system_rows — the SYSTEM_ROWS sampling method for TABLESAMPLE
      • F.72. tsm_system_time — the SYSTEM_TIME sampling method for TABLESAMPLE
      • F.73. unaccent — a text search dictionary which removes diacritics
      • F.74. uuid-ossp — a UUID generator
      • F.75. vector (pgvector)
      • F.76. wal2json
      • F.77. xml2 — XPath querying and XSLT functionality
    • Appendix G. Additional Supplied Programs
      • G.1. Client Applications
      • G.2. Server Applications
    • Appendix H. Additional External Modules
      • H.1. ldap2pg
      • H.2. MySQL Foreign Data Wrapper
      • H.3. Oracle FDW
      • H.4. pg_cluster
      • H.5. pg_configurator
      • H.6. pg_timetable
      • H.7. pgbouncer
      • H.8. TDS Foreign data wrapper
    • Appendix I. External Projects
      • I.1. Client Interfaces
      • I.2. Administration Tools
      • I.3. Procedural Languages
      • I.4. Extensions
    • Appendix J. Tantor SE Limits
    • Appendix K. Acronyms
    • Appendix L. Glossary
    • Appendix M. Color Support
      • M.1. When Color is Used
      • M.2. Configuring the Colors
    • Appendix N. Obsolete or Renamed Features
      • N.1. recovery.conf file merged into postgresql.conf
      • N.2. Default Roles Renamed to Predefined Roles
      • N.3. pg_xlogdump renamed to pg_waldump
      • N.4. pg_resetxlog renamed to pg_resetwal
      • N.5. pg_receivexlog renamed to pg_receivewal
  • Bibliography
  • Index

Chapter 1. Synopsis

Chapter 1. Synopsis#

Chapter 1. Synopsis
Chapter 1. Synopsis
Prev UpPart I. TutorialHome Next

Chapter 1. Synopsis

Table of Contents

1.1. Synopsis
1.2. Architectural Fundamentals
1.3. Creating a Database
1.4. Accessing a Database

Prev Up Next
Part I. Tutorial Home 1.1. Synopsis
  • 1.1. Synopsis
  • 1.2. Architectural Fundamentals
  • 1.3. Creating a Database
  • 1.4. Accessing a Database

previous

Part I. Tutorial

next

1.1. Synopsis

By Tantor Labs

© Copyright 2025, Tantor Labs.

Commercial use is possible only with written permission from the company LLC “Tantor Labs”
© LLC "Tantor Labs"
  • Technical Support Policy
  • Cookie Processing Policy
  • Website User Agreement
Products
  • Tantor DBMS
  • Tantor Platform
  • Documentation
Contacts
  • +7 495 369-48-16
  • info@tantorlabs.ru
16.10.2 - de035b67 - 2025-11-01 08:57:28